@payloadcms/next 3.71.0-canary.2 → 3.71.0-internal-debug.dea9d74

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 (446) hide show
  1. package/dist/auth/login.js +52 -58
  2. package/dist/auth/login.js.map +1 -1
  3. package/dist/auth/logout.js +39 -44
  4. package/dist/auth/logout.js.map +1 -1
  5. package/dist/auth/refresh.js +45 -47
  6. package/dist/auth/refresh.js.map +1 -1
  7. package/dist/cjs/withPayload.cjs +61 -23
  8. package/dist/cjs/withPayload.cjs.map +2 -2
  9. package/dist/config.js +1 -0
  10. package/dist/config.js.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +9 -15
  12. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +40 -71
  14. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +65 -59
  16. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +38 -0
  18. package/dist/elements/DocumentHeader/Tabs/index.js +80 -70
  19. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  20. package/dist/elements/DocumentHeader/Tabs/index.scss +54 -0
  21. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +16 -23
  22. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +9 -0
  24. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +61 -69
  25. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/index.js +48 -28
  27. package/dist/elements/DocumentHeader/index.js.map +1 -1
  28. package/dist/elements/DocumentHeader/index.scss +64 -0
  29. package/dist/elements/FormHeader/index.js +30 -16
  30. package/dist/elements/FormHeader/index.js.map +1 -1
  31. package/dist/elements/FormHeader/index.scss +8 -0
  32. package/dist/elements/Logo/index.js +19 -34
  33. package/dist/elements/Logo/index.js.map +1 -1
  34. package/dist/elements/Nav/NavHamburger/index.js +23 -44
  35. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  36. package/dist/elements/Nav/NavWrapper/index.js +28 -54
  37. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  38. package/dist/elements/Nav/NavWrapper/index.scss +27 -0
  39. package/dist/elements/Nav/SettingsMenuButton/index.js +33 -39
  40. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  41. package/dist/elements/Nav/SettingsMenuButton/index.scss +11 -0
  42. package/dist/elements/Nav/getNavPrefs.js +27 -22
  43. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  44. package/dist/elements/Nav/index.client.js +97 -118
  45. package/dist/elements/Nav/index.client.js.map +1 -1
  46. package/dist/elements/Nav/index.js +148 -127
  47. package/dist/elements/Nav/index.js.map +1 -1
  48. package/dist/elements/Nav/index.scss +173 -0
  49. package/dist/esbuildEntry.d.ts +5 -0
  50. package/dist/esbuildEntry.d.ts.map +1 -0
  51. package/dist/esbuildEntry.js +6 -0
  52. package/dist/esbuildEntry.js.map +1 -0
  53. package/dist/exports/auth.js +1 -0
  54. package/dist/exports/auth.js.map +1 -1
  55. package/dist/exports/client.js +1 -1
  56. package/dist/exports/client.js.map +1 -1
  57. package/dist/exports/layouts.js +1 -0
  58. package/dist/exports/layouts.js.map +1 -1
  59. package/dist/exports/routes.js +1 -0
  60. package/dist/exports/routes.js.map +1 -1
  61. package/dist/exports/rsc.js +1 -0
  62. package/dist/exports/rsc.js.map +1 -1
  63. package/dist/exports/templates.js +1 -0
  64. package/dist/exports/templates.js.map +1 -1
  65. package/dist/exports/utilities.js +7 -12
  66. package/dist/exports/utilities.js.map +1 -1
  67. package/dist/exports/views.js +1 -0
  68. package/dist/exports/views.js.map +1 -1
  69. package/dist/index.js +1 -0
  70. package/dist/index.js.map +1 -1
  71. package/dist/layouts/Root/NestProviders.js +21 -20
  72. package/dist/layouts/Root/NestProviders.js.map +1 -1
  73. package/dist/layouts/Root/checkDependencies.js +49 -41
  74. package/dist/layouts/Root/checkDependencies.js.map +1 -1
  75. package/dist/layouts/Root/index.js +128 -103
  76. package/dist/layouts/Root/index.js.map +1 -1
  77. package/dist/prod/styles.css +5 -1
  78. package/dist/routes/graphql/handler.js +114 -122
  79. package/dist/routes/graphql/handler.js.map +1 -1
  80. package/dist/routes/graphql/index.js +1 -0
  81. package/dist/routes/graphql/index.js.map +1 -1
  82. package/dist/routes/graphql/playground.js +28 -27
  83. package/dist/routes/graphql/playground.js.map +1 -1
  84. package/dist/routes/index.js +1 -0
  85. package/dist/routes/index.js.map +1 -1
  86. package/dist/routes/rest/index.js +23 -22
  87. package/dist/routes/rest/index.js.map +1 -1
  88. package/dist/routes/rest/og/image.js +103 -79
  89. package/dist/routes/rest/og/image.js.map +1 -1
  90. package/dist/routes/rest/og/index.js +59 -54
  91. package/dist/routes/rest/og/index.js.map +1 -1
  92. package/dist/templates/Default/NavHamburger/index.js +12 -20
  93. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  94. package/dist/templates/Default/Wrapper/index.js +20 -44
  95. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  96. package/dist/templates/Default/Wrapper/index.scss +58 -0
  97. package/dist/templates/Default/index.js +147 -116
  98. package/dist/templates/Default/index.js.map +1 -1
  99. package/dist/templates/Default/index.scss +79 -0
  100. package/dist/templates/Minimal/index.js +26 -17
  101. package/dist/templates/Minimal/index.js.map +1 -1
  102. package/dist/templates/Minimal/index.scss +30 -0
  103. package/dist/utilities/getExistingAuthToken.js +3 -2
  104. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  105. package/dist/utilities/getNextRequestI18n.js +12 -13
  106. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  107. package/dist/utilities/getPayloadHMR.js +5 -5
  108. package/dist/utilities/getPayloadHMR.js.map +1 -1
  109. package/dist/utilities/getPreferences.js +27 -22
  110. package/dist/utilities/getPreferences.js.map +1 -1
  111. package/dist/utilities/getRequestLocale.js +13 -14
  112. package/dist/utilities/getRequestLocale.js.map +1 -1
  113. package/dist/utilities/getRequestTheme.js +19 -19
  114. package/dist/utilities/getRequestTheme.js.map +1 -1
  115. package/dist/utilities/getRouteWithoutAdmin.js +3 -5
  116. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  117. package/dist/utilities/handleAuthRedirect.js +22 -36
  118. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  119. package/dist/utilities/handleServerFunctions.js +34 -41
  120. package/dist/utilities/handleServerFunctions.js.map +1 -1
  121. package/dist/utilities/initReq.js +78 -96
  122. package/dist/utilities/initReq.js.map +1 -1
  123. package/dist/utilities/isCustomAdminView.js +22 -26
  124. package/dist/utilities/isCustomAdminView.js.map +1 -1
  125. package/dist/utilities/isPublicAdminRoute.js +26 -20
  126. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  127. package/dist/utilities/meta.js +68 -63
  128. package/dist/utilities/meta.js.map +1 -1
  129. package/dist/utilities/selectiveCache.js +25 -26
  130. package/dist/utilities/selectiveCache.js.map +1 -1
  131. package/dist/utilities/setPayloadAuthCookie.js +19 -22
  132. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  133. package/dist/utilities/slugify.js +24 -33
  134. package/dist/utilities/slugify.js.map +1 -1
  135. package/dist/utilities/timestamp.js +7 -6
  136. package/dist/utilities/timestamp.js.map +1 -1
  137. package/dist/views/API/LocaleSelector/index.js +17 -39
  138. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  139. package/dist/views/API/RenderJSON/index.js +171 -126
  140. package/dist/views/API/RenderJSON/index.js.map +1 -1
  141. package/dist/views/API/RenderJSON/index.scss +129 -0
  142. package/dist/views/API/index.client.js +290 -197
  143. package/dist/views/API/index.client.js.map +1 -1
  144. package/dist/views/API/index.js +7 -2
  145. package/dist/views/API/index.js.map +1 -1
  146. package/dist/views/API/index.scss +119 -0
  147. package/dist/views/API/metadata.js +18 -23
  148. package/dist/views/API/metadata.js.map +1 -1
  149. package/dist/views/Account/ResetPreferences/index.js +78 -102
  150. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  151. package/dist/views/Account/Settings/LanguageSelector.js +18 -47
  152. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  153. package/dist/views/Account/Settings/index.js +60 -25
  154. package/dist/views/Account/Settings/index.js.map +1 -1
  155. package/dist/views/Account/Settings/index.scss +48 -0
  156. package/dist/views/Account/ToggleTheme/index.js +38 -55
  157. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  158. package/dist/views/Account/index.client.js +16 -32
  159. package/dist/views/Account/index.client.js.map +1 -1
  160. package/dist/views/Account/index.js +147 -158
  161. package/dist/views/Account/index.js.map +1 -1
  162. package/dist/views/Account/metadata.js +8 -12
  163. package/dist/views/Account/metadata.js.map +1 -1
  164. package/dist/views/BrowseByFolder/buildView.js +138 -157
  165. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  166. package/dist/views/BrowseByFolder/index.js +16 -16
  167. package/dist/views/BrowseByFolder/index.js.map +1 -1
  168. package/dist/views/BrowseByFolder/metadata.js +13 -15
  169. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  170. package/dist/views/CollectionFolders/buildView.js +122 -142
  171. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  172. package/dist/views/CollectionFolders/index.js +16 -16
  173. package/dist/views/CollectionFolders/index.js.map +1 -1
  174. package/dist/views/CollectionFolders/metadata.js +18 -21
  175. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  176. package/dist/views/CollectionFolders/renderFolderViewSlots.js +58 -61
  177. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  178. package/dist/views/CollectionTrash/index.js +17 -17
  179. package/dist/views/CollectionTrash/index.js.map +1 -1
  180. package/dist/views/CollectionTrash/metadata.js +18 -21
  181. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  182. package/dist/views/CreateFirstUser/index.client.js +117 -103
  183. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  184. package/dist/views/CreateFirstUser/index.js +87 -81
  185. package/dist/views/CreateFirstUser/index.js.map +1 -1
  186. package/dist/views/CreateFirstUser/index.scss +21 -0
  187. package/dist/views/CreateFirstUser/metadata.js +8 -12
  188. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  189. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +147 -138
  190. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  191. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +423 -405
  192. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  193. package/dist/views/Dashboard/Default/ModularDashboard/index.js +72 -75
  194. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  195. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +316 -0
  196. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +62 -89
  197. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  198. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +40 -47
  199. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  200. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +64 -65
  201. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  202. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +164 -147
  203. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  204. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +31 -30
  205. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  206. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +223 -229
  207. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  208. package/dist/views/Dashboard/Default/index.js +59 -45
  209. package/dist/views/Dashboard/Default/index.js.map +1 -1
  210. package/dist/views/Dashboard/index.js +46 -42
  211. package/dist/views/Dashboard/index.js.map +1 -1
  212. package/dist/views/Dashboard/metadata.js +10 -14
  213. package/dist/views/Dashboard/metadata.js.map +1 -1
  214. package/dist/views/Document/getCustomDocumentViewByKey.js +3 -2
  215. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  216. package/dist/views/Document/getCustomViewByRoute.js +27 -30
  217. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  218. package/dist/views/Document/getDocPreferences.js +40 -41
  219. package/dist/views/Document/getDocPreferences.js.map +1 -1
  220. package/dist/views/Document/getDocumentData.js +44 -55
  221. package/dist/views/Document/getDocumentData.js.map +1 -1
  222. package/dist/views/Document/getDocumentPermissions.js +77 -80
  223. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  224. package/dist/views/Document/getDocumentView.js +313 -283
  225. package/dist/views/Document/getDocumentView.js.map +1 -1
  226. package/dist/views/Document/getIsLocked.js +66 -66
  227. package/dist/views/Document/getIsLocked.js.map +1 -1
  228. package/dist/views/Document/getMetaBySegment.js +130 -136
  229. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  230. package/dist/views/Document/getVersions.js +205 -195
  231. package/dist/views/Document/getVersions.js.map +1 -1
  232. package/dist/views/Document/handleServerFunction.js +103 -128
  233. package/dist/views/Document/handleServerFunction.js.map +1 -1
  234. package/dist/views/Document/index.js +316 -355
  235. package/dist/views/Document/index.js.map +1 -1
  236. package/dist/views/Document/metadata.js +2 -1
  237. package/dist/views/Document/metadata.js.map +1 -1
  238. package/dist/views/Document/renderDocumentSlots.js +121 -132
  239. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  240. package/dist/views/Edit/index.js +10 -6
  241. package/dist/views/Edit/index.js.map +1 -1
  242. package/dist/views/Edit/metadata.js +36 -46
  243. package/dist/views/Edit/metadata.js.map +1 -1
  244. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +130 -164
  245. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  246. package/dist/views/ForgotPassword/index.js +79 -62
  247. package/dist/views/ForgotPassword/index.js.map +1 -1
  248. package/dist/views/ForgotPassword/metadata.js +8 -12
  249. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  250. package/dist/views/List/createSerializableValue.js +12 -11
  251. package/dist/views/List/createSerializableValue.js.map +1 -1
  252. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  253. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  254. package/dist/views/List/extractRelationshipDisplayValue.js +15 -14
  255. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  256. package/dist/views/List/extractValueOrRelationshipID.js +16 -15
  257. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  258. package/dist/views/List/handleGroupBy.js +133 -150
  259. package/dist/views/List/handleGroupBy.js.map +1 -1
  260. package/dist/views/List/handleServerFunction.js +98 -121
  261. package/dist/views/List/handleServerFunction.js.map +1 -1
  262. package/dist/views/List/index.js +305 -323
  263. package/dist/views/List/index.js.map +1 -1
  264. package/dist/views/List/metadata.js +17 -20
  265. package/dist/views/List/metadata.js.map +1 -1
  266. package/dist/views/List/renderListViewSlots.js +82 -75
  267. package/dist/views/List/renderListViewSlots.js.map +1 -1
  268. package/dist/views/List/resolveAllFilterOptions.js +43 -45
  269. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  270. package/dist/views/List/transformColumnsToSelect.js +9 -8
  271. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  272. package/dist/views/Login/LoginField/index.js +57 -89
  273. package/dist/views/Login/LoginField/index.js.map +1 -1
  274. package/dist/views/Login/LoginForm/index.js +107 -160
  275. package/dist/views/Login/LoginForm/index.js.map +1 -1
  276. package/dist/views/Login/LoginForm/index.scss +10 -0
  277. package/dist/views/Login/index.js +82 -85
  278. package/dist/views/Login/index.js.map +1 -1
  279. package/dist/views/Login/index.scss +10 -0
  280. package/dist/views/Login/metadata.js +8 -12
  281. package/dist/views/Login/metadata.js.map +1 -1
  282. package/dist/views/Logout/LogoutClient.js +84 -120
  283. package/dist/views/Logout/LogoutClient.js.map +1 -1
  284. package/dist/views/Logout/index.js +29 -29
  285. package/dist/views/Logout/index.js.map +1 -1
  286. package/dist/views/Logout/index.scss +25 -0
  287. package/dist/views/Logout/metadata.js +7 -11
  288. package/dist/views/Logout/metadata.js.map +1 -1
  289. package/dist/views/NotFound/index.client.js +71 -82
  290. package/dist/views/NotFound/index.client.js.map +1 -1
  291. package/dist/views/NotFound/index.js +72 -73
  292. package/dist/views/NotFound/index.js.map +1 -1
  293. package/dist/views/NotFound/index.scss +57 -0
  294. package/dist/views/NotFound/metadata.js +7 -9
  295. package/dist/views/NotFound/metadata.js.map +1 -1
  296. package/dist/views/ResetPassword/ResetPasswordForm/index.js +97 -108
  297. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  298. package/dist/views/ResetPassword/index.js +93 -73
  299. package/dist/views/ResetPassword/index.js.map +1 -1
  300. package/dist/views/ResetPassword/index.scss +11 -0
  301. package/dist/views/ResetPassword/metadata.js +8 -12
  302. package/dist/views/ResetPassword/metadata.js.map +1 -1
  303. package/dist/views/Root/attachViewActions.js +18 -23
  304. package/dist/views/Root/attachViewActions.js.map +1 -1
  305. package/dist/views/Root/generateCustomViewMetadata.js +19 -21
  306. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  307. package/dist/views/Root/getCustomViewByKey.js +12 -14
  308. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  309. package/dist/views/Root/getCustomViewByRoute.js +31 -42
  310. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  311. package/dist/views/Root/getDocumentViewInfo.js +24 -23
  312. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  313. package/dist/views/Root/getRouteData.js +333 -325
  314. package/dist/views/Root/getRouteData.js.map +1 -1
  315. package/dist/views/Root/index.js +248 -270
  316. package/dist/views/Root/index.js.map +1 -1
  317. package/dist/views/Root/isPathMatchingRoute.js +21 -26
  318. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  319. package/dist/views/Root/metadata.js +176 -181
  320. package/dist/views/Root/metadata.js.map +1 -1
  321. package/dist/views/Unauthorized/index.js +54 -46
  322. package/dist/views/Unauthorized/index.js.map +1 -1
  323. package/dist/views/Unauthorized/index.scss +14 -0
  324. package/dist/views/Unauthorized/metadata.js +8 -12
  325. package/dist/views/Unauthorized/metadata.js.map +1 -1
  326. package/dist/views/Verify/index.client.js +25 -43
  327. package/dist/views/Verify/index.client.js.map +1 -1
  328. package/dist/views/Verify/index.js +69 -64
  329. package/dist/views/Verify/index.js.map +1 -1
  330. package/dist/views/Verify/index.scss +16 -0
  331. package/dist/views/Verify/metadata.js +8 -12
  332. package/dist/views/Verify/metadata.js.map +1 -1
  333. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  334. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  335. package/dist/views/Version/Default/SetStepNav.js +86 -127
  336. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  337. package/dist/views/Version/Default/index.js +380 -236
  338. package/dist/views/Version/Default/index.js.map +1 -1
  339. package/dist/views/Version/Default/index.scss +170 -0
  340. package/dist/views/Version/Default/types.js +2 -1
  341. package/dist/views/Version/Default/types.js.map +1 -1
  342. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +102 -119
  343. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  344. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +81 -0
  345. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +78 -73
  346. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  347. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +363 -408
  348. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  349. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +40 -51
  350. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  351. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +35 -67
  352. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +12 -0
  354. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +59 -56
  355. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  356. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +9 -0
  357. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +139 -117
  358. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  359. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +59 -0
  360. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +36 -41
  361. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  362. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +192 -178
  363. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  364. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +91 -0
  365. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +17 -11
  366. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +48 -73
  368. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +4 -0
  370. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +132 -143
  371. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  372. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +9 -0
  373. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +56 -81
  374. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  375. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +4 -0
  376. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +252 -211
  377. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  378. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +121 -0
  379. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +23 -22
  380. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  381. package/dist/views/Version/RenderFieldsToDiff/index.js +12 -9
  382. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  383. package/dist/views/Version/RenderFieldsToDiff/index.scss +24 -0
  384. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +213 -228
  385. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  386. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +1005 -826
  387. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  388. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +2 -1
  389. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  390. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +44 -43
  391. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  392. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +32 -36
  393. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  394. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +145 -129
  395. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  396. package/dist/views/Version/Restore/index.js +117 -93
  397. package/dist/views/Version/Restore/index.js.map +1 -1
  398. package/dist/views/Version/Restore/index.scss +84 -0
  399. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +33 -50
  400. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  401. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +170 -226
  402. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  403. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +18 -0
  404. package/dist/views/Version/SelectComparison/index.js +73 -50
  405. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  406. package/dist/views/Version/SelectComparison/index.scss +9 -0
  407. package/dist/views/Version/SelectComparison/types.js +2 -1
  408. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  409. package/dist/views/Version/SelectLocales/index.js +34 -32
  410. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  411. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +104 -95
  412. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  413. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +23 -27
  414. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  415. package/dist/views/Version/VersionPillLabel/index.scss +26 -0
  416. package/dist/views/Version/fetchVersions.js +113 -138
  417. package/dist/views/Version/fetchVersions.js.map +1 -1
  418. package/dist/views/Version/index.js +325 -323
  419. package/dist/views/Version/index.js.map +1 -1
  420. package/dist/views/Version/metadata.js +43 -50
  421. package/dist/views/Version/metadata.js.map +1 -1
  422. package/dist/views/Versions/buildColumns.js +95 -79
  423. package/dist/views/Versions/buildColumns.js.map +1 -1
  424. package/dist/views/Versions/cells/AutosaveCell/index.js +34 -38
  425. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  426. package/dist/views/Versions/cells/AutosaveCell/index.scss +9 -0
  427. package/dist/views/Versions/cells/CreatedAt/index.js +32 -53
  428. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  429. package/dist/views/Versions/cells/ID/index.js +10 -8
  430. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  431. package/dist/views/Versions/index.client.js +106 -83
  432. package/dist/views/Versions/index.client.js.map +1 -1
  433. package/dist/views/Versions/index.js +143 -143
  434. package/dist/views/Versions/index.js.map +1 -1
  435. package/dist/views/Versions/index.scss +110 -0
  436. package/dist/views/Versions/metadata.js +37 -44
  437. package/dist/views/Versions/metadata.js.map +1 -1
  438. package/dist/views/Versions/types.js +2 -1
  439. package/dist/views/Versions/types.js.map +1 -1
  440. package/dist/withPayload/withPayload.js +198 -144
  441. package/dist/withPayload/withPayload.js.map +1 -1
  442. package/dist/withPayload/withPayload.utils.js +65 -73
  443. package/dist/withPayload/withPayload.utils.js.map +1 -1
  444. package/dist/withPayload/withPayloadLegacy.js +41 -40
  445. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  446. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["formatDate","getClientConfig","getClientSchemaMap","getSchemaMap","notFound","hasDraftsEnabled","React","DefaultVersionView","fetchLatestVersion","fetchVersion","fetchVersions","RenderDiff","getVersionLabel","VersionPillLabel","VersionView","props","hasPublishedDoc","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","localization","user","versionToID","length","collectionSlug","slug","globalSlug","draftsEnabled","localeCodesFromParams","localeCodes","JSON","parse","versionFromIDFromParams","versionFrom","modifiedOnly","docPermissions","collections","globals","versionTo","depth","locale","overrideAccess","previousVersionResult","versionFromResult","currentlyPublishedVersion","latestDraftVersion","previousPublishedVersionResult","Promise","all","draft","limit","parentID","sort","where","and","updatedAt","less_than","resolve","status","equals","previousVersion","docs","previousPublishedVersion","selectedLocales","locales","code","find","push","filterAvailableLocales","map","schemaMap","clientSchemaMap","importMap","RenderedDiff","customDiffComponents","entitySlug","fields","fieldsPermissions","parentIndexPath","parentIsLocalized","parentPath","parentSchemaPath","versionFromSiblingData","version","versionToSiblingData","versionToCreatedAtFormatted","date","Date","pattern","admin","dateFormat","formatPill","doc","labelOverride","labelStyle","labelSuffix","_jsx","labelFirst","versionFromOptions","t","value","publishedNewerThanDraft","some","option","a","b","getTime","versionToIsVersionFrom","versionFromComparisonOptions","isVersionTo","alreadyAdded","existingOption","otherOptionsWithSameID","filter","_jsxs","optionWithSameID","index","label","Fragment","undefined","canUpdate","update","versionFromCreatedAt","createdAt","versionFromID","versionToCreatedAt","VersionToCreatedAtLabel","versionToStatus","_status"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n DocumentViewServerProps,\n Locale,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n TypeWithVersion,\n} from 'payload'\n\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport React from 'react'\n\nimport type { CompareOption } from './Default/types.js'\n\nimport { DefaultVersionView } from './Default/index.js'\nimport { fetchLatestVersion, fetchVersion, fetchVersions } from './fetchVersions.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\nimport { getVersionLabel } from './VersionPillLabel/getVersionLabel.js'\nimport { VersionPillLabel } from './VersionPillLabel/VersionPillLabel.js'\n\nexport async function VersionView(props: DocumentViewServerProps) {\n const { hasPublishedDoc, i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config, config: { localization } } = {}, user } = {},\n } = initPageResult\n\n const versionToID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig)\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n\n const versionFromIDFromParams = searchParams.versionFrom as string\n\n const modifiedOnly: boolean = searchParams.modifiedOnly === 'false' ? false : true\n\n const docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission = collectionSlug\n ? permissions.collections[collectionSlug]\n : permissions.globals[globalSlug]\n\n const versionTo = await fetchVersion<{\n _status?: string\n }>({\n id: versionToID,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (!versionTo) {\n return notFound()\n }\n\n const [\n previousVersionResult,\n versionFromResult,\n currentlyPublishedVersion,\n latestDraftVersion,\n previousPublishedVersionResult,\n ] = await Promise.all([\n // Previous version (the one before the versionTo)\n fetchVersions({\n collectionSlug,\n // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.\n // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.\n depth: versionFromIDFromParams ? 0 : 1,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n ],\n },\n }),\n // Version from ID from params\n (versionFromIDFromParams\n ? fetchVersion({\n id: versionFromIDFromParams,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n : Promise.resolve(null)) as Promise<null | TypeWithVersion<object>>,\n // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'published',\n user,\n })\n : Promise.resolve(null),\n // Latest draft version\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'draft',\n user,\n })\n : Promise.resolve(null),\n // Previous published version\n // Only query for published versions if drafts are enabled (since _status field only exists with drafts)\n draftsEnabled\n ? fetchVersions({\n collectionSlug,\n depth: 0,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n {\n 'version._status': {\n equals: 'published',\n },\n },\n ],\n },\n })\n : Promise.resolve(null),\n ])\n\n const previousVersion: null | TypeWithVersion<object> = previousVersionResult?.docs?.[0] ?? null\n\n const versionFrom =\n versionFromResult ||\n // By default, we'll compare the previous version. => versionFrom = version previous to versionTo\n previousVersion\n\n // Previous published version before the versionTo\n const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null\n\n let selectedLocales: string[] = []\n if (localization) {\n let locales: Locale[] = []\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (!locale) {\n continue\n }\n locales.push(locale)\n }\n } else {\n locales = localization.locales\n }\n\n if (localization.filterAvailableLocales) {\n locales = (await localization.filterAvailableLocales({ locales, req })) || []\n }\n\n selectedLocales = locales.map((locale) => locale.code)\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({\n config: payload.config,\n i18n,\n importMap: payload.importMap,\n user,\n }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fields: (collectionConfig || globalConfig)?.fields,\n fieldsPermissions: docPermissions?.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: '',\n parentIsLocalized: false,\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales,\n versionFromSiblingData: {\n ...versionFrom?.version,\n updatedAt: versionFrom?.updatedAt,\n },\n versionToSiblingData: {\n ...versionTo.version,\n updatedAt: versionTo.updatedAt,\n },\n })\n\n const versionToCreatedAtFormatted = versionTo.updatedAt\n ? formatDate({\n date:\n typeof versionTo.updatedAt === 'string'\n ? new Date(versionTo.updatedAt)\n : (versionTo.updatedAt as Date),\n i18n,\n pattern: config.admin.dateFormat,\n })\n : ''\n\n const formatPill = ({\n doc,\n labelOverride,\n labelStyle,\n labelSuffix,\n }: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n labelStyle?: 'pill' | 'text'\n labelSuffix?: React.ReactNode\n }): React.ReactNode => {\n return (\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n doc={doc}\n key={doc.id}\n labelFirst={true}\n labelOverride={labelOverride}\n labelStyle={labelStyle ?? 'text'}\n labelSuffix={labelSuffix}\n latestDraftVersion={latestDraftVersion}\n />\n )\n }\n\n // SelectComparison Options:\n //\n // Previous version: always, unless doesn't exist. Can be the same as previously published\n // Latest draft: only if no newer published exists (latestDraftVersion)\n // Currently published: always, if exists\n // Previously published: if there is a prior published version older than versionTo\n // Specific Version: only if not already present under other label (= versionFrom)\n\n let versionFromOptions: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n updatedAt: Date\n value: string\n }[] = []\n\n // Previous version\n if (previousVersion?.id) {\n versionFromOptions.push({\n doc: previousVersion,\n labelOverride: i18n.t('version:previousVersion'),\n updatedAt: new Date(previousVersion.updatedAt),\n value: previousVersion.id,\n })\n }\n\n // Latest Draft\n const publishedNewerThanDraft =\n currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n if (latestDraftVersion && !publishedNewerThanDraft) {\n versionFromOptions.push({\n doc: latestDraftVersion,\n updatedAt: new Date(latestDraftVersion.updatedAt),\n value: latestDraftVersion.id,\n })\n }\n\n // Currently Published\n if (currentlyPublishedVersion) {\n versionFromOptions.push({\n doc: currentlyPublishedVersion,\n updatedAt: new Date(currentlyPublishedVersion.updatedAt),\n value: currentlyPublishedVersion.id,\n })\n }\n\n // Previous Published\n if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {\n versionFromOptions.push({\n doc: previousPublishedVersion,\n labelOverride: i18n.t('version:previouslyPublished'),\n updatedAt: new Date(previousPublishedVersion.updatedAt),\n value: previousPublishedVersion.id,\n })\n }\n\n // Specific Version\n if (versionFrom?.id && !versionFromOptions.some((option) => option.value === versionFrom.id)) {\n // Only add \"specific version\" if it is not already in the options\n versionFromOptions.push({\n doc: versionFrom,\n labelOverride: i18n.t('version:specificVersion'),\n updatedAt: new Date(versionFrom.updatedAt),\n value: versionFrom.id,\n })\n }\n\n versionFromOptions = versionFromOptions.sort((a, b) => {\n // Sort by updatedAt, newest first\n if (a && b) {\n return b.updatedAt.getTime() - a.updatedAt.getTime()\n }\n return 0\n })\n\n const versionToIsVersionFrom = versionFrom?.id === versionTo.id\n\n const versionFromComparisonOptions: CompareOption[] = []\n\n for (const option of versionFromOptions) {\n const isVersionTo = option.value === versionTo.id\n\n if (isVersionTo && !versionToIsVersionFrom) {\n // Don't offer selecting a versionFrom that is the same as versionTo, unless it's already selected\n continue\n }\n\n const alreadyAdded = versionFromComparisonOptions.some(\n (existingOption) => existingOption.value === option.value,\n )\n if (alreadyAdded) {\n continue\n }\n\n const otherOptionsWithSameID = versionFromOptions.filter(\n (existingOption) => existingOption.value === option.value && existingOption !== option,\n )\n\n // Merge options with same ID to the same option\n const labelSuffix = otherOptionsWithSameID?.length ? (\n <span key={`${option.value}-suffix`}>\n {' ('}\n {otherOptionsWithSameID.map((optionWithSameID, index) => {\n const label =\n optionWithSameID.labelOverride ||\n getVersionLabel({\n currentlyPublishedVersion,\n latestDraftVersion,\n t: i18n.t,\n version: optionWithSameID.doc,\n }).label\n\n return (\n <React.Fragment key={`${optionWithSameID.value}-${index}`}>\n {index > 0 ? ', ' : ''}\n {label}\n </React.Fragment>\n )\n })}\n {')'}\n </span>\n ) : undefined\n\n versionFromComparisonOptions.push({\n label: formatPill({\n doc: option.doc,\n labelOverride: option.labelOverride,\n labelSuffix,\n }),\n value: option.value,\n })\n }\n\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n modifiedOnly={modifiedOnly}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionFromCreatedAt={versionFrom?.createdAt}\n versionFromID={versionFrom?.id}\n versionFromOptions={versionFromComparisonOptions}\n versionToCreatedAt={versionTo.createdAt}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n VersionToCreatedAtLabel={formatPill({ doc: versionTo, labelStyle: 'pill' })}\n versionToID={versionTo.id}\n versionToStatus={versionTo.version?._status}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n DocumentViewServerProps,\n Locale,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n TypeWithVersion,\n} from 'payload'\n\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport React from 'react'\n\nimport type { CompareOption } from './Default/types.js'\n\nimport { DefaultVersionView } from './Default/index.js'\nimport { fetchLatestVersion, fetchVersion, fetchVersions } from './fetchVersions.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\nimport { getVersionLabel } from './VersionPillLabel/getVersionLabel.js'\nimport { VersionPillLabel } from './VersionPillLabel/VersionPillLabel.js'\n\nexport async function VersionView(props: DocumentViewServerProps) {\n const { hasPublishedDoc, i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config, config: { localization } } = {}, user } = {},\n } = initPageResult\n\n const versionToID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig)\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n\n const versionFromIDFromParams = searchParams.versionFrom as string\n\n const modifiedOnly: boolean = searchParams.modifiedOnly === 'false' ? false : true\n\n const docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission = collectionSlug\n ? permissions.collections[collectionSlug]\n : permissions.globals[globalSlug]\n\n const versionTo = await fetchVersion<{\n _status?: string\n }>({\n id: versionToID,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (!versionTo) {\n return notFound()\n }\n\n const [\n previousVersionResult,\n versionFromResult,\n currentlyPublishedVersion,\n latestDraftVersion,\n previousPublishedVersionResult,\n ] = await Promise.all([\n // Previous version (the one before the versionTo)\n fetchVersions({\n collectionSlug,\n // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.\n // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.\n depth: versionFromIDFromParams ? 0 : 1,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n ],\n },\n }),\n // Version from ID from params\n (versionFromIDFromParams\n ? fetchVersion({\n id: versionFromIDFromParams,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n : Promise.resolve(null)) as Promise<null | TypeWithVersion<object>>,\n // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'published',\n user,\n })\n : Promise.resolve(null),\n // Latest draft version\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'draft',\n user,\n })\n : Promise.resolve(null),\n // Previous published version\n // Only query for published versions if drafts are enabled (since _status field only exists with drafts)\n draftsEnabled\n ? fetchVersions({\n collectionSlug,\n depth: 0,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n {\n 'version._status': {\n equals: 'published',\n },\n },\n ],\n },\n })\n : Promise.resolve(null),\n ])\n\n const previousVersion: null | TypeWithVersion<object> = previousVersionResult?.docs?.[0] ?? null\n\n const versionFrom =\n versionFromResult ||\n // By default, we'll compare the previous version. => versionFrom = version previous to versionTo\n previousVersion\n\n // Previous published version before the versionTo\n const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null\n\n let selectedLocales: string[] = []\n if (localization) {\n let locales: Locale[] = []\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (!locale) {\n continue\n }\n locales.push(locale)\n }\n } else {\n locales = localization.locales\n }\n\n if (localization.filterAvailableLocales) {\n locales = (await localization.filterAvailableLocales({ locales, req })) || []\n }\n\n selectedLocales = locales.map((locale) => locale.code)\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({\n config: payload.config,\n i18n,\n importMap: payload.importMap,\n user,\n }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fields: (collectionConfig || globalConfig)?.fields,\n fieldsPermissions: docPermissions?.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: '',\n parentIsLocalized: false,\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales,\n versionFromSiblingData: {\n ...versionFrom?.version,\n updatedAt: versionFrom?.updatedAt,\n },\n versionToSiblingData: {\n ...versionTo.version,\n updatedAt: versionTo.updatedAt,\n },\n })\n\n const versionToCreatedAtFormatted = versionTo.updatedAt\n ? formatDate({\n date:\n typeof versionTo.updatedAt === 'string'\n ? new Date(versionTo.updatedAt)\n : (versionTo.updatedAt as Date),\n i18n,\n pattern: config.admin.dateFormat,\n })\n : ''\n\n const formatPill = ({\n doc,\n labelOverride,\n labelStyle,\n labelSuffix,\n }: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n labelStyle?: 'pill' | 'text'\n labelSuffix?: React.ReactNode\n }): React.ReactNode => {\n return (\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n doc={doc}\n key={doc.id}\n labelFirst={true}\n labelOverride={labelOverride}\n labelStyle={labelStyle ?? 'text'}\n labelSuffix={labelSuffix}\n latestDraftVersion={latestDraftVersion}\n />\n )\n }\n\n // SelectComparison Options:\n //\n // Previous version: always, unless doesn't exist. Can be the same as previously published\n // Latest draft: only if no newer published exists (latestDraftVersion)\n // Currently published: always, if exists\n // Previously published: if there is a prior published version older than versionTo\n // Specific Version: only if not already present under other label (= versionFrom)\n\n let versionFromOptions: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n updatedAt: Date\n value: string\n }[] = []\n\n // Previous version\n if (previousVersion?.id) {\n versionFromOptions.push({\n doc: previousVersion,\n labelOverride: i18n.t('version:previousVersion'),\n updatedAt: new Date(previousVersion.updatedAt),\n value: previousVersion.id,\n })\n }\n\n // Latest Draft\n const publishedNewerThanDraft =\n currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n if (latestDraftVersion && !publishedNewerThanDraft) {\n versionFromOptions.push({\n doc: latestDraftVersion,\n updatedAt: new Date(latestDraftVersion.updatedAt),\n value: latestDraftVersion.id,\n })\n }\n\n // Currently Published\n if (currentlyPublishedVersion) {\n versionFromOptions.push({\n doc: currentlyPublishedVersion,\n updatedAt: new Date(currentlyPublishedVersion.updatedAt),\n value: currentlyPublishedVersion.id,\n })\n }\n\n // Previous Published\n if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {\n versionFromOptions.push({\n doc: previousPublishedVersion,\n labelOverride: i18n.t('version:previouslyPublished'),\n updatedAt: new Date(previousPublishedVersion.updatedAt),\n value: previousPublishedVersion.id,\n })\n }\n\n // Specific Version\n if (versionFrom?.id && !versionFromOptions.some((option) => option.value === versionFrom.id)) {\n // Only add \"specific version\" if it is not already in the options\n versionFromOptions.push({\n doc: versionFrom,\n labelOverride: i18n.t('version:specificVersion'),\n updatedAt: new Date(versionFrom.updatedAt),\n value: versionFrom.id,\n })\n }\n\n versionFromOptions = versionFromOptions.sort((a, b) => {\n // Sort by updatedAt, newest first\n if (a && b) {\n return b.updatedAt.getTime() - a.updatedAt.getTime()\n }\n return 0\n })\n\n const versionToIsVersionFrom = versionFrom?.id === versionTo.id\n\n const versionFromComparisonOptions: CompareOption[] = []\n\n for (const option of versionFromOptions) {\n const isVersionTo = option.value === versionTo.id\n\n if (isVersionTo && !versionToIsVersionFrom) {\n // Don't offer selecting a versionFrom that is the same as versionTo, unless it's already selected\n continue\n }\n\n const alreadyAdded = versionFromComparisonOptions.some(\n (existingOption) => existingOption.value === option.value,\n )\n if (alreadyAdded) {\n continue\n }\n\n const otherOptionsWithSameID = versionFromOptions.filter(\n (existingOption) => existingOption.value === option.value && existingOption !== option,\n )\n\n // Merge options with same ID to the same option\n const labelSuffix = otherOptionsWithSameID?.length ? (\n <span key={`${option.value}-suffix`}>\n {' ('}\n {otherOptionsWithSameID.map((optionWithSameID, index) => {\n const label =\n optionWithSameID.labelOverride ||\n getVersionLabel({\n currentlyPublishedVersion,\n latestDraftVersion,\n t: i18n.t,\n version: optionWithSameID.doc,\n }).label\n\n return (\n <React.Fragment key={`${optionWithSameID.value}-${index}`}>\n {index > 0 ? ', ' : ''}\n {label}\n </React.Fragment>\n )\n })}\n {')'}\n </span>\n ) : undefined\n\n versionFromComparisonOptions.push({\n label: formatPill({\n doc: option.doc,\n labelOverride: option.labelOverride,\n labelSuffix,\n }),\n value: option.value,\n })\n }\n\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n modifiedOnly={modifiedOnly}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionFromCreatedAt={versionFrom?.createdAt}\n versionFromID={versionFrom?.id}\n versionFromOptions={versionFromComparisonOptions}\n versionToCreatedAt={versionTo.createdAt}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n VersionToCreatedAtLabel={formatPill({ doc: versionTo, labelStyle: 'pill' })}\n versionToID={versionTo.id}\n versionToStatus={versionTo.version?._status}\n />\n )\n}\n"],"names":["formatDate","getClientConfig","getClientSchemaMap","getSchemaMap","notFound","hasDraftsEnabled","React","DefaultVersionView","fetchLatestVersion","fetchVersion","fetchVersions","RenderDiff","getVersionLabel","VersionPillLabel","VersionView","props","hasPublishedDoc","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","localization","user","versionToID","length","collectionSlug","slug","globalSlug","draftsEnabled","localeCodesFromParams","localeCodes","JSON","parse","versionFromIDFromParams","versionFrom","modifiedOnly","docPermissions","collections","globals","versionTo","depth","locale","overrideAccess","previousVersionResult","versionFromResult","currentlyPublishedVersion","latestDraftVersion","previousPublishedVersionResult","Promise","all","draft","limit","parentID","sort","where","and","updatedAt","less_than","resolve","status","equals","previousVersion","docs","previousPublishedVersion","selectedLocales","locales","code","find","push","filterAvailableLocales","map","schemaMap","clientSchemaMap","importMap","RenderedDiff","customDiffComponents","entitySlug","fields","fieldsPermissions","parentIndexPath","parentIsLocalized","parentPath","parentSchemaPath","versionFromSiblingData","version","versionToSiblingData","versionToCreatedAtFormatted","date","Date","pattern","admin","dateFormat","formatPill","doc","labelOverride","labelStyle","labelSuffix","labelFirst","versionFromOptions","t","value","publishedNewerThanDraft","some","option","a","b","getTime","versionToIsVersionFrom","versionFromComparisonOptions","isVersionTo","alreadyAdded","existingOption","otherOptionsWithSameID","filter","span","optionWithSameID","index","label","Fragment","undefined","canUpdate","update","versionFromCreatedAt","createdAt","versionFromID","versionToCreatedAt","VersionToCreatedAtLabel","versionToStatus","_status"],"mappings":"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"}
