@payloadcms/next 3.0.0-canary.518fabe → 3.0.0-canary.51be7be

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 (271) hide show
  1. package/dist/cjs/withPayload.cjs +145 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
  4. package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
  5. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  6. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +28 -24
  7. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  8. package/dist/elements/DocumentHeader/index.scss +44 -42
  9. package/dist/elements/DocumentLocked/index.d.ts +12 -0
  10. package/dist/elements/DocumentLocked/index.d.ts.map +1 -0
  11. package/dist/elements/DocumentLocked/index.js +142 -0
  12. package/dist/elements/DocumentLocked/index.js.map +1 -0
  13. package/dist/elements/DocumentLocked/index.scss +39 -0
  14. package/dist/elements/DocumentTakeOver/index.d.ts +8 -0
  15. package/dist/elements/DocumentTakeOver/index.d.ts.map +1 -0
  16. package/dist/elements/DocumentTakeOver/index.js +98 -0
  17. package/dist/elements/DocumentTakeOver/index.js.map +1 -0
  18. package/dist/elements/DocumentTakeOver/index.scss +39 -0
  19. package/dist/elements/FormHeader/index.d.ts +9 -0
  20. package/dist/elements/FormHeader/index.d.ts.map +1 -0
  21. package/dist/elements/FormHeader/index.js +20 -0
  22. package/dist/elements/FormHeader/index.js.map +1 -0
  23. package/dist/elements/FormHeader/index.scss +8 -0
  24. package/dist/elements/LeaveWithoutSaving/index.scss +28 -26
  25. package/dist/elements/Nav/NavWrapper/index.scss +21 -14
  26. package/dist/elements/Nav/index.scss +127 -121
  27. package/dist/exports/utilities.d.ts +1 -0
  28. package/dist/exports/utilities.d.ts.map +1 -1
  29. package/dist/exports/utilities.js +1 -0
  30. package/dist/exports/utilities.js.map +1 -1
  31. package/dist/layouts/Root/index.d.ts.map +1 -1
  32. package/dist/layouts/Root/index.js +55 -23
  33. package/dist/layouts/Root/index.js.map +1 -1
  34. package/dist/prod/styles.css +1 -1
  35. package/dist/routes/graphql/handler.d.ts.map +1 -1
  36. package/dist/routes/graphql/handler.js +23 -11
  37. package/dist/routes/graphql/handler.js.map +1 -1
  38. package/dist/routes/rest/auth/login.js +2 -2
  39. package/dist/routes/rest/auth/login.js.map +1 -1
  40. package/dist/routes/rest/auth/logout.d.ts.map +1 -1
  41. package/dist/routes/rest/auth/logout.js +3 -2
  42. package/dist/routes/rest/auth/logout.js.map +1 -1
  43. package/dist/routes/rest/auth/refresh.js +2 -2
  44. package/dist/routes/rest/auth/refresh.js.map +1 -1
  45. package/dist/routes/rest/auth/registerFirstUser.js +2 -2
  46. package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
  47. package/dist/routes/rest/auth/resetPassword.js +2 -2
  48. package/dist/routes/rest/auth/resetPassword.js.map +1 -1
  49. package/dist/routes/rest/collections/delete.d.ts.map +1 -1
  50. package/dist/routes/rest/collections/delete.js +2 -0
  51. package/dist/routes/rest/collections/delete.js.map +1 -1
  52. package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
  53. package/dist/routes/rest/collections/deleteByID.js +2 -0
  54. package/dist/routes/rest/collections/deleteByID.js.map +1 -1
  55. package/dist/routes/rest/collections/find.d.ts.map +1 -1
  56. package/dist/routes/rest/collections/find.js +3 -0
  57. package/dist/routes/rest/collections/find.js.map +1 -1
  58. package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
  59. package/dist/routes/rest/collections/findByID.js +2 -0
  60. package/dist/routes/rest/collections/findByID.js.map +1 -1
  61. package/dist/routes/rest/collections/update.d.ts.map +1 -1
  62. package/dist/routes/rest/collections/update.js +4 -0
  63. package/dist/routes/rest/collections/update.js.map +1 -1
  64. package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
  65. package/dist/routes/rest/collections/updateByID.js +4 -0
  66. package/dist/routes/rest/collections/updateByID.js.map +1 -1
  67. package/dist/routes/rest/globals/update.d.ts.map +1 -1
  68. package/dist/routes/rest/globals/update.js +2 -0
  69. package/dist/routes/rest/globals/update.js.map +1 -1
  70. package/dist/routes/rest/index.d.ts +12 -12
  71. package/dist/routes/rest/index.d.ts.map +1 -1
  72. package/dist/routes/rest/index.js +17 -15
  73. package/dist/routes/rest/index.js.map +1 -1
  74. package/dist/routes/rest/routeError.d.ts +2 -7
  75. package/dist/routes/rest/routeError.d.ts.map +1 -1
  76. package/dist/routes/rest/routeError.js +33 -19
  77. package/dist/routes/rest/routeError.js.map +1 -1
  78. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +13 -0
  79. package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -0
  80. package/dist/routes/rest/utilities/sanitizeJoinParams.js +17 -0
  81. package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -0
  82. package/dist/scss/app.scss +166 -162
  83. package/dist/scss/colors.scss +256 -254
  84. package/dist/scss/resets.scss +9 -7
  85. package/dist/scss/toastify.scss +42 -40
  86. package/dist/scss/toasts.scss +105 -103
  87. package/dist/scss/type.scss +80 -79
  88. package/dist/templates/Default/Wrapper/index.scss +38 -36
  89. package/dist/templates/Default/index.d.ts.map +1 -1
  90. package/dist/templates/Default/index.js +18 -6
  91. package/dist/templates/Default/index.js.map +1 -1
  92. package/dist/templates/Default/index.scss +62 -50
  93. package/dist/templates/Minimal/index.scss +22 -20
  94. package/dist/utilities/getNextRequestI18n.js +2 -2
  95. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  96. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  97. package/dist/utilities/getRequestTheme.js +3 -0
  98. package/dist/utilities/getRequestTheme.js.map +1 -1
  99. package/dist/utilities/initPage/handleAdminPage.d.ts +12 -11
  100. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  101. package/dist/utilities/initPage/handleAdminPage.js +9 -21
  102. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  103. package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
  104. package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
  105. package/dist/utilities/initPage/handleAuthRedirect.js +23 -36
  106. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  107. package/dist/utilities/initPage/index.d.ts +1 -1
  108. package/dist/utilities/initPage/index.d.ts.map +1 -1
  109. package/dist/utilities/initPage/index.js +44 -42
  110. package/dist/utilities/initPage/index.js.map +1 -1
  111. package/dist/utilities/initPage/shared.d.ts +2 -2
  112. package/dist/utilities/initPage/shared.d.ts.map +1 -1
  113. package/dist/utilities/initPage/shared.js +18 -13
  114. package/dist/utilities/initPage/shared.js.map +1 -1
  115. package/dist/utilities/initReq.d.ts +11 -0
  116. package/dist/utilities/initReq.d.ts.map +1 -0
  117. package/dist/utilities/initReq.js +46 -0
  118. package/dist/utilities/initReq.js.map +1 -0
  119. package/dist/views/API/RenderJSON/index.scss +68 -66
  120. package/dist/views/API/index.scss +98 -96
  121. package/dist/views/Account/Settings/index.d.ts +2 -1
  122. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  123. package/dist/views/Account/Settings/index.js +3 -2
  124. package/dist/views/Account/Settings/index.js.map +1 -1
  125. package/dist/views/Account/Settings/index.scss +37 -35
  126. package/dist/views/Account/index.d.ts.map +1 -1
  127. package/dist/views/Account/index.js +4 -2
  128. package/dist/views/Account/index.js.map +1 -1
  129. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  130. package/dist/views/CreateFirstUser/index.client.js +35 -16
  131. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  132. package/dist/views/CreateFirstUser/index.scss +13 -11
  133. package/dist/views/Dashboard/Default/index.d.ts +8 -1
  134. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  135. package/dist/views/Dashboard/Default/index.js +14 -2
  136. package/dist/views/Dashboard/Default/index.js.map +1 -1
  137. package/dist/views/Dashboard/Default/index.scss +53 -46
  138. package/dist/views/Dashboard/index.d.ts.map +1 -1
  139. package/dist/views/Dashboard/index.js +16 -1
  140. package/dist/views/Dashboard/index.js.map +1 -1
  141. package/dist/views/Document/getDocumentData.d.ts +5 -2
  142. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  143. package/dist/views/Document/getDocumentData.js +13 -2
  144. package/dist/views/Document/getDocumentData.js.map +1 -1
  145. package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
  146. package/dist/views/Document/getDocumentPermissions.js +4 -1
  147. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  148. package/dist/views/Edit/Default/Auth/index.scss +56 -54
  149. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  150. package/dist/views/Edit/Default/index.js +127 -14
  151. package/dist/views/Edit/Default/index.js.map +1 -1
  152. package/dist/views/Edit/Default/index.scss +15 -13
  153. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  154. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +12 -11
  155. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  156. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  157. package/dist/views/ForgotPassword/index.js +8 -8
  158. package/dist/views/ForgotPassword/index.js.map +1 -1
  159. package/dist/views/List/Default/index.d.ts.map +1 -1
  160. package/dist/views/List/Default/index.js +62 -58
  161. package/dist/views/List/Default/index.js.map +1 -1
  162. package/dist/views/List/Default/index.scss +136 -134
  163. package/dist/views/List/index.d.ts.map +1 -1
  164. package/dist/views/List/index.js +1 -0
  165. package/dist/views/List/index.js.map +1 -1
  166. package/dist/views/LivePreview/IFrame/index.scss +8 -6
  167. package/dist/views/LivePreview/Preview/index.scss +32 -30
  168. package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
  169. package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
  170. package/dist/views/LivePreview/Toolbar/index.scss +33 -31
  171. package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
  172. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  173. package/dist/views/LivePreview/index.client.js +214 -200
  174. package/dist/views/LivePreview/index.client.js.map +1 -1
  175. package/dist/views/LivePreview/index.scss +48 -46
  176. package/dist/views/LivePreview/usePopupWindow.js +119 -74
  177. package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
  178. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  179. package/dist/views/Login/LoginForm/index.js +3 -3
  180. package/dist/views/Login/LoginForm/index.js.map +1 -1
  181. package/dist/views/Login/LoginForm/index.scss +8 -6
  182. package/dist/views/Login/index.scss +8 -6
  183. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  184. package/dist/views/Logout/LogoutClient.js +77 -55
  185. package/dist/views/Logout/LogoutClient.js.map +1 -1
  186. package/dist/views/Logout/index.scss +17 -15
  187. package/dist/views/NotFound/index.d.ts +5 -5
  188. package/dist/views/NotFound/index.d.ts.map +1 -1
  189. package/dist/views/NotFound/index.js +4 -2
  190. package/dist/views/NotFound/index.js.map +1 -1
  191. package/dist/views/NotFound/index.scss +38 -36
  192. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
  193. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
  194. package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +16 -19
  195. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
  196. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  197. package/dist/views/ResetPassword/index.js +17 -10
  198. package/dist/views/ResetPassword/index.js.map +1 -1
  199. package/dist/views/ResetPassword/index.scss +6 -26
  200. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  201. package/dist/views/Root/getViewFromConfig.js +1 -7
  202. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  203. package/dist/views/Root/index.d.ts +5 -5
  204. package/dist/views/Root/index.d.ts.map +1 -1
  205. package/dist/views/Root/index.js +9 -4
  206. package/dist/views/Root/index.js.map +1 -1
  207. package/dist/views/Root/meta.d.ts +5 -5
  208. package/dist/views/Root/meta.d.ts.map +1 -1
  209. package/dist/views/Root/meta.js +3 -2
  210. package/dist/views/Root/meta.js.map +1 -1
  211. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  212. package/dist/views/Unauthorized/index.js +14 -7
  213. package/dist/views/Unauthorized/index.js.map +1 -1
  214. package/dist/views/Unauthorized/index.scss +4 -31
  215. package/dist/views/Verify/index.client.d.ts +7 -0
  216. package/dist/views/Verify/index.client.d.ts.map +1 -0
  217. package/dist/views/Verify/index.client.js +46 -0
  218. package/dist/views/Verify/index.client.js.map +1 -0
  219. package/dist/views/Verify/index.d.ts.map +1 -1
  220. package/dist/views/Verify/index.js +12 -11
  221. package/dist/views/Verify/index.js.map +1 -1
  222. package/dist/views/Verify/index.scss +13 -11
  223. package/dist/views/Version/Default/index.d.ts.map +1 -1
  224. package/dist/views/Version/Default/index.js +2 -0
  225. package/dist/views/Version/Default/index.js.map +1 -1
  226. package/dist/views/Version/Default/index.scss +52 -50
  227. package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
  228. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
  229. package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
  230. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
  231. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
  232. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
  233. package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
  234. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  235. package/dist/views/Version/Restore/index.js +8 -14
  236. package/dist/views/Version/Restore/index.js.map +1 -1
  237. package/dist/views/Version/Restore/index.scss +57 -55
  238. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  239. package/dist/views/Version/SelectComparison/index.js +24 -3
  240. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  241. package/dist/views/Version/SelectComparison/index.scss +12 -10
  242. package/dist/views/Version/SelectComparison/types.d.ts +1 -0
  243. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  244. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  245. package/dist/views/Version/SelectLocales/index.scss +6 -4
  246. package/dist/views/Version/index.d.ts.map +1 -1
  247. package/dist/views/Version/index.js +2 -0
  248. package/dist/views/Version/index.js.map +1 -1
  249. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  250. package/dist/views/Versions/buildColumns.js +63 -48
  251. package/dist/views/Versions/buildColumns.js.map +1 -1
  252. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  253. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -20
  254. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  255. package/dist/views/Versions/getLatestVersion.d.ts +1 -0
  256. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  257. package/dist/views/Versions/getLatestVersion.js +14 -3
  258. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  259. package/dist/views/Versions/index.d.ts.map +1 -1
  260. package/dist/views/Versions/index.js +30 -7
  261. package/dist/views/Versions/index.js.map +1 -1
  262. package/dist/views/Versions/index.scss +78 -76
  263. package/dist/withPayload.d.ts.map +1 -1
  264. package/dist/withPayload.js +4 -4
  265. package/dist/withPayload.js.map +1 -1
  266. package/package.json +24 -16
  267. package/dist/cjs/withPayload.js +0 -111
  268. package/dist/cjs/withPayload.js.map +0 -1
  269. package/dist/views/ResetPassword/index.client.d.ts +0 -7
  270. package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
  271. package/dist/views/ResetPassword/index.client.js.map +0 -1
