@payloadcms/next 3.70.0 → 3.71.0-internal-debug.80dab4c

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 (448) 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 -210
  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/getFieldPathsModified.js +25 -22
  393. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
  394. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +32 -36
  395. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  396. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +145 -129
  397. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  398. package/dist/views/Version/Restore/index.js +117 -93
  399. package/dist/views/Version/Restore/index.js.map +1 -1
  400. package/dist/views/Version/Restore/index.scss +84 -0
  401. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +33 -50
  402. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  403. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +170 -226
  404. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  405. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +18 -0
  406. package/dist/views/Version/SelectComparison/index.js +73 -50
  407. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  408. package/dist/views/Version/SelectComparison/index.scss +9 -0
  409. package/dist/views/Version/SelectComparison/types.js +2 -1
  410. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  411. package/dist/views/Version/SelectLocales/index.js +34 -32
  412. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  413. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +104 -95
  414. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  415. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +23 -27
  416. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  417. package/dist/views/Version/VersionPillLabel/index.scss +26 -0
  418. package/dist/views/Version/fetchVersions.js +113 -138
  419. package/dist/views/Version/fetchVersions.js.map +1 -1
  420. package/dist/views/Version/index.js +325 -323
  421. package/dist/views/Version/index.js.map +1 -1
  422. package/dist/views/Version/metadata.js +43 -50
  423. package/dist/views/Version/metadata.js.map +1 -1
  424. package/dist/views/Versions/buildColumns.js +95 -79
  425. package/dist/views/Versions/buildColumns.js.map +1 -1
  426. package/dist/views/Versions/cells/AutosaveCell/index.js +34 -38
  427. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  428. package/dist/views/Versions/cells/AutosaveCell/index.scss +9 -0
  429. package/dist/views/Versions/cells/CreatedAt/index.js +32 -53
  430. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  431. package/dist/views/Versions/cells/ID/index.js +10 -8
  432. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  433. package/dist/views/Versions/index.client.js +106 -83
  434. package/dist/views/Versions/index.client.js.map +1 -1
  435. package/dist/views/Versions/index.js +143 -143
  436. package/dist/views/Versions/index.js.map +1 -1
  437. package/dist/views/Versions/index.scss +110 -0
  438. package/dist/views/Versions/metadata.js +37 -44
  439. package/dist/views/Versions/metadata.js.map +1 -1
  440. package/dist/views/Versions/types.js +2 -1
  441. package/dist/views/Versions/types.js.map +1 -1
  442. package/dist/withPayload/withPayload.js +198 -143
  443. package/dist/withPayload/withPayload.js.map +1 -1
  444. package/dist/withPayload/withPayload.utils.js +92 -95
  445. package/dist/withPayload/withPayload.utils.js.map +1 -1
  446. package/dist/withPayload/withPayloadLegacy.js +42 -40
  447. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  448. package/package.json +7 -7
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
2
  import { formatDate } from '@payloadcms/ui/shared';
3
3
  import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