@@ -3,56 +3,49 @@ import { formatDate } from '@payloadcms/ui/shared';
3
3
  import { generateMetadata } from '../../utilities/meta.js';
4
4
  /**
5
5
  * @todo Remove the `MetaConfig` type assertions. They are currently required because of how the `Metadata` type from `next` consumes the `URL` type.
6
- */
7
- export const generateVersionViewMetadata = async ({
8
- collectionConfig,
9
- config,
10
- globalConfig,
11
- i18n
12
- }) => {
13
- const {
14
- t
15
- } = i18n;
16
- let metaToUse = {
17
- ...(config.admin.meta || {})
18
- };
19
- const doc = {} // TODO: figure this out
20
- ;
21
- const formattedCreatedAt = doc?.createdAt ? formatDate({
22
- date: doc.createdAt,
23
- i18n,
24
- pattern: config?.admin?.dateFormat
25
- }) : '';
26
- if (collectionConfig) {
27
- const useAsTitle = collectionConfig?.admin?.useAsTitle || 'id';
28
- const entityLabel = getTranslation(collectionConfig.labels.singular, i18n);
29
- const titleFromData = doc?.[useAsTitle];
30
- metaToUse = {
31
- ...(config.admin.meta || {}),
32
- description: t('version:viewingVersion', {
33
- documentTitle: titleFromData,
34
- entityLabel
35
- }),
36
- title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${titleFromData ? ` - ${titleFromData}` : ''} - ${entityLabel}`,
37
- ...(collectionConfig?.admin?.meta || {}),
38
- ...(collectionConfig?.admin?.components?.views?.edit?.version?.meta || {})
6
+ */ export const generateVersionViewMetadata = async ({ collectionConfig, config, globalConfig, i18n })=>{
7
+ const { t } = i18n;
8
+ let metaToUse = {
9
+ ...config.admin.meta || {}
39
10
  };
40
- }
41
- if (globalConfig) {
42
- const entityLabel = getTranslation(globalConfig.label, i18n);
43
- metaToUse = {
44
- ...(config.admin.meta || {}),
45
- description: t('version:viewingVersionGlobal', {
46
- entityLabel
47
- }),
48
- title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${entityLabel}`,
49
- ...(globalConfig?.admin?.meta || {}),
50
- ...(globalConfig?.admin?.components?.views?.edit?.version?.meta || {})
51
- };
52
- }
53
- return generateMetadata({
54
- ...metaToUse,
55
- serverURL: config.serverURL
56
- });
11
+ const doc = {};
12
+ // TODO: figure this out
13
+ const formattedCreatedAt = doc?.createdAt ? formatDate({
14
+ date: doc.createdAt,
15
+ i18n,
16
+ pattern: config?.admin?.dateFormat
17
+ }) : '';
18
+ if (collectionConfig) {
19
+ const useAsTitle = collectionConfig?.admin?.useAsTitle || 'id';
20
+ const entityLabel = getTranslation(collectionConfig.labels.singular, i18n);
21
+ const titleFromData = doc?.[useAsTitle];
22
+ metaToUse = {
23
+ ...config.admin.meta || {},
24
+ description: t('version:viewingVersion', {
25
+ documentTitle: titleFromData,
26
+ entityLabel
27
+ }),
28
+ title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${titleFromData ? ` - ${titleFromData}` : ''} - ${entityLabel}`,
29
+ ...collectionConfig?.admin?.meta || {},
30
+ ...collectionConfig?.admin?.components?.views?.edit?.version?.meta || {}
31
+ };
32
+ }
33
+ if (globalConfig) {
34
+ const entityLabel = getTranslation(globalConfig.label, i18n);
35
+ metaToUse = {
36
+ ...config.admin.meta || {},
37
+ description: t('version:viewingVersionGlobal', {
38
+ entityLabel
39
+ }),
40
+ title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${entityLabel}`,
41
+ ...globalConfig?.admin?.meta || {},
42
+ ...globalConfig?.admin?.components?.views?.edit?.version?.meta || {}
43
+ };
44
+ }
45
+ return generateMetadata({
46
+ ...metaToUse,
47
+ serverURL: config.serverURL
48
+ });
57
49
  };
