@payloadcms/next 3.0.0-canary.a5aaf21 → 3.0.0-canary.a6e7305

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 (301) hide show
  1. package/dist/cjs/withPayload.cjs +156 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -0
  5. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
  7. package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
  8. package/dist/elements/DocumentHeader/index.scss +44 -42
  9. package/dist/elements/DocumentLocked/index.d.ts +1 -1
  10. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  11. package/dist/elements/DocumentLocked/index.js +24 -14
  12. package/dist/elements/DocumentLocked/index.js.map +1 -1
  13. package/dist/elements/DocumentLocked/index.scss +29 -26
  14. package/dist/elements/DocumentTakeOver/index.scss +28 -26
  15. package/dist/elements/FormHeader/index.d.ts +9 -0
  16. package/dist/elements/FormHeader/index.d.ts.map +1 -0
  17. package/dist/elements/FormHeader/index.js +20 -0
  18. package/dist/elements/FormHeader/index.js.map +1 -0
  19. package/dist/elements/FormHeader/index.scss +8 -0
  20. package/dist/elements/LeaveWithoutSaving/index.scss +28 -26
  21. package/dist/elements/Nav/NavWrapper/index.scss +20 -18
  22. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  23. package/dist/elements/Nav/index.client.js +1 -0
  24. package/dist/elements/Nav/index.client.js.map +1 -1
  25. package/dist/elements/Nav/index.scss +127 -125
  26. package/dist/exports/routes.d.ts +1 -1
  27. package/dist/exports/routes.d.ts.map +1 -1
  28. package/dist/exports/routes.js +1 -1
  29. package/dist/exports/routes.js.map +1 -1
  30. package/dist/exports/utilities.d.ts +1 -0
  31. package/dist/exports/utilities.d.ts.map +1 -1
  32. package/dist/exports/utilities.js +1 -0
  33. package/dist/exports/utilities.js.map +1 -1
  34. package/dist/layouts/Root/index.js +6 -6
  35. package/dist/layouts/Root/index.js.map +1 -1
  36. package/dist/prod/styles.css +1 -1
  37. package/dist/routes/graphql/handler.d.ts.map +1 -1
  38. package/dist/routes/graphql/handler.js +23 -11
  39. package/dist/routes/graphql/handler.js.map +1 -1
  40. package/dist/routes/rest/auth/login.js +2 -2
  41. package/dist/routes/rest/auth/login.js.map +1 -1
  42. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  43. package/dist/routes/rest/auth/logout.js +3 -2
  44. package/dist/routes/rest/auth/logout.js.map +1 -1
  45. package/dist/routes/rest/auth/refresh.js +2 -2
  46. package/dist/routes/rest/auth/refresh.js.map +1 -1
  47. package/dist/routes/rest/auth/registerFirstUser.js +2 -2
  48. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  49. package/dist/routes/rest/auth/resetPassword.js +2 -2
  50. package/dist/routes/rest/auth/resetPassword.js.map +1 -1
  51. package/dist/routes/rest/collections/create.d.ts.map +1 -1
  52. package/dist/routes/rest/collections/create.js +5 -1
  53. package/dist/routes/rest/collections/create.js.map +1 -1
  54. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  55. package/dist/routes/rest/collections/delete.js +8 -0
  56. package/dist/routes/rest/collections/delete.js.map +1 -1
  57. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  58. package/dist/routes/rest/collections/deleteByID.js +7 -1
  59. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  60. package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
  61. package/dist/routes/rest/collections/duplicate.js +5 -1
  62. package/dist/routes/rest/collections/duplicate.js.map +1 -1
  63. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  64. package/dist/routes/rest/collections/find.js +7 -1
  65. package/dist/routes/rest/collections/find.js.map +1 -1
  66. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  67. package/dist/routes/rest/collections/findByID.js +5 -1
  68. package/dist/routes/rest/collections/findByID.js.map +1 -1
  69. package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
  70. package/dist/routes/rest/collections/findVersionByID.js +5 -1
  71. package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
  72. package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
  73. package/dist/routes/rest/collections/findVersions.js +7 -1
  74. package/dist/routes/rest/collections/findVersions.js.map +1 -1
  75. package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
  76. package/dist/routes/rest/collections/restoreVersion.js +2 -0
  77. package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
  78. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  79. package/dist/routes/rest/collections/update.js +10 -0
  80. package/dist/routes/rest/collections/update.js.map +1 -1
  81. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  82. package/dist/routes/rest/collections/updateByID.js +7 -1
  83. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  84. package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
  85. package/dist/routes/rest/globals/findOne.js +5 -1
  86. package/dist/routes/rest/globals/findOne.js.map +1 -1
  87. package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
  88. package/dist/routes/rest/globals/findVersionByID.js +5 -1
  89. package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
  90. package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
  91. package/dist/routes/rest/globals/findVersions.js +7 -1
  92. package/dist/routes/rest/globals/findVersions.js.map +1 -1
  93. package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
  94. package/dist/routes/rest/globals/restoreVersion.js +2 -0
  95. package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
  96. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  97. package/dist/routes/rest/globals/update.js +5 -1
  98. package/dist/routes/rest/globals/update.js.map +1 -1
  99. package/dist/routes/rest/index.d.ts +17 -12
  100. package/dist/routes/rest/index.d.ts.map +1 -1
  101. package/dist/routes/rest/index.js +90 -15
  102. package/dist/routes/rest/index.js.map +1 -1
  103. package/dist/routes/rest/og/index.js +2 -4
  104. package/dist/routes/rest/og/index.js.map +1 -1
  105. package/dist/routes/rest/routeError.d.ts +2 -7
  106. package/dist/routes/rest/routeError.d.ts.map +1 -1
  107. package/dist/routes/rest/routeError.js +33 -19
  108. package/dist/routes/rest/routeError.js.map +1 -1
  109. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +1 -1
  110. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -1
  111. package/dist/routes/rest/utilities/sanitizeJoinParams.js +9 -5
  112. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -1
  113. package/dist/routes/rest/utilities/sanitizePopulate.d.ts +3 -0
  114. package/dist/routes/rest/utilities/sanitizePopulate.d.ts.map +1 -0
  115. package/dist/routes/rest/utilities/sanitizePopulate.js +11 -0
  116. package/dist/routes/rest/utilities/sanitizePopulate.js.map +1 -0
  117. package/dist/routes/rest/utilities/sanitizeSelect.d.ts +6 -0
  118. package/dist/routes/rest/utilities/sanitizeSelect.d.ts.map +1 -0
  119. package/dist/routes/rest/utilities/sanitizeSelect.js +17 -0
  120. package/dist/routes/rest/utilities/sanitizeSelect.js.map +1 -0
  121. package/dist/scss/app.scss +166 -162
  122. package/dist/scss/colors.scss +256 -254
  123. package/dist/scss/resets.scss +9 -7
  124. package/dist/scss/toastify.scss +42 -40
  125. package/dist/scss/toasts.scss +105 -103
  126. package/dist/scss/type.scss +80 -79
  127. package/dist/templates/Default/Wrapper/index.scss +38 -36
  128. package/dist/templates/Default/index.scss +60 -58
  129. package/dist/templates/Minimal/index.scss +22 -20
  130. package/dist/utilities/getNextRequestI18n.js +2 -2
  131. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  132. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  133. package/dist/utilities/getRequestTheme.js +3 -0
  134. package/dist/utilities/getRequestTheme.js.map +1 -1
  135. package/dist/utilities/initPage/handleAdminPage.d.ts +12 -11
  136. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  137. package/dist/utilities/initPage/handleAdminPage.js +9 -21
  138. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  139. package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
  140. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  141. package/dist/utilities/initPage/handleAuthRedirect.js +23 -36
  142. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  143. package/dist/utilities/initPage/index.d.ts +1 -1
  144. package/dist/utilities/initPage/index.d.ts.map +1 -1
  145. package/dist/utilities/initPage/index.js +27 -10
  146. package/dist/utilities/initPage/index.js.map +1 -1
  147. package/dist/utilities/initPage/isCustomAdminView.d.ts +10 -0
  148. package/dist/utilities/initPage/isCustomAdminView.d.ts.map +1 -0
  149. package/dist/utilities/initPage/isCustomAdminView.js +31 -0
  150. package/dist/utilities/initPage/isCustomAdminView.js.map +1 -0
  151. package/dist/utilities/initPage/shared.d.ts +2 -2
  152. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  153. package/dist/utilities/initPage/shared.js +19 -13
  154. package/dist/utilities/initPage/shared.js.map +1 -1
  155. package/dist/utilities/initReq.js +1 -1
  156. package/dist/utilities/initReq.js.map +1 -1
  157. package/dist/views/API/RenderJSON/index.scss +68 -66
  158. package/dist/views/API/index.scss +98 -96
  159. package/dist/views/Account/Settings/index.d.ts +2 -1
  160. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  161. package/dist/views/Account/Settings/index.js +3 -2
  162. package/dist/views/Account/Settings/index.js.map +1 -1
  163. package/dist/views/Account/Settings/index.scss +37 -35
  164. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  165. package/dist/views/Account/ToggleTheme/index.js +1 -0
  166. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  167. package/dist/views/Account/index.d.ts.map +1 -1
  168. package/dist/views/Account/index.js +4 -2
  169. package/dist/views/Account/index.js.map +1 -1
  170. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  171. package/dist/views/CreateFirstUser/index.client.js +31 -15
  172. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  173. package/dist/views/CreateFirstUser/index.scss +13 -11
  174. package/dist/views/Dashboard/Default/index.d.ts +3 -1
  175. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  176. package/dist/views/Dashboard/Default/index.js +12 -3
  177. package/dist/views/Dashboard/Default/index.js.map +1 -1
  178. package/dist/views/Dashboard/Default/index.scss +51 -49
  179. package/dist/views/Dashboard/index.d.ts.map +1 -1
  180. package/dist/views/Dashboard/index.js +31 -13
  181. package/dist/views/Dashboard/index.js.map +1 -1
  182. package/dist/views/Document/getDocumentData.js +4 -2
  183. package/dist/views/Document/getDocumentData.js.map +1 -1
  184. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  185. package/dist/views/Document/getDocumentPermissions.js +6 -5
  186. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  187. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  188. package/dist/views/Document/getViewsFromConfig.js +6 -0
  189. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  190. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  191. package/dist/views/Edit/Default/Auth/APIKey.js +2 -8
  192. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  193. package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
  194. package/dist/views/Edit/Default/Auth/index.js +37 -26
  195. package/dist/views/Edit/Default/Auth/index.js.map +1 -1
  196. package/dist/views/Edit/Default/Auth/index.scss +56 -54
  197. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  198. package/dist/views/Edit/Default/index.js +45 -73
  199. package/dist/views/Edit/Default/index.js.map +1 -1
  200. package/dist/views/Edit/Default/index.scss +15 -13
  201. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  202. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +9 -11
  203. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  204. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  205. package/dist/views/ForgotPassword/index.js +10 -8
  206. package/dist/views/ForgotPassword/index.js.map +1 -1
  207. package/dist/views/List/Default/index.scss +136 -134
  208. package/dist/views/List/index.d.ts.map +1 -1
  209. package/dist/views/List/index.js +1 -1
  210. package/dist/views/List/index.js.map +1 -1
  211. package/dist/views/LivePreview/IFrame/index.scss +8 -6
  212. package/dist/views/LivePreview/Preview/index.scss +32 -30
  213. package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
  214. package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
  215. package/dist/views/LivePreview/Toolbar/index.scss +33 -31
  216. package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
  217. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  218. package/dist/views/LivePreview/index.client.js +221 -203
  219. package/dist/views/LivePreview/index.client.js.map +1 -1
  220. package/dist/views/LivePreview/index.scss +48 -46
  221. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  222. package/dist/views/Login/LoginForm/index.js +2 -1
  223. package/dist/views/Login/LoginForm/index.js.map +1 -1
  224. package/dist/views/Login/LoginForm/index.scss +8 -6
  225. package/dist/views/Login/index.scss +8 -6
  226. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  227. package/dist/views/Logout/LogoutClient.js +77 -55
  228. package/dist/views/Logout/LogoutClient.js.map +1 -1
  229. package/dist/views/Logout/index.scss +17 -15
  230. package/dist/views/NotFound/index.d.ts +5 -5
  231. package/dist/views/NotFound/index.d.ts.map +1 -1
  232. package/dist/views/NotFound/index.js +7 -2
  233. package/dist/views/NotFound/index.js.map +1 -1
  234. package/dist/views/NotFound/index.scss +38 -36
  235. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
  236. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
  237. package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +16 -19
  238. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
  239. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  240. package/dist/views/ResetPassword/index.js +19 -10
  241. package/dist/views/ResetPassword/index.js.map +1 -1
  242. package/dist/views/ResetPassword/index.scss +6 -26
  243. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  244. package/dist/views/Root/getViewFromConfig.js +1 -7
  245. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  246. package/dist/views/Root/index.d.ts +5 -5
  247. package/dist/views/Root/index.d.ts.map +1 -1
  248. package/dist/views/Root/index.js +23 -10
  249. package/dist/views/Root/index.js.map +1 -1
  250. package/dist/views/Root/meta.d.ts +5 -5
  251. package/dist/views/Root/meta.d.ts.map +1 -1
  252. package/dist/views/Root/meta.js +3 -2
  253. package/dist/views/Root/meta.js.map +1 -1
  254. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  255. package/dist/views/Unauthorized/index.js +14 -7
  256. package/dist/views/Unauthorized/index.js.map +1 -1
  257. package/dist/views/Unauthorized/index.scss +4 -31
  258. package/dist/views/Verify/index.client.d.ts +7 -0
  259. package/dist/views/Verify/index.client.d.ts.map +1 -0
  260. package/dist/views/Verify/index.client.js +46 -0
  261. package/dist/views/Verify/index.client.js.map +1 -0
  262. package/dist/views/Verify/index.d.ts.map +1 -1
  263. package/dist/views/Verify/index.js +12 -11
  264. package/dist/views/Verify/index.js.map +1 -1
  265. package/dist/views/Verify/index.scss +13 -11
  266. package/dist/views/Version/Default/index.scss +52 -50
  267. package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
  268. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
  269. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
  270. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
  271. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
  272. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
  273. package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
  274. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  275. package/dist/views/Version/Restore/index.js +8 -14
  276. package/dist/views/Version/Restore/index.js.map +1 -1
  277. package/dist/views/Version/Restore/index.scss +57 -55
  278. package/dist/views/Version/SelectComparison/index.scss +12 -10
  279. package/dist/views/Version/SelectLocales/index.scss +6 -4
  280. package/dist/views/Version/index.d.ts.map +1 -1
  281. package/dist/views/Version/index.js +2 -0
  282. package/dist/views/Version/index.js.map +1 -1
  283. package/dist/views/Versions/cells/CreatedAt/index.js +1 -0
  284. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  285. package/dist/views/Versions/getLatestVersion.d.ts +1 -0
  286. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  287. package/dist/views/Versions/getLatestVersion.js +15 -4
  288. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  289. package/dist/views/Versions/index.d.ts.map +1 -1
  290. package/dist/views/Versions/index.js +4 -4
  291. package/dist/views/Versions/index.js.map +1 -1
  292. package/dist/views/Versions/index.scss +78 -76
  293. package/dist/withPayload.d.ts.map +1 -1
  294. package/dist/withPayload.js +9 -1
  295. package/dist/withPayload.js.map +1 -1
  296. package/package.json +10 -10
  297. package/dist/cjs/withPayload.js +0 -111
  298. package/dist/cjs/withPayload.js.map +0 -1
  299. package/dist/views/ResetPassword/index.client.d.ts +0 -7
  300. package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
  301. package/dist/views/ResetPassword/index.client.js.map +0 -1