@@ -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 +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,CA2J5C,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,CAqL5C,CAAA"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
- import { fieldBaseClass, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui';
4
+ import { fieldBaseClass, Pill, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui';
5
5
  import { formatDate } from '@payloadcms/ui/shared';
6
6
  import * as qs from 'qs-esm';
7
7
  import React, { useCallback, useEffect, useState } from 'react';
@@ -12,6 +12,7 @@ const baseOptions = [];
12
12
  export const SelectComparison = props => {
13
13
  const {
14
14
  baseURL,
15
+ draftsEnabled,
15
16
  latestDraftVersion,
16
17
  latestPublishedVersion,
17
18
  onChange,
@@ -23,7 +24,8 @@ export const SelectComparison = props => {
23
24
  config: {
24
25
  admin: {
25
26
  dateFormat
26
- }
27
+ },
28
+ localization
27
29
  }
28
30
  } = useConfig();
29
31
  const [options, setOptions] = useState(baseOptions);
@@ -59,6 +61,13 @@ export const SelectComparison = props => {
59
61
  }
60
62
  });
61
63
  }
64
+ if (localization && draftsEnabled) {
65
+ query.where.and.push({
66
+ snapshot: {
67
+ not_equals: true
68
+ }
69
+ });
70
+ }
62
71
  const search = qs.stringify(query);