50
+
58
51
  //# sourceMappingURL=metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","names":["getTranslation","formatDate","generateMetadata","generateVersionViewMetadata","collectionConfig","config","globalConfig","i18n","t","metaToUse","admin","meta","doc","formattedCreatedAt","createdAt","date","pattern","dateFormat","useAsTitle","entityLabel","labels","singular","titleFromData","description","documentTitle","title","components","views","edit","version","label","serverURL"],"sources":["../../../src/views/Version/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { MetaConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatDate } from '@payloadcms/ui/shared'\n\nimport type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\n/**\n * @todo Remove the `MetaConfig` type assertions. They are currently required because of how the `Metadata` type from `next` consumes the `URL` type.\n */\nexport const generateVersionViewMetadata: GenerateEditViewMetadata = async ({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n}): Promise<Metadata> => {\n const { t } = i18n\n\n let metaToUse: MetaConfig = {\n ...(config.admin.meta || {}),\n }\n\n const doc: any = {} // TODO: figure this out\n\n const formattedCreatedAt = doc?.createdAt\n ? formatDate({ date: doc.createdAt, i18n, pattern: config?.admin?.dateFormat })\n : ''\n\n if (collectionConfig) {\n const useAsTitle = collectionConfig?.admin?.useAsTitle || 'id'\n const entityLabel = getTranslation(collectionConfig.labels.singular, i18n)\n const titleFromData = doc?.[useAsTitle]\n\n metaToUse = {\n ...(config.admin.meta || {}),\n description: t('version:viewingVersion', { documentTitle: titleFromData, entityLabel }),\n title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${titleFromData ? ` - ${titleFromData}` : ''} - ${entityLabel}`,\n ...(collectionConfig?.admin?.meta || {}),\n ...(collectionConfig?.admin?.components?.views?.edit?.version?.meta || {}),\n }\n }\n\n if (globalConfig) {\n const entityLabel = getTranslation(globalConfig.label, i18n)\n\n metaToUse = {\n ...(config.admin.meta || {}),\n description: t('version:viewingVersionGlobal', { entityLabel }),\n title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${entityLabel}`,\n ...((globalConfig?.admin?.meta || {}) as MetaConfig),\n ...((globalConfig?.admin?.components?.views?.edit?.version?.meta || {}) as MetaConfig),\n }\n }\n\n return generateMetadata({\n ...metaToUse,\n serverURL: config.serverURL,\n })\n}\n"],"mappings":"AAGA,SAASA,cAAc,QAAQ;AAC/B,SAASC,UAAU,QAAQ;AAI3B,SAASC,gBAAgB,QAAQ;AAEjC;;;AAGA,OAAO,MAAMC,2BAAA,GAAwD,MAAAA,CAAO;EAC1EC,gBAAgB;EAChBC,MAAM;EACNC,YAAY;EACZC;AAAI,CACL;EACC,MAAM;IAAEC;EAAC,CAAE,GAAGD,IAAA;EAEd,IAAIE,SAAA,GAAwB;IAC1B,IAAIJ,MAAA,CAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;EAC7B;EAEA,MAAMC,GAAA,GAAW,CAAC,EAAE;EAAA;EAEpB,MAAMC,kBAAA,GAAqBD,GAAA,EAAKE,SAAA,GAC5Bb,UAAA,CAAW;IAAEc,IAAA,EAAMH,GAAA,CAAIE,SAAS;IAAEP,IAAA;IAAMS,OAAA,EAASX,MAAA,EAAQK,KAAA,EAAOO;EAAW,KAC3E;EAEJ,IAAIb,gBAAA,EAAkB;IACpB,MAAMc,UAAA,GAAad,gBAAA,EAAkBM,KAAA,EAAOQ,UAAA,IAAc;IAC1D,MAAMC,WAAA,GAAcnB,cAAA,CAAeI,gBAAA,CAAiBgB,MAAM,CAACC,QAAQ,EAAEd,IAAA;IACrE,MAAMe,aAAA,GAAgBV,GAAA,GAAMM,UAAA,CAAW;IAEvCT,SAAA,GAAY;MACV,IAAIJ,MAAA,CAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;MAC3BY,WAAA,EAAaf,CAAA,CAAE,0BAA0B;QAAEgB,aAAA,EAAeF,aAAA;QAAeH;MAAY;MACrFM,KAAA,EAAO,GAAGjB,CAAA,CAAE,qBAAqBK,kBAAA,GAAqB,MAAMA,kBAAA,EAAoB,GAAG,KAAKS,aAAA,GAAgB,MAAMA,aAAA,EAAe,GAAG,QAAQH,WAAA,EAAa;MACrJ,IAAIf,gBAAA,EAAkBM,KAAA,EAAOC,IAAA,IAAQ,CAAC,CAAC;MACvC,IAAIP,gBAAA,EAAkBM,KAAA,EAAOgB,UAAA,EAAYC,KAAA,EAAOC,IAAA,EAAMC,OAAA,EAASlB,IAAA,IAAQ,CAAC,CAAC;IAC3E;EACF;EAEA,IAAIL,YAAA,EAAc;IAChB,MAAMa,WAAA,GAAcnB,cAAA,CAAeM,YAAA,CAAawB,KAAK,EAAEvB,IAAA;IAEvDE,SAAA,GAAY;MACV,IAAIJ,MAAA,CAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;MAC3BY,WAAA,EAAaf,CAAA,CAAE,gCAAgC;QAAEW;MAAY;MAC7DM,KAAA,EAAO,GAAGjB,CAAA,CAAE,qBAAqBK,kBAAA,GAAqB,MAAMA,kBAAA,EAAoB,GAAG,KAAKM,WAAA,EAAa;MACrG,IAAKb,YAAA,EAAcI,KAAA,EAAOC,IAAA,IAAQ,CAAC,CAAC;MACpC,IAAKL,YAAA,EAAcI,KAAA,EAAOgB,UAAA,EAAYC,KAAA,EAAOC,IAAA,EAAMC,OAAA,EAASlB,IAAA,IAAQ,CAAC,CAAC;IACxE;EACF;EAEA,OAAOT,gBAAA,CAAiB;IACtB,GAAGO,SAAS;IACZsB,SAAA,EAAW1B,MAAA,CAAO0B;EACpB;AACF","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/Version/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { MetaConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatDate } from '@payloadcms/ui/shared'\n\nimport type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js'\n\nimport { generateMetadata } from '../../utilities/meta.js'\n\n/**\n * @todo Remove the `MetaConfig` type assertions. They are currently required because of how the `Metadata` type from `next` consumes the `URL` type.\n */\nexport const generateVersionViewMetadata: GenerateEditViewMetadata = async ({\n collectionConfig,\n config,\n globalConfig,\n i18n,\n}): Promise<Metadata> => {\n const { t } = i18n\n\n let metaToUse: MetaConfig = {\n ...(config.admin.meta || {}),\n }\n\n const doc: any = {} // TODO: figure this out\n\n const formattedCreatedAt = doc?.createdAt\n ? formatDate({ date: doc.createdAt, i18n, pattern: config?.admin?.dateFormat })\n : ''\n\n if (collectionConfig) {\n const useAsTitle = collectionConfig?.admin?.useAsTitle || 'id'\n const entityLabel = getTranslation(collectionConfig.labels.singular, i18n)\n const titleFromData = doc?.[useAsTitle]\n\n metaToUse = {\n ...(config.admin.meta || {}),\n description: t('version:viewingVersion', { documentTitle: titleFromData, entityLabel }),\n title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${titleFromData ? ` - ${titleFromData}` : ''} - ${entityLabel}`,\n ...(collectionConfig?.admin?.meta || {}),\n ...(collectionConfig?.admin?.components?.views?.edit?.version?.meta || {}),\n }\n }\n\n if (globalConfig) {\n const entityLabel = getTranslation(globalConfig.label, i18n)\n\n metaToUse = {\n ...(config.admin.meta || {}),\n description: t('version:viewingVersionGlobal', { entityLabel }),\n title: `${t('version:version')}${formattedCreatedAt ? ` - ${formattedCreatedAt}` : ''}${entityLabel}`,\n ...((globalConfig?.admin?.meta || {}) as MetaConfig),\n ...((globalConfig?.admin?.components?.views?.edit?.version?.meta || {}) as MetaConfig),\n }\n }\n\n return generateMetadata({\n ...metaToUse,\n serverURL: config.serverURL,\n })\n}\n"],"names":["getTranslation","formatDate","generateMetadata","generateVersionViewMetadata","collectionConfig","config","globalConfig","i18n","t","metaToUse","admin","meta","doc","formattedCreatedAt","createdAt","date","pattern","dateFormat","useAsTitle","entityLabel","labels","singular","titleFromData","description","documentTitle","title","components","views","edit","version","label","serverURL"],"mappings":"AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,SAASC,UAAU,QAAQ,wBAAuB;AAIlD,SAASC,gBAAgB,QAAQ,0BAAyB;AAE1D;;CAEC,GACD,OAAO,MAAMC,8BAAwD,OAAO,EAC1EC,gBAAgB,EAChBC,MAAM,EACNC,YAAY,EACZC,IAAI,EACL;IACC,MAAM,EAAEC,CAAC,EAAE,GAAGD;IAEd,IAAIE,YAAwB;QAC1B,GAAIJ,OAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;IAC7B;IAEA,MAAMC,MAAW,CAAC;IAAE,wBAAwB;IAE5C,MAAMC,qBAAqBD,KAAKE,YAC5Bb,WAAW;QAAEc,MAAMH,IAAIE,SAAS;QAAEP;QAAMS,SAASX,QAAQK,OAAOO;IAAW,KAC3E;IAEJ,IAAIb,kBAAkB;QACpB,MAAMc,aAAad,kBAAkBM,OAAOQ,cAAc;QAC1D,MAAMC,cAAcnB,eAAeI,iBAAiBgB,MAAM,CAACC,QAAQ,EAAEd;QACrE,MAAMe,gBAAgBV,KAAK,CAACM,WAAW;QAEvCT,YAAY;YACV,GAAIJ,OAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;YAC3BY,aAAaf,EAAE,0BAA0B;gBAAEgB,eAAeF;gBAAeH;YAAY;YACrFM,OAAO,GAAGjB,EAAE,qBAAqBK,qBAAqB,CAAC,GAAG,EAAEA,oBAAoB,GAAG,KAAKS,gBAAgB,CAAC,GAAG,EAAEA,eAAe,GAAG,GAAG,GAAG,EAAEH,aAAa;YACrJ,GAAIf,kBAAkBM,OAAOC,QAAQ,CAAC,CAAC;YACvC,GAAIP,kBAAkBM,OAAOgB,YAAYC,OAAOC,MAAMC,SAASlB,QAAQ,CAAC,CAAC;QAC3E;IACF;IAEA,IAAIL,cAAc;QAChB,MAAMa,cAAcnB,eAAeM,aAAawB,KAAK,EAAEvB;QAEvDE,YAAY;YACV,GAAIJ,OAAOK,KAAK,CAACC,IAAI,IAAI,CAAC,CAAC;YAC3BY,aAAaf,EAAE,gCAAgC;gBAAEW;YAAY;YAC7DM,OAAO,GAAGjB,EAAE,qBAAqBK,qBAAqB,CAAC,GAAG,EAAEA,oBAAoB,GAAG,KAAKM,aAAa;YACrG,GAAKb,cAAcI,OAAOC,QAAQ,CAAC,CAAC;YACpC,GAAKL,cAAcI,OAAOgB,YAAYC,OAAOC,MAAMC,SAASlB,QAAQ,CAAC,CAAC;QACxE;IACF;IAEA,OAAOT,iBAAiB;QACtB,GAAGO,SAAS;QACZsB,WAAW1B,OAAO0B,SAAS;IAC7B;AACF,EAAC"}
@@ -1,88 +1,104 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
2
  import { SortColumn } from '@payloadcms/ui';
3
3
  import { hasDraftsEnabled } from 'payload/shared';
4
4
  import React from 'react';
5
5
  import { AutosaveCell } from './cells/AutosaveCell/index.js';
6
6
  import { CreatedAtCell } from './cells/CreatedAt/index.js';
7
7
  import { IDCell } from './cells/ID/index.js';
8
- export const buildVersionColumns = ({
9
- collectionConfig,
10
- CreatedAtCellOverride,
11
- currentlyPublishedVersion,
12
- docID,
13
- docs,
14
- globalConfig,
15
- i18n: {
16
- t
17
- },
18
- isTrashed,
19
- latestDraftVersion
20
- }) => {
21
- const entityConfig = collectionConfig || globalConfig;
22
- const CreatedAtCellComponent = CreatedAtCellOverride ?? CreatedAtCell;
23
- const columns = [{
24
- accessor: 'updatedAt',
25
- active: true,
26
- field: {
27
- name: '',
28
- type: 'date'
29
- },
30
- Heading: /*#__PURE__*/_jsx(SortColumn, {
31
- Label: t('general:updatedAt'),
32
- name: "updatedAt"
33
- }),
34
- renderedCells: docs.map((doc, i) => {
35
- return /*#__PURE__*/_jsx(CreatedAtCellComponent, {
36
- collectionSlug: collectionConfig?.slug,
37
- docID: docID,
38
- globalSlug: globalConfig?.slug,
39
- isTrashed: isTrashed,
40
- rowData: {
41
- id: doc.id,
42
- updatedAt: doc.updatedAt
8
+ export const buildVersionColumns = ({ collectionConfig, CreatedAtCellOverride, currentlyPublishedVersion, docID, docs, globalConfig, i18n: { t }, isTrashed, latestDraftVersion })=>{
9
+ const entityConfig = collectionConfig || globalConfig;
10
+ const CreatedAtCellComponent = CreatedAtCellOverride ?? CreatedAtCell;
11
+ const columns = [
12
+ {
13
+ accessor: 'updatedAt',
14
+ active: true,
15
+ field: {
16
+ name: '',
17
+ type: 'date'
18
+ },
19
+ Heading: /*#__PURE__*/ _jsxDEV(SortColumn, {
20
+ Label: t('general:updatedAt'),
21
+ name: "updatedAt"
22
+ }, void 0, false, {
23
+ fileName: "src/views/Versions/buildColumns.tsx",
24
+ lineNumber: 57,
25
+ columnNumber: 16
26
+ }, this),
27
+ renderedCells: docs.map((doc, i)=>{
28
+ return /*#__PURE__*/ _jsxDEV(CreatedAtCellComponent, {
29
+ collectionSlug: collectionConfig?.slug,
30
+ docID: docID,
31
+ globalSlug: globalConfig?.slug,
32
+ isTrashed: isTrashed,
33
+ rowData: {
34
+ id: doc.id,
35
+ updatedAt: doc.updatedAt
36
+ }
37
+ }, i, false, {
38
+ fileName: "src/views/Versions/buildColumns.tsx",
39
+ lineNumber: 60,
40
+ columnNumber: 11
41
+ }, this);
42
+ })
43
+ },
44
+ {
45
+ accessor: 'id',
46
+ active: true,
47
+ field: {
48
+ name: '',
49
+ type: 'text'
50
+ },
51
+ Heading: /*#__PURE__*/ _jsxDEV(SortColumn, {
52
+ disable: true,
53
+ Label: t('version:versionID'),
54
+ name: "id"
55
+ }, void 0, false, {
56
+ fileName: "src/views/Versions/buildColumns.tsx",
57
+ lineNumber: 81,
58
+ columnNumber: 16
59
+ }, this),
60
+ renderedCells: docs.map((doc, i)=>{
61
+ return /*#__PURE__*/ _jsxDEV(IDCell, {
62
+ id: doc.id
63
+ }, i, false, {
64
+ fileName: "src/views/Versions/buildColumns.tsx",
65
+ lineNumber: 83,
66
+ columnNumber: 16
67
+ }, this);
68
+ })
43
69
  }
44
- }, i);
45
- })
46
- }, {
47
- accessor: 'id',
48
- active: true,
49
- field: {
50
- name: '',
51
- type: 'text'
52
- },
53
- Heading: /*#__PURE__*/_jsx(SortColumn, {
54
- disable: true,
55
- Label: t('version:versionID'),
56
- name: "id"
57
- }),
58
- renderedCells: docs.map((doc, i) => {
59
- return /*#__PURE__*/_jsx(IDCell, {
60
- id: doc.id
61
- }, i);
62
- })
63
- }];
64
- if (hasDraftsEnabled(entityConfig)) {
65
- columns.push({
66
- accessor: '_status',
67
- active: true,
68
- field: {
69
- name: '',
70
- type: 'checkbox'
71
- },
72
- Heading: /*#__PURE__*/_jsx(SortColumn, {
73
- disable: true,
74
- Label: t('version:status'),
75
- name: "status"
76
- }),
77
- renderedCells: docs.map((doc, i) => {
78
- return /*#__PURE__*/_jsx(AutosaveCell, {
79
- currentlyPublishedVersion: currentlyPublishedVersion,
80
- latestDraftVersion: latestDraftVersion,
81
- rowData: doc
82
- }, i);
83
- })
84
- });
85
- }
86
- return columns;
70
+ ];
71
+ if (hasDraftsEnabled(entityConfig)) {
72
+ columns.push({
73
+ accessor: '_status',
74
+ active: true,
75
+ field: {
76
+ name: '',
77
+ type: 'checkbox'
78
+ },
79
+ Heading: /*#__PURE__*/ _jsxDEV(SortColumn, {
80
+ disable: true,
81
+ Label: t('version:status'),
82
+ name: "status"
83
+ }, void 0, false, {
84
+ fileName: "src/views/Versions/buildColumns.tsx",
85
+ lineNumber: 96,
86
+ columnNumber: 16
87
+ }, this),
88
+ renderedCells: docs.map((doc, i)=>{
89
+ return /*#__PURE__*/ _jsxDEV(AutosaveCell, {
90
+ currentlyPublishedVersion: currentlyPublishedVersion,
91
+ latestDraftVersion: latestDraftVersion,
92
+ rowData: doc
93
+ }, i, false, {
94
+ fileName: "src/views/Versions/buildColumns.tsx",
95
+ lineNumber: 99,
96
+ columnNumber: 11
97
+ }, this);
98
+ })
99
+ });
100
+ }
101
+ return columns;
87
102
  };
103
+
88
104
  //# sourceMappingURL=buildColumns.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildColumns.js","names":["SortColumn","hasDraftsEnabled","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","CreatedAtCellOverride","currentlyPublishedVersion","docID","docs","globalConfig","i18n","t","isTrashed","latestDraftVersion","entityConfig","CreatedAtCellComponent","columns","accessor","active","field","name","type","Heading","_jsx","Label","renderedCells","map","doc","i","collectionSlug","slug","globalSlug","rowData","id","updatedAt","disable","push"],"sources":["../../../src/views/Versions/buildColumns.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type {\n Column,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithVersion,\n} from 'payload'\n\nimport { SortColumn } from '@payloadcms/ui'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport React from 'react'\n\nimport { AutosaveCell } from './cells/AutosaveCell/index.js'\nimport { CreatedAtCell, type CreatedAtCellProps } from './cells/CreatedAt/index.js'\nimport { IDCell } from './cells/ID/index.js'\n\nexport const buildVersionColumns = ({\n collectionConfig,\n CreatedAtCellOverride,\n currentlyPublishedVersion,\n docID,\n docs,\n globalConfig,\n i18n: { t },\n isTrashed,\n latestDraftVersion,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n CreatedAtCellOverride?: React.ComponentType<CreatedAtCellProps>\n currentlyPublishedVersion?: {\n id: number | string\n updatedAt: string\n }\n docID?: number | string\n docs: PaginatedDocs<TypeWithVersion<any>>['docs']\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n isTrashed?: boolean\n latestDraftVersion?: {\n id: number | string\n updatedAt: string\n }\n}): Column[] => {\n const entityConfig = collectionConfig || globalConfig\n\n const CreatedAtCellComponent = CreatedAtCellOverride ?? CreatedAtCell\n\n const columns: Column[] = [\n {\n accessor: 'updatedAt',\n active: true,\n field: {\n name: '',\n type: 'date',\n },\n Heading: <SortColumn Label={t('general:updatedAt')} name=\"updatedAt\" />,\n renderedCells: docs.map((doc, i) => {\n return (\n <CreatedAtCellComponent\n collectionSlug={collectionConfig?.slug}\n docID={docID}\n globalSlug={globalConfig?.slug}\n isTrashed={isTrashed}\n key={i}\n rowData={{\n id: doc.id,\n updatedAt: doc.updatedAt,\n }}\n />\n )\n }),\n },\n {\n accessor: 'id',\n active: true,\n field: {\n name: '',\n type: 'text',\n },\n Heading: <SortColumn disable Label={t('version:versionID')} name=\"id\" />,\n renderedCells: docs.map((doc, i) => {\n return <IDCell id={doc.id} key={i} />\n }),\n },\n ]\n\n if (hasDraftsEnabled(entityConfig)) {\n columns.push({\n accessor: '_status',\n active: true,\n field: {\n name: '',\n type: 'checkbox',\n },\n Heading: <SortColumn disable Label={t('version:status')} name=\"status\" />,\n renderedCells: docs.map((doc, i) => {\n return (\n <AutosaveCell\n currentlyPublishedVersion={currentlyPublishedVersion}\n key={i}\n latestDraftVersion={latestDraftVersion}\n rowData={doc}\n />\n )\n }),\n })\n }\n\n return columns\n}\n"],"mappings":";AASA,SAASA,UAAU,QAAQ;AAC3B,SAASC,gBAAgB,QAAQ;AACjC,OAAOC,KAAA,MAAW;AAElB,SAASC,YAAY,QAAQ;AAC7B,SAASC,aAAa,QAAiC;AACvD,SAASC,MAAM,QAAQ;AAEvB,OAAO,MAAMC,mBAAA,GAAsBA,CAAC;EAClCC,gBAAgB;EAChBC,qBAAqB;EACrBC,yBAAyB;EACzBC,KAAK;EACLC,IAAI;EACJC,YAAY;EACZC,IAAA,EAAM;IAAEC;EAAC,CAAE;EACXC,SAAS;EACTC;AAAkB,CAiBnB;EACC,MAAMC,YAAA,GAAeV,gBAAA,IAAoBK,YAAA;EAEzC,MAAMM,sBAAA,GAAyBV,qBAAA,IAAyBJ,aAAA;EAExD,MAAMe,OAAA,GAAoB,CACxB;IACEC,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,KAAA,EAAO;MACLC,IAAA,EAAM;MACNC,IAAA,EAAM;IACR;IACAC,OAAA,eAASC,IAAA,CAAC1B,UAAA;MAAW2B,KAAA,EAAOb,CAAA,CAAE;MAAsBS,IAAA,EAAK;;IACzDK,aAAA,EAAejB,IAAA,CAAKkB,GAAG,CAAC,CAACC,GAAA,EAAKC,CAAA;MAC5B,oBACEL,IAAA,CAACR,sBAAA;QACCc,cAAA,EAAgBzB,gBAAA,EAAkB0B,IAAA;QAClCvB,KAAA,EAAOA,KAAA;QACPwB,UAAA,EAAYtB,YAAA,EAAcqB,IAAA;QAC1BlB,SAAA,EAAWA,SAAA;QAEXoB,OAAA,EAAS;UACPC,EAAA,EAAIN,GAAA,CAAIM,EAAE;UACVC,SAAA,EAAWP,GAAA,CAAIO;QACjB;SAJKN,CAAA;IAOX;EACF,GACA;IACEX,QAAA,EAAU;IACVC,MAAA,EAAQ;IACRC,KAAA,EAAO;MACLC,IAAA,EAAM;MACNC,IAAA,EAAM;IACR;IACAC,OAAA,eAASC,IAAA,CAAC1B,UAAA;MAAWsC,OAAO;MAACX,KAAA,EAAOb,CAAA,CAAE;MAAsBS,IAAA,EAAK;;IACjEK,aAAA,EAAejB,IAAA,CAAKkB,GAAG,CAAC,CAACC,GAAA,EAAKC,CAAA;MAC5B,oBAAOL,IAAA,CAACrB,MAAA;QAAO+B,EAAA,EAAIN,GAAA,CAAIM;SAASL,CAAA;IAClC;EACF,EACD;EAED,IAAI9B,gBAAA,CAAiBgB,YAAA,GAAe;IAClCE,OAAA,CAAQoB,IAAI,CAAC;MACXnB,QAAA,EAAU;MACVC,MAAA,EAAQ;MACRC,KAAA,EAAO;QACLC,IAAA,EAAM;QACNC,IAAA,EAAM;MACR;MACAC,OAAA,eAASC,IAAA,CAAC1B,UAAA;QAAWsC,OAAO;QAACX,KAAA,EAAOb,CAAA,CAAE;QAAmBS,IAAA,EAAK;;MAC9DK,aAAA,EAAejB,IAAA,CAAKkB,GAAG,CAAC,CAACC,GAAA,EAAKC,CAAA;QAC5B,oBACEL,IAAA,CAACvB,YAAA;UACCM,yBAAA,EAA2BA,yBAAA;UAE3BO,kBAAA,EAAoBA,kBAAA;UACpBmB,OAAA,EAASL;WAFJC,CAAA;MAKX;IACF;EACF;EAEA,OAAOZ,OAAA;AACT","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/views/Versions/buildColumns.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type {\n Column,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithVersion,\n} from 'payload'\n\nimport { SortColumn } from '@payloadcms/ui'\nimport { hasDraftsEnabled } from 'payload/shared'\nimport React from 'react'\n\nimport { AutosaveCell } from './cells/AutosaveCell/index.js'\nimport { CreatedAtCell, type CreatedAtCellProps } from './cells/CreatedAt/index.js'\nimport { IDCell } from './cells/ID/index.js'\n\nexport const buildVersionColumns = ({\n collectionConfig,\n CreatedAtCellOverride,\n currentlyPublishedVersion,\n docID,\n docs,\n globalConfig,\n i18n: { t },\n isTrashed,\n latestDraftVersion,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n CreatedAtCellOverride?: React.ComponentType<CreatedAtCellProps>\n currentlyPublishedVersion?: {\n id: number | string\n updatedAt: string\n }\n docID?: number | string\n docs: PaginatedDocs<TypeWithVersion<any>>['docs']\n globalConfig?: SanitizedGlobalConfig\n i18n: I18n\n isTrashed?: boolean\n latestDraftVersion?: {\n id: number | string\n updatedAt: string\n }\n}): Column[] => {\n const entityConfig = collectionConfig || globalConfig\n\n const CreatedAtCellComponent = CreatedAtCellOverride ?? CreatedAtCell\n\n const columns: Column[] = [\n {\n accessor: 'updatedAt',\n active: true,\n field: {\n name: '',\n type: 'date',\n },\n Heading: <SortColumn Label={t('general:updatedAt')} name=\"updatedAt\" />,\n renderedCells: docs.map((doc, i) => {\n return (\n <CreatedAtCellComponent\n collectionSlug={collectionConfig?.slug}\n docID={docID}\n globalSlug={globalConfig?.slug}\n isTrashed={isTrashed}\n key={i}\n rowData={{\n id: doc.id,\n updatedAt: doc.updatedAt,\n }}\n />\n )\n }),\n },\n {\n accessor: 'id',\n active: true,\n field: {\n name: '',\n type: 'text',\n },\n Heading: <SortColumn disable Label={t('version:versionID')} name=\"id\" />,\n renderedCells: docs.map((doc, i) => {\n return <IDCell id={doc.id} key={i} />\n }),\n },\n ]\n\n if (hasDraftsEnabled(entityConfig)) {\n columns.push({\n accessor: '_status',\n active: true,\n field: {\n name: '',\n type: 'checkbox',\n },\n Heading: <SortColumn disable Label={t('version:status')} name=\"status\" />,\n renderedCells: docs.map((doc, i) => {\n return (\n <AutosaveCell\n currentlyPublishedVersion={currentlyPublishedVersion}\n key={i}\n latestDraftVersion={latestDraftVersion}\n rowData={doc}\n />\n )\n }),\n })\n }\n\n return columns\n}\n"],"names":["SortColumn","hasDraftsEnabled","React","AutosaveCell","CreatedAtCell","IDCell","buildVersionColumns","collectionConfig","CreatedAtCellOverride","currentlyPublishedVersion","docID","docs","globalConfig","i18n","t","isTrashed","latestDraftVersion","entityConfig","CreatedAtCellComponent","columns","accessor","active","field","name","type","Heading","Label","renderedCells","map","doc","i","collectionSlug","slug","globalSlug","rowData","id","updatedAt","disable","push"],"mappings":";AASA,SAASA,UAAU,QAAQ,iBAAgB;AAC3C,SAASC,gBAAgB,QAAQ,iBAAgB;AACjD,OAAOC,WAAW,QAAO;AAEzB,SAASC,YAAY,QAAQ,gCAA+B;AAC5D,SAASC,aAAa,QAAiC,6BAA4B;AACnF,SAASC,MAAM,QAAQ,sBAAqB;AAE5C,OAAO,MAAMC,sBAAsB,CAAC,EAClCC,gBAAgB,EAChBC,qBAAqB,EACrBC,yBAAyB,EACzBC,KAAK,EACLC,IAAI,EACJC,YAAY,EACZC,MAAM,EAAEC,CAAC,EAAE,EACXC,SAAS,EACTC,kBAAkB,EAiBnB;IACC,MAAMC,eAAeV,oBAAoBK;IAEzC,MAAMM,yBAAyBV,yBAAyBJ;IAExD,MAAMe,UAAoB;QACxB;YACEC,UAAU;YACVC,QAAQ;YACRC,OAAO;gBACLC,MAAM;gBACNC,MAAM;YACR;YACAC,uBAAS,QAACzB;gBAAW0B,OAAOZ,EAAE;gBAAsBS,MAAK;;;;;;YACzDI,eAAehB,KAAKiB,GAAG,CAAC,CAACC,KAAKC;gBAC5B,qBACE,QAACZ;oBACCa,gBAAgBxB,kBAAkByB;oBAClCtB,OAAOA;oBACPuB,YAAYrB,cAAcoB;oBAC1BjB,WAAWA;oBAEXmB,SAAS;wBACPC,IAAIN,IAAIM,EAAE;wBACVC,WAAWP,IAAIO,SAAS;oBAC1B;mBAJKN;;;;;YAOX;QACF;QACA;YACEV,UAAU;YACVC,QAAQ;YACRC,OAAO;gBACLC,MAAM;gBACNC,MAAM;YACR;YACAC,uBAAS,QAACzB;gBAAWqC,OAAO;gBAACX,OAAOZ,EAAE;gBAAsBS,MAAK;;;;;;YACjEI,eAAehB,KAAKiB,GAAG,CAAC,CAACC,KAAKC;gBAC5B,qBAAO,QAACzB;oBAAO8B,IAAIN,IAAIM,EAAE;mBAAOL;;;;;YAClC;QACF;KACD;IAED,IAAI7B,iBAAiBgB,eAAe;QAClCE,QAAQmB,IAAI,CAAC;YACXlB,UAAU;YACVC,QAAQ;YACRC,OAAO;gBACLC,MAAM;gBACNC,MAAM;YACR;YACAC,uBAAS,QAACzB;gBAAWqC,OAAO;gBAACX,OAAOZ,EAAE;gBAAmBS,MAAK;;;;;;YAC9DI,eAAehB,KAAKiB,GAAG,CAAC,CAACC,KAAKC;gBAC5B,qBACE,QAAC3B;oBACCM,2BAA2BA;oBAE3BO,oBAAoBA;oBACpBkB,SAASL;mBAFJC;;;;;YAKX;QACF;IACF;IAEA,OAAOX;AACT,EAAC"}
@@ -1,45 +1,41 @@
1
1
  'use client';
2
-
3
- import { c as _c } from "react/compiler-runtime";
4
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
5
3
  import { Pill, useTranslation } from '@payloadcms/ui';
6
4
  import React from 'react';
5
+ import './index.scss';
7
6
  import { VersionPillLabel } from '../../../Version/VersionPillLabel/VersionPillLabel.js';
8
7
  const baseClass = 'autosave-cell';
9
- export const AutosaveCell = t0 => {
10
- const $ = _c(5);
11
- const {
12
- currentlyPublishedVersion,
13
- latestDraftVersion,
14
- rowData
15
- } = t0;
16
- const {
17
- t
18
- } = useTranslation();
19
- let t1;
20
- if ($[0] !== currentlyPublishedVersion || $[1] !== latestDraftVersion || $[2] !== rowData || $[3] !== t) {
21
- t1 = _jsxs("div", {
22
- className: `${baseClass}__items`,
23
- children: [rowData?.autosave && _jsx(Pill, {
24
- size: "small",
25
- children: t("version:autosave")
26
- }), _jsx(VersionPillLabel, {
27
- currentlyPublishedVersion,
28
- disableDate: true,
29
- doc: rowData,
30
- labelFirst: false,
31
- labelStyle: "pill",
32
- latestDraftVersion
33
- })]
34
- });
35
- $[0] = currentlyPublishedVersion;
36
- $[1] = latestDraftVersion;
37
- $[2] = rowData;
38
- $[3] = t;
39
- $[4] = t1;
40
- } else {
41
- t1 = $[4];
42
- }
43
- return t1;
8
+ export const AutosaveCell = ({ currentlyPublishedVersion, latestDraftVersion, rowData })=>{
9
+ const { t } = useTranslation();
10
+ return /*#__PURE__*/ _jsxDEV("div", {
11
+ className: `${baseClass}__items`,
12
+ children: [
13
+ rowData?.autosave && /*#__PURE__*/ _jsxDEV(Pill, {
14
+ size: "small",
15
+ children: t('version:autosave')
16
+ }, void 0, false, {
17
+ fileName: "src/views/Versions/cells/AutosaveCell/index.tsx",
18
+ lineNumber: 38,
19
+ columnNumber: 29
20
+ }, this),
21
+ /*#__PURE__*/ _jsxDEV(VersionPillLabel, {
22
+ currentlyPublishedVersion: currentlyPublishedVersion,
23
+ disableDate: true,
24
+ doc: rowData,
25
+ labelFirst: false,
26
+ labelStyle: "pill",
27
+ latestDraftVersion: latestDraftVersion
28
+ }, void 0, false, {
29
+ fileName: "src/views/Versions/cells/AutosaveCell/index.tsx",
30
+ lineNumber: 39,
31
+ columnNumber: 7
32
+ }, this)
33
+ ]
34
+ }, void 0, true, {
35
+ fileName: "src/views/Versions/cells/AutosaveCell/index.tsx",
36
+ lineNumber: 37,
37
+ columnNumber: 5
38
+ }, this);
44
39
  };
40
+
45
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","Pill","useTranslation","React","VersionPillLabel","baseClass","AutosaveCell","t0","$","currentlyPublishedVersion","latestDraftVersion","rowData","t","t1","_jsxs","className","children","autosave","_jsx","size","disableDate","doc","labelFirst","labelStyle"],"sources":["../../../../../src/views/Versions/cells/AutosaveCell/index.tsx"],"sourcesContent":["'use client'\nimport { Pill, useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport './index.scss'\nimport { VersionPillLabel } from '../../../Version/VersionPillLabel/VersionPillLabel.js'\n\nconst baseClass = 'autosave-cell'\n\ntype AutosaveCellProps = {\n currentlyPublishedVersion?: {\n id: number | string\n updatedAt: string\n }\n latestDraftVersion?: {\n id: number | string\n updatedAt: string\n }\n rowData: {\n autosave?: boolean\n id: number | string\n publishedLocale?: string\n version: {\n _status: string\n }\n }\n}\n\nexport const AutosaveCell: React.FC<AutosaveCellProps> = ({\n currentlyPublishedVersion,\n latestDraftVersion,\n rowData,\n}) => {\n const { t } = useTranslation()\n\n return (\n <div className={`${baseClass}__items`}>\n {rowData?.autosave && <Pill size=\"small\">{t('version:autosave')}</Pill>}\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n disableDate={true}\n doc={rowData}\n labelFirst={false}\n labelStyle=\"pill\"\n latestDraftVersion={latestDraftVersion}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,IAAI,EAAEC,cAAc,QAAQ;AACrC,OAAOC,KAAA,MAAW;AAGlB,SAASC,gBAAgB,QAAQ;AAEjC,MAAMC,SAAA,GAAY;AAqBlB,OAAO,MAAMC,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,yBAAA;IAAAC,kBAAA;IAAAC;EAAA,IAAAJ,EAIzD;EACC;IAAAK;EAAA,IAAcV,cAAA;EAAA,IAAAW,EAAA;EAAA,IAAAL,CAAA,QAAAC,yBAAA,IAAAD,CAAA,QAAAE,kBAAA,IAAAF,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAI,CAAA;IAGZC,EAAA,GAAAC,KAAA,CAAC;MAAAC,SAAA,EAAe,GAAAV,SAAA,SAAqB;MAAAW,QAAA,GAClCL,OAAA,EAAAM,QAAA,IAAqBC,IAAA,CAAAjB,IAAA;QAAAkB,IAAA,EAAW;QAAAH,QAAA,EAASJ,CAAA,CAAE;MAAA,C,GAC5CM,IAAA,CAAAd,gBAAA;QAAAK,yBAAA;QAAAW,WAAA;QAAAC,GAAA,EAGOV,OAAA;QAAAW,UAAA;QAAAC,UAAA,EAEM;QAAAb;MAAA,C;;;;;;;;;;SAPfG,E;CAYJ","ignoreList":[]}
1
+ {"version":3,"sources":["../../../../../src/views/Versions/cells/AutosaveCell/index.tsx"],"sourcesContent":["'use client'\nimport { Pill, useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport './index.scss'\nimport { VersionPillLabel } from '../../../Version/VersionPillLabel/VersionPillLabel.js'\n\nconst baseClass = 'autosave-cell'\n\ntype AutosaveCellProps = {\n currentlyPublishedVersion?: {\n id: number | string\n updatedAt: string\n }\n latestDraftVersion?: {\n id: number | string\n updatedAt: string\n }\n rowData: {\n autosave?: boolean\n id: number | string\n publishedLocale?: string\n version: {\n _status: string\n }\n }\n}\n\nexport const AutosaveCell: React.FC<AutosaveCellProps> = ({\n currentlyPublishedVersion,\n latestDraftVersion,\n rowData,\n}) => {\n const { t } = useTranslation()\n\n return (\n <div className={`${baseClass}__items`}>\n {rowData?.autosave && <Pill size=\"small\">{t('version:autosave')}</Pill>}\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n disableDate={true}\n doc={rowData}\n labelFirst={false}\n labelStyle=\"pill\"\n latestDraftVersion={latestDraftVersion}\n />\n </div>\n )\n}\n"],"names":["Pill","useTranslation","React","VersionPillLabel","baseClass","AutosaveCell","currentlyPublishedVersion","latestDraftVersion","rowData","t","div","className","autosave","size","disableDate","doc","labelFirst","labelStyle"],"mappings":"AAAA;;AACA,SAASA,IAAI,EAAEC,cAAc,QAAQ,iBAAgB;AACrD,OAAOC,WAAW,QAAO;AAEzB,OAAO,eAAc;AACrB,SAASC,gBAAgB,QAAQ,wDAAuD;AAExF,MAAMC,YAAY;AAqBlB,OAAO,MAAMC,eAA4C,CAAC,EACxDC,yBAAyB,EACzBC,kBAAkB,EAClBC,OAAO,EACR;IACC,MAAM,EAAEC,CAAC,EAAE,GAAGR;IAEd,qBACE,QAACS;QAAIC,WAAW,GAAGP,UAAU,OAAO,CAAC;;YAClCI,SAASI,0BAAY,QAACZ;gBAAKa,MAAK;0BAASJ,EAAE;;;;;;0BAC5C,QAACN;gBACCG,2BAA2BA;gBAC3BQ,aAAa;gBACbC,KAAKP;gBACLQ,YAAY;gBACZC,YAAW;gBACXV,oBAAoBA;;;;;;;;;;;;AAI5B,EAAC"}
@@ -0,0 +1,9 @@
1
+ @layer payload-default {
2
+ .autosave-cell {
3
+ &__items {
4
+ display: flex;
5
+ align-items: center;
6
+ gap: calc(var(--base) * 0.5);
7
+ }
8
+ }
9
+ }