@@ -1,12 +1,14 @@
1
- .nested-diff {
2
- &__wrap--gutter {
3
- [dir='ltr'] & {
4
- padding-left: calc(var(--base) * 0.25);
5
- // border-left: $style-stroke-width-s solid var(--theme-elevation-150);
6
- }
7
- [dir='rtl'] & {
8
- padding-right: calc(var(--base) * 0.25);
9
- // border-right: $style-stroke-width-s solid var(--theme-elevation-150);
1
+ @layer payload-default {
2
+ .nested-diff {
3
+ &__wrap--gutter {
4
+ [dir='ltr'] & {
5
+ padding-left: calc(var(--base) * 0.25);
6
+ // border-left: $style-stroke-width-s solid var(--theme-elevation-150);
7
+ }
8
+ [dir='rtl'] & {
9
+ padding-right: calc(var(--base) * 0.25);
10
+ // border-right: $style-stroke-width-s solid var(--theme-elevation-150);
11
+ }
10
12
  }
11
13
  }
12
14
  }
@@ -1,13 +1,15 @@
1
- .relationship-diff {
2
- &__locale-label {
3
- [dir='ltr'] & {
4
- margin-right: calc(var(--base) * 0.25);
1
+ @layer payload-default {
2
+ .relationship-diff {
3
+ &__locale-label {
4
+ [dir='ltr'] & {
5
+ margin-right: calc(var(--base) * 0.25);
6
+ }
7
+ [dir='rtl'] & {
8
+ margin-left: calc(var(--base) * 0.25);
9
+ }
10
+ background: var(--theme-elevation-100);
11
+ padding: calc(var(--base) * 0.25);
12
+ // border-radius: $style-radius-m;
5
13
  }
6
- [dir='rtl'] & {
7
- margin-left: calc(var(--base) * 0.25);
8
- }
9
- background: var(--theme-elevation-100);
10
- padding: calc(var(--base) * 0.25);
11
- // border-radius: $style-radius-m;
12
14
  }
13
15
  }
@@ -1,13 +1,15 @@
1
- .select-diff {
2
- &__locale-label {
3
- [dir='ltr'] & {
4
- margin-right: calc(var(--base) * 0.25);
1
+ @layer payload-default {
2
+ .select-diff {
3
+ &__locale-label {
4
+ [dir='ltr'] & {
5
+ margin-right: calc(var(--base) * 0.25);
6
+ }
7
+ [dir='rtl'] & {
8
+ margin-left: calc(var(--base) * 0.25);
9
+ }
10
+ background: var(--theme-elevation-100);
11
+ padding: calc(var(--base) * 0.25);
12
+ // border-radius: $style-radius-m;
5
13
  }
6
- [dir='rtl'] & {
7
- margin-left: calc(var(--base) * 0.25);
8
- }
9
- background: var(--theme-elevation-100);
10
- padding: calc(var(--base) * 0.25);
11
- // border-radius: $style-radius-m;
12
14
  }
13
15
  }
@@ -1,13 +1,15 @@
1
- .text-diff {
2
- &__locale-label {
3
- [dir='ltr'] & {
4
- margin-right: calc(var(--base) * 0.25);
1
+ @layer payload-default {
2
+ .text-diff {
3
+ &__locale-label {
4
+ [dir='ltr'] & {
5
+ margin-right: calc(var(--base) * 0.25);
6
+ }
7
+ [dir='rtl'] & {
8
+ margin-left: calc(var(--base) * 0.25);
9
+ }
10
+ background: var(--theme-elevation-100);
11
+ padding: calc(var(--base) * 0.25);
12
+ // border-radius: $style-radius-m;
5
13
  }
6
- [dir='rtl'] & {
7
- margin-left: calc(var(--base) * 0.25);
8
- }
9
- background: var(--theme-elevation-100);
10
- padding: calc(var(--base) * 0.25);
11
- // border-radius: $style-radius-m;
12
14
  }
13
15
  }
@@ -1,18 +1,20 @@
1
1
  @import '../../../scss/styles.scss';
2
2
 
3
- .render-field-diffs {
4
- display: flex;
5
- flex-direction: column;
6
- gap: var(--base);
7
-
8
- &__field {
9
- overflow-wrap: anywhere;
3
+ @layer payload-default {
4
+ .render-field-diffs {
10
5
  display: flex;
11
6
  flex-direction: column;
12
7
  gap: var(--base);
13
- }
14
8
 
15
- @include small-break {
16
- gap: calc(var(--base) / 2);
9
+ &__field {
10
+ overflow-wrap: anywhere;
11
+ display: flex;
12
+ flex-direction: column;
13
+ gap: var(--base);
14
+ }
15
+
16
+ @include small-break {
17
+ gap: calc(var(--base) / 2);
18
+ }
17
19
  }
18
20
  }
@@ -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;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAyH5B,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;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiH5B,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { getTranslation } from '@payloadcms/translations';
5
- import { Button, ChevronIcon, Modal, Pill, Popup, PopupList, useConfig, useModal, useTranslation } from '@payloadcms/ui';
5
+ import { Button, Modal, PopupList, useConfig, useModal, useTranslation } from '@payloadcms/ui';
6
6
  import { formatAdminURL, requests } from '@payloadcms/ui/shared';
7
7
  import { useRouter } from 'next/navigation.js';
8
8
  import React, { Fragment, useCallback, useState } from 'react';
@@ -77,27 +77,21 @@ const Restore = ({
77
77
  }
78
78
  }, [fetchURL, redirectURL, t, i18n, router]);
79
79
  return /*#__PURE__*/_jsxs(Fragment, {
80
- children: [/*#__PURE__*/_jsxs("div", {
80
+ children: [/*#__PURE__*/_jsx("div", {
81
81
  className: [baseClass, className].filter(Boolean).join(' '),
82
- children: [/*#__PURE__*/_jsx(Pill, {
82
+ children: /*#__PURE__*/_jsx(Button, {
83
+ buttonStyle: "pill",
83
84
  className: [canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' '),
84
85
  onClick: () => toggleModal(modalSlug),
85
- children: t('version:restoreThisVersion')
86
- }), canRestoreAsDraft && /*#__PURE__*/_jsx(Popup, {
87
- button: /*#__PURE__*/_jsx(Pill, {
88
- className: `${baseClass}__chevron`,
89
- children: /*#__PURE__*/_jsx(ChevronIcon, {})
90
- }),
91
- caret: false,
92
- render: () => /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
86
+ size: "small",
87
+ SubMenuPopupContent: () => canRestoreAsDraft && /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
93
88
  children: /*#__PURE__*/_jsx(PopupList.Button, {
94
89
  onClick: () => [setDraft(true), toggleModal(modalSlug)],
95
90
  children: t('version:restoreAsDraft')
96
91
  })
97
92
  }),
98
- size: "large",
99
- verticalAlign: "bottom"
100
- })]
93
+ children: t('version:restoreThisVersion')
94
+ })
101
95
  }), /*#__PURE__*/_jsx(Modal, {
102
96
  className: `${baseClass}__modal`,
103
97
  slug: modalSlug,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","collections","routes","admin","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","filter","Boolean","join","_jsx","onClick","button","caret","render","ButtonGroup","size","verticalAlign","buttonStyle","undefined","type"],"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 './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 collections,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\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\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\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 <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\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 </div>\n </div>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","Button","Modal","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","collections","routes","admin","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","undefined","type"],"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 './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 collections,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\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\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\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 <Button\n buttonStyle=\"pill\"\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"small\"\n SubMenuPopupContent={() =>\n canRestoreAsDraft && (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n </div>\n <div className={`${baseClass}__controls`}>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n size=\"large\"\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 </div>\n </div>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\n"],"mappings":"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","ignoreList":[]}
@@ -1,77 +1,79 @@
1
1
  @import '../../.././scss/styles.scss';
2
2
 
3
- .restore-version {
4
- cursor: pointer;
5
- display: flex;
6
-
7
- .popup-button {
8
- display: flex;
9
- }
10
-
11
- &__chevron {
12
- background-color: var(--theme-elevation-150);
13
- border-top-left-radius: 0;
14
- border-bottom-left-radius: 0;
3
+ @layer payload-default {
4
+ .restore-version {
15
5
  cursor: pointer;
6
+ display: flex;
16
7
 
17
- .stroke {
18
- stroke-width: 1px;
8
+ .popup-button {
9
+ display: flex;
19
10
  }
20
11
 
21
- &:hover {
22
- background: var(--theme-elevation-100);
12
+ &__chevron {
13
+ background-color: var(--theme-elevation-150);
14
+ border-top-left-radius: 0;
15
+ border-bottom-left-radius: 0;
16
+ cursor: pointer;
17
+
18
+ .stroke {
19
+ stroke-width: 1px;
20
+ }
21
+
22
+ &:hover {
23
+ background: var(--theme-elevation-100);
24
+ }
23
25
  }
24
- }
25
26
 
26
- &__button {
27
- border-top-right-radius: 0px;
28
- border-bottom-right-radius: 0px;
29
- margin-right: 2px;
27
+ &__button {
28
+ border-top-right-radius: 0px;
29
+ border-bottom-right-radius: 0px;
30
+ margin-right: 2px;
30
31
 
31
- &:focus {
32
- border-radius: 0;
33
- outline-offset: 0;
32
+ &:focus {
33
+ border-radius: 0;
34
+ outline-offset: 0;
35
+ }
34
36
  }
35
- }
36
37
 
37
- &__modal {
38
- @include blur-bg;
39
- display: flex;
40
- align-items: center;
41
- justify-content: center;
42
- height: 100%;
38
+ &__modal {
39
+ @include blur-bg;
40
+ display: flex;
41
+ align-items: center;
42
+ justify-content: center;
43
+ height: 100%;
43
44
 
44
- &__toggle {
45
- @extend %btn-reset;
45
+ &__toggle {
46
+ @extend %btn-reset;
47
+ }
46
48
  }
47
- }
48
49
 
49
- &__wrapper {
50
- z-index: 1;
51
- position: relative;
52
- display: flex;
53
- flex-direction: column;
54
- gap: base(0.8);
55
- padding: base(2);
56
- max-width: base(36);
57
- }
50
+ &__wrapper {
51
+ z-index: 1;
52
+ position: relative;
53
+ display: flex;
54
+ flex-direction: column;
55
+ gap: base(0.8);
56
+ padding: base(2);
57
+ max-width: base(36);
58
+ }
58
59
 
59
- &__content {
60
- display: flex;
61
- flex-direction: column;
62
- gap: base(0.4);
60
+ &__content {
61
+ display: flex;
62
+ flex-direction: column;
63
+ gap: base(0.4);
63
64
 
64
- > * {
65
- margin: 0;
65
+ > * {
66
+ margin: 0;
67
+ }
66
68
  }
67
- }
68
69
 
69
- &__controls {
70
- display: flex;
71
- gap: base(0.4);
70
+ &__controls {
71
+ display: flex;
72
+ gap: base(0.4);
72
73
 
73
- .btn {
74
- margin: 0;
74
+ .btn {
75
+ margin: 0;
76
+ }
75
77
  }
76
78
  }
77
79
  }
@@ -1,13 +1,15 @@
1
- .compare-version {
2
- &__error-loading {
3
- border: 1px solid var(--theme-error-500);
4
- min-height: calc(var(--base) * 2);
5
- padding: calc(var(--base) * 0.5) calc(var(--base) * 0.75);
6
- background-color: var(--theme-error-100);
7
- color: var(--theme-elevation-0);
8
- }
1
+ @layer payload-default {
2
+ .compare-version {
3
+ &__error-loading {
4
+ border: 1px solid var(--theme-error-500);
5
+ min-height: calc(var(--base) * 2);
6
+ padding: calc(var(--base) * 0.5) calc(var(--base) * 0.75);
7
+ background-color: var(--theme-error-100);
8
+ color: var(--theme-elevation-0);
9
+ }
9
10
 
10
- &__label {
11
- margin-bottom: calc(var(--base) * 0.25);
11
+ &__label {
12
+ margin-bottom: calc(var(--base) * 0.25);
13
+ }
12
14
  }
13
15
  }
@@ -1,7 +1,9 @@
1
- .select-version-locales {
2
- flex-grow: 1;
1
+ @layer payload-default {
2
+ .select-version-locales {
3
+ flex-grow: 1;
3
4
 
4
- &__label {
5
- margin-bottom: calc(var(--base) * 0.25);
5
+ &__label {
6
+ margin-bottom: calc(var(--base) * 0.25);
7
+ }
6
8
  }
7
9
  }
@@ -1 +1 @@
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
+ {"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,CA6ItE,CAAA"}
@@ -52,12 +52,14 @@ export const VersionView = async props => {
52
52
  latestDraftVersion = await getLatestVersion({
53
53
  slug,
54
54
  type: 'collection',
55
+ parentID: id,
55
56
  payload,
56
57
  status: 'draft'
57
58
  });
58
59
  latestPublishedVersion = await getLatestVersion({
59
60
  slug,
60
61
  type: 'collection',
62
+ parentID: id,
61
63
  payload,
62
64
  status: 'published'
63
65
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","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","_jsx","initialComparisonDoc"],"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"],"mappings":";AASA,SAASA,QAAQ,QAAQ;AACzB,SAASC,oBAAoB,QAAQ;AACrC,OAAOC,KAAA,MAAW;AAElB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,kBAAkB,QAAQ;AAEnC,OAAO,MAAMC,WAAA,GAA8D,MAAOC,KAAA;EAChF,MAAM;IAAEC,cAAc;IAAEC;EAAa,CAAE,GAAGF,KAAA;EAE1C,MAAM;IACJG,gBAAgB;IAChBC,KAAA,EAAOC,EAAE;IACTC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHA,GAAA,EAAK;MAAEC,OAAO;MAAEA,OAAA,EAAS;QAAEC;MAAM,CAAE,GAAG,CAAC,CAAC;MAAEC;IAAI,CAAE,GAAG,CAAC;EAAC,CACtD,GAAGV,cAAA;EAEJ,MAAMW,SAAA,GAAYV,aAAa,CAACA,aAAA,CAAcW,MAAM,GAAG,EAAE;EAEzD,MAAMC,cAAA,GAAiBX,gBAAA,EAAkBY,IAAA;EACzC,MAAMC,UAAA,GAAaV,YAAA,EAAcS,IAAA;EAEjC,MAAM;IAAEE;EAAY,CAAE,GAAGP,MAAA;EAEzB,IAAIQ,cAAA;EACJ,IAAIH,IAAA;EAEJ,IAAII,GAAA;EACJ,IAAIC,sBAAA,GAAyB;EAC7B,IAAIC,kBAAA,GAAqB;EAEzB,IAAIP,cAAA,EAAgB;IAClB;IACAC,IAAA,GAAOD,cAAA;IACPI,cAAA,GAAiBX,WAAA,CAAYe,WAAW,CAACR,cAAA,CAAe;IAExD,IAAI;MACFK,GAAA,GAAM,MAAMV,OAAA,CAAQc,eAAe,CAAC;QAClClB,EAAA,EAAIO,SAAA;QACJY,UAAA,EAAYT,IAAA;QACZU,KAAA,EAAO;QACPC,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBnB,GAAA;QACAG;MACF;MAEA,IAAIR,gBAAA,EAAkByB,QAAA,EAAUC,MAAA,EAAQ;QACtCR,kBAAA,GAAqB,MAAMxB,gBAAA,CAAiB;UAC1CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAsB,MAAA,EAAQ;QACV;QACAX,sBAAA,GAAyB,MAAMvB,gBAAA,CAAiB;UAC9CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAsB,MAAA,EAAQ;QACV;MACF;IACF,EAAE,OAAOC,KAAA,EAAO;MACd,OAAOtC,QAAA;IACT;EACF;EAEA,IAAIsB,UAAA,EAAY;IACd;IACAD,IAAA,GAAOC,UAAA;IACPE,cAAA,GAAiBX,WAAA,CAAY0B,OAAO,CAACjB,UAAA,CAAW;IAEhD,IAAI;MACFG,GAAA,GAAM,MAAMV,OAAA,CAAQyB,qBAAqB,CAAC;QACxC7B,EAAA,EAAIO,SAAA;QACJG,IAAA;QACAU,KAAA,EAAO;QACPC,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBnB,GAAA;QACAG;MACF;MAEA,IAAIL,YAAA,EAAcsB,QAAA,EAAUC,MAAA,EAAQ;QAClCR,kBAAA,GAAqB,MAAMxB,gBAAA,CAAiB;UAC1CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAsB,MAAA,EAAQ;QACV;QACAX,sBAAA,GAAyB,MAAMvB,gBAAA,CAAiB;UAC9CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAsB,MAAA,EAAQ;QACV;MACF;IACF,EAAE,OAAOC,KAAA,EAAO;MACd,OAAOtC,QAAA;IACT;EACF;EAEA,MAAMyC,uBAAA,GAA0Bf,sBAAA,EAAwBgB,SAAA,GAAYf,kBAAA,EAAoBe,SAAA;EAExF,IAAID,uBAAA,EAAyB;IAC3Bd,kBAAA,GAAqB;MACnBhB,EAAA,EAAI;MACJ+B,SAAA,EAAW;IACb;EACF;EAEA,MAAMC,aAAA,GACJpB,YAAA,IACAA,YAAA,CAAaqB,OAAO,CAACC,GAAG,CAAC,CAAC;IAAEC,IAAI;IAAEC;EAAK,CAAE,MAAM;IAC7CA,KAAA;IACAC,KAAA,EAAOF;EACT;EAEF,MAAMG,aAAA,GACJvB,sBAAA,EAAwBgB,SAAA,GAAYf,kBAAA,EAAoBe,SAAA,GACpDhB,sBAAA,GACAC,kBAAA;EAEN,IAAI,CAACF,GAAA,EAAK;IACR,OAAOzB,QAAA;EACT;EAEA,oBACEkD,IAAA,CAAC9C,kBAAA;IACCqB,GAAA,EAAKA,GAAA;IACL;;;;;;;IAOAD,cAAA,EAAgBvB,oBAAA,CAAqBuB,cAAA;IACrC2B,oBAAA,EAAsBF,aAAA;IACtBtB,kBAAA,EAAoBA,kBAAA,EAAoBhB,EAAA;IACxCe,sBAAA,EAAwBA,sBAAA,EAAwBf,EAAA;IAChDgC,aAAA,EAAeA,aAAA;IACfzB,SAAA,EAAWA;;AAGjB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","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","parentID","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","_jsx","initialComparisonDoc"],"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 parentID: id,\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n parentID: id,\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"],"mappings":";AASA,SAASA,QAAQ,QAAQ;AACzB,SAASC,oBAAoB,QAAQ;AACrC,OAAOC,KAAA,MAAW;AAElB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,kBAAkB,QAAQ;AAEnC,OAAO,MAAMC,WAAA,GAA8D,MAAOC,KAAA;EAChF,MAAM;IAAEC,cAAc;IAAEC;EAAa,CAAE,GAAGF,KAAA;EAE1C,MAAM;IACJG,gBAAgB;IAChBC,KAAA,EAAOC,EAAE;IACTC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHA,GAAA,EAAK;MAAEC,OAAO;MAAEA,OAAA,EAAS;QAAEC;MAAM,CAAE,GAAG,CAAC,CAAC;MAAEC;IAAI,CAAE,GAAG,CAAC;EAAC,CACtD,GAAGV,cAAA;EAEJ,MAAMW,SAAA,GAAYV,aAAa,CAACA,aAAA,CAAcW,MAAM,GAAG,EAAE;EAEzD,MAAMC,cAAA,GAAiBX,gBAAA,EAAkBY,IAAA;EACzC,MAAMC,UAAA,GAAaV,YAAA,EAAcS,IAAA;EAEjC,MAAM;IAAEE;EAAY,CAAE,GAAGP,MAAA;EAEzB,IAAIQ,cAAA;EACJ,IAAIH,IAAA;EAEJ,IAAII,GAAA;EACJ,IAAIC,sBAAA,GAAyB;EAC7B,IAAIC,kBAAA,GAAqB;EAEzB,IAAIP,cAAA,EAAgB;IAClB;IACAC,IAAA,GAAOD,cAAA;IACPI,cAAA,GAAiBX,WAAA,CAAYe,WAAW,CAACR,cAAA,CAAe;IAExD,IAAI;MACFK,GAAA,GAAM,MAAMV,OAAA,CAAQc,eAAe,CAAC;QAClClB,EAAA,EAAIO,SAAA;QACJY,UAAA,EAAYT,IAAA;QACZU,KAAA,EAAO;QACPC,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBnB,GAAA;QACAG;MACF;MAEA,IAAIR,gBAAA,EAAkByB,QAAA,EAAUC,MAAA,EAAQ;QACtCR,kBAAA,GAAqB,MAAMxB,gBAAA,CAAiB;UAC1CkB,IAAA;UACAe,IAAA,EAAM;UACNC,QAAA,EAAU1B,EAAA;UACVI,OAAA;UACAuB,MAAA,EAAQ;QACV;QACAZ,sBAAA,GAAyB,MAAMvB,gBAAA,CAAiB;UAC9CkB,IAAA;UACAe,IAAA,EAAM;UACNC,QAAA,EAAU1B,EAAA;UACVI,OAAA;UACAuB,MAAA,EAAQ;QACV;MACF;IACF,EAAE,OAAOC,KAAA,EAAO;MACd,OAAOvC,QAAA;IACT;EACF;EAEA,IAAIsB,UAAA,EAAY;IACd;IACAD,IAAA,GAAOC,UAAA;IACPE,cAAA,GAAiBX,WAAA,CAAY2B,OAAO,CAAClB,UAAA,CAAW;IAEhD,IAAI;MACFG,GAAA,GAAM,MAAMV,OAAA,CAAQ0B,qBAAqB,CAAC;QACxC9B,EAAA,EAAIO,SAAA;QACJG,IAAA;QACAU,KAAA,EAAO;QACPC,MAAA,EAAQ;QACRC,cAAA,EAAgB;QAChBnB,GAAA;QACAG;MACF;MAEA,IAAIL,YAAA,EAAcsB,QAAA,EAAUC,MAAA,EAAQ;QAClCR,kBAAA,GAAqB,MAAMxB,gBAAA,CAAiB;UAC1CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAuB,MAAA,EAAQ;QACV;QACAZ,sBAAA,GAAyB,MAAMvB,gBAAA,CAAiB;UAC9CkB,IAAA;UACAe,IAAA,EAAM;UACNrB,OAAA;UACAuB,MAAA,EAAQ;QACV;MACF;IACF,EAAE,OAAOC,KAAA,EAAO;MACd,OAAOvC,QAAA;IACT;EACF;EAEA,MAAM0C,uBAAA,GAA0BhB,sBAAA,EAAwBiB,SAAA,GAAYhB,kBAAA,EAAoBgB,SAAA;EAExF,IAAID,uBAAA,EAAyB;IAC3Bf,kBAAA,GAAqB;MACnBhB,EAAA,EAAI;MACJgC,SAAA,EAAW;IACb;EACF;EAEA,MAAMC,aAAA,GACJrB,YAAA,IACAA,YAAA,CAAasB,OAAO,CAACC,GAAG,CAAC,CAAC;IAAEC,IAAI;IAAEC;EAAK,CAAE,MAAM;IAC7CA,KAAA;IACAC,KAAA,EAAOF;EACT;EAEF,MAAMG,aAAA,GACJxB,sBAAA,EAAwBiB,SAAA,GAAYhB,kBAAA,EAAoBgB,SAAA,GACpDjB,sBAAA,GACAC,kBAAA;EAEN,IAAI,CAACF,GAAA,EAAK;IACR,OAAOzB,QAAA;EACT;EAEA,oBACEmD,IAAA,CAAC/C,kBAAA;IACCqB,GAAA,EAAKA,GAAA;IACL;;;;;;;IAOAD,cAAA,EAAgBvB,oBAAA,CAAqBuB,cAAA;IACrC4B,oBAAA,EAAsBF,aAAA;IACtBvB,kBAAA,EAAoBA,kBAAA,EAAoBhB,EAAA;IACxCe,sBAAA,EAAwBA,sBAAA,EAAwBf,EAAA;IAChDiC,aAAA,EAAeA,aAAA;IACf1B,SAAA,EAAWA;;AAGjB","ignoreList":[]}
@@ -66,6 +66,7 @@ export const CreatedAtCell = t0 => {
66
66
  }
67
67
  t4 = _jsx(Link, {
68
68
  href: to,
69
+ prefetch: false,
69
70
  children: t5
70
71
  });
71
72
  $[0] = collectionSlug;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","t0","$","collectionSlug","docID","globalSlug","config","t1","admin","t2","routes","t3","dateFormat","adminRoute","i18n","cellData","rowData","versionID","id","t4","to","t5","date","pattern","_jsx","href","children"],"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\n if (globalSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\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"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ;AACxD,SAASC,cAAc,EAAEC,UAAU,QAAQ;AAC3C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAQpC,OAAO,MAAMI,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,cAAA;IAAAC,KAAA;IAAAC;EAAA,IAAAJ,EAI3D;EACC;IAAAK,MAAA,EAAAC;EAAA,IAKIhB,SAAA;EAJM;IAAAiB,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAAAJ,EAGP;EAFQ;IAAAK;EAAA,IAAAH,EAAc;EACb;IAAAD,KAAA,EAAAK;EAAA,IAAAF,EAAqB;EAIjC;IAAAG;EAAA,IAAiBrB,cAAA;EAEjB;IAAAsB,QAAA;IAAAC;EAAA,IAA8BxB,YAAA;EAE9B,MAAAyB,SAAA,GAAkBD,OAAA,CAAAE,EAAA;EAAU,IAAAC,EAAA;EAAA,IAAAjB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAe,SAAA,IAAAf,CAAA,QAAAW,UAAA,IAAAX,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAa,QAAA,IAAAb,CAAA,QAAAY,IAAA,IAAAZ,CAAA,QAAAU,UAAA;IAExBQ,GAAA,CAAAA,EAAA;IAAA,IAEAjB,cAAA;MACFiB,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,gBAAgBjB,cAAA,IAAkBC,KAAA,aAAkBa,SAAA;MAAW,CACvE;IAHA;IAAA,IAMEZ,UAAA;MACFe,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,YAAYf,UAAA,aAAuBY,SAAA;MAAW,CACtD;IAHA;IAAA,IAAAI,EAAA;IAAA,IAAAnB,CAAA,QAAAa,QAAA,IAAAb,CAAA,SAAAY,IAAA,IAAAZ,CAAA,SAAAU,UAAA;MAQGS,EAAA,GAAAN,QAAA,IACCpB,UAAA;QAAA2B,IAAA,EAAmBP,QAAA;QAAAD,IAAA;QAAAS,OAAA,EAAmDX;MAAA,CAAW;MAAAV,CAAA,MAAAa,QAAA;MAAAb,CAAA,OAAAY,IAAA;MAAAZ,CAAA,OAAAU,UAAA;MAAAV,CAAA,OAAAmB,EAAA;IAAA;MAAAA,EAAA,GAAAnB,CAAA;IAAA;IAFrFiB,EAAA,GAAAK,IAAA,CAAA1B,IAAA;MAAA2B,IAAA,EAAYL,EAAA;MAAAM,QAAA,EACTL;IACkF,C;;;;;;;;;;;;;SAFrFF,E;CAKJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","t0","$","collectionSlug","docID","globalSlug","config","t1","admin","t2","routes","t3","dateFormat","adminRoute","i18n","cellData","rowData","versionID","id","t4","to","t5","date","pattern","_jsx","href","prefetch","children"],"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\n if (globalSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\n }\n\n return (\n <Link href={to} prefetch={false}>\n {cellData &&\n formatDate({ date: cellData as Date | number | string, i18n, pattern: dateFormat })}\n </Link>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ;AACxD,SAASC,cAAc,EAAEC,UAAU,QAAQ;AAC3C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAQpC,OAAO,MAAMI,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,cAAA;IAAAC,KAAA;IAAAC;EAAA,IAAAJ,EAI3D;EACC;IAAAK,MAAA,EAAAC;EAAA,IAKIhB,SAAA;EAJM;IAAAiB,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAAAJ,EAGP;EAFQ;IAAAK;EAAA,IAAAH,EAAc;EACb;IAAAD,KAAA,EAAAK;EAAA,IAAAF,EAAqB;EAIjC;IAAAG;EAAA,IAAiBrB,cAAA;EAEjB;IAAAsB,QAAA;IAAAC;EAAA,IAA8BxB,YAAA;EAE9B,MAAAyB,SAAA,GAAkBD,OAAA,CAAAE,EAAA;EAAU,IAAAC,EAAA;EAAA,IAAAjB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAe,SAAA,IAAAf,CAAA,QAAAW,UAAA,IAAAX,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAa,QAAA,IAAAb,CAAA,QAAAY,IAAA,IAAAZ,CAAA,QAAAU,UAAA;IAExBQ,GAAA,CAAAA,EAAA;IAAA,IAEAjB,cAAA;MACFiB,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,gBAAgBjB,cAAA,IAAkBC,KAAA,aAAkBa,SAAA;MAAW,CACvE;IAHA;IAAA,IAMEZ,UAAA;MACFe,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,YAAYf,UAAA,aAAuBY,SAAA;MAAW,CACtD;IAHA;IAAA,IAAAI,EAAA;IAAA,IAAAnB,CAAA,QAAAa,QAAA,IAAAb,CAAA,SAAAY,IAAA,IAAAZ,CAAA,SAAAU,UAAA;MAQGS,EAAA,GAAAN,QAAA,IACCpB,UAAA;QAAA2B,IAAA,EAAmBP,QAAA;QAAAD,IAAA;QAAAS,OAAA,EAAmDX;MAAA,CAAW;MAAAV,CAAA,MAAAa,QAAA;MAAAb,CAAA,OAAAY,IAAA;MAAAZ,CAAA,OAAAU,UAAA;MAAAV,CAAA,OAAAmB,EAAA;IAAA;MAAAA,EAAA,GAAAnB,CAAA;IAAA;IAFrFiB,EAAA,GAAAK,IAAA,CAAA1B,IAAA;MAAA2B,IAAA,EAAYL,EAAA;MAAAM,QAAA;MAAAC,QAAA,EACTN;IACkF,C;;;;;;;;;;;;;SAFrFF,E;CAKJ","ignoreList":[]}
@@ -4,6 +4,7 @@ type ReturnType = {
4
4
  updatedAt: string;
5
5
  } | null;
6
6
  type Args = {
7
+ parentID?: number | string;
7
8
  payload: Payload;
8
9
  slug: string;
9
10
  status: 'draft' | 'published';
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAsCtE"}
1
+ {"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,SAAS,CAAA;AAE7C,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAoDtE"}
@@ -2,18 +2,29 @@ export async function getLatestVersion(args) {
2
2
  const {
3
3
  slug,
4
4
  type = 'collection',
5
+ parentID,
5
6
  payload,
6
7
  status
7
8
  } = args;
9
+ const and = [{
10
+ 'version._status': {
11
+ equals: status
12
+ }
13
+ }];
14
+ if (type === 'collection' && parentID) {
15
+ and.push({
16
+ parent: {
17
+ equals: parentID
18
+ }
19
+ });
20
+ }
8
21
  try {
9
22
  const sharedOptions = {
10
23
  depth: 0,
11
24
  limit: 1,
12
25
  sort: '-updatedAt',
13
26
  where: {
14
- 'version._status': {
15
- equals: status
16
- }
27
+ and
17
28
  }
18
29
  };
19
30
  const response = type === 'collection' ? await payload.findVersions({
@@ -31,7 +42,7 @@ export async function getLatestVersion(args) {
31
42
  updatedAt: response.docs[0].updatedAt
32
43
  };
33
44
  } catch (e) {
34
- console.error(e);
45
+ payload.logger.error(e);
35
46
  return null;
36
47
  }
37
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestVersion.js","names":["getLatestVersion","args","slug","type","payload","status","sharedOptions","depth","limit","sort","where","equals","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","e","console","error"],"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n payload: Payload\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', payload, status } = args\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n sort: '-updatedAt',\n where: {\n 'version._status': {\n equals: status,\n },\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (e) {\n console.error(e)\n return null\n }\n}\n"],"mappings":"AAaA,OAAO,eAAeA,iBAAiBC,IAAU;EAC/C,MAAM;IAAEC,IAAI;IAAEC,IAAA,GAAO,YAAY;IAAEC,OAAO;IAAEC;EAAM,CAAE,GAAGJ,IAAA;EAEvD,IAAI;IACF,MAAMK,aAAA,GAAgB;MACpBC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,IAAA,EAAM;MACNC,KAAA,EAAO;QACL,mBAAmB;UACjBC,MAAA,EAAQN;QACV;MACF;IACF;IAEA,MAAMO,QAAA,GACJT,IAAA,KAAS,eACL,MAAMC,OAAA,CAAQS,YAAY,CAAC;MACzBC,UAAA,EAAYZ,IAAA;MACZ,GAAGI;IACL,KACA,MAAMF,OAAA,CAAQW,kBAAkB,CAAC;MAC/Bb,IAAA;MACA,GAAGI;IACL;IAEN,IAAI,CAACM,QAAA,CAASI,IAAI,CAACC,MAAM,EAAE;MACzB,OAAO;IACT;IAEA,OAAO;MACLC,EAAA,EAAIN,QAAA,CAASI,IAAI,CAAC,EAAE,CAACE,EAAE;MACvBC,SAAA,EAAWP,QAAA,CAASI,IAAI,CAAC,EAAE,CAACG;IAC9B;EACF,EAAE,OAAOC,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAACF,CAAA;IACd,OAAO;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"file":"getLatestVersion.js","names":["getLatestVersion","args","slug","type","parentID","payload","status","and","equals","push","parent","sharedOptions","depth","limit","sort","where","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","e","logger","error"],"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload, Where } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n parentID?: number | string\n payload: Payload\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', parentID, payload, status } = args\n\n const and: Where[] = [\n {\n 'version._status': {\n equals: status,\n },\n },\n ]\n\n if (type === 'collection' && parentID) {\n and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n sort: '-updatedAt',\n where: {\n and,\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (e) {\n payload.logger.error(e)\n return null\n }\n}\n"],"mappings":"AAcA,OAAO,eAAeA,iBAAiBC,IAAU;EAC/C,MAAM;IAAEC,IAAI;IAAEC,IAAA,GAAO,YAAY;IAAEC,QAAQ;IAAEC,OAAO;IAAEC;EAAM,CAAE,GAAGL,IAAA;EAEjE,MAAMM,GAAA,GAAe,CACnB;IACE,mBAAmB;MACjBC,MAAA,EAAQF;IACV;EACF,EACD;EAED,IAAIH,IAAA,KAAS,gBAAgBC,QAAA,EAAU;IACrCG,GAAA,CAAIE,IAAI,CAAC;MACPC,MAAA,EAAQ;QACNF,MAAA,EAAQJ;MACV;IACF;EACF;EAEA,IAAI;IACF,MAAMO,aAAA,GAAgB;MACpBC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,IAAA,EAAM;MACNC,KAAA,EAAO;QACLR;MACF;IACF;IAEA,MAAMS,QAAA,GACJb,IAAA,KAAS,eACL,MAAME,OAAA,CAAQY,YAAY,CAAC;MACzBC,UAAA,EAAYhB,IAAA;MACZ,GAAGS;IACL,KACA,MAAMN,OAAA,CAAQc,kBAAkB,CAAC;MAC/BjB,IAAA;MACA,GAAGS;IACL;IAEN,IAAI,CAACK,QAAA,CAASI,IAAI,CAACC,MAAM,EAAE;MACzB,OAAO;IACT;IAEA,OAAO;MACLC,EAAA,EAAIN,QAAA,CAASI,IAAI,CAAC,EAAE,CAACE,EAAE;MACvBC,SAAA,EAAWP,QAAA,CAASI,IAAI,CAAC,EAAE,CAACG;IAC9B;EACF,EAAE,OAAOC,CAAA,EAAG;IACVnB,OAAA,CAAQoB,MAAM,CAACC,KAAK,CAACF,CAAA;IACrB,OAAO;EACT;AACF","ignoreList":[]}
@@ -1 +1 @@
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,CA+LvE,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,CAiMvE,CAAA"}
@@ -78,19 +78,20 @@ export const VersionsView = async props => {
78
78
  latestDraftVersion = await getLatestVersion({
79
79
  slug: collectionSlug,
80
80
  type: 'collection',
81
+ parentID: id,
81
82
  payload,
82
83
  status: 'draft'
83
84
  });
84
85
  latestPublishedVersion = await getLatestVersion({
85
86
  slug: collectionSlug,
86
87
  type: 'collection',
88
+ parentID: id,
87
89
  payload,
88
90
  status: 'published'
89
91
  });
90
92
  }
91
93
  } catch (error) {
92
- console.error(error) // eslint-disable-line no-console
93
- ;
94
+ payload.logger.error(error);
94
95
  }
95
96
  }
96
97
  if (globalSlug) {
@@ -127,8 +128,7 @@ export const VersionsView = async props => {
127
128
  });
128
129
  }
129
130
  } catch (error) {
130
- console.error(error) // eslint-disable-line no-console
131
- ;
131
+ payload.logger.error(error);
132
132
  }
133
133
  if (!versionsData) {
134
134
  return notFound();