63
72
  const response = await fetch(`${baseURL}?${search}`, {
64
73
  credentials: 'include',
@@ -85,19 +94,31 @@ export const SelectComparison = props => {
85
94
  };
86
95
  const additionalOptions = data.docs.map(doc => {
87
96
  const status = doc.version._status;
97
+ let publishedLocalePill = null;
98
+ const publishedLocale = doc.publishedLocale || undefined;
88
99
  const {
89
100
  currentLabel,
90
101
  latestVersion,
91
102
  pillStyle,
92
103
  previousLabel
93
104
  } = versionInfo[status] || {};
105
+ if (localization && localization?.locales && publishedLocale) {
106
+ const localeCode = Array.isArray(publishedLocale) ? publishedLocale[0] : publishedLocale;
107
+ const locale = localization.locales.find(loc => loc.code === localeCode);
108
+ const formattedLabel = locale?.label?.[i18n?.language] || locale?.label;
109
+ if (formattedLabel) {
110
+ publishedLocalePill = /*#__PURE__*/_jsx(Pill, {
111
+ children: formattedLabel
112
+ });
113
+ }
114
+ }
94
115
  return {
95
116
  label: /*#__PURE__*/_jsxs("div", {
96
117
  children: [formatDate({
97
118
  date: doc.updatedAt,
98
119
  i18n,
99
120
  pattern: dateFormat
100
- }), "  ", renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle)]
121
+ }), "  ", renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle), publishedLocalePill]
101
122
  }),
