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

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 +58 -52
  2. package/dist/auth/login.js.map +1 -1
  3. package/dist/auth/logout.js +44 -39
  4. package/dist/auth/logout.js.map +1 -1
  5. package/dist/auth/refresh.js +47 -45
  6. package/dist/auth/refresh.js.map +1 -1
  7. package/dist/cjs/withPayload.cjs +23 -61
  8. package/dist/cjs/withPayload.cjs.map +2 -2
  9. package/dist/config.js +0 -1
  10. package/dist/config.js.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +15 -9
  12. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  13. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +71 -40
  14. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  15. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +59 -65
  16. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/index.js +70 -80
  18. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +23 -16
  20. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +69 -61
  22. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/index.js +28 -48
  24. package/dist/elements/DocumentHeader/index.js.map +1 -1
  25. package/dist/elements/FormHeader/index.js +16 -30
  26. package/dist/elements/FormHeader/index.js.map +1 -1
  27. package/dist/elements/Logo/index.js +34 -19
  28. package/dist/elements/Logo/index.js.map +1 -1
  29. package/dist/elements/Nav/NavHamburger/index.js +44 -23
  30. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  31. package/dist/elements/Nav/NavWrapper/index.js +54 -28
  32. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  33. package/dist/elements/Nav/SettingsMenuButton/index.js +39 -33
  34. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  35. package/dist/elements/Nav/getNavPrefs.js +22 -27
  36. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  37. package/dist/elements/Nav/index.client.js +118 -97
  38. package/dist/elements/Nav/index.client.js.map +1 -1
  39. package/dist/elements/Nav/index.js +127 -148
  40. package/dist/elements/Nav/index.js.map +1 -1
  41. package/dist/exports/auth.js +0 -1
  42. package/dist/exports/auth.js.map +1 -1
  43. package/dist/exports/client.js +1 -1
  44. package/dist/exports/client.js.map +1 -1
  45. package/dist/exports/layouts.js +0 -1
  46. package/dist/exports/layouts.js.map +1 -1
  47. package/dist/exports/routes.js +0 -1
  48. package/dist/exports/routes.js.map +1 -1
  49. package/dist/exports/rsc.js +0 -1
  50. package/dist/exports/rsc.js.map +1 -1
  51. package/dist/exports/templates.js +0 -1
  52. package/dist/exports/templates.js.map +1 -1
  53. package/dist/exports/utilities.js +12 -7
  54. package/dist/exports/utilities.js.map +1 -1
  55. package/dist/exports/views.js +0 -1
  56. package/dist/exports/views.js.map +1 -1
  57. package/dist/index.js +0 -1
  58. package/dist/index.js.map +1 -1
  59. package/dist/layouts/Root/NestProviders.js +20 -21
  60. package/dist/layouts/Root/NestProviders.js.map +1 -1
  61. package/dist/layouts/Root/checkDependencies.js +41 -49
  62. package/dist/layouts/Root/checkDependencies.js.map +1 -1
  63. package/dist/layouts/Root/index.js +103 -128
  64. package/dist/layouts/Root/index.js.map +1 -1
  65. package/dist/prod/styles.css +1 -5
  66. package/dist/routes/graphql/handler.js +122 -114
  67. package/dist/routes/graphql/handler.js.map +1 -1
  68. package/dist/routes/graphql/index.js +0 -1
  69. package/dist/routes/graphql/index.js.map +1 -1
  70. package/dist/routes/graphql/playground.js +27 -28
  71. package/dist/routes/graphql/playground.js.map +1 -1
  72. package/dist/routes/index.js +0 -1
  73. package/dist/routes/index.js.map +1 -1
  74. package/dist/routes/rest/index.js +22 -23
  75. package/dist/routes/rest/index.js.map +1 -1
  76. package/dist/routes/rest/og/image.js +79 -103
  77. package/dist/routes/rest/og/image.js.map +1 -1
  78. package/dist/routes/rest/og/index.js +54 -59
  79. package/dist/routes/rest/og/index.js.map +1 -1
  80. package/dist/templates/Default/NavHamburger/index.js +20 -12
  81. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  82. package/dist/templates/Default/Wrapper/index.js +44 -20
  83. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  84. package/dist/templates/Default/index.js +116 -147
  85. package/dist/templates/Default/index.js.map +1 -1
  86. package/dist/templates/Minimal/index.js +17 -26
  87. package/dist/templates/Minimal/index.js.map +1 -1
  88. package/dist/utilities/getExistingAuthToken.js +2 -3
  89. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  90. package/dist/utilities/getNextRequestI18n.js +13 -12
  91. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  92. package/dist/utilities/getPayloadHMR.js +5 -5
  93. package/dist/utilities/getPayloadHMR.js.map +1 -1
  94. package/dist/utilities/getPreferences.js +22 -27
  95. package/dist/utilities/getPreferences.js.map +1 -1
  96. package/dist/utilities/getRequestLocale.js +14 -13
  97. package/dist/utilities/getRequestLocale.js.map +1 -1
  98. package/dist/utilities/getRequestTheme.js +19 -19
  99. package/dist/utilities/getRequestTheme.js.map +1 -1
  100. package/dist/utilities/getRouteWithoutAdmin.js +5 -3
  101. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  102. package/dist/utilities/handleAuthRedirect.js +36 -22
  103. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  104. package/dist/utilities/handleServerFunctions.js +41 -34
  105. package/dist/utilities/handleServerFunctions.js.map +1 -1
  106. package/dist/utilities/initReq.js +96 -78
  107. package/dist/utilities/initReq.js.map +1 -1
  108. package/dist/utilities/isCustomAdminView.js +26 -22
  109. package/dist/utilities/isCustomAdminView.js.map +1 -1
  110. package/dist/utilities/isPublicAdminRoute.js +20 -26
  111. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  112. package/dist/utilities/meta.js +63 -68
  113. package/dist/utilities/meta.js.map +1 -1
  114. package/dist/utilities/selectiveCache.js +26 -25
  115. package/dist/utilities/selectiveCache.js.map +1 -1
  116. package/dist/utilities/setPayloadAuthCookie.js +22 -19
  117. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  118. package/dist/utilities/slugify.js +33 -24
  119. package/dist/utilities/slugify.js.map +1 -1
  120. package/dist/utilities/timestamp.js +6 -7
  121. package/dist/utilities/timestamp.js.map +1 -1
  122. package/dist/views/API/LocaleSelector/index.js +39 -17
  123. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  124. package/dist/views/API/RenderJSON/index.js +126 -171
  125. package/dist/views/API/RenderJSON/index.js.map +1 -1
  126. package/dist/views/API/index.client.js +197 -290
  127. package/dist/views/API/index.client.js.map +1 -1
  128. package/dist/views/API/index.js +2 -7
  129. package/dist/views/API/index.js.map +1 -1
  130. package/dist/views/API/metadata.js +23 -18
  131. package/dist/views/API/metadata.js.map +1 -1
  132. package/dist/views/Account/ResetPreferences/index.js +102 -78
  133. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  134. package/dist/views/Account/Settings/LanguageSelector.js +47 -18
  135. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  136. package/dist/views/Account/Settings/index.js +25 -60
  137. package/dist/views/Account/Settings/index.js.map +1 -1
  138. package/dist/views/Account/ToggleTheme/index.js +55 -38
  139. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  140. package/dist/views/Account/index.client.js +32 -16
  141. package/dist/views/Account/index.client.js.map +1 -1
  142. package/dist/views/Account/index.js +158 -147
  143. package/dist/views/Account/index.js.map +1 -1
  144. package/dist/views/Account/metadata.js +12 -8
  145. package/dist/views/Account/metadata.js.map +1 -1
  146. package/dist/views/BrowseByFolder/buildView.js +157 -138
  147. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  148. package/dist/views/BrowseByFolder/index.js +16 -16
  149. package/dist/views/BrowseByFolder/index.js.map +1 -1
  150. package/dist/views/BrowseByFolder/metadata.js +15 -13
  151. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  152. package/dist/views/CollectionFolders/buildView.js +142 -122
  153. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  154. package/dist/views/CollectionFolders/index.js +16 -16
  155. package/dist/views/CollectionFolders/index.js.map +1 -1
  156. package/dist/views/CollectionFolders/metadata.js +21 -18
  157. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  158. package/dist/views/CollectionFolders/renderFolderViewSlots.js +61 -58
  159. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  160. package/dist/views/CollectionTrash/index.js +17 -17
  161. package/dist/views/CollectionTrash/index.js.map +1 -1
  162. package/dist/views/CollectionTrash/metadata.js +21 -18
  163. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  164. package/dist/views/CreateFirstUser/index.client.js +103 -117
  165. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  166. package/dist/views/CreateFirstUser/index.js +81 -87
  167. package/dist/views/CreateFirstUser/index.js.map +1 -1
  168. package/dist/views/CreateFirstUser/metadata.js +12 -8
  169. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  170. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +138 -147
  171. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  172. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +405 -423
  173. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  174. package/dist/views/Dashboard/Default/ModularDashboard/index.js +75 -72
  175. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  176. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +89 -62
  177. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  178. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +47 -40
  179. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  180. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +65 -64
  181. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  182. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +147 -164
  183. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  184. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +30 -31
  185. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  186. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +229 -223
  187. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  188. package/dist/views/Dashboard/Default/index.js +45 -59
  189. package/dist/views/Dashboard/Default/index.js.map +1 -1
  190. package/dist/views/Dashboard/index.js +42 -46
  191. package/dist/views/Dashboard/index.js.map +1 -1
  192. package/dist/views/Dashboard/metadata.js +14 -10
  193. package/dist/views/Dashboard/metadata.js.map +1 -1
  194. package/dist/views/Document/getCustomDocumentViewByKey.js +2 -3
  195. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  196. package/dist/views/Document/getCustomViewByRoute.js +30 -27
  197. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  198. package/dist/views/Document/getDocPreferences.js +41 -40
  199. package/dist/views/Document/getDocPreferences.js.map +1 -1
  200. package/dist/views/Document/getDocumentData.js +55 -44
  201. package/dist/views/Document/getDocumentData.js.map +1 -1
  202. package/dist/views/Document/getDocumentPermissions.js +80 -77
  203. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  204. package/dist/views/Document/getDocumentView.js +283 -313
  205. package/dist/views/Document/getDocumentView.js.map +1 -1
  206. package/dist/views/Document/getIsLocked.js +66 -66
  207. package/dist/views/Document/getIsLocked.js.map +1 -1
  208. package/dist/views/Document/getMetaBySegment.js +136 -130
  209. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  210. package/dist/views/Document/getVersions.js +195 -205
  211. package/dist/views/Document/getVersions.js.map +1 -1
  212. package/dist/views/Document/handleServerFunction.js +128 -103
  213. package/dist/views/Document/handleServerFunction.js.map +1 -1
  214. package/dist/views/Document/index.js +355 -316
  215. package/dist/views/Document/index.js.map +1 -1
  216. package/dist/views/Document/metadata.js +1 -2
  217. package/dist/views/Document/metadata.js.map +1 -1
  218. package/dist/views/Document/renderDocumentSlots.js +132 -121
  219. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  220. package/dist/views/Edit/index.js +6 -10
  221. package/dist/views/Edit/index.js.map +1 -1
  222. package/dist/views/Edit/metadata.js +46 -36
  223. package/dist/views/Edit/metadata.js.map +1 -1
  224. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +164 -130
  225. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  226. package/dist/views/ForgotPassword/index.js +62 -79
  227. package/dist/views/ForgotPassword/index.js.map +1 -1
  228. package/dist/views/ForgotPassword/metadata.js +12 -8
  229. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  230. package/dist/views/List/createSerializableValue.js +11 -12
  231. package/dist/views/List/createSerializableValue.js.map +1 -1
  232. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  233. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  234. package/dist/views/List/extractRelationshipDisplayValue.js +14 -15
  235. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  236. package/dist/views/List/extractValueOrRelationshipID.js +15 -16
  237. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  238. package/dist/views/List/handleGroupBy.js +150 -133
  239. package/dist/views/List/handleGroupBy.js.map +1 -1
  240. package/dist/views/List/handleServerFunction.js +121 -98
  241. package/dist/views/List/handleServerFunction.js.map +1 -1
  242. package/dist/views/List/index.js +323 -305
  243. package/dist/views/List/index.js.map +1 -1
  244. package/dist/views/List/metadata.js +20 -17
  245. package/dist/views/List/metadata.js.map +1 -1
  246. package/dist/views/List/renderListViewSlots.js +75 -82
  247. package/dist/views/List/renderListViewSlots.js.map +1 -1
  248. package/dist/views/List/resolveAllFilterOptions.js +45 -43
  249. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  250. package/dist/views/List/transformColumnsToSelect.js +8 -9
  251. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  252. package/dist/views/Login/LoginField/index.js +89 -57
  253. package/dist/views/Login/LoginField/index.js.map +1 -1
  254. package/dist/views/Login/LoginForm/index.js +160 -107
  255. package/dist/views/Login/LoginForm/index.js.map +1 -1
  256. package/dist/views/Login/index.js +85 -82
  257. package/dist/views/Login/index.js.map +1 -1
  258. package/dist/views/Login/metadata.js +12 -8
  259. package/dist/views/Login/metadata.js.map +1 -1
  260. package/dist/views/Logout/LogoutClient.js +120 -84
  261. package/dist/views/Logout/LogoutClient.js.map +1 -1
  262. package/dist/views/Logout/index.js +29 -29
  263. package/dist/views/Logout/index.js.map +1 -1
  264. package/dist/views/Logout/metadata.js +11 -7
  265. package/dist/views/Logout/metadata.js.map +1 -1
  266. package/dist/views/NotFound/index.client.js +82 -71
  267. package/dist/views/NotFound/index.client.js.map +1 -1
  268. package/dist/views/NotFound/index.js +73 -72
  269. package/dist/views/NotFound/index.js.map +1 -1
  270. package/dist/views/NotFound/metadata.js +9 -7
  271. package/dist/views/NotFound/metadata.js.map +1 -1
  272. package/dist/views/ResetPassword/ResetPasswordForm/index.js +108 -97
  273. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  274. package/dist/views/ResetPassword/index.js +73 -93
  275. package/dist/views/ResetPassword/index.js.map +1 -1
  276. package/dist/views/ResetPassword/metadata.js +12 -8
  277. package/dist/views/ResetPassword/metadata.js.map +1 -1
  278. package/dist/views/Root/attachViewActions.js +23 -18
  279. package/dist/views/Root/attachViewActions.js.map +1 -1
  280. package/dist/views/Root/generateCustomViewMetadata.js +21 -19
  281. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  282. package/dist/views/Root/getCustomViewByKey.js +14 -12
  283. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  284. package/dist/views/Root/getCustomViewByRoute.js +42 -31
  285. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  286. package/dist/views/Root/getDocumentViewInfo.js +23 -24
  287. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  288. package/dist/views/Root/getRouteData.js +325 -333
  289. package/dist/views/Root/getRouteData.js.map +1 -1
  290. package/dist/views/Root/index.js +270 -248
  291. package/dist/views/Root/index.js.map +1 -1
  292. package/dist/views/Root/isPathMatchingRoute.js +26 -21
  293. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  294. package/dist/views/Root/metadata.js +181 -176
  295. package/dist/views/Root/metadata.js.map +1 -1
  296. package/dist/views/Unauthorized/index.js +46 -54
  297. package/dist/views/Unauthorized/index.js.map +1 -1
  298. package/dist/views/Unauthorized/metadata.js +12 -8
  299. package/dist/views/Unauthorized/metadata.js.map +1 -1
  300. package/dist/views/Verify/index.client.js +43 -25
  301. package/dist/views/Verify/index.client.js.map +1 -1
  302. package/dist/views/Verify/index.js +64 -69
  303. package/dist/views/Verify/index.js.map +1 -1
  304. package/dist/views/Verify/metadata.js +12 -8
  305. package/dist/views/Verify/metadata.js.map +1 -1
  306. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  307. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  308. package/dist/views/Version/Default/SetStepNav.js +127 -86
  309. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  310. package/dist/views/Version/Default/index.js +236 -380
  311. package/dist/views/Version/Default/index.js.map +1 -1
  312. package/dist/views/Version/Default/types.js +1 -2
  313. package/dist/views/Version/Default/types.js.map +1 -1
  314. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +119 -102
  315. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  316. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +73 -78
  317. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  318. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +408 -363
  319. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  320. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +51 -40
  321. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  322. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +67 -35
  323. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  324. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +56 -59
  325. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  326. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +117 -139
  327. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  328. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +41 -36
  329. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  330. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +178 -192
  331. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  332. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +11 -17
  333. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  334. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +73 -48
  335. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  336. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +143 -132
  337. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  338. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +81 -56
  339. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  340. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +211 -252
  341. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  342. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +22 -23
  343. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  344. package/dist/views/Version/RenderFieldsToDiff/index.js +9 -12
  345. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  346. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +228 -213
  347. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  348. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +826 -1005
  349. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  350. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +1 -2
  351. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  352. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +43 -44
  353. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  354. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +22 -25
  355. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
  356. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +36 -32
  357. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  358. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
  359. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  360. package/dist/views/Version/Restore/index.js +93 -117
  361. package/dist/views/Version/Restore/index.js.map +1 -1
  362. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -33
  363. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  364. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +226 -170
  365. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  366. package/dist/views/Version/SelectComparison/index.js +50 -73
  367. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  368. package/dist/views/Version/SelectComparison/types.js +1 -2
  369. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  370. package/dist/views/Version/SelectLocales/index.js +32 -34
  371. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  372. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +95 -104
  373. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  374. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +27 -23
  375. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  376. package/dist/views/Version/fetchVersions.js +138 -113
  377. package/dist/views/Version/fetchVersions.js.map +1 -1
  378. package/dist/views/Version/index.js +323 -325
  379. package/dist/views/Version/index.js.map +1 -1
  380. package/dist/views/Version/metadata.js +50 -43
  381. package/dist/views/Version/metadata.js.map +1 -1
  382. package/dist/views/Versions/buildColumns.js +79 -95
  383. package/dist/views/Versions/buildColumns.js.map +1 -1
  384. package/dist/views/Versions/cells/AutosaveCell/index.js +38 -34
  385. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  386. package/dist/views/Versions/cells/CreatedAt/index.js +53 -32
  387. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  388. package/dist/views/Versions/cells/ID/index.js +8 -10
  389. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  390. package/dist/views/Versions/index.client.js +83 -106
  391. package/dist/views/Versions/index.client.js.map +1 -1
  392. package/dist/views/Versions/index.js +143 -143
  393. package/dist/views/Versions/index.js.map +1 -1
  394. package/dist/views/Versions/metadata.js +44 -37
  395. package/dist/views/Versions/metadata.js.map +1 -1
  396. package/dist/views/Versions/types.js +1 -2
  397. package/dist/views/Versions/types.js.map +1 -1
  398. package/dist/withPayload/withPayload.js +143 -198
  399. package/dist/withPayload/withPayload.js.map +1 -1
  400. package/dist/withPayload/withPayload.utils.js +95 -92
  401. package/dist/withPayload/withPayload.utils.js.map +1 -1
  402. package/dist/withPayload/withPayloadLegacy.js +40 -42
  403. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  404. package/package.json +7 -7
  405. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +0 -38
  406. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -54
  407. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +0 -9
  408. package/dist/elements/DocumentHeader/index.scss +0 -64
  409. package/dist/elements/FormHeader/index.scss +0 -8
  410. package/dist/elements/Nav/NavWrapper/index.scss +0 -27
  411. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  412. package/dist/elements/Nav/index.scss +0 -173
  413. package/dist/esbuildEntry.d.ts +0 -5
  414. package/dist/esbuildEntry.d.ts.map +0 -1
  415. package/dist/esbuildEntry.js +0 -6
  416. package/dist/esbuildEntry.js.map +0 -1
  417. package/dist/templates/Default/Wrapper/index.scss +0 -58
  418. package/dist/templates/Default/index.scss +0 -79
  419. package/dist/templates/Minimal/index.scss +0 -30
  420. package/dist/views/API/RenderJSON/index.scss +0 -129
  421. package/dist/views/API/index.scss +0 -119
  422. package/dist/views/Account/Settings/index.scss +0 -48
  423. package/dist/views/CreateFirstUser/index.scss +0 -21
  424. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +0 -316
  425. package/dist/views/Login/LoginForm/index.scss +0 -10
  426. package/dist/views/Login/index.scss +0 -10
  427. package/dist/views/Logout/index.scss +0 -25
  428. package/dist/views/NotFound/index.scss +0 -57
  429. package/dist/views/ResetPassword/index.scss +0 -11
  430. package/dist/views/Unauthorized/index.scss +0 -14
  431. package/dist/views/Verify/index.scss +0 -16
  432. package/dist/views/Version/Default/index.scss +0 -170
  433. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +0 -81
  434. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +0 -12
  435. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +0 -9
  436. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +0 -59
  437. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +0 -91
  438. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +0 -4
  439. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +0 -9
  440. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +0 -4
  441. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +0 -121
  442. package/dist/views/Version/RenderFieldsToDiff/index.scss +0 -24
  443. package/dist/views/Version/Restore/index.scss +0 -84
  444. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  445. package/dist/views/Version/SelectComparison/index.scss +0 -9
  446. package/dist/views/Version/VersionPillLabel/index.scss +0 -26
  447. package/dist/views/Versions/cells/AutosaveCell/index.scss +0 -9
  448. package/dist/views/Versions/index.scss +0 -110
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n CheckboxInput,\n ChevronIcon,\n formatTimeToNow,\n Gutter,\n Pill,\n type SelectablePill,\n useConfig,\n useDocumentInfo,\n useLocale,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { usePathname, useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { type FormEventHandler, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport { Restore } from '../Restore/index.js'\nimport './index.scss'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport { type SelectedLocaleOnChange, SelectLocales } from '../SelectLocales/index.js'\nimport { SelectedLocalesContext } from './SelectedLocalesContext.js'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n canUpdate,\n modifiedOnly: modifiedOnlyProp,\n RenderedDiff,\n selectedLocales: selectedLocalesFromProps,\n versionFromCreatedAt,\n versionFromID,\n versionFromOptions,\n versionToCreatedAt,\n versionToCreatedAtFormatted,\n VersionToCreatedAtLabel,\n versionToID,\n versionToStatus,\n}) => {\n const { config, getEntityConfig } = useConfig()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [locales, setLocales] = useState<SelectablePill[]>([])\n const [localeSelectorOpen, setLocaleSelectorOpen] = React.useState(false)\n\n useEffect(() => {\n if (config.localization) {\n const updatedLocales = config.localization.locales.map((locale) => {\n let label = locale.label\n if (typeof locale.label !== 'string' && locale.label[code]) {\n label = locale.label[code]\n }\n\n return {\n name: locale.code,\n Label: label,\n selected: selectedLocalesFromProps.includes(locale.code),\n } as SelectablePill\n })\n setLocales(updatedLocales)\n }\n }, [code, config.localization, selectedLocalesFromProps])\n\n const { id: originalDocID, collectionSlug, globalSlug, isTrashed } = useDocumentInfo()\n const { startRouteTransition } = useRouteTransition()\n\n const { collectionConfig, globalConfig } = useMemo(() => {\n return {\n collectionConfig: getEntityConfig({ collectionSlug }),\n globalConfig: getEntityConfig({ globalSlug }),\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const router = useRouter()\n const pathname = usePathname()\n const searchParams = useSearchParams()\n const [modifiedOnly, setModifiedOnly] = useState(modifiedOnlyProp)\n\n const updateSearchParams = useCallback(\n (args: {\n modifiedOnly?: boolean\n selectedLocales?: SelectablePill[]\n versionFromID?: string\n }) => {\n // If the selected comparison doc or locales change, update URL params so that version page\n // This is so that RSC can update the version comparison state\n const current = new URLSearchParams(Array.from(searchParams.entries()))\n\n if (args?.versionFromID) {\n current.set('versionFrom', args?.versionFromID)\n }\n\n if (args?.selectedLocales) {\n if (!args.selectedLocales.length) {\n current.delete('localeCodes')\n } else {\n const selectedLocaleCodes: string[] = []\n for (const locale of args.selectedLocales) {\n if (locale.selected) {\n selectedLocaleCodes.push(locale.name)\n }\n }\n current.set('localeCodes', JSON.stringify(selectedLocaleCodes))\n }\n }\n\n if (args?.modifiedOnly === false) {\n current.set('modifiedOnly', 'false')\n } else if (args?.modifiedOnly === true) {\n current.delete('modifiedOnly')\n }\n\n const search = current.toString()\n const query = search ? `?${search}` : ''\n\n startRouteTransition(() => router.push(`${pathname}${query}`))\n },\n [pathname, router, searchParams, startRouteTransition],\n )\n\n const onToggleModifiedOnly: FormEventHandler<HTMLInputElement> = useCallback(\n (event) => {\n const newModified = (event.target as HTMLInputElement).checked\n setModifiedOnly(newModified)\n updateSearchParams({\n modifiedOnly: newModified,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeSelectedLocales: SelectedLocaleOnChange = useCallback(\n ({ locales }) => {\n setLocales(locales)\n updateSearchParams({\n selectedLocales: locales,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeVersionFrom: (val: CompareOption) => void = useCallback(\n (val) => {\n updateSearchParams({\n versionFromID: val.value,\n })\n },\n [updateSearchParams],\n )\n\n const { localization } = config\n\n const versionToTimeAgo = useMemo(\n () =>\n t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionToCreatedAt,\n i18n,\n }),\n }),\n [versionToCreatedAt, i18n, t],\n )\n\n const versionFromTimeAgo = useMemo(\n () =>\n versionFromCreatedAt\n ? t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionFromCreatedAt,\n i18n,\n }),\n })\n : undefined,\n [versionFromCreatedAt, i18n, t],\n )\n\n return (\n <main className={baseClass}>\n <Gutter className={`${baseClass}-controls-top`}>\n <div className={`${baseClass}-controls-top__wrapper`}>\n <h2>{i18n.t('version:compareVersions')}</h2>\n <div className={`${baseClass}-controls-top__wrapper-actions`}>\n <span className={`${baseClass}__modifiedCheckBox`}>\n <CheckboxInput\n checked={modifiedOnly}\n id={'modifiedOnly'}\n label={i18n.t('version:modifiedOnly')}\n onToggle={onToggleModifiedOnly}\n />\n </span>\n {localization && (\n <Pill\n aria-controls={`${baseClass}-locales`}\n aria-expanded={localeSelectorOpen}\n className={`${baseClass}__toggle-locales`}\n icon={<ChevronIcon direction={localeSelectorOpen ? 'up' : 'down'} />}\n onClick={() => setLocaleSelectorOpen((localeSelectorOpen) => !localeSelectorOpen)}\n pillStyle=\"light\"\n size=\"small\"\n >\n <span className={`${baseClass}__toggle-locales-label`}>\n {t('general:locales')}:{' '}\n </span>\n <span className={`${baseClass}__toggle-locales-list`}>\n {locales\n .filter((locale) => locale.selected)\n .map((locale) => locale.name)\n .join(', ')}\n </span>\n </Pill>\n )}\n </div>\n </div>\n\n {localization && (\n <SelectLocales\n locales={locales}\n localeSelectorOpen={localeSelectorOpen}\n onChange={onChangeSelectedLocales}\n />\n )}\n </Gutter>\n <Gutter className={`${baseClass}-controls-bottom`}>\n <div className={`${baseClass}-controls-bottom__wrapper`}>\n <div className={`${baseClass}__version-from`}>\n <div className={`${baseClass}__version-from-labels`}>\n <span>{t('version:comparingAgainst')}</span>\n {versionFromTimeAgo && (\n <span className={`${baseClass}__time-elapsed`}>{versionFromTimeAgo}</span>\n )}\n </div>\n <SelectComparison\n collectionSlug={collectionSlug}\n docID={originalDocID}\n globalSlug={globalSlug}\n onChange={onChangeVersionFrom}\n versionFromID={versionFromID}\n versionFromOptions={versionFromOptions}\n />\n </div>\n\n <div className={`${baseClass}__version-to`}>\n <div className={`${baseClass}__version-to-labels`}>\n <span>{t('version:currentlyViewing')}</span>\n <span className={`${baseClass}__time-elapsed`}>{versionToTimeAgo}</span>\n </div>\n <div className={`${baseClass}__version-to-version`}>\n {VersionToCreatedAtLabel}\n {canUpdate && !isTrashed && (\n <Restore\n className={`${baseClass}__restore`}\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={originalDocID}\n status={versionToStatus}\n versionDateFormatted={versionToCreatedAtFormatted}\n versionID={versionToID}\n />\n )}\n </div>\n </div>\n </div>\n </Gutter>\n <SetStepNav\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n id={originalDocID}\n isTrashed={isTrashed}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n versionToID={versionToID}\n />\n <Gutter className={`${baseClass}__diff-wrap`}>\n <SelectedLocalesContext value={{ selectedLocales: locales.map((locale) => locale.name) }}>\n {versionToCreatedAt && RenderedDiff}\n </SelectedLocalesContext>\n </Gutter>\n </main>\n )\n}\n"],"names":["CheckboxInput","ChevronIcon","formatTimeToNow","Gutter","Pill","useConfig","useDocumentInfo","useLocale","useRouteTransition","useTranslation","usePathname","useRouter","useSearchParams","React","useCallback","useEffect","useMemo","useState","Restore","SelectComparison","SelectLocales","SelectedLocalesContext","SetStepNav","baseClass","DefaultVersionView","canUpdate","modifiedOnly","modifiedOnlyProp","RenderedDiff","selectedLocales","selectedLocalesFromProps","versionFromCreatedAt","versionFromID","versionFromOptions","versionToCreatedAt","versionToCreatedAtFormatted","VersionToCreatedAtLabel","versionToID","versionToStatus","config","getEntityConfig","code","i18n","t","locales","setLocales","localeSelectorOpen","setLocaleSelectorOpen","localization","updatedLocales","map","locale","label","name","Label","selected","includes","id","originalDocID","collectionSlug","globalSlug","isTrashed","startRouteTransition","collectionConfig","globalConfig","router","pathname","searchParams","setModifiedOnly","updateSearchParams","args","current","URLSearchParams","Array","from","entries","set","length","delete","selectedLocaleCodes","push","JSON","stringify","search","toString","query","onToggleModifiedOnly","event","newModified","target","checked","onChangeSelectedLocales","onChangeVersionFrom","val","value","versionToTimeAgo","distance","date","versionFromTimeAgo","undefined","main","className","div","h2","span","onToggle","aria-controls","aria-expanded","icon","direction","onClick","pillStyle","size","filter","join","onChange","docID","labels","singular","status","versionDateFormatted","versionID"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["CheckboxInput","ChevronIcon","formatTimeToNow","Gutter","Pill","useConfig","useDocumentInfo","useLocale","useRouteTransition","useTranslation","usePathname","useRouter","useSearchParams","React","useCallback","useEffect","useMemo","useState","Restore","SelectComparison","SelectLocales","SelectedLocalesContext","SetStepNav","baseClass","DefaultVersionView","canUpdate","modifiedOnly","modifiedOnlyProp","RenderedDiff","selectedLocales","selectedLocalesFromProps","versionFromCreatedAt","versionFromID","versionFromOptions","versionToCreatedAt","versionToCreatedAtFormatted","VersionToCreatedAtLabel","versionToID","versionToStatus","config","getEntityConfig","code","i18n","t","locales","setLocales","localeSelectorOpen","setLocaleSelectorOpen","localization","updatedLocales","map","locale","label","name","Label","selected","includes","id","originalDocID","collectionSlug","globalSlug","isTrashed","startRouteTransition","collectionConfig","globalConfig","router","pathname","searchParams","setModifiedOnly","updateSearchParams","args","current","URLSearchParams","Array","from","entries","set","length","delete","selectedLocaleCodes","push","JSON","stringify","search","toString","query","onToggleModifiedOnly","event","newModified","target","checked","onChangeSelectedLocales","onChangeVersionFrom","val","value","versionToTimeAgo","distance","date","versionFromTimeAgo","undefined","_jsxs","className","_jsx","onToggle","icon","direction","onClick","pillStyle","size","filter","join","onChange","docID","labels","singular","status","versionDateFormatted","versionID"],"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n CheckboxInput,\n ChevronIcon,\n formatTimeToNow,\n Gutter,\n Pill,\n type SelectablePill,\n useConfig,\n useDocumentInfo,\n useLocale,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { usePathname, useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { type FormEventHandler, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport { Restore } from '../Restore/index.js'\nimport './index.scss'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport { type SelectedLocaleOnChange, SelectLocales } from '../SelectLocales/index.js'\nimport { SelectedLocalesContext } from './SelectedLocalesContext.js'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n canUpdate,\n modifiedOnly: modifiedOnlyProp,\n RenderedDiff,\n selectedLocales: selectedLocalesFromProps,\n versionFromCreatedAt,\n versionFromID,\n versionFromOptions,\n versionToCreatedAt,\n versionToCreatedAtFormatted,\n VersionToCreatedAtLabel,\n versionToID,\n versionToStatus,\n}) => {\n const { config, getEntityConfig } = useConfig()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [locales, setLocales] = useState<SelectablePill[]>([])\n const [localeSelectorOpen, setLocaleSelectorOpen] = React.useState(false)\n\n useEffect(() => {\n if (config.localization) {\n const updatedLocales = config.localization.locales.map((locale) => {\n let label = locale.label\n if (typeof locale.label !== 'string' && locale.label[code]) {\n label = locale.label[code]\n }\n\n return {\n name: locale.code,\n Label: label,\n selected: selectedLocalesFromProps.includes(locale.code),\n } as SelectablePill\n })\n setLocales(updatedLocales)\n }\n }, [code, config.localization, selectedLocalesFromProps])\n\n const { id: originalDocID, collectionSlug, globalSlug, isTrashed } = useDocumentInfo()\n const { startRouteTransition } = useRouteTransition()\n\n const { collectionConfig, globalConfig } = useMemo(() => {\n return {\n collectionConfig: getEntityConfig({ collectionSlug }),\n globalConfig: getEntityConfig({ globalSlug }),\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const router = useRouter()\n const pathname = usePathname()\n const searchParams = useSearchParams()\n const [modifiedOnly, setModifiedOnly] = useState(modifiedOnlyProp)\n\n const updateSearchParams = useCallback(\n (args: {\n modifiedOnly?: boolean\n selectedLocales?: SelectablePill[]\n versionFromID?: string\n }) => {\n // If the selected comparison doc or locales change, update URL params so that version page\n // This is so that RSC can update the version comparison state\n const current = new URLSearchParams(Array.from(searchParams.entries()))\n\n if (args?.versionFromID) {\n current.set('versionFrom', args?.versionFromID)\n }\n\n if (args?.selectedLocales) {\n if (!args.selectedLocales.length) {\n current.delete('localeCodes')\n } else {\n const selectedLocaleCodes: string[] = []\n for (const locale of args.selectedLocales) {\n if (locale.selected) {\n selectedLocaleCodes.push(locale.name)\n }\n }\n current.set('localeCodes', JSON.stringify(selectedLocaleCodes))\n }\n }\n\n if (args?.modifiedOnly === false) {\n current.set('modifiedOnly', 'false')\n } else if (args?.modifiedOnly === true) {\n current.delete('modifiedOnly')\n }\n\n const search = current.toString()\n const query = search ? `?${search}` : ''\n\n startRouteTransition(() => router.push(`${pathname}${query}`))\n },\n [pathname, router, searchParams, startRouteTransition],\n )\n\n const onToggleModifiedOnly: FormEventHandler<HTMLInputElement> = useCallback(\n (event) => {\n const newModified = (event.target as HTMLInputElement).checked\n setModifiedOnly(newModified)\n updateSearchParams({\n modifiedOnly: newModified,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeSelectedLocales: SelectedLocaleOnChange = useCallback(\n ({ locales }) => {\n setLocales(locales)\n updateSearchParams({\n selectedLocales: locales,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeVersionFrom: (val: CompareOption) => void = useCallback(\n (val) => {\n updateSearchParams({\n versionFromID: val.value,\n })\n },\n [updateSearchParams],\n )\n\n const { localization } = config\n\n const versionToTimeAgo = useMemo(\n () =>\n t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionToCreatedAt,\n i18n,\n }),\n }),\n [versionToCreatedAt, i18n, t],\n )\n\n const versionFromTimeAgo = useMemo(\n () =>\n versionFromCreatedAt\n ? t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionFromCreatedAt,\n i18n,\n }),\n })\n : undefined,\n [versionFromCreatedAt, i18n, t],\n )\n\n return (\n <main className={baseClass}>\n <Gutter className={`${baseClass}-controls-top`}>\n <div className={`${baseClass}-controls-top__wrapper`}>\n <h2>{i18n.t('version:compareVersions')}</h2>\n <div className={`${baseClass}-controls-top__wrapper-actions`}>\n <span className={`${baseClass}__modifiedCheckBox`}>\n <CheckboxInput\n checked={modifiedOnly}\n id={'modifiedOnly'}\n label={i18n.t('version:modifiedOnly')}\n onToggle={onToggleModifiedOnly}\n />\n </span>\n {localization && (\n <Pill\n aria-controls={`${baseClass}-locales`}\n aria-expanded={localeSelectorOpen}\n className={`${baseClass}__toggle-locales`}\n icon={<ChevronIcon direction={localeSelectorOpen ? 'up' : 'down'} />}\n onClick={() => setLocaleSelectorOpen((localeSelectorOpen) => !localeSelectorOpen)}\n pillStyle=\"light\"\n size=\"small\"\n >\n <span className={`${baseClass}__toggle-locales-label`}>\n {t('general:locales')}:{' '}\n </span>\n <span className={`${baseClass}__toggle-locales-list`}>\n {locales\n .filter((locale) => locale.selected)\n .map((locale) => locale.name)\n .join(', ')}\n </span>\n </Pill>\n )}\n </div>\n </div>\n\n {localization && (\n <SelectLocales\n locales={locales}\n localeSelectorOpen={localeSelectorOpen}\n onChange={onChangeSelectedLocales}\n />\n )}\n </Gutter>\n <Gutter className={`${baseClass}-controls-bottom`}>\n <div className={`${baseClass}-controls-bottom__wrapper`}>\n <div className={`${baseClass}__version-from`}>\n <div className={`${baseClass}__version-from-labels`}>\n <span>{t('version:comparingAgainst')}</span>\n {versionFromTimeAgo && (\n <span className={`${baseClass}__time-elapsed`}>{versionFromTimeAgo}</span>\n )}\n </div>\n <SelectComparison\n collectionSlug={collectionSlug}\n docID={originalDocID}\n globalSlug={globalSlug}\n onChange={onChangeVersionFrom}\n versionFromID={versionFromID}\n versionFromOptions={versionFromOptions}\n />\n </div>\n\n <div className={`${baseClass}__version-to`}>\n <div className={`${baseClass}__version-to-labels`}>\n <span>{t('version:currentlyViewing')}</span>\n <span className={`${baseClass}__time-elapsed`}>{versionToTimeAgo}</span>\n </div>\n <div className={`${baseClass}__version-to-version`}>\n {VersionToCreatedAtLabel}\n {canUpdate && !isTrashed && (\n <Restore\n className={`${baseClass}__restore`}\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={originalDocID}\n status={versionToStatus}\n versionDateFormatted={versionToCreatedAtFormatted}\n versionID={versionToID}\n />\n )}\n </div>\n </div>\n </div>\n </Gutter>\n <SetStepNav\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n id={originalDocID}\n isTrashed={isTrashed}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n versionToID={versionToID}\n />\n <Gutter className={`${baseClass}__diff-wrap`}>\n <SelectedLocalesContext value={{ selectedLocales: locales.map((locale) => locale.name) }}>\n {versionToCreatedAt && RenderedDiff}\n </SelectedLocalesContext>\n </Gutter>\n </main>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,2 @@
1
- export { };
2
-
1
+ export {};
3
2
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["export type CompareOption = {\n label: React.ReactNode | string\n value: string\n}\n\nexport type VersionPill = {\n id: string\n Label: React.ReactNode\n}\n\nexport type DefaultVersionsViewProps = {\n canUpdate: boolean\n modifiedOnly: boolean\n RenderedDiff: React.ReactNode\n selectedLocales: string[]\n versionFromCreatedAt?: string\n versionFromID?: string\n versionFromOptions: CompareOption[]\n versionToCreatedAt?: string\n versionToCreatedAtFormatted: string\n VersionToCreatedAtLabel: React.ReactNode\n versionToID?: string\n versionToStatus?: string\n}\n"],"names":[],"mappings":"AAUA,WAaC"}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["export type CompareOption = {\n label: React.ReactNode | string\n value: string\n}\n\nexport type VersionPill = {\n id: string\n Label: React.ReactNode\n}\n\nexport type DefaultVersionsViewProps = {\n canUpdate: boolean\n modifiedOnly: boolean\n RenderedDiff: React.ReactNode\n selectedLocales: string[]\n versionFromCreatedAt?: string\n versionFromID?: string\n versionFromOptions: CompareOption[]\n versionToCreatedAt?: string\n versionToCreatedAtFormatted: string\n VersionToCreatedAtLabel: React.ReactNode\n versionToID?: string\n versionToStatus?: string\n}\n"],"mappings":"AAUA","ignoreList":[]}
@@ -1,113 +1,130 @@
1
1
  'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
5
  import { ChevronIcon, FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui';
4
6
  import { fieldIsArrayType, fieldIsBlockType } from 'payload/shared';
5
7
  import React, { useState } from 'react';
6
- import './index.scss';
7
8
  import { countChangedFields, countChangedFieldsInRows } from '../utilities/countChangedFields.js';
8
9
  const baseClass = 'diff-collapser';
9
- // fields collapser
10
- // iterable collapser
11
- export const DiffCollapser = ({ children, field, fields, hideGutter = false, initCollapsed = false, isIterable = false, Label, locales, parentIsLocalized, valueFrom, valueTo })=>{
12
- const { t } = useTranslation();
13
- const [isCollapsed, setIsCollapsed] = useState(initCollapsed);
14
- const { config } = useConfig();
15
- let changeCount = 0;
10
+ export const DiffCollapser = t0 => {
11
+ const $ = _c(19);
12
+ const {
13
+ children,
14
+ field,
15
+ fields,
16
+ hideGutter: t1,
17
+ initCollapsed: t2,
18
+ isIterable: t3,
19
+ Label,
20
+ locales,
21
+ parentIsLocalized,
22
+ valueFrom,
23
+ valueTo
24
+ } = t0;
25
+ const hideGutter = t1 === undefined ? false : t1;
26
+ const initCollapsed = t2 === undefined ? false : t2;
27
+ const isIterable = t3 === undefined ? false : t3;
28
+ const {
29
+ t
30
+ } = useTranslation();
31
+ const [isCollapsed, setIsCollapsed] = useState(initCollapsed);
32
+ const {
33
+ config
34
+ } = useConfig();
35
+ let t4;
36
+ if ($[0] !== Label || $[1] !== children || $[2] !== config || $[3] !== field || $[4] !== fields || $[5] !== hideGutter || $[6] !== isCollapsed || $[7] !== isIterable || $[8] !== locales || $[9] !== parentIsLocalized || $[10] !== t || $[11] !== valueFrom || $[12] !== valueTo) {
37
+ let changeCount;
16
38
  if (isIterable) {
17
- if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {
18
- throw new Error('DiffCollapser: field must be an array or blocks field when isIterable is true');
19
- }
20
- const valueFromRows = valueFrom ?? [];
21
- const valueToRows = valueTo ?? [];
22
- if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {
23
- throw new Error('DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true');
24
- }
25
- changeCount = countChangedFieldsInRows({
26
- config,
27
- field,
28
- locales,
29
- parentIsLocalized,
30
- valueFromRows,
31
- valueToRows
32
- });
39
+ if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {
40
+ throw new Error("DiffCollapser: field must be an array or blocks field when isIterable is true");
41
+ }
42
+ const valueFromRows = valueFrom ?? [];
43
+ const valueToRows = valueTo ?? [];
44
+ if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {
45
+ throw new Error("DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true");
46
+ }
47
+ changeCount = countChangedFieldsInRows({
48
+ config,
49
+ field,
50
+ locales,
51
+ parentIsLocalized,
52
+ valueFromRows,
53
+ valueToRows
54
+ });
55
+ } else {
56
+ changeCount = countChangedFields({
57
+ config,
58
+ fields,
59
+ locales,
60
+ parentIsLocalized,
61
+ valueFrom,
62
+ valueTo
63
+ });
64
+ }
65
+ const t5 = isCollapsed && `${baseClass}__content--is-collapsed`;
66
+ const t6 = hideGutter && `${baseClass}__content--hide-gutter`;
67
+ let t7;
68
+ if ($[14] !== t5 || $[15] !== t6) {
69
+ t7 = [`${baseClass}__content`, t5, t6].filter(Boolean);
70
+ $[14] = t5;
71
+ $[15] = t6;
72
+ $[16] = t7;
33
73
  } else {
34
- changeCount = countChangedFields({
35
- config,
36
- fields,
37
- locales,
38
- parentIsLocalized,
39
- valueFrom,
40
- valueTo
41
- });
74
+ t7 = $[16];
42
75
  }
43
- const contentClassNames = [
44
- `${baseClass}__content`,
45
- isCollapsed && `${baseClass}__content--is-collapsed`,
46
- hideGutter && `${baseClass}__content--hide-gutter`
47
- ].filter(Boolean).join(' ');
48
- return /*#__PURE__*/ _jsxDEV("div", {
49
- className: baseClass,
50
- children: [
51
- /*#__PURE__*/ _jsxDEV(FieldDiffLabel, {
52
- children: [
53
- /*#__PURE__*/ _jsxDEV("button", {
54
- "aria-label": isCollapsed ? 'Expand' : 'Collapse',
55
- className: `${baseClass}__toggle-button`,
56
- onClick: ()=>setIsCollapsed(!isCollapsed),
57
- type: "button",
58
- children: [
59
- /*#__PURE__*/ _jsxDEV("div", {
60
- className: `${baseClass}__label`,
61
- children: Label
62
- }, void 0, false, {
63
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
64
- lineNumber: 109,
65
- columnNumber: 11
66
- }, this),
67
- /*#__PURE__*/ _jsxDEV(ChevronIcon, {
68
- direction: isCollapsed ? 'right' : 'down',
69
- size: 'small'
70
- }, void 0, false, {
71
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
72
- lineNumber: 111,
73
- columnNumber: 11
74
- }, this)
75
- ]
76
- }, void 0, true, {
77
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
78
- lineNumber: 103,
79
- columnNumber: 9
80
- }, this),
81
- changeCount > 0 && isCollapsed && /*#__PURE__*/ _jsxDEV("span", {
82
- className: `${baseClass}__field-change-count`,
83
- children: t('version:changedFieldsCount', {
84
- count: changeCount
85
- })
86
- }, void 0, false, {
87
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
88
- lineNumber: 114,
89
- columnNumber: 11
90
- }, this)
91
- ]
92
- }, void 0, true, {
93
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
94
- lineNumber: 102,
95
- columnNumber: 7
96
- }, this),
97
- /*#__PURE__*/ _jsxDEV("div", {
98
- className: contentClassNames,
99
- children: children
100
- }, void 0, false, {
101
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
102
- lineNumber: 119,
103
- columnNumber: 7
104
- }, this)
105
- ]
106
- }, void 0, true, {
107
- fileName: "src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx",
108
- lineNumber: 101,
109
- columnNumber: 5
110
- }, this);
76
+ const contentClassNames = t7.join(" ");
77
+ let t8;
78
+ if ($[17] !== isCollapsed) {
79
+ t8 = () => setIsCollapsed(!isCollapsed);
80
+ $[17] = isCollapsed;
81
+ $[18] = t8;
82
+ } else {
83
+ t8 = $[18];
84
+ }
85
+ t4 = _jsxs("div", {
86
+ className: baseClass,
87
+ children: [_jsxs(FieldDiffLabel, {
88
+ children: [_jsxs("button", {
89
+ "aria-label": isCollapsed ? "Expand" : "Collapse",
90
+ className: `${baseClass}__toggle-button`,
91
+ onClick: t8,
92
+ type: "button",
93
+ children: [_jsx("div", {
94
+ className: `${baseClass}__label`,
95
+ children: Label
96
+ }), _jsx(ChevronIcon, {
97
+ direction: isCollapsed ? "right" : "down",
98
+ size: "small"
99
+ })]
100
+ }), changeCount > 0 && isCollapsed && _jsx("span", {
101
+ className: `${baseClass}__field-change-count`,
102
+ children: t("version:changedFieldsCount", {
103
+ count: changeCount
104
+ })
105
+ })]
106
+ }), _jsx("div", {
107
+ className: contentClassNames,
108
+ children
109
+ })]
110
+ });
111
+ $[0] = Label;
112
+ $[1] = children;
113
+ $[2] = config;
114
+ $[3] = field;
115
+ $[4] = fields;
116
+ $[5] = hideGutter;
117
+ $[6] = isCollapsed;
118
+ $[7] = isIterable;
119
+ $[8] = locales;
120
+ $[9] = parentIsLocalized;
121
+ $[10] = t;
122
+ $[11] = valueFrom;
123
+ $[12] = valueTo;
124
+ $[13] = t4;
125
+ } else {
126
+ t4 = $[13];
127
+ }
128
+ return t4;
111
129
  };
112
-
113
130
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField } from 'payload'\n\nimport { ChevronIcon, FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui'\nimport { fieldIsArrayType, fieldIsBlockType } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport './index.scss'\nimport { countChangedFields, countChangedFieldsInRows } from '../utilities/countChangedFields.js'\n\nconst baseClass = 'diff-collapser'\n\ntype Props = {\n hideGutter?: boolean\n initCollapsed?: boolean\n Label: React.ReactNode\n locales: string[] | undefined\n parentIsLocalized: boolean\n valueTo: unknown\n} & (\n | {\n // fields collapser\n children: React.ReactNode\n field?: never\n fields: ClientField[]\n isIterable?: false\n valueFrom: unknown\n }\n | {\n // iterable collapser\n children: React.ReactNode\n field: ClientField\n fields?: never\n isIterable: true\n valueFrom?: unknown\n }\n)\n\nexport const DiffCollapser: React.FC<Props> = ({\n children,\n field,\n fields,\n hideGutter = false,\n initCollapsed = false,\n isIterable = false,\n Label,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n}) => {\n const { t } = useTranslation()\n const [isCollapsed, setIsCollapsed] = useState(initCollapsed)\n const { config } = useConfig()\n\n let changeCount = 0\n\n if (isIterable) {\n if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {\n throw new Error(\n 'DiffCollapser: field must be an array or blocks field when isIterable is true',\n )\n }\n const valueFromRows = valueFrom ?? []\n const valueToRows = valueTo ?? []\n\n if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {\n throw new Error(\n 'DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true',\n )\n }\n\n changeCount = countChangedFieldsInRows({\n config,\n field,\n locales,\n parentIsLocalized,\n valueFromRows,\n valueToRows,\n })\n } else {\n changeCount = countChangedFields({\n config,\n fields,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n })\n }\n\n const contentClassNames = [\n `${baseClass}__content`,\n isCollapsed && `${baseClass}__content--is-collapsed`,\n hideGutter && `${baseClass}__content--hide-gutter`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={baseClass}>\n <FieldDiffLabel>\n <button\n aria-label={isCollapsed ? 'Expand' : 'Collapse'}\n className={`${baseClass}__toggle-button`}\n onClick={() => setIsCollapsed(!isCollapsed)}\n type=\"button\"\n >\n <div className={`${baseClass}__label`}>{Label}</div>\n\n <ChevronIcon direction={isCollapsed ? 'right' : 'down'} size={'small'} />\n </button>\n {changeCount > 0 && isCollapsed && (\n <span className={`${baseClass}__field-change-count`}>\n {t('version:changedFieldsCount', { count: changeCount })}\n </span>\n )}\n </FieldDiffLabel>\n <div className={contentClassNames}>{children}</div>\n </div>\n )\n}\n"],"names":["ChevronIcon","FieldDiffLabel","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useState","countChangedFields","countChangedFieldsInRows","baseClass","DiffCollapser","children","field","fields","hideGutter","initCollapsed","isIterable","Label","locales","parentIsLocalized","valueFrom","valueTo","t","isCollapsed","setIsCollapsed","config","changeCount","Error","valueFromRows","valueToRows","Array","isArray","contentClassNames","filter","Boolean","join","div","className","button","aria-label","onClick","type","direction","size","span","count"],"mappings":"AAAA;;AAGA,SAASA,WAAW,EAAEC,cAAc,EAAEC,SAAS,EAAEC,cAAc,QAAQ,iBAAgB;AACvF,SAASC,gBAAgB,EAAEC,gBAAgB,QAAQ,iBAAgB;AACnE,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAEvC,OAAO,eAAc;AACrB,SAASC,kBAAkB,EAAEC,wBAAwB,QAAQ,qCAAoC;AAEjG,MAAMC,YAAY;AAWZ,mBAAmB;AAQnB,qBAAqB;AAS3B,OAAO,MAAMC,gBAAiC,CAAC,EAC7CC,QAAQ,EACRC,KAAK,EACLC,MAAM,EACNC,aAAa,KAAK,EAClBC,gBAAgB,KAAK,EACrBC,aAAa,KAAK,EAClBC,KAAK,EACLC,OAAO,EACPC,iBAAiB,EACjBC,SAAS,EACTC,OAAO,EACR;IACC,MAAM,EAAEC,CAAC,EAAE,GAAGpB;IACd,MAAM,CAACqB,aAAaC,eAAe,GAAGlB,SAASS;IAC/C,MAAM,EAAEU,MAAM,EAAE,GAAGxB;IAEnB,IAAIyB,cAAc;IAElB,IAAIV,YAAY;QACd,IAAI,CAACb,iBAAiBS,UAAU,CAACR,iBAAiBQ,QAAQ;YACxD,MAAM,IAAIe,MACR;QAEJ;QACA,MAAMC,gBAAgBR,aAAa,EAAE;QACrC,MAAMS,cAAcR,WAAW,EAAE;QAEjC,IAAI,CAACS,MAAMC,OAAO,CAACH,kBAAkB,CAACE,MAAMC,OAAO,CAACF,cAAc;YAChE,MAAM,IAAIF,MACR;QAEJ;QAEAD,cAAclB,yBAAyB;YACrCiB;YACAb;YACAM;YACAC;YACAS;YACAC;QACF;IACF,OAAO;QACLH,cAAcnB,mBAAmB;YAC/BkB;YACAZ;YACAK;YACAC;YACAC;YACAC;QACF;IACF;IAEA,MAAMW,oBAAoB;QACxB,GAAGvB,UAAU,SAAS,CAAC;QACvBc,eAAe,GAAGd,UAAU,uBAAuB,CAAC;QACpDK,cAAc,GAAGL,UAAU,sBAAsB,CAAC;KACnD,CACEwB,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,qBACE,QAACC;QAAIC,WAAW5B;;0BACd,QAACT;;kCACC,QAACsC;wBACCC,cAAYhB,cAAc,WAAW;wBACrCc,WAAW,GAAG5B,UAAU,eAAe,CAAC;wBACxC+B,SAAS,IAAMhB,eAAe,CAACD;wBAC/BkB,MAAK;;0CAEL,QAACL;gCAAIC,WAAW,GAAG5B,UAAU,OAAO,CAAC;0CAAGQ;;;;;;0CAExC,QAAClB;gCAAY2C,WAAWnB,cAAc,UAAU;gCAAQoB,MAAM;;;;;;;;;;;;oBAE/DjB,cAAc,KAAKH,6BAClB,QAACqB;wBAAKP,WAAW,GAAG5B,UAAU,oBAAoB,CAAC;kCAChDa,EAAE,8BAA8B;4BAAEuB,OAAOnB;wBAAY;;;;;;;;;;;;0BAI5D,QAACU;gBAAIC,WAAWL;0BAAoBrB;;;;;;;;;;;;AAG1C,EAAC"}
1
+ {"version":3,"file":"index.js","names":["c","_c","ChevronIcon","FieldDiffLabel","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useState","countChangedFields","countChangedFieldsInRows","baseClass","DiffCollapser","t0","$","children","field","fields","hideGutter","t1","initCollapsed","t2","isIterable","t3","Label","locales","parentIsLocalized","valueFrom","valueTo","undefined","t","isCollapsed","setIsCollapsed","config","t4","changeCount","Error","valueFromRows","valueToRows","Array","isArray","t5","t6","t7","filter","Boolean","contentClassNames","join","t8","_jsxs","className","onClick","type","_jsx","direction","size","count"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/DiffCollapser/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField } from 'payload'\n\nimport { ChevronIcon, FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui'\nimport { fieldIsArrayType, fieldIsBlockType } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport './index.scss'\nimport { countChangedFields, countChangedFieldsInRows } from '../utilities/countChangedFields.js'\n\nconst baseClass = 'diff-collapser'\n\ntype Props = {\n hideGutter?: boolean\n initCollapsed?: boolean\n Label: React.ReactNode\n locales: string[] | undefined\n parentIsLocalized: boolean\n valueTo: unknown\n} & (\n | {\n // fields collapser\n children: React.ReactNode\n field?: never\n fields: ClientField[]\n isIterable?: false\n valueFrom: unknown\n }\n | {\n // iterable collapser\n children: React.ReactNode\n field: ClientField\n fields?: never\n isIterable: true\n valueFrom?: unknown\n }\n)\n\nexport const DiffCollapser: React.FC<Props> = ({\n children,\n field,\n fields,\n hideGutter = false,\n initCollapsed = false,\n isIterable = false,\n Label,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n}) => {\n const { t } = useTranslation()\n const [isCollapsed, setIsCollapsed] = useState(initCollapsed)\n const { config } = useConfig()\n\n let changeCount = 0\n\n if (isIterable) {\n if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {\n throw new Error(\n 'DiffCollapser: field must be an array or blocks field when isIterable is true',\n )\n }\n const valueFromRows = valueFrom ?? []\n const valueToRows = valueTo ?? []\n\n if (!Array.isArray(valueFromRows) || !Array.isArray(valueToRows)) {\n throw new Error(\n 'DiffCollapser: valueFrom and valueTro must be arrays when isIterable is true',\n )\n }\n\n changeCount = countChangedFieldsInRows({\n config,\n field,\n locales,\n parentIsLocalized,\n valueFromRows,\n valueToRows,\n })\n } else {\n changeCount = countChangedFields({\n config,\n fields,\n locales,\n parentIsLocalized,\n valueFrom,\n valueTo,\n })\n }\n\n const contentClassNames = [\n `${baseClass}__content`,\n isCollapsed && `${baseClass}__content--is-collapsed`,\n hideGutter && `${baseClass}__content--hide-gutter`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={baseClass}>\n <FieldDiffLabel>\n <button\n aria-label={isCollapsed ? 'Expand' : 'Collapse'}\n className={`${baseClass}__toggle-button`}\n onClick={() => setIsCollapsed(!isCollapsed)}\n type=\"button\"\n >\n <div className={`${baseClass}__label`}>{Label}</div>\n\n <ChevronIcon direction={isCollapsed ? 'right' : 'down'} size={'small'} />\n </button>\n {changeCount > 0 && isCollapsed && (\n <span className={`${baseClass}__field-change-count`}>\n {t('version:changedFieldsCount', { count: changeCount })}\n </span>\n )}\n </FieldDiffLabel>\n <div className={contentClassNames}>{children}</div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,85 +1,80 @@
1
1
  'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
3
5
  const baseClass = 'render-field-diffs';
4
- import './index.scss';
5
6
  import { ShimmerEffect } from '@payloadcms/ui';
6
7
  import React, { Fragment, useEffect } from 'react';
7
- export const RenderVersionFieldsToDiff = ({ parent = false, versionFields })=>/**
8
- * If true, this is the parent render version fields component, not one nested in
9
- * a field with children (e.g. group)
10
- */ {
11
- const [hasMounted, setHasMounted] = React.useState(false);
12
- // defer rendering until after the first mount as the CSS is loaded with Emotion
13
- // this will ensure that the CSS is loaded before rendering the diffs and prevent CLS
14
- useEffect(()=>{
15
- setHasMounted(true);
16
- }, []);
17
- return /*#__PURE__*/ _jsxDEV("div", {
18
- className: `${baseClass}${parent ? ` ${baseClass}--parent` : ''}`,
19
- children: !hasMounted ? /*#__PURE__*/ _jsxDEV(Fragment, {
20
- children: /*#__PURE__*/ _jsxDEV(ShimmerEffect, {
21
- height: "8rem",
22
- width: "100%"
23
- }, void 0, false, {
24
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
25
- lineNumber: 33,
26
- columnNumber: 11
27
- }, this)
28
- }, void 0, false, {
29
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
30
- lineNumber: 32,
31
- columnNumber: 9
32
- }, this) : versionFields?.map((field, fieldIndex)=>{
33
- if (field.fieldByLocale) {
34
- const LocaleComponents = [];
35
- for (const [locale, baseField] of Object.entries(field.fieldByLocale)){
36
- LocaleComponents.push(/*#__PURE__*/ _jsxDEV("div", {
37
- className: `${baseClass}__locale`,
38
- "data-field-path": baseField.path,
39
- "data-locale": locale,
40
- children: /*#__PURE__*/ _jsxDEV("div", {
41
- className: `${baseClass}__locale-value`,
42
- children: baseField.CustomComponent
43
- }, void 0, false, {
44
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
45
- lineNumber: 47,
46
- columnNumber: 19
47
- }, this)
48
- }, [
49
- locale,
50
- fieldIndex
51
- ].join('-'), false, {
52
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
53
- lineNumber: 41,
54
- columnNumber: 17
55
- }, this));
56
- }
57
- return /*#__PURE__*/ _jsxDEV("div", {
58
- className: `${baseClass}__field`,
59
- children: LocaleComponents
60
- }, fieldIndex, false, {
61
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
62
- lineNumber: 52,
63
- columnNumber: 15
64
- }, this);
65
- } else if (field.field) {
66
- return /*#__PURE__*/ _jsxDEV("div", {
67
- className: `${baseClass}__field field__${field.field.type}`,
68
- "data-field-path": field.field.path,
69
- children: field.field.CustomComponent
70
- }, fieldIndex, false, {
71
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
72
- lineNumber: 58,
73
- columnNumber: 15
74
- }, this);
75
- }
76
- return null;
8
+ export const RenderVersionFieldsToDiff = t0 => {
9
+ const $ = _c(6);
10
+ const {
11
+ parent: t1,
12
+ versionFields
13
+ } = t0;
14
+ const parent = t1 === undefined ? false : t1;
15
+ const [hasMounted, setHasMounted] = React.useState(false);
16
+ let t2;
17
+ let t3;
18
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
19
+ t2 = () => {
20
+ setHasMounted(true);
21
+ };
22
+ t3 = [];
23
+ $[0] = t2;
24
+ $[1] = t3;
25
+ } else {
26
+ t2 = $[0];
27
+ t3 = $[1];
28
+ }
29
+ useEffect(t2, t3);
30
+ const t4 = `${baseClass}${parent ? ` ${baseClass}--parent` : ""}`;
31
+ let t5;
32
+ if ($[2] !== hasMounted || $[3] !== t4 || $[4] !== versionFields) {
33
+ t5 = _jsx("div", {
34
+ className: t4,
35
+ children: !hasMounted ? _jsx(Fragment, {
36
+ children: _jsx(ShimmerEffect, {
37
+ height: "8rem",
38
+ width: "100%"
77
39
  })
78
- }, void 0, false, {
79
- fileName: "src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx",
80
- lineNumber: 30,
81
- columnNumber: 5
82
- }, this);
40
+ }) : versionFields?.map(_temp)
41
+ });
42
+ $[2] = hasMounted;
43
+ $[3] = t4;
44
+ $[4] = versionFields;
45
+ $[5] = t5;
46
+ } else {
47
+ t5 = $[5];
48
+ }
49
+ return t5;
83
50
  };
84
-
51
+ function _temp(field, fieldIndex) {
52
+ if (field.fieldByLocale) {
53
+ const LocaleComponents = [];
54
+ for (const [locale, baseField] of Object.entries(field.fieldByLocale)) {
55
+ LocaleComponents.push(_jsx("div", {
56
+ className: `${baseClass}__locale`,
57
+ "data-field-path": baseField.path,
58
+ "data-locale": locale,
59
+ children: _jsx("div", {
60
+ className: `${baseClass}__locale-value`,
61
+ children: baseField.CustomComponent
62
+ })
63
+ }, [locale, fieldIndex].join("-")));
64
+ }
65
+ return _jsx("div", {
66
+ className: `${baseClass}__field`,
67
+ children: LocaleComponents
68
+ }, fieldIndex);
69
+ } else {
70
+ if (field.field) {
71
+ return _jsx("div", {
72
+ className: `${baseClass}__field field__${field.field.type}`,
73
+ "data-field-path": field.field.path,
74
+ children: field.field.CustomComponent
75
+ }, fieldIndex);
76
+ }
77
+ }
78
+ return null;
79
+ }
85
80
  //# sourceMappingURL=RenderVersionFieldsToDiff.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx"],"sourcesContent":["'use client'\nconst baseClass = 'render-field-diffs'\nimport type { VersionField } from 'payload'\n\nimport './index.scss'\n\nimport { ShimmerEffect } from '@payloadcms/ui'\nimport React, { Fragment, useEffect } from 'react'\n\nexport const RenderVersionFieldsToDiff = ({\n parent = false,\n versionFields,\n}: {\n /**\n * If true, this is the parent render version fields component, not one nested in\n * a field with children (e.g. group)\n */\n parent?: boolean\n versionFields: VersionField[]\n}): React.ReactNode => {\n const [hasMounted, setHasMounted] = React.useState(false)\n\n // defer rendering until after the first mount as the CSS is loaded with Emotion\n // this will ensure that the CSS is loaded before rendering the diffs and prevent CLS\n useEffect(() => {\n setHasMounted(true)\n }, [])\n\n return (\n <div className={`${baseClass}${parent ? ` ${baseClass}--parent` : ''}`}>\n {!hasMounted ? (\n <Fragment>\n <ShimmerEffect height=\"8rem\" width=\"100%\" />\n </Fragment>\n ) : (\n versionFields?.map((field, fieldIndex) => {\n if (field.fieldByLocale) {\n const LocaleComponents: React.ReactNode[] = []\n for (const [locale, baseField] of Object.entries(field.fieldByLocale)) {\n LocaleComponents.push(\n <div\n className={`${baseClass}__locale`}\n data-field-path={baseField.path}\n data-locale={locale}\n key={[locale, fieldIndex].join('-')}\n >\n <div className={`${baseClass}__locale-value`}>{baseField.CustomComponent}</div>\n </div>,\n )\n }\n return (\n <div className={`${baseClass}__field`} key={fieldIndex}>\n {LocaleComponents}\n </div>\n )\n } else if (field.field) {\n return (\n <div\n className={`${baseClass}__field field__${field.field.type}`}\n data-field-path={field.field.path}\n key={fieldIndex}\n >\n {field.field.CustomComponent}\n </div>\n )\n }\n\n return null\n })\n )}\n </div>\n )\n}\n"],"names":["baseClass","ShimmerEffect","React","Fragment","useEffect","RenderVersionFieldsToDiff","parent","versionFields","hasMounted","setHasMounted","useState","div","className","height","width","map","field","fieldIndex","fieldByLocale","LocaleComponents","locale","baseField","Object","entries","push","data-field-path","path","data-locale","CustomComponent","join","type"],"mappings":"AAAA;;AACA,MAAMA,YAAY;AAGlB,OAAO,eAAc;AAErB,SAASC,aAAa,QAAQ,iBAAgB;AAC9C,OAAOC,SAASC,QAAQ,EAAEC,SAAS,QAAQ,QAAO;AAElD,OAAO,MAAMC,4BAA4B,CAAC,EACxCC,SAAS,KAAK,EACdC,aAAa,EAQd,GANC;;;GAGC;IAID,MAAM,CAACC,YAAYC,cAAc,GAAGP,MAAMQ,QAAQ,CAAC;IAEnD,gFAAgF;IAChF,qFAAqF;IACrFN,UAAU;QACRK,cAAc;IAChB,GAAG,EAAE;IAEL,qBACE,QAACE;QAAIC,WAAW,GAAGZ,YAAYM,SAAS,CAAC,CAAC,EAAEN,UAAU,QAAQ,CAAC,GAAG,IAAI;kBACnE,CAACQ,2BACA,QAACL;sBACC,cAAA,QAACF;gBAAcY,QAAO;gBAAOC,OAAM;;;;;;;;;;mBAGrCP,eAAeQ,IAAI,CAACC,OAAOC;YACzB,IAAID,MAAME,aAAa,EAAE;gBACvB,MAAMC,mBAAsC,EAAE;gBAC9C,KAAK,MAAM,CAACC,QAAQC,UAAU,IAAIC,OAAOC,OAAO,CAACP,MAAME,aAAa,EAAG;oBACrEC,iBAAiBK,IAAI,eACnB,QAACb;wBACCC,WAAW,GAAGZ,UAAU,QAAQ,CAAC;wBACjCyB,mBAAiBJ,UAAUK,IAAI;wBAC/BC,eAAaP;kCAGb,cAAA,QAACT;4BAAIC,WAAW,GAAGZ,UAAU,cAAc,CAAC;sCAAGqB,UAAUO,eAAe;;;;;;uBAFnE;wBAACR;wBAAQH;qBAAW,CAACY,IAAI,CAAC;;;;;gBAKrC;gBACA,qBACE,QAAClB;oBAAIC,WAAW,GAAGZ,UAAU,OAAO,CAAC;8BAClCmB;mBADyCF;;;;;YAIhD,OAAO,IAAID,MAAMA,KAAK,EAAE;gBACtB,qBACE,QAACL;oBACCC,WAAW,GAAGZ,UAAU,eAAe,EAAEgB,MAAMA,KAAK,CAACc,IAAI,EAAE;oBAC3DL,mBAAiBT,MAAMA,KAAK,CAACU,IAAI;8BAGhCV,MAAMA,KAAK,CAACY,eAAe;mBAFvBX;;;;;YAKX;YAEA,OAAO;QACT;;;;;;AAIR,EAAC"}
1
+ {"version":3,"file":"RenderVersionFieldsToDiff.js","names":["c","_c","baseClass","ShimmerEffect","React","Fragment","useEffect","RenderVersionFieldsToDiff","t0","$","parent","t1","versionFields","undefined","hasMounted","setHasMounted","useState","t2","t3","Symbol","for","t4","t5","_jsx","className","children","height","width","map","_temp","field","fieldIndex","fieldByLocale","LocaleComponents","locale","baseField","Object","entries","push","path","CustomComponent","join","type"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.tsx"],"sourcesContent":["'use client'\nconst baseClass = 'render-field-diffs'\nimport type { VersionField } from 'payload'\n\nimport './index.scss'\n\nimport { ShimmerEffect } from '@payloadcms/ui'\nimport React, { Fragment, useEffect } from 'react'\n\nexport const RenderVersionFieldsToDiff = ({\n parent = false,\n versionFields,\n}: {\n /**\n * If true, this is the parent render version fields component, not one nested in\n * a field with children (e.g. group)\n */\n parent?: boolean\n versionFields: VersionField[]\n}): React.ReactNode => {\n const [hasMounted, setHasMounted] = React.useState(false)\n\n // defer rendering until after the first mount as the CSS is loaded with Emotion\n // this will ensure that the CSS is loaded before rendering the diffs and prevent CLS\n useEffect(() => {\n setHasMounted(true)\n }, [])\n\n return (\n <div className={`${baseClass}${parent ? ` ${baseClass}--parent` : ''}`}>\n {!hasMounted ? (\n <Fragment>\n <ShimmerEffect height=\"8rem\" width=\"100%\" />\n </Fragment>\n ) : (\n versionFields?.map((field, fieldIndex) => {\n if (field.fieldByLocale) {\n const LocaleComponents: React.ReactNode[] = []\n for (const [locale, baseField] of Object.entries(field.fieldByLocale)) {\n LocaleComponents.push(\n <div\n className={`${baseClass}__locale`}\n data-field-path={baseField.path}\n data-locale={locale}\n key={[locale, fieldIndex].join('-')}\n >\n <div className={`${baseClass}__locale-value`}>{baseField.CustomComponent}</div>\n </div>,\n )\n }\n return (\n <div className={`${baseClass}__field`} key={fieldIndex}>\n {LocaleComponents}\n </div>\n )\n } else if (field.field) {\n return (\n <div\n className={`${baseClass}__field field__${field.field.type}`}\n data-field-path={field.field.path}\n key={fieldIndex}\n >\n {field.field.CustomComponent}\n </div>\n )\n }\n\n return null\n })\n )}\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,MAAMC,SAAA,GAAY;AAKlB,SAASC,aAAa,QAAQ;AAC9B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,SAAS,QAAQ;AAE3C,OAAO,MAAMC,yBAAA,GAA4BC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,MAAA,EAAAC,EAAA;IAAAC;EAAA,IAAAJ,EAUzC;EATC,MAAAE,MAAA,GAAAC,EAAc,KAAAE,SAAA,WAAdF,EAAc;EAUd,OAAAG,UAAA,EAAAC,aAAA,IAAoCX,KAAA,CAAAY,QAAA,MAAe;EAAA,IAAAC,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAT,CAAA,QAAAU,MAAA,CAAAC,GAAA;IAIzCH,EAAA,GAAAA,CAAA;MACRF,aAAA,KAAc;IAAA;IACbG,EAAA;IAAET,CAAA,MAAAQ,EAAA;IAAAR,CAAA,MAAAS,EAAA;EAAA;IAAAD,EAAA,GAAAR,CAAA;IAAAS,EAAA,GAAAT,CAAA;EAAA;EAFLH,SAAA,CAAUW,EAEV,EAAGC,EAAE;EAGa,MAAAG,EAAA,MAAAnB,SAAA,GAAeQ,MAAA,GAAS,IAAAR,SAAA,UAAuB,GAAG,IAAI;EAAA,IAAAoB,EAAA;EAAA,IAAAb,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAY,EAAA,IAAAZ,CAAA,QAAAG,aAAA;IAAtEU,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAeH,EAAsD;MAAAI,QAAA,EACnE,CAACX,UAAA,GACAS,IAAA,CAAAlB,QAAA;QAAAoB,QAAA,EACEF,IAAA,CAAApB,aAAA;UAAAuB,MAAA,EAAsB;UAAAC,KAAA,EAAa;QAAA,C;WAGrCf,aAAA,EAAAgB,GAAA,CAAAC,KAAA;IAiCA,C;;;;;;;;SAvCJP,E;CA2CJ;AA/DyC,SAAAO,MAAAC,KAAA,EAAAC,UAAA;EAAA,IA2B3BD,KAAA,CAAAE,aAAA;IACF,MAAAC,gBAAA;IAA8C,KACzC,OAAAC,MAAA,EAAAC,SAAA,CAAyB,IAAIC,MAAA,CAAAC,OAAA,CAAeP,KAAA,CAAAE,aAAmB;MAClEC,gBAAA,CAAAK,IAAA,CACEf,IAAA,CAAC;QAAAC,SAAA,EACY,GAAAtB,SAAA,UAAsB;QAAA,mBAChBiC,SAAA,CAAAI,IAAA;QAAA,eACJL,MAAA;QAAAT,QAAA,EAGbF,IAAA,CAAC;UAAAC,SAAA,EAAe,GAAAtB,SAAA,gBAA4B;UAAAuB,QAAA,EAAGU,SAAA,CAAAK;QAAA,C;SAF1C,CAACN,MAAA,EAAQH,UAAA,EAAAU,IAAA,CAAiB;IAAA;IAAA,OAOnClB,IAAA,CAAC;MAAAC,SAAA,EAAe,GAAAtB,SAAA,SAAqB;MAAAuB,QAAA,EAClCQ;IAAA,GADyCF,UAAA;EAAA;IAAA,IAIrCD,KAAA,CAAAA,KAAA;MAAA,OAEPP,IAAA,CAAC;QAAAC,SAAA,EACY,GAAAtB,SAAA,kBAA8B4B,KAAA,CAAAA,KAAA,CAAAY,IAAA,EAAkB;QAAA,mBAC1CZ,KAAA,CAAAA,KAAA,CAAAS,IAAA;QAAAd,QAAA,EAGhBK,KAAA,CAAAA,KAAA,CAAAU;MAAA,GAFIT,UAAA;IAAA;EAAA;EAAA;AAAA","ignoreList":[]}