4
4
  import { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap';
@@ -12,338 +12,340 @@ import { RenderDiff } from './RenderFieldsToDiff/index.js';
12
12
  import { getVersionLabel } from './VersionPillLabel/getVersionLabel.js';
13
13
  import { VersionPillLabel } from './VersionPillLabel/VersionPillLabel.js';
14
14
  export async function VersionView(props) {
15
- const {
16
- hasPublishedDoc,
17
- i18n,
18
- initPageResult,
19
- routeSegments,
20
- searchParams
21
- } = props;
22
- const {
23
- collectionConfig,
24
- docID: id,
25
- globalConfig,
26
- permissions,
27
- req,
28
- req: {
29
- payload,
30
- payload: {
31
- config,
32
- config: {
33
- localization
34
- }
35
- } = {},
36
- user
37
- } = {}
38
- } = initPageResult;
39
- const versionToID = routeSegments[routeSegments.length - 1];
40
- const collectionSlug = collectionConfig?.slug;
41
- const globalSlug = globalConfig?.slug;
42
- const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig);
43
- const localeCodesFromParams = searchParams.localeCodes ? JSON.parse(searchParams.localeCodes) : null;
44
- const versionFromIDFromParams = searchParams.versionFrom;
45
- const modifiedOnly = searchParams.modifiedOnly === 'false' ? false : true;
46
- const docPermissions = collectionSlug ? permissions.collections[collectionSlug] : permissions.globals[globalSlug];
47
- const versionTo = await fetchVersion({
48
- id: versionToID,
49
- collectionSlug,
50
- depth: 1,
51
- globalSlug,
52
- locale: 'all',
53
- overrideAccess: false,
54
- req,
55
- user
56
- });
57
- if (!versionTo) {
58
- return notFound();
59
- }
60
- const [previousVersionResult, versionFromResult, currentlyPublishedVersion, latestDraftVersion, previousPublishedVersionResult] = await Promise.all([
61
- // Previous version (the one before the versionTo)
62
- fetchVersions({
63
- collectionSlug,
64
- // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.
65
- // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.
66
- depth: versionFromIDFromParams ? 0 : 1,
67
- draft: true,
68
- globalSlug,
69
- limit: 1,
70
- locale: 'all',
71
- overrideAccess: false,
72
- parentID: id,
73
- req,
74
- sort: '-updatedAt',
75
- user,
76
- where: {
77
- and: [{
78
- updatedAt: {
79
- less_than: versionTo.updatedAt
80
- }
81
- }]
15
+ const { hasPublishedDoc, i18n, initPageResult, routeSegments, searchParams } = props;
16
+ const { collectionConfig, docID: id, globalConfig, permissions, req, req: { payload, payload: { config, config: { localization } } = {}, user } = {} } = initPageResult;
17
+ const versionToID = routeSegments[routeSegments.length - 1];
18
+ const collectionSlug = collectionConfig?.slug;
19
+ const globalSlug = globalConfig?.slug;
20
+ const draftsEnabled = hasDraftsEnabled(collectionConfig || globalConfig);
21
+ const localeCodesFromParams = searchParams.localeCodes ? JSON.parse(searchParams.localeCodes) : null;
22
+ const versionFromIDFromParams = searchParams.versionFrom;
23
+ const modifiedOnly = searchParams.modifiedOnly === 'false' ? false : true;
24
+ const docPermissions = collectionSlug ? permissions.collections[collectionSlug] : permissions.globals[globalSlug];
25
+ const versionTo = await fetchVersion({
26
+ id: versionToID,
27
+ collectionSlug,
28
+ depth: 1,
29
+ globalSlug,
30
+ locale: 'all',
31
+ overrideAccess: false,
32
+ req,
33
+ user
34
+ });
35
+ if (!versionTo) {
36
+ return notFound();
82
37
  }
83
- }),
84
- // Version from ID from params
85
- versionFromIDFromParams ? fetchVersion({
86
- id: versionFromIDFromParams,
87
- collectionSlug,
88
- depth: 1,
89
- globalSlug,
90
- locale: 'all',
91
- overrideAccess: false,
92
- req,
93
- user
94
- }) : Promise.resolve(null),
95
- // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published
96
- hasPublishedDoc ? fetchLatestVersion({
97
- collectionSlug,
98
- depth: 0,
99
- globalSlug,
100
- locale: 'all',
101
- overrideAccess: false,
102
- parentID: id,
103
- req,
104
- status: 'published',
105
- user
106
- }) : Promise.resolve(null),
107
- // Latest draft version
108
- draftsEnabled ? fetchLatestVersion({
109
- collectionSlug,
110
- depth: 0,
111
- globalSlug,
112
- locale: 'all',
113
- overrideAccess: false,
114
- parentID: id,
115
- req,
116
- status: 'draft',
117
- user
118
- }) : Promise.resolve(null),
119
- // Previous published version
120
- // Only query for published versions if drafts are enabled (since _status field only exists with drafts)
121
- draftsEnabled ? fetchVersions({
122
- collectionSlug,
123
- depth: 0,
124
- draft: true,
125
- globalSlug,
126
- limit: 1,
127
- locale: 'all',
128
- overrideAccess: false,
129
- parentID: id,
130
- req,
131
- sort: '-updatedAt',
132
- user,
133
- where: {
134
- and: [{
135
- updatedAt: {
136
- less_than: versionTo.updatedAt
38
+ const [previousVersionResult, versionFromResult, currentlyPublishedVersion, latestDraftVersion, previousPublishedVersionResult] = await Promise.all([
39
+ // Previous version (the one before the versionTo)
40
+ fetchVersions({
41
+ collectionSlug,
42
+ // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.
43
+ // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.
44
+ depth: versionFromIDFromParams ? 0 : 1,
45
+ draft: true,
46
+ globalSlug,
47
+ limit: 1,
48
+ locale: 'all',
49
+ overrideAccess: false,
50
+ parentID: id,
51
+ req,
52
+ sort: '-updatedAt',
53
+ user,
54
+ where: {
55
+ and: [
56
+ {
57
+ updatedAt: {
58
+ less_than: versionTo.updatedAt
59
+ }
60
+ }
61
+ ]
62
+ }
63
+ }),
64
+ // Version from ID from params
65
+ versionFromIDFromParams ? fetchVersion({
66
+ id: versionFromIDFromParams,
67
+ collectionSlug,
68
+ depth: 1,
69
+ globalSlug,
70
+ locale: 'all',
71
+ overrideAccess: false,
72
+ req,
73
+ user
74
+ }) : Promise.resolve(null),
75
+ // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published
76
+ hasPublishedDoc ? fetchLatestVersion({
77
+ collectionSlug,
78
+ depth: 0,
79
+ globalSlug,
80
+ locale: 'all',
81
+ overrideAccess: false,
82
+ parentID: id,
83
+ req,
84
+ status: 'published',
85
+ user
86
+ }) : Promise.resolve(null),
87
+ // Latest draft version
88
+ draftsEnabled ? fetchLatestVersion({
89
+ collectionSlug,
90
+ depth: 0,
91
+ globalSlug,
92
+ locale: 'all',
93
+ overrideAccess: false,
94
+ parentID: id,
95
+ req,
96
+ status: 'draft',
97
+ user
98
+ }) : Promise.resolve(null),
99
+ // Previous published version
100
+ // Only query for published versions if drafts are enabled (since _status field only exists with drafts)
101
+ draftsEnabled ? fetchVersions({
102
+ collectionSlug,
103
+ depth: 0,
104
+ draft: true,
105
+ globalSlug,
106
+ limit: 1,
107
+ locale: 'all',
108
+ overrideAccess: false,
109
+ parentID: id,
110
+ req,
111
+ sort: '-updatedAt',
112
+ user,
113
+ where: {
114
+ and: [
115
+ {
116
+ updatedAt: {
117
+ less_than: versionTo.updatedAt
118
+ }
119
+ },
120
+ {
121
+ 'version._status': {
122
+ equals: 'published'
123
+ }
124
+ }
125
+ ]
126
+ }
127
+ }) : Promise.resolve(null)
128
+ ]);
129
+ const previousVersion = previousVersionResult?.docs?.[0] ?? null;
130
+ const versionFrom = versionFromResult || // By default, we'll compare the previous version. => versionFrom = version previous to versionTo
131
+ previousVersion;
132
+ // Previous published version before the versionTo
133
+ const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null;
134
+ let selectedLocales = [];
135
+ if (localization) {
136
+ let locales = [];
137
+ if (localeCodesFromParams) {
138
+ for (const code of localeCodesFromParams){
139
+ const locale = localization.locales.find((locale)=>locale.code === code);
140
+ if (!locale) {
141
+ continue;
142
+ }
143
+ locales.push(locale);
144
+ }
145
+ } else {
146
+ locales = localization.locales;
137
147
  }
138
- }, {
139
- 'version._status': {
140
- equals: 'published'
148
+ if (localization.filterAvailableLocales) {
149
+ locales = await localization.filterAvailableLocales({
150
+ locales,
151
+ req
152
+ }) || [];
141
153
  }
142
- }]
154
+ selectedLocales = locales.map((locale)=>locale.code);
143
155
  }
144
- }) : Promise.resolve(null)]);
145
- const previousVersion = previousVersionResult?.docs?.[0] ?? null;
146
- const versionFrom = versionFromResult ||
147
- // By default, we'll compare the previous version. => versionFrom = version previous to versionTo
148
- previousVersion;
149
- // Previous published version before the versionTo
150
- const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null;
151
- let selectedLocales = [];
152
- if (localization) {
153
- let locales = [];
154
- if (localeCodesFromParams) {
155
- for (const code of localeCodesFromParams) {
156
- const locale = localization.locales.find(locale => locale.code === code);
157
- if (!locale) {
158
- continue;
159
- }
160
- locales.push(locale);
161
- }
162
- } else {
163
- locales = localization.locales;
164
- }
165
- if (localization.filterAvailableLocales) {
166
- locales = (await localization.filterAvailableLocales({
167
- locales,
168
- req
169
- })) || [];
170
- }
171
- selectedLocales = locales.map(locale => locale.code);
172
- }
173
- const schemaMap = getSchemaMap({
174
- collectionSlug,
175
- config,
176
- globalSlug,
177
- i18n
178
- });
179
- const clientSchemaMap = getClientSchemaMap({
180
- collectionSlug,
181
- config: getClientConfig({
182
- config: payload.config,
183
- i18n,
184
- importMap: payload.importMap,
185
- user
186
- }),
187
- globalSlug,
188
- i18n,
189
- payload,
190
- schemaMap
191
- });
192
- const RenderedDiff = RenderDiff({
193
- clientSchemaMap,
194
- customDiffComponents: {},
195
- entitySlug: collectionSlug || globalSlug,
196
- fields: (collectionConfig || globalConfig)?.fields,
197
- fieldsPermissions: docPermissions?.fields,
198
- i18n,
199
- modifiedOnly,
200
- parentIndexPath: '',
201
- parentIsLocalized: false,
202
- parentPath: '',
203
- parentSchemaPath: '',
204
- req,
205
- selectedLocales,
206
- versionFromSiblingData: {
207
- ...versionFrom?.version,
208
- updatedAt: versionFrom?.updatedAt
209
- },
210
- versionToSiblingData: {
211
- ...versionTo.version,
212
- updatedAt: versionTo.updatedAt
213
- }
214
- });
215
- const versionToCreatedAtFormatted = versionTo.updatedAt ? formatDate({
216
- date: typeof versionTo.updatedAt === 'string' ? new Date(versionTo.updatedAt) : versionTo.updatedAt,
217
- i18n,
218
- pattern: config.admin.dateFormat
219
- }) : '';
220
- const formatPill = ({
221
- doc,
222
- labelOverride,
223
- labelStyle,
224
- labelSuffix
225
- }) => {
226
- return /*#__PURE__*/_jsx(VersionPillLabel, {
227
- currentlyPublishedVersion: currentlyPublishedVersion,
228
- doc: doc,
229
- labelFirst: true,
230
- labelOverride: labelOverride,
231
- labelStyle: labelStyle ?? 'text',
232
- labelSuffix: labelSuffix,
233
- latestDraftVersion: latestDraftVersion
234
- }, doc.id);
235
- };
236
- // SelectComparison Options:
237
- //
238
- // Previous version: always, unless doesn't exist. Can be the same as previously published
239
- // Latest draft: only if no newer published exists (latestDraftVersion)
240
- // Currently published: always, if exists
241
- // Previously published: if there is a prior published version older than versionTo
242
- // Specific Version: only if not already present under other label (= versionFrom)
243
- let versionFromOptions = [];
244
- // Previous version
245
- if (previousVersion?.id) {
246
- versionFromOptions.push({
247
- doc: previousVersion,
248
- labelOverride: i18n.t('version:previousVersion'),
249
- updatedAt: new Date(previousVersion.updatedAt),
250
- value: previousVersion.id
251
- });
252
- }
253
- // Latest Draft
254
- const publishedNewerThanDraft = currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt;
255
- if (latestDraftVersion && !publishedNewerThanDraft) {
256
- versionFromOptions.push({
257
- doc: latestDraftVersion,
258
- updatedAt: new Date(latestDraftVersion.updatedAt),
259
- value: latestDraftVersion.id
260
- });
261
- }
262
- // Currently Published
263
- if (currentlyPublishedVersion) {
264
- versionFromOptions.push({
265
- doc: currentlyPublishedVersion,
266
- updatedAt: new Date(currentlyPublishedVersion.updatedAt),
267
- value: currentlyPublishedVersion.id
156
+ const schemaMap = getSchemaMap({
157
+ collectionSlug,
158
+ config,
159
+ globalSlug,
160
+ i18n
268
161
  });
269
- }
270
- // Previous Published
271
- if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {
272
- versionFromOptions.push({
273
- doc: previousPublishedVersion,
274
- labelOverride: i18n.t('version:previouslyPublished'),
275
- updatedAt: new Date(previousPublishedVersion.updatedAt),
276
- value: previousPublishedVersion.id
162
+ const clientSchemaMap = getClientSchemaMap({
163
+ collectionSlug,
164
+ config: getClientConfig({
165
+ config: payload.config,
166
+ i18n,
167
+ importMap: payload.importMap,
168
+ user
169
+ }),
170
+ globalSlug,
171
+ i18n,
172
+ payload,
173
+ schemaMap
277
174
  });
278
- }
279
- // Specific Version
280
- if (versionFrom?.id && !versionFromOptions.some(option => option.value === versionFrom.id)) {
281
- // Only add "specific version" if it is not already in the options
282
- versionFromOptions.push({
283
- doc: versionFrom,
284
- labelOverride: i18n.t('version:specificVersion'),
285
- updatedAt: new Date(versionFrom.updatedAt),
286
- value: versionFrom.id
175
+ const RenderedDiff = RenderDiff({
176
+ clientSchemaMap,
177
+ customDiffComponents: {},
178
+ entitySlug: collectionSlug || globalSlug,
179
+ fields: (collectionConfig || globalConfig)?.fields,
180
+ fieldsPermissions: docPermissions?.fields,
181
+ i18n,
182
+ modifiedOnly,
183
+ parentIndexPath: '',
184
+ parentIsLocalized: false,
185
+ parentPath: '',
186
+ parentSchemaPath: '',
187
+ req,
188
+ selectedLocales,
189
+ versionFromSiblingData: {
190
+ ...versionFrom?.version,
191
+ updatedAt: versionFrom?.updatedAt
192
+ },
193
+ versionToSiblingData: {
194
+ ...versionTo.version,
195
+ updatedAt: versionTo.updatedAt
196
+ }
287
197
  });
288
- }
289
- versionFromOptions = versionFromOptions.sort((a, b) => {
290
- // Sort by updatedAt, newest first
291
- if (a && b) {
292
- return b.updatedAt.getTime() - a.updatedAt.getTime();
198
+ const versionToCreatedAtFormatted = versionTo.updatedAt ? formatDate({
199
+ date: typeof versionTo.updatedAt === 'string' ? new Date(versionTo.updatedAt) : versionTo.updatedAt,
200
+ i18n,
201
+ pattern: config.admin.dateFormat
202
+ }) : '';
203
+ const formatPill = ({ doc, labelOverride, labelStyle, labelSuffix })=>{
204
+ return /*#__PURE__*/ _jsxDEV(VersionPillLabel, {
205
+ currentlyPublishedVersion: currentlyPublishedVersion,
206
+ doc: doc,
207
+ labelFirst: true,
208
+ labelOverride: labelOverride,
209
+ labelStyle: labelStyle ?? 'text',
210
+ labelSuffix: labelSuffix,
211
+ latestDraftVersion: latestDraftVersion
212
+ }, doc.id, false, {
213
+ fileName: "src/views/Version/index.tsx",
214
+ lineNumber: 278,
215
+ columnNumber: 7
216
+ }, this);
217
+ };
218
+ // SelectComparison Options:
219
+ //
220
+ // Previous version: always, unless doesn't exist. Can be the same as previously published
221
+ // Latest draft: only if no newer published exists (latestDraftVersion)
222
+ // Currently published: always, if exists
223
+ // Previously published: if there is a prior published version older than versionTo
224
+ // Specific Version: only if not already present under other label (= versionFrom)
225
+ let versionFromOptions = [];
226
+ // Previous version
227
+ if (previousVersion?.id) {
228
+ versionFromOptions.push({
229
+ doc: previousVersion,
230
+ labelOverride: i18n.t('version:previousVersion'),
231
+ updatedAt: new Date(previousVersion.updatedAt),
232
+ value: previousVersion.id
233
+ });
234
+ }
235
+ // Latest Draft
236
+ const publishedNewerThanDraft = currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt;
237
+ if (latestDraftVersion && !publishedNewerThanDraft) {
238
+ versionFromOptions.push({
239
+ doc: latestDraftVersion,
240
+ updatedAt: new Date(latestDraftVersion.updatedAt),
241
+ value: latestDraftVersion.id
242
+ });
243
+ }
244
+ // Currently Published
245
+ if (currentlyPublishedVersion) {
246
+ versionFromOptions.push({
247
+ doc: currentlyPublishedVersion,
248
+ updatedAt: new Date(currentlyPublishedVersion.updatedAt),
249
+ value: currentlyPublishedVersion.id
250
+ });
293
251
  }
294
- return 0;
295
- });
296
- const versionToIsVersionFrom = versionFrom?.id === versionTo.id;
297
- const versionFromComparisonOptions = [];
298
- for (const option of versionFromOptions) {
299
- const isVersionTo = option.value === versionTo.id;
300
- if (isVersionTo && !versionToIsVersionFrom) {
301
- continue;
252
+ // Previous Published
253
+ if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {
254
+ versionFromOptions.push({
255
+ doc: previousPublishedVersion,
256
+ labelOverride: i18n.t('version:previouslyPublished'),
257
+ updatedAt: new Date(previousPublishedVersion.updatedAt),
258
+ value: previousPublishedVersion.id
259
+ });
302
260
  }
303
- const alreadyAdded = versionFromComparisonOptions.some(existingOption => existingOption.value === option.value);
304
- if (alreadyAdded) {
305
- continue;
261
+ // Specific Version
262
+ if (versionFrom?.id && !versionFromOptions.some((option)=>option.value === versionFrom.id)) {
263
+ // Only add "specific version" if it is not already in the options
264
+ versionFromOptions.push({
265
+ doc: versionFrom,
266
+ labelOverride: i18n.t('version:specificVersion'),
267
+ updatedAt: new Date(versionFrom.updatedAt),
268
+ value: versionFrom.id
269
+ });
306
270
  }
307
- const otherOptionsWithSameID = versionFromOptions.filter(existingOption => existingOption.value === option.value && existingOption !== option);
308
- // Merge options with same ID to the same option
309
- const labelSuffix = otherOptionsWithSameID?.length ? /*#__PURE__*/_jsxs("span", {
310
- children: [' (', otherOptionsWithSameID.map((optionWithSameID, index) => {
311
- const label = optionWithSameID.labelOverride || getVersionLabel({
312
- currentlyPublishedVersion,
313
- latestDraftVersion,
314
- t: i18n.t,
315
- version: optionWithSameID.doc
316
- }).label;
317
- return /*#__PURE__*/_jsxs(React.Fragment, {
318
- children: [index > 0 ? ', ' : '', label]
319
- }, `${optionWithSameID.value}-${index}`);
320
- }), ')']
321
- }, `${option.value}-suffix`) : undefined;
322
- versionFromComparisonOptions.push({
323
- label: formatPill({
324
- doc: option.doc,
325
- labelOverride: option.labelOverride,
326
- labelSuffix
327
- }),
328
- value: option.value
271
+ versionFromOptions = versionFromOptions.sort((a, b)=>{
272
+ // Sort by updatedAt, newest first
273
+ if (a && b) {
274
+ return b.updatedAt.getTime() - a.updatedAt.getTime();
275
+ }
276
+ return 0;
329
277
  });
330
- }
331
- return /*#__PURE__*/_jsx(DefaultVersionView, {
332
- canUpdate: docPermissions?.update,
333
- modifiedOnly: modifiedOnly,
334
- RenderedDiff: RenderedDiff,
335
- selectedLocales: selectedLocales,
336
- versionFromCreatedAt: versionFrom?.createdAt,
337
- versionFromID: versionFrom?.id,
338
- versionFromOptions: versionFromComparisonOptions,
339
- versionToCreatedAt: versionTo.createdAt,
340
- versionToCreatedAtFormatted: versionToCreatedAtFormatted,
341
- VersionToCreatedAtLabel: formatPill({
342
- doc: versionTo,
343
- labelStyle: 'pill'
344
- }),
345
- versionToID: versionTo.id,
346
- versionToStatus: versionTo.version?._status
347
- });
278
+ const versionToIsVersionFrom = versionFrom?.id === versionTo.id;
279
+ const versionFromComparisonOptions = [];
280
+ for (const option of versionFromOptions){
281
+ const isVersionTo = option.value === versionTo.id;
282
+ if (isVersionTo && !versionToIsVersionFrom) {
283
+ continue;
284
+ }
285
+ const alreadyAdded = versionFromComparisonOptions.some((existingOption)=>existingOption.value === option.value);
286
+ if (alreadyAdded) {
287
+ continue;
288
+ }
289
+ const otherOptionsWithSameID = versionFromOptions.filter((existingOption)=>existingOption.value === option.value && existingOption !== option);
290
+ // Merge options with same ID to the same option
291
+ const labelSuffix = otherOptionsWithSameID?.length ? /*#__PURE__*/ _jsxDEV("span", {
292
+ children: [
293
+ ' (',
294
+ otherOptionsWithSameID.map((optionWithSameID, index)=>{
295
+ const label = optionWithSameID.labelOverride || getVersionLabel({
296
+ currentlyPublishedVersion,
297
+ latestDraftVersion,
298
+ t: i18n.t,
299
+ version: optionWithSameID.doc
300
+ }).label;
301
+ return /*#__PURE__*/ _jsxDEV(React.Fragment, {
302
+ children: [
303
+ index > 0 ? ', ' : '',
304
+ label
305
+ ]
306
+ }, `${optionWithSameID.value}-${index}`, true, {
307
+ fileName: "src/views/Version/index.tsx",
308
+ lineNumber: 403,
309
+ columnNumber: 13
310
+ }, this);
311
+ }),
312
+ ')'
313
+ ]
314
+ }, `${option.value}-suffix`, true, {
315
+ fileName: "src/views/Version/index.tsx",
316
+ lineNumber: 390,
317
+ columnNumber: 7
318
+ }, this) : undefined;
319
+ versionFromComparisonOptions.push({
320
+ label: formatPill({
321
+ doc: option.doc,
322
+ labelOverride: option.labelOverride,
323
+ labelSuffix
324
+ }),
325
+ value: option.value
326
+ });
327
+ }
328
+ return /*#__PURE__*/ _jsxDEV(DefaultVersionView, {
329
+ canUpdate: docPermissions?.update,
330
+ modifiedOnly: modifiedOnly,
331
+ RenderedDiff: RenderedDiff,
332
+ selectedLocales: selectedLocales,
333
+ versionFromCreatedAt: versionFrom?.createdAt,
334
+ versionFromID: versionFrom?.id,
335
+ versionFromOptions: versionFromComparisonOptions,
336
+ versionToCreatedAt: versionTo.createdAt,
337
+ versionToCreatedAtFormatted: versionToCreatedAtFormatted,
338
+ VersionToCreatedAtLabel: formatPill({
339
+ doc: versionTo,
340
+ labelStyle: 'pill'
341
+ }),
342
+ versionToID: versionTo.id,
343
+ versionToStatus: versionTo.version?._status
344
+ }, void 0, false, {
345
+ fileName: "src/views/Version/index.tsx",
346
+ lineNumber: 424,
347
+ columnNumber: 5
348
+ }, this);
348
349
  }
350
+
349
351
  //# sourceMappingURL=index.js.map