102
123
  value: doc.id
103
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fieldBaseClass","ReactSelect","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","_jsxs","date","updatedAt","pattern","existingOptions","hasNextPage","filteredOptions","filter","option","index","self","findIndex","className","Boolean","join","_jsx","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { fieldBaseClass, ReactSelect, 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) {\n return\n }\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"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["fieldBaseClass","Pill","ReactSelect","useConfig","useTranslation","formatDate","qs","React","useCallback","useEffect","useState","renderPill","baseClass","maxResultsPerRequest","baseOptions","SelectComparison","props","baseURL","draftsEnabled","latestDraftVersion","latestPublishedVersion","onChange","parentID","value","versionID","config","admin","dateFormat","localization","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","snapshot","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","publishedLocalePill","publishedLocale","locales","localeCode","Array","isArray","locale","find","loc","code","formattedLabel","label","_jsx","_jsxs","date","updatedAt","pattern","existingOptions","hasNextPage","filteredOptions","filter","option","index","self","findIndex","className","Boolean","join","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { fieldBaseClass, Pill, ReactSelect, 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 draftsEnabled,\n latestDraftVersion,\n latestPublishedVersion,\n onChange,\n parentID,\n value,\n versionID,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n localization,\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) {\n return\n }\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 if (localization && draftsEnabled) {\n query.where.and.push({\n snapshot: {\n not_equals: true,\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 let publishedLocalePill = null\n const publishedLocale = doc.publishedLocale || undefined\n const { currentLabel, latestVersion, pillStyle, previousLabel } =\n versionInfo[status] || {}\n\n if (localization && localization?.locales && publishedLocale) {\n const localeCode = Array.isArray(publishedLocale)\n ? publishedLocale[0]\n : publishedLocale\n\n const locale = localization.locales.find((loc) => loc.code === localeCode)\n const formattedLabel = locale?.label?.[i18n?.language] || locale?.label\n\n if (formattedLabel) {\n publishedLocalePill = <Pill>{formattedLabel}</Pill>\n }\n }\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 {publishedLocalePill}\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"],"mappings":"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","ignoreList":[]}
@@ -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
  }
@@ -2,6 +2,7 @@ import type { PaginatedDocs, SanitizedCollectionConfig } from 'payload';
2
2
  import type { CompareOption } from '../Default/types.js';
3
3
  export type Props = {
4
4
  baseURL: string;
5
+ draftsEnabled?: boolean;
5
6
  latestDraftVersion?: string;
6
7
  latestPublishedVersion?: string;
7
8
  onChange: (val: CompareOption) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAyB,MAAM,SAAS,CAAA;AAE9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n latestDraftVersion?: string\n latestPublishedVersion?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n value: CompareOption\n versionID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA2BA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n draftsEnabled?: boolean\n latestDraftVersion?: string\n latestPublishedVersion?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n value: CompareOption\n versionID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA4BA","ignoreList":[]}
@@ -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":"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","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":[]}
@@ -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,EAkFT,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,EAgGT,CAAA"}
@@ -21,47 +21,57 @@ export const buildVersionColumns = ({
21
21
  cellProps: {
22
22
  field: {
23
23
  name: '',
24
- type: 'date'
24
+ type: 'date',
25
+ admin: {
26
+ components: {
27
+ Cell: {
28
+ type: 'client',
29
+ Component: null,
30
+ RenderedComponent: /*#__PURE__*/_jsx(CreatedAtCell, {
31
+ collectionSlug: collectionConfig?.slug,
32
+ docID: docID,
33
+ globalSlug: globalConfig?.slug
34
+ })
35
+ },
36
+ Label: {
37
+ type: 'client',
38
+ Component: null
39
+ }
40
+ }
41
+ }
25
42
  }
26
43
  },
27
- components: {
28
- Cell: {
29
- type: 'client',
30
- Component: null,
31
- RenderedComponent: /*#__PURE__*/_jsx(CreatedAtCell, {
32
- collectionSlug: collectionConfig?.slug,
33
- docID: docID,
34
- globalSlug: globalConfig?.slug
35
- })
36
- },
37
- Heading: /*#__PURE__*/_jsx(SortColumn, {
38
- Label: t('general:updatedAt'),
39
- name: "updatedAt"
40
- })
41
- },
42
- Label: ''
44
+ Heading: /*#__PURE__*/_jsx(SortColumn, {
45
+ Label: t('general:updatedAt'),
46
+ name: "updatedAt"
47
+ })
43
48
  }, {
44
49
  accessor: 'id',
45
50
  active: true,
46
51
  cellProps: {
47
52
  field: {
48
53
  name: '',
49
- type: 'text'
54
+ type: 'text',
55
+ admin: {
56
+ components: {
57
+ Cell: {
58
+ type: 'client',
59
+ Component: null,
60
+ RenderedComponent: /*#__PURE__*/_jsx(IDCell, {})
61
+ },
62
+ Label: {
63
+ type: 'client',
64
+ Component: null
65
+ }
66
+ }
67
+ }
50
68
  }
51
69
  },
52
- components: {
53
- Cell: {
54
- type: 'client',
55
- Component: null,
56
- RenderedComponent: /*#__PURE__*/_jsx(IDCell, {})
57
- },
58
- Heading: /*#__PURE__*/_jsx(SortColumn, {
59
- disable: true,
60
- Label: t('version:versionID'),
61
- name: "id"
62
- })
63
- },
64
- Label: ''
70
+ Heading: /*#__PURE__*/_jsx(SortColumn, {
71
+ disable: true,
72
+ Label: t('version:versionID'),
73
+ name: "id"
74
+ })
65
75
  }];
66
76
  if (entityConfig?.versions?.drafts || entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave) {
67
77
  columns.push({
@@ -70,25 +80,30 @@ export const buildVersionColumns = ({
70
80
  cellProps: {
71
81
  field: {
72
82
  name: '',
73
- type: 'checkbox'
83
+ type: 'checkbox',
84
+ admin: {
85
+ components: {
86
+ Cell: {
87
+ type: 'client',
88
+ Component: null,
89
+ RenderedComponent: /*#__PURE__*/_jsx(AutosaveCell, {
90
+ latestDraftVersion: latestDraftVersion,
91
+ latestPublishedVersion: latestPublishedVersion
92
+ })
93
+ },
94
+ Label: {
95
+ type: 'client',
96
+ Component: null
97
+ }
98
+ }
99
+ }
74
100
  }
75
101
  },
76
- components: {
77
- Cell: {
78
- type: 'client',
79
- Component: null,
80
- RenderedComponent: /*#__PURE__*/_jsx(AutosaveCell, {
81
- latestDraftVersion: latestDraftVersion,
82
- latestPublishedVersion: latestPublishedVersion
83
- })
84
- },
85
- Heading: /*#__PURE__*/_jsx(SortColumn, {
86
- disable: true,
87
- Label: t('version:status'),
88
- name: "status"
89
- })
90
- },
91
- Label: ''
102
+ Heading: /*#__PURE__*/_jsx(SortColumn, {
103
+ disable: true,
104
+ Label: t('version:status'),
105
+ name: "status"
106
+ })
92
107
  });
93
108
  }
94
109
  return columns;
@@ -1 +1 @@
1
- {"version":3,"file":"buildColumns.js","names":["SortColumn","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","docID","globalConfig","i18n","t","latestDraftVersion","latestPublishedVersion","entityConfig","columns","accessor","active","cellProps","field","name","type","components","Cell","Component","RenderedComponent","_jsx","collectionSlug","slug","globalSlug","Heading","Label","disable","versions","drafts","autosave","push"],"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 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 Label: '',\n },\n {\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 disable Label={t('version:versionID')} name=\"id\" />,\n },\n Label: '',\n },\n ]\n\n if (\n entityConfig?.versions?.drafts ||\n (entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave)\n ) {\n columns.push({\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 disable Label={t('version:status')} name=\"status\" />,\n },\n Label: '',\n })\n }\n\n return columns\n}\n"],"mappings":";AAGA,SAAsBA,UAAU,QAAQ;AACxC,OAAOC,KAAA,MAAW;AAElB,SAASC,YAAY,QAAQ;AAC7B,SAASC,aAAa,QAAQ;AAC9B,SAASC,MAAM,QAAQ;AAEvB,OAAO,MAAMC,mBAAA,GAAsBA,CAAC;EAClCC,gBAAgB;EAChBC,KAAK;EACLC,YAAY;EACZC,IAAA,EAAM;IAAEC;EAAC,CAAE;EACXC,kBAAkB;EAClBC;AAAsB,CASvB;EACC,MAAMC,YAAA,GAAeP,gBAAA,IAAoBE,YAAA;EAEzC,MAAMM,OAAA,GAAoB,CACxB;IACEC,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,SAAA,EAAW;MACTC,KAAA,EAAO;QACLC,IAAA,EAAM;QACNC,IAAA,EAAM;MACR;IACF;IACAC,UAAA,EAAY;MACVC,IAAA,EAAM;QACJF,IAAA,EAAM;QACNG,SAAA,EAAW;QACXC,iBAAA,eACEC,IAAA,CAACtB,aAAA;UACCuB,cAAA,EAAgBpB,gBAAA,EAAkBqB,IAAA;UAClCpB,KAAA,EAAOA,KAAA;UACPqB,UAAA,EAAYpB,YAAA,EAAcmB;;MAGhC;MACAE,OAAA,eAASJ,IAAA,CAACzB,UAAA;QAAW8B,KAAA,EAAOpB,CAAA,CAAE;QAAsBS,IAAA,EAAK;;IAC3D;IACAW,KAAA,EAAO;EACT,GACA;IACEf,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,SAAA,EAAW;MACTC,KAAA,EAAO;QACLC,IAAA,EAAM;QACNC,IAAA,EAAM;MACR;IACF;IACAC,UAAA,EAAY;MACVC,IAAA,EAAM;QACJF,IAAA,EAAM;QACNG,SAAA,EAAW;QACXC,iBAAA,eAAmBC,IAAA,CAACrB,MAAA;MACtB;MACAyB,OAAA,eAASJ,IAAA,CAACzB,UAAA;QAAW+B,OAAO;QAACD,KAAA,EAAOpB,CAAA,CAAE;QAAsBS,IAAA,EAAK;;IACnE;IACAW,KAAA,EAAO;EACT,EACD;EAED,IACEjB,YAAA,EAAcmB,QAAA,EAAUC,MAAA,IACvBpB,YAAA,EAAcmB,QAAA,EAAUC,MAAA,IAAUpB,YAAA,CAAamB,QAAQ,CAACC,MAAM,EAAEC,QAAA,EACjE;IACApB,OAAA,CAAQqB,IAAI,CAAC;MACXpB,QAAA,EAAU;MACVC,MAAA,EAAQ;MACRC,SAAA,EAAW;QACTC,KAAA,EAAO;UACLC,IAAA,EAAM;UACNC,IAAA,EAAM;QACR;MACF;MACAC,UAAA,EAAY;QACVC,IAAA,EAAM;UACJF,IAAA,EAAM;UACNG,SAAA,EAAW;UACXC,iBAAA,eACEC,IAAA,CAACvB,YAAA;YACCS,kBAAA,EAAoBA,kBAAA;YACpBC,sBAAA,EAAwBA;;QAG9B;QAEAiB,OAAA,eAASJ,IAAA,CAACzB,UAAA;UAAW+B,OAAO;UAACD,KAAA,EAAOpB,CAAA,CAAE;UAAmBS,IAAA,EAAK;;MAChE;MACAW,KAAA,EAAO;IACT;EACF;EAEA,OAAOhB,OAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"buildColumns.js","names":["SortColumn","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","docID","globalConfig","i18n","t","latestDraftVersion","latestPublishedVersion","entityConfig","columns","accessor","active","cellProps","field","name","type","admin","components","Cell","Component","RenderedComponent","_jsx","collectionSlug","slug","globalSlug","Label","Heading","disable","versions","drafts","autosave","push"],"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 accessor: 'updatedAt',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'date',\n admin: {\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 Label: {\n type: 'client',\n Component: null,\n },\n },\n },\n },\n },\n Heading: <SortColumn Label={t('general:updatedAt')} name=\"updatedAt\" />,\n },\n {\n accessor: 'id',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'text',\n admin: {\n components: {\n Cell: {\n type: 'client',\n Component: null,\n RenderedComponent: <IDCell />,\n },\n Label: {\n type: 'client',\n Component: null,\n },\n },\n },\n },\n },\n Heading: <SortColumn disable Label={t('version:versionID')} name=\"id\" />,\n },\n ]\n\n if (\n entityConfig?.versions?.drafts ||\n (entityConfig?.versions?.drafts && entityConfig.versions.drafts?.autosave)\n ) {\n columns.push({\n accessor: '_status',\n active: true,\n cellProps: {\n field: {\n name: '',\n type: 'checkbox',\n admin: {\n components: {\n Cell: {\n type: 'client',\n Component: null,\n RenderedComponent: (\n <AutosaveCell\n latestDraftVersion={latestDraftVersion}\n latestPublishedVersion={latestPublishedVersion}\n />\n ),\n },\n Label: {\n type: 'client',\n Component: null,\n },\n },\n },\n },\n },\n Heading: <SortColumn disable Label={t('version:status')} name=\"status\" />,\n })\n }\n\n return columns\n}\n"],"mappings":";AAGA,SAAsBA,UAAU,QAAQ;AACxC,OAAOC,KAAA,MAAW;AAElB,SAASC,YAAY,QAAQ;AAC7B,SAASC,aAAa,QAAQ;AAC9B,SAASC,MAAM,QAAQ;AAEvB,OAAO,MAAMC,mBAAA,GAAsBA,CAAC;EAClCC,gBAAgB;EAChBC,KAAK;EACLC,YAAY;EACZC,IAAA,EAAM;IAAEC;EAAC,CAAE;EACXC,kBAAkB;EAClBC;AAAsB,CASvB;EACC,MAAMC,YAAA,GAAeP,gBAAA,IAAoBE,YAAA;EAEzC,MAAMM,OAAA,GAAoB,CACxB;IACEC,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,SAAA,EAAW;MACTC,KAAA,EAAO;QACLC,IAAA,EAAM;QACNC,IAAA,EAAM;QACNC,KAAA,EAAO;UACLC,UAAA,EAAY;YACVC,IAAA,EAAM;cACJH,IAAA,EAAM;cACNI,SAAA,EAAW;cACXC,iBAAA,eACEC,IAAA,CAACvB,aAAA;gBACCwB,cAAA,EAAgBrB,gBAAA,EAAkBsB,IAAA;gBAClCrB,KAAA,EAAOA,KAAA;gBACPsB,UAAA,EAAYrB,YAAA,EAAcoB;;YAGhC;YACAE,KAAA,EAAO;cACLV,IAAA,EAAM;cACNI,SAAA,EAAW;YACb;UACF;QACF;MACF;IACF;IACAO,OAAA,eAASL,IAAA,CAAC1B,UAAA;MAAW8B,KAAA,EAAOpB,CAAA,CAAE;MAAsBS,IAAA,EAAK;;EAC3D,GACA;IACEJ,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,SAAA,EAAW;MACTC,KAAA,EAAO;QACLC,IAAA,EAAM;QACNC,IAAA,EAAM;QACNC,KAAA,EAAO;UACLC,UAAA,EAAY;YACVC,IAAA,EAAM;cACJH,IAAA,EAAM;cACNI,SAAA,EAAW;cACXC,iBAAA,eAAmBC,IAAA,CAACtB,MAAA;YACtB;YACA0B,KAAA,EAAO;cACLV,IAAA,EAAM;cACNI,SAAA,EAAW;YACb;UACF;QACF;MACF;IACF;IACAO,OAAA,eAASL,IAAA,CAAC1B,UAAA;MAAWgC,OAAO;MAACF,KAAA,EAAOpB,CAAA,CAAE;MAAsBS,IAAA,EAAK;;EACnE,EACD;EAED,IACEN,YAAA,EAAcoB,QAAA,EAAUC,MAAA,IACvBrB,YAAA,EAAcoB,QAAA,EAAUC,MAAA,IAAUrB,YAAA,CAAaoB,QAAQ,CAACC,MAAM,EAAEC,QAAA,EACjE;IACArB,OAAA,CAAQsB,IAAI,CAAC;MACXrB,QAAA,EAAU;MACVC,MAAA,EAAQ;MACRC,SAAA,EAAW;QACTC,KAAA,EAAO;UACLC,IAAA,EAAM;UACNC,IAAA,EAAM;UACNC,KAAA,EAAO;YACLC,UAAA,EAAY;cACVC,IAAA,EAAM;gBACJH,IAAA,EAAM;gBACNI,SAAA,EAAW;gBACXC,iBAAA,eACEC,IAAA,CAACxB,YAAA;kBACCS,kBAAA,EAAoBA,kBAAA;kBACpBC,sBAAA,EAAwBA;;cAG9B;cACAkB,KAAA,EAAO;gBACLV,IAAA,EAAM;gBACNI,SAAA,EAAW;cACb;YACF;UACF;QACF;MACF;MACAO,OAAA,eAASL,IAAA,CAAC1B,UAAA;QAAWgC,OAAO;QAACF,KAAA,EAAOpB,CAAA,CAAE;QAAmBS,IAAA,EAAK;;IAChE;EACF;EAEA,OAAOL,OAAA;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Versions/cells/AutosaveCell/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,KAAK,iBAAiB,GAAG;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,UAAU,6GAWtB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqCpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Versions/cells/AutosaveCell/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,KAAK,iBAAiB,GAAG;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAChC,CAAA;AAED,eAAO,MAAM,UAAU,6GAWtB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAiDpD,CAAA"}