@payloadcms/next 3.71.0-internal-debug.e053082 → 3.71.0-internal.49c4f67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/dist/auth/login.js +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/getFieldsForRowComparison.js +36 -32
  355. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  356. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
  357. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  358. package/dist/views/Version/Restore/index.js +93 -117
  359. package/dist/views/Version/Restore/index.js.map +1 -1
  360. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -33
  361. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  362. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +226 -170
  363. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  364. package/dist/views/Version/SelectComparison/index.js +50 -73
  365. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  366. package/dist/views/Version/SelectComparison/types.js +1 -2
  367. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  368. package/dist/views/Version/SelectLocales/index.js +32 -34
  369. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  370. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +95 -104
  371. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  372. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +27 -23
  373. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  374. package/dist/views/Version/fetchVersions.js +138 -113
  375. package/dist/views/Version/fetchVersions.js.map +1 -1
  376. package/dist/views/Version/index.js +323 -325
  377. package/dist/views/Version/index.js.map +1 -1
  378. package/dist/views/Version/metadata.js +50 -43
  379. package/dist/views/Version/metadata.js.map +1 -1
  380. package/dist/views/Versions/buildColumns.js +79 -95
  381. package/dist/views/Versions/buildColumns.js.map +1 -1
  382. package/dist/views/Versions/cells/AutosaveCell/index.js +38 -34
  383. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  384. package/dist/views/Versions/cells/CreatedAt/index.js +53 -32
  385. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  386. package/dist/views/Versions/cells/ID/index.js +8 -10
  387. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  388. package/dist/views/Versions/index.client.js +83 -106
  389. package/dist/views/Versions/index.client.js.map +1 -1
  390. package/dist/views/Versions/index.js +143 -143
  391. package/dist/views/Versions/index.js.map +1 -1
  392. package/dist/views/Versions/metadata.js +44 -37
  393. package/dist/views/Versions/metadata.js.map +1 -1
  394. package/dist/views/Versions/types.js +1 -2
  395. package/dist/views/Versions/types.js.map +1 -1
  396. package/dist/withPayload/withPayload.js +144 -198
  397. package/dist/withPayload/withPayload.js.map +1 -1
  398. package/dist/withPayload/withPayload.utils.js +73 -65
  399. package/dist/withPayload/withPayload.utils.js.map +1 -1
  400. package/dist/withPayload/withPayloadLegacy.js +40 -41
  401. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  402. package/package.json +7 -7
  403. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +0 -38
  404. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -54
  405. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +0 -9
  406. package/dist/elements/DocumentHeader/index.scss +0 -64
  407. package/dist/elements/FormHeader/index.scss +0 -8
  408. package/dist/elements/Nav/NavWrapper/index.scss +0 -27
  409. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  410. package/dist/elements/Nav/index.scss +0 -173
  411. package/dist/esbuildEntry.d.ts +0 -5
  412. package/dist/esbuildEntry.d.ts.map +0 -1
  413. package/dist/esbuildEntry.js +0 -6
  414. package/dist/esbuildEntry.js.map +0 -1
  415. package/dist/templates/Default/Wrapper/index.scss +0 -58
  416. package/dist/templates/Default/index.scss +0 -79
  417. package/dist/templates/Minimal/index.scss +0 -30
  418. package/dist/views/API/RenderJSON/index.scss +0 -129
  419. package/dist/views/API/index.scss +0 -119
  420. package/dist/views/Account/Settings/index.scss +0 -48
  421. package/dist/views/CreateFirstUser/index.scss +0 -21
  422. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +0 -316
  423. package/dist/views/Login/LoginForm/index.scss +0 -10
  424. package/dist/views/Login/index.scss +0 -10
  425. package/dist/views/Logout/index.scss +0 -25
  426. package/dist/views/NotFound/index.scss +0 -57
  427. package/dist/views/ResetPassword/index.scss +0 -11
  428. package/dist/views/Unauthorized/index.scss +0 -14
  429. package/dist/views/Verify/index.scss +0 -16
  430. package/dist/views/Version/Default/index.scss +0 -170
  431. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +0 -81
  432. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +0 -12
  433. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +0 -9
  434. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +0 -59
  435. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +0 -91
  436. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +0 -4
  437. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +0 -9
  438. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +0 -4
  439. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +0 -121
  440. package/dist/views/Version/RenderFieldsToDiff/index.scss +0 -24
  441. package/dist/views/Version/Restore/index.scss +0 -84
  442. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  443. package/dist/views/Version/SelectComparison/index.scss +0 -9
  444. package/dist/views/Version/VersionPillLabel/index.scss +0 -26
  445. package/dist/views/Versions/cells/AutosaveCell/index.scss +0 -9
  446. package/dist/views/Versions/index.scss +0 -110
@@ -1,1040 +1,861 @@
1
1
  import { describe, it, expect } from 'vitest';
2
2
  import { countChangedFields, countChangedFieldsInRows } from './countChangedFields.js';
3
- describe('countChangedFields', ()=>{
4
- // locales can be undefined when not configured in payload.config.js
5
- const locales = undefined;
6
- it('should return 0 when no fields have changed', ()=>{
7
- const fields = [
8
- {
9
- name: 'a',
10
- type: 'text'
11
- },
12
- {
13
- name: 'b',
14
- type: 'number'
15
- }
16
- ];
17
- const valueFrom = {
18
- a: 'original',
19
- b: 123
20
- };
21
- const valueTo = {
22
- a: 'original',
23
- b: 123
24
- };
25
- const result = countChangedFields({
26
- valueFrom,
27
- fields,
28
- valueTo,
29
- locales
30
- });
31
- expect(result).toBe(0);
3
+ describe('countChangedFields', () => {
4
+ // locales can be undefined when not configured in payload.config.js
5
+ const locales = undefined;
6
+ it('should return 0 when no fields have changed', () => {
7
+ const fields = [{
8
+ name: 'a',
9
+ type: 'text'
10
+ }, {
11
+ name: 'b',
12
+ type: 'number'
13
+ }];
14
+ const valueFrom = {
15
+ a: 'original',
16
+ b: 123
17
+ };
18
+ const valueTo = {
19
+ a: 'original',
20
+ b: 123
21
+ };
22
+ const result = countChangedFields({
23
+ valueFrom,
24
+ fields,
25
+ valueTo,
26
+ locales
32
27
  });
33
- it('should count simple changed fields', ()=>{
34
- const fields = [
35
- {
36
- name: 'a',
37
- type: 'text'
38
- },
39
- {
40
- name: 'b',
41
- type: 'number'
42
- }
43
- ];
44
- const valueFrom = {
45
- a: 'original',
46
- b: 123
47
- };
48
- const valueTo = {
49
- a: 'changed',
50
- b: 123
51
- };
52
- const result = countChangedFields({
53
- valueFrom,
54
- fields,
55
- valueTo,
56
- locales
57
- });
58
- expect(result).toBe(1);
28
+ expect(result).toBe(0);
29
+ });
30
+ it('should count simple changed fields', () => {
31
+ const fields = [{
32
+ name: 'a',
33
+ type: 'text'
34
+ }, {
35
+ name: 'b',
36
+ type: 'number'
37
+ }];
38
+ const valueFrom = {
39
+ a: 'original',
40
+ b: 123
41
+ };
42
+ const valueTo = {
43
+ a: 'changed',
44
+ b: 123
45
+ };
46
+ const result = countChangedFields({
47
+ valueFrom,
48
+ fields,
49
+ valueTo,
50
+ locales
51
+ });
52
+ expect(result).toBe(1);
53
+ });
54
+ it('should count previously undefined fields', () => {
55
+ const fields = [{
56
+ name: 'a',
57
+ type: 'text'
58
+ }, {
59
+ name: 'b',
60
+ type: 'number'
61
+ }];
62
+ const valueFrom = {};
63
+ const valueTo = {
64
+ a: 'new',
65
+ b: 123
66
+ };
67
+ const result = countChangedFields({
68
+ valueFrom,
69
+ fields,
70
+ valueTo,
71
+ locales
72
+ });
73
+ expect(result).toBe(2);
74
+ });
75
+ it('should not count the id field because it is not displayed in the version view', () => {
76
+ const fields = [{
77
+ name: 'id',
78
+ type: 'text'
79
+ }, {
80
+ name: 'a',
81
+ type: 'text'
82
+ }];
83
+ const valueFrom = {
84
+ id: 'original',
85
+ a: 'original'
86
+ };
87
+ const valueTo = {
88
+ id: 'changed',
89
+ a: 'original'
90
+ };
91
+ const result = countChangedFields({
92
+ valueFrom,
93
+ fields,
94
+ valueTo,
95
+ locales
96
+ });
97
+ expect(result).toBe(0);
98
+ });
99
+ it('should count changed fields inside collapsible fields', () => {
100
+ const fields = [{
101
+ type: 'collapsible',
102
+ label: 'A collapsible field',
103
+ fields: [{
104
+ name: 'a',
105
+ type: 'text'
106
+ }, {
107
+ name: 'b',
108
+ type: 'text'
109
+ }, {
110
+ name: 'c',
111
+ type: 'text'
112
+ }]
113
+ }];
114
+ const valueFrom = {
115
+ a: 'original',
116
+ b: 'original',
117
+ c: 'original'
118
+ };
119
+ const valueTo = {
120
+ a: 'changed',
121
+ b: 'changed',
122
+ c: 'original'
123
+ };
124
+ const result = countChangedFields({
125
+ valueFrom,
126
+ fields,
127
+ valueTo,
128
+ locales
129
+ });
130
+ expect(result).toBe(2);
131
+ });
132
+ it('should count changed fields inside row fields', () => {
133
+ const fields = [{
134
+ type: 'row',
135
+ fields: [{
136
+ name: 'a',
137
+ type: 'text'
138
+ }, {
139
+ name: 'b',
140
+ type: 'text'
141
+ }, {
142
+ name: 'c',
143
+ type: 'text'
144
+ }]
145
+ }];
146
+ const valueFrom = {
147
+ a: 'original',
148
+ b: 'original',
149
+ c: 'original'
150
+ };
151
+ const valueTo = {
152
+ a: 'changed',
153
+ b: 'changed',
154
+ c: 'original'
155
+ };
156
+ const result = countChangedFields({
157
+ valueFrom,
158
+ fields,
159
+ valueTo,
160
+ locales
161
+ });
162
+ expect(result).toBe(2);
163
+ });
164
+ it('should count changed fields inside group fields', () => {
165
+ const fields = [{
166
+ type: 'group',
167
+ name: 'group',
168
+ fields: [{
169
+ name: 'a',
170
+ type: 'text'
171
+ }, {
172
+ name: 'b',
173
+ type: 'text'
174
+ }, {
175
+ name: 'c',
176
+ type: 'text'
177
+ }]
178
+ }];
179
+ const valueFrom = {
180
+ group: {
181
+ a: 'original',
182
+ b: 'original',
183
+ c: 'original'
184
+ }
185
+ };
186
+ const valueTo = {
187
+ group: {
188
+ a: 'changed',
189
+ b: 'changed',
190
+ c: 'original'
191
+ }
192
+ };
193
+ const result = countChangedFields({
194
+ valueFrom,
195
+ fields,
196
+ valueTo,
197
+ locales
198
+ });
199
+ expect(result).toBe(2);
200
+ });
201
+ it('should count changed fields inside unnamed tabs ', () => {
202
+ const fields = [{
203
+ type: 'tabs',
204
+ tabs: [{
205
+ label: 'Unnamed tab',
206
+ fields: [{
207
+ name: 'a',
208
+ type: 'text'
209
+ }, {
210
+ name: 'b',
211
+ type: 'text'
212
+ }, {
213
+ name: 'c',
214
+ type: 'text'
215
+ }]
216
+ }]
217
+ }];
218
+ const valueFrom = {
219
+ a: 'original',
220
+ b: 'original',
221
+ c: 'original'
222
+ };
223
+ const valueTo = {
224
+ a: 'changed',
225
+ b: 'changed',
226
+ c: 'original'
227
+ };
228
+ const result = countChangedFields({
229
+ valueFrom,
230
+ fields,
231
+ valueTo,
232
+ locales
233
+ });
234
+ expect(result).toBe(2);
235
+ });
236
+ it('should count changed fields inside named tabs ', () => {
237
+ const fields = [{
238
+ type: 'tabs',
239
+ tabs: [{
240
+ name: 'namedTab',
241
+ fields: [{
242
+ name: 'a',
243
+ type: 'text'
244
+ }, {
245
+ name: 'b',
246
+ type: 'text'
247
+ }, {
248
+ name: 'c',
249
+ type: 'text'
250
+ }]
251
+ }]
252
+ }];
253
+ const valueFrom = {
254
+ namedTab: {
255
+ a: 'original',
256
+ b: 'original',
257
+ c: 'original'
258
+ }
259
+ };
260
+ const valueTo = {
261
+ namedTab: {
262
+ a: 'changed',
263
+ b: 'changed',
264
+ c: 'original'
265
+ }
266
+ };
267
+ const result = countChangedFields({
268
+ valueFrom,
269
+ fields,
270
+ valueTo,
271
+ locales
272
+ });
273
+ expect(result).toBe(2);
274
+ });
275
+ it('should ignore UI fields', () => {
276
+ const fields = [{
277
+ name: 'a',
278
+ type: 'text'
279
+ }, {
280
+ name: 'b',
281
+ type: 'ui',
282
+ admin: {}
283
+ }];
284
+ const valueFrom = {
285
+ a: 'original',
286
+ b: 'original'
287
+ };
288
+ const valueTo = {
289
+ a: 'original',
290
+ b: 'changed'
291
+ };
292
+ const result = countChangedFields({
293
+ valueFrom,
294
+ fields,
295
+ valueTo,
296
+ locales
297
+ });
298
+ expect(result).toBe(0);
299
+ });
300
+ it('should count changed fields inside array fields', () => {
301
+ const fields = [{
302
+ name: 'arrayField',
303
+ type: 'array',
304
+ fields: [{
305
+ name: 'a',
306
+ type: 'text'
307
+ }, {
308
+ name: 'b',
309
+ type: 'text'
310
+ }, {
311
+ name: 'c',
312
+ type: 'text'
313
+ }]
314
+ }];
315
+ const valueFrom = {
316
+ arrayField: [{
317
+ a: 'original',
318
+ b: 'original',
319
+ c: 'original'
320
+ }, {
321
+ a: 'original',
322
+ b: 'original'
323
+ }]
324
+ };
325
+ const valueTo = {
326
+ arrayField: [{
327
+ a: 'changed',
328
+ b: 'changed',
329
+ c: 'original'
330
+ }, {
331
+ a: 'changed',
332
+ b: 'changed',
333
+ c: 'changed'
334
+ }]
335
+ };
336
+ const result = countChangedFields({
337
+ valueFrom,
338
+ fields,
339
+ valueTo,
340
+ locales
59
341
  });
60
- it('should count previously undefined fields', ()=>{
61
- const fields = [
62
- {
63
- name: 'a',
64
- type: 'text'
65
- },
66
- {
67
- name: 'b',
68
- type: 'number'
69
- }
70
- ];
71
- const valueFrom = {};
72
- const valueTo = {
73
- a: 'new',
74
- b: 123
75
- };
76
- const result = countChangedFields({
77
- valueFrom,
78
- fields,
79
- valueTo,
80
- locales
81
- });
82
- expect(result).toBe(2);
342
+ expect(result).toBe(5);
343
+ });
344
+ it('should count changed fields inside arrays nested inside of collapsibles', () => {
345
+ const fields = [{
346
+ type: 'collapsible',
347
+ label: 'A collapsible field',
348
+ fields: [{
349
+ name: 'arrayField',
350
+ type: 'array',
351
+ fields: [{
352
+ name: 'a',
353
+ type: 'text'
354
+ }, {
355
+ name: 'b',
356
+ type: 'text'
357
+ }, {
358
+ name: 'c',
359
+ type: 'text'
360
+ }]
361
+ }]
362
+ }];
363
+ const valueFrom = {
364
+ arrayField: [{
365
+ a: 'original',
366
+ b: 'original',
367
+ c: 'original'
368
+ }]
369
+ };
370
+ const valueTo = {
371
+ arrayField: [{
372
+ a: 'changed',
373
+ b: 'changed',
374
+ c: 'original'
375
+ }]
376
+ };
377
+ const result = countChangedFields({
378
+ valueFrom,
379
+ fields,
380
+ valueTo,
381
+ locales
83
382
  });
84
- it('should not count the id field because it is not displayed in the version view', ()=>{
85
- const fields = [
86
- {
87
- name: 'id',
88
- type: 'text'
89
- },
90
- {
91
- name: 'a',
92
- type: 'text'
93
- }
94
- ];
95
- const valueFrom = {
96
- id: 'original',
97
- a: 'original'
98
- };
99
- const valueTo = {
100
- id: 'changed',
101
- a: 'original'
102
- };
103
- const result = countChangedFields({
104
- valueFrom,
105
- fields,
106
- valueTo,
107
- locales
108
- });
109
- expect(result).toBe(0);
383
+ expect(result).toBe(2);
384
+ });
385
+ it('should count changed fields inside blocks fields', () => {
386
+ const fields = [{
387
+ name: 'blocks',
388
+ type: 'blocks',
389
+ blocks: [{
390
+ slug: 'blockA',
391
+ fields: [{
392
+ name: 'a',
393
+ type: 'text'
394
+ }, {
395
+ name: 'b',
396
+ type: 'text'
397
+ }, {
398
+ name: 'c',
399
+ type: 'text'
400
+ }]
401
+ }]
402
+ }];
403
+ const valueFrom = {
404
+ blocks: [{
405
+ blockType: 'blockA',
406
+ a: 'original',
407
+ b: 'original',
408
+ c: 'original'
409
+ }, {
410
+ blockType: 'blockA',
411
+ a: 'original',
412
+ b: 'original'
413
+ }]
414
+ };
415
+ const valueTo = {
416
+ blocks: [{
417
+ blockType: 'blockA',
418
+ a: 'changed',
419
+ b: 'changed',
420
+ c: 'original'
421
+ }, {
422
+ blockType: 'blockA',
423
+ a: 'changed',
424
+ b: 'changed',
425
+ c: 'changed'
426
+ }]
427
+ };
428
+ const result = countChangedFields({
429
+ valueFrom,
430
+ fields,
431
+ valueTo,
432
+ locales
110
433
  });
111
- it('should count changed fields inside collapsible fields', ()=>{
112
- const fields = [
113
- {
114
- type: 'collapsible',
115
- label: 'A collapsible field',
116
- fields: [
117
- {
118
- name: 'a',
119
- type: 'text'
120
- },
121
- {
122
- name: 'b',
123
- type: 'text'
124
- },
125
- {
126
- name: 'c',
127
- type: 'text'
128
- }
129
- ]
130
- }
131
- ];
132
- const valueFrom = {
434
+ expect(result).toBe(5);
435
+ });
436
+ it('should count changed fields between blocks with different slugs', () => {
437
+ const fields = [{
438
+ name: 'blocks',
439
+ type: 'blocks',
440
+ blocks: [{
441
+ slug: 'blockA',
442
+ fields: [{
443
+ name: 'a',
444
+ type: 'text'
445
+ }, {
446
+ name: 'b',
447
+ type: 'text'
448
+ }, {
449
+ name: 'c',
450
+ type: 'text'
451
+ }]
452
+ }, {
453
+ slug: 'blockB',
454
+ fields: [{
455
+ name: 'b',
456
+ type: 'text'
457
+ }, {
458
+ name: 'c',
459
+ type: 'text'
460
+ }, {
461
+ name: 'd',
462
+ type: 'text'
463
+ }]
464
+ }]
465
+ }];
466
+ const valueFrom = {
467
+ blocks: [{
468
+ blockType: 'blockA',
469
+ a: 'removed',
470
+ b: 'original',
471
+ c: 'original'
472
+ }]
473
+ };
474
+ const valueTo = {
475
+ blocks: [{
476
+ blockType: 'blockB',
477
+ b: 'original',
478
+ c: 'changed',
479
+ d: 'new'
480
+ }]
481
+ };
482
+ const result = countChangedFields({
483
+ valueFrom,
484
+ fields,
485
+ valueTo,
486
+ locales
487
+ });
488
+ expect(result).toBe(3);
489
+ });
490
+ describe('localized fields', () => {
491
+ const locales = ['en', 'de'];
492
+ it('should count simple localized fields', () => {
493
+ const fields = [{
494
+ name: 'a',
495
+ type: 'text',
496
+ localized: true
497
+ }, {
498
+ name: 'b',
499
+ type: 'text',
500
+ localized: true
501
+ }];
502
+ const valueFrom = {
503
+ a: {
504
+ en: 'original',
505
+ de: 'original'
506
+ },
507
+ b: {
508
+ en: 'original',
509
+ de: 'original'
510
+ }
511
+ };
512
+ const valueTo = {
513
+ a: {
514
+ en: 'changed',
515
+ de: 'original'
516
+ },
517
+ b: {
518
+ en: 'original',
519
+ de: 'original'
520
+ }
521
+ };
522
+ const result = countChangedFields({
523
+ valueFrom,
524
+ fields,
525
+ valueTo,
526
+ locales
527
+ });
528
+ expect(result).toBe(1);
529
+ });
530
+ it('should count multiple locales of the same localized field', () => {
531
+ const locales = ['en', 'de'];
532
+ const fields = [{
533
+ name: 'a',
534
+ type: 'text',
535
+ localized: true
536
+ }, {
537
+ name: 'b',
538
+ type: 'text',
539
+ localized: true
540
+ }];
541
+ const valueFrom = {
542
+ a: {
543
+ en: 'original',
544
+ de: 'original'
545
+ },
546
+ b: {
547
+ en: 'original',
548
+ de: 'original'
549
+ }
550
+ };
551
+ const valueTo = {
552
+ a: {
553
+ en: 'changed',
554
+ de: 'changed'
555
+ },
556
+ b: {
557
+ en: 'original',
558
+ de: 'original'
559
+ }
560
+ };
561
+ const result = countChangedFields({
562
+ valueFrom,
563
+ fields,
564
+ valueTo,
565
+ locales
566
+ });
567
+ expect(result).toBe(2);
568
+ });
569
+ it('should count changed fields inside localized groups fields', () => {
570
+ const fields = [{
571
+ type: 'group',
572
+ name: 'group',
573
+ localized: true,
574
+ fields: [{
575
+ name: 'a',
576
+ type: 'text'
577
+ }, {
578
+ name: 'b',
579
+ type: 'text'
580
+ }, {
581
+ name: 'c',
582
+ type: 'text'
583
+ }]
584
+ }];
585
+ const valueFrom = {
586
+ group: {
587
+ en: {
133
588
  a: 'original',
134
589
  b: 'original',
135
590
  c: 'original'
136
- };
137
- const valueTo = {
591
+ },
592
+ de: {
593
+ a: 'original',
594
+ b: 'original',
595
+ c: 'original'
596
+ }
597
+ }
598
+ };
599
+ const valueTo = {
600
+ group: {
601
+ en: {
138
602
  a: 'changed',
139
603
  b: 'changed',
140
604
  c: 'original'
141
- };
142
- const result = countChangedFields({
143
- valueFrom,
144
- fields,
145
- valueTo,
146
- locales
147
- });
148
- expect(result).toBe(2);
605
+ },
606
+ de: {
607
+ a: 'original',
608
+ b: 'changed',
609
+ c: 'original'
610
+ }
611
+ }
612
+ };
613
+ const result = countChangedFields({
614
+ valueFrom,
615
+ fields,
616
+ valueTo,
617
+ locales
618
+ });
619
+ expect(result).toBe(3);
149
620
  });
150
- it('should count changed fields inside row fields', ()=>{
151
- const fields = [
152
- {
153
- type: 'row',
154
- fields: [
155
- {
156
- name: 'a',
157
- type: 'text'
158
- },
159
- {
160
- name: 'b',
161
- type: 'text'
162
- },
163
- {
164
- name: 'c',
165
- type: 'text'
166
- }
167
- ]
168
- }
169
- ];
170
- const valueFrom = {
621
+ it('should count changed fields inside localized tabs', () => {
622
+ const fields = [{
623
+ type: 'tabs',
624
+ tabs: [{
625
+ name: 'tab',
626
+ localized: true,
627
+ fields: [{
628
+ name: 'a',
629
+ type: 'text'
630
+ }, {
631
+ name: 'b',
632
+ type: 'text'
633
+ }, {
634
+ name: 'c',
635
+ type: 'text'
636
+ }]
637
+ }]
638
+ }];
639
+ const valueFrom = {
640
+ tab: {
641
+ en: {
642
+ a: 'original',
643
+ b: 'original',
644
+ c: 'original'
645
+ },
646
+ de: {
171
647
  a: 'original',
172
648
  b: 'original',
173
649
  c: 'original'
174
- };
175
- const valueTo = {
650
+ }
651
+ }
652
+ };
653
+ const valueTo = {
654
+ tab: {
655
+ en: {
176
656
  a: 'changed',
177
657
  b: 'changed',
178
658
  c: 'original'
179
- };
180
- const result = countChangedFields({
181
- valueFrom,
182
- fields,
183
- valueTo,
184
- locales
185
- });
186
- expect(result).toBe(2);
187
- });
188
- it('should count changed fields inside group fields', ()=>{
189
- const fields = [
190
- {
191
- type: 'group',
192
- name: 'group',
193
- fields: [
194
- {
195
- name: 'a',
196
- type: 'text'
197
- },
198
- {
199
- name: 'b',
200
- type: 'text'
201
- },
202
- {
203
- name: 'c',
204
- type: 'text'
205
- }
206
- ]
207
- }
208
- ];
209
- const valueFrom = {
210
- group: {
211
- a: 'original',
212
- b: 'original',
213
- c: 'original'
214
- }
215
- };
216
- const valueTo = {
217
- group: {
218
- a: 'changed',
219
- b: 'changed',
220
- c: 'original'
221
- }
222
- };
223
- const result = countChangedFields({
224
- valueFrom,
225
- fields,
226
- valueTo,
227
- locales
228
- });
229
- expect(result).toBe(2);
659
+ },
660
+ de: {
661
+ a: 'original',
662
+ b: 'changed',
663
+ c: 'original'
664
+ }
665
+ }
666
+ };
667
+ const result = countChangedFields({
668
+ valueFrom,
669
+ fields,
670
+ valueTo,
671
+ locales
672
+ });
673
+ expect(result).toBe(3);
230
674
  });
231
- it('should count changed fields inside unnamed tabs ', ()=>{
232
- const fields = [
233
- {
234
- type: 'tabs',
235
- tabs: [
236
- {
237
- label: 'Unnamed tab',
238
- fields: [
239
- {
240
- name: 'a',
241
- type: 'text'
242
- },
243
- {
244
- name: 'b',
245
- type: 'text'
246
- },
247
- {
248
- name: 'c',
249
- type: 'text'
250
- }
251
- ]
252
- }
253
- ]
254
- }
255
- ];
256
- const valueFrom = {
675
+ it('should count changed fields inside localized array fields', () => {
676
+ const fields = [{
677
+ name: 'arrayField',
678
+ type: 'array',
679
+ localized: true,
680
+ fields: [{
681
+ name: 'a',
682
+ type: 'text'
683
+ }, {
684
+ name: 'b',
685
+ type: 'text'
686
+ }, {
687
+ name: 'c',
688
+ type: 'text'
689
+ }]
690
+ }];
691
+ const valueFrom = {
692
+ arrayField: {
693
+ en: [{
257
694
  a: 'original',
258
695
  b: 'original',
259
696
  c: 'original'
260
- };
261
- const valueTo = {
697
+ }],
698
+ de: [{
699
+ a: 'original',
700
+ b: 'original',
701
+ c: 'original'
702
+ }]
703
+ }
704
+ };
705
+ const valueTo = {
706
+ arrayField: {
707
+ en: [{
262
708
  a: 'changed',
263
709
  b: 'changed',
264
710
  c: 'original'
265
- };
266
- const result = countChangedFields({
267
- valueFrom,
268
- fields,
269
- valueTo,
270
- locales
271
- });
272
- expect(result).toBe(2);
273
- });
274
- it('should count changed fields inside named tabs ', ()=>{
275
- const fields = [
276
- {
277
- type: 'tabs',
278
- tabs: [
279
- {
280
- name: 'namedTab',
281
- fields: [
282
- {
283
- name: 'a',
284
- type: 'text'
285
- },
286
- {
287
- name: 'b',
288
- type: 'text'
289
- },
290
- {
291
- name: 'c',
292
- type: 'text'
293
- }
294
- ]
295
- }
296
- ]
297
- }
298
- ];
299
- const valueFrom = {
300
- namedTab: {
301
- a: 'original',
302
- b: 'original',
303
- c: 'original'
304
- }
305
- };
306
- const valueTo = {
307
- namedTab: {
308
- a: 'changed',
309
- b: 'changed',
310
- c: 'original'
311
- }
312
- };
313
- const result = countChangedFields({
314
- valueFrom,
315
- fields,
316
- valueTo,
317
- locales
318
- });
319
- expect(result).toBe(2);
711
+ }],
712
+ de: [{
713
+ a: 'original',
714
+ b: 'changed',
715
+ c: 'original'
716
+ }]
717
+ }
718
+ };
719
+ const result = countChangedFields({
720
+ valueFrom,
721
+ fields,
722
+ valueTo,
723
+ locales
724
+ });
725
+ expect(result).toBe(3);
320
726
  });
321
- it('should ignore UI fields', ()=>{
322
- const fields = [
323
- {
324
- name: 'a',
325
- type: 'text'
326
- },
327
- {
328
- name: 'b',
329
- type: 'ui',
330
- admin: {}
331
- }
332
- ];
333
- const valueFrom = {
727
+ it('should count changed fields inside localized blocks fields', () => {
728
+ const fields = [{
729
+ name: 'blocks',
730
+ type: 'blocks',
731
+ localized: true,
732
+ blocks: [{
733
+ slug: 'blockA',
734
+ fields: [{
735
+ name: 'a',
736
+ type: 'text'
737
+ }, {
738
+ name: 'b',
739
+ type: 'text'
740
+ }, {
741
+ name: 'c',
742
+ type: 'text'
743
+ }]
744
+ }]
745
+ }];
746
+ const valueFrom = {
747
+ blocks: {
748
+ en: [{
749
+ blockType: 'blockA',
334
750
  a: 'original',
335
- b: 'original'
336
- };
337
- const valueTo = {
751
+ b: 'original',
752
+ c: 'original'
753
+ }],
754
+ de: [{
755
+ blockType: 'blockA',
338
756
  a: 'original',
339
- b: 'changed'
340
- };
341
- const result = countChangedFields({
342
- valueFrom,
343
- fields,
344
- valueTo,
345
- locales
346
- });
347
- expect(result).toBe(0);
348
- });
349
- it('should count changed fields inside array fields', ()=>{
350
- const fields = [
351
- {
352
- name: 'arrayField',
353
- type: 'array',
354
- fields: [
355
- {
356
- name: 'a',
357
- type: 'text'
358
- },
359
- {
360
- name: 'b',
361
- type: 'text'
362
- },
363
- {
364
- name: 'c',
365
- type: 'text'
366
- }
367
- ]
368
- }
369
- ];
370
- const valueFrom = {
371
- arrayField: [
372
- {
373
- a: 'original',
374
- b: 'original',
375
- c: 'original'
376
- },
377
- {
378
- a: 'original',
379
- b: 'original'
380
- }
381
- ]
382
- };
383
- const valueTo = {
384
- arrayField: [
385
- {
386
- a: 'changed',
387
- b: 'changed',
388
- c: 'original'
389
- },
390
- {
391
- a: 'changed',
392
- b: 'changed',
393
- c: 'changed'
394
- }
395
- ]
396
- };
397
- const result = countChangedFields({
398
- valueFrom,
399
- fields,
400
- valueTo,
401
- locales
402
- });
403
- expect(result).toBe(5);
404
- });
405
- it('should count changed fields inside arrays nested inside of collapsibles', ()=>{
406
- const fields = [
407
- {
408
- type: 'collapsible',
409
- label: 'A collapsible field',
410
- fields: [
411
- {
412
- name: 'arrayField',
413
- type: 'array',
414
- fields: [
415
- {
416
- name: 'a',
417
- type: 'text'
418
- },
419
- {
420
- name: 'b',
421
- type: 'text'
422
- },
423
- {
424
- name: 'c',
425
- type: 'text'
426
- }
427
- ]
428
- }
429
- ]
430
- }
431
- ];
432
- const valueFrom = {
433
- arrayField: [
434
- {
435
- a: 'original',
436
- b: 'original',
437
- c: 'original'
438
- }
439
- ]
440
- };
441
- const valueTo = {
442
- arrayField: [
443
- {
444
- a: 'changed',
445
- b: 'changed',
446
- c: 'original'
447
- }
448
- ]
449
- };
450
- const result = countChangedFields({
451
- valueFrom,
452
- fields,
453
- valueTo,
454
- locales
455
- });
456
- expect(result).toBe(2);
457
- });
458
- it('should count changed fields inside blocks fields', ()=>{
459
- const fields = [
460
- {
461
- name: 'blocks',
462
- type: 'blocks',
463
- blocks: [
464
- {
465
- slug: 'blockA',
466
- fields: [
467
- {
468
- name: 'a',
469
- type: 'text'
470
- },
471
- {
472
- name: 'b',
473
- type: 'text'
474
- },
475
- {
476
- name: 'c',
477
- type: 'text'
478
- }
479
- ]
480
- }
481
- ]
482
- }
483
- ];
484
- const valueFrom = {
485
- blocks: [
486
- {
487
- blockType: 'blockA',
488
- a: 'original',
489
- b: 'original',
490
- c: 'original'
491
- },
492
- {
493
- blockType: 'blockA',
494
- a: 'original',
495
- b: 'original'
496
- }
497
- ]
498
- };
499
- const valueTo = {
500
- blocks: [
501
- {
502
- blockType: 'blockA',
503
- a: 'changed',
504
- b: 'changed',
505
- c: 'original'
506
- },
507
- {
508
- blockType: 'blockA',
509
- a: 'changed',
510
- b: 'changed',
511
- c: 'changed'
512
- }
513
- ]
514
- };
515
- const result = countChangedFields({
516
- valueFrom,
517
- fields,
518
- valueTo,
519
- locales
520
- });
521
- expect(result).toBe(5);
522
- });
523
- it('should count changed fields between blocks with different slugs', ()=>{
524
- const fields = [
525
- {
526
- name: 'blocks',
527
- type: 'blocks',
528
- blocks: [
529
- {
530
- slug: 'blockA',
531
- fields: [
532
- {
533
- name: 'a',
534
- type: 'text'
535
- },
536
- {
537
- name: 'b',
538
- type: 'text'
539
- },
540
- {
541
- name: 'c',
542
- type: 'text'
543
- }
544
- ]
545
- },
546
- {
547
- slug: 'blockB',
548
- fields: [
549
- {
550
- name: 'b',
551
- type: 'text'
552
- },
553
- {
554
- name: 'c',
555
- type: 'text'
556
- },
557
- {
558
- name: 'd',
559
- type: 'text'
560
- }
561
- ]
562
- }
563
- ]
564
- }
565
- ];
566
- const valueFrom = {
567
- blocks: [
568
- {
569
- blockType: 'blockA',
570
- a: 'removed',
571
- b: 'original',
572
- c: 'original'
573
- }
574
- ]
575
- };
576
- const valueTo = {
577
- blocks: [
578
- {
579
- blockType: 'blockB',
580
- b: 'original',
581
- c: 'changed',
582
- d: 'new'
583
- }
584
- ]
585
- };
586
- const result = countChangedFields({
587
- valueFrom,
588
- fields,
589
- valueTo,
590
- locales
591
- });
592
- expect(result).toBe(3);
593
- });
594
- describe('localized fields', ()=>{
595
- const locales = [
596
- 'en',
597
- 'de'
598
- ];
599
- it('should count simple localized fields', ()=>{
600
- const fields = [
601
- {
602
- name: 'a',
603
- type: 'text',
604
- localized: true
605
- },
606
- {
607
- name: 'b',
608
- type: 'text',
609
- localized: true
610
- }
611
- ];
612
- const valueFrom = {
613
- a: {
614
- en: 'original',
615
- de: 'original'
616
- },
617
- b: {
618
- en: 'original',
619
- de: 'original'
620
- }
621
- };
622
- const valueTo = {
623
- a: {
624
- en: 'changed',
625
- de: 'original'
626
- },
627
- b: {
628
- en: 'original',
629
- de: 'original'
630
- }
631
- };
632
- const result = countChangedFields({
633
- valueFrom,
634
- fields,
635
- valueTo,
636
- locales
637
- });
638
- expect(result).toBe(1);
639
- });
640
- it('should count multiple locales of the same localized field', ()=>{
641
- const locales = [
642
- 'en',
643
- 'de'
644
- ];
645
- const fields = [
646
- {
647
- name: 'a',
648
- type: 'text',
649
- localized: true
650
- },
651
- {
652
- name: 'b',
653
- type: 'text',
654
- localized: true
655
- }
656
- ];
657
- const valueFrom = {
658
- a: {
659
- en: 'original',
660
- de: 'original'
661
- },
662
- b: {
663
- en: 'original',
664
- de: 'original'
665
- }
666
- };
667
- const valueTo = {
668
- a: {
669
- en: 'changed',
670
- de: 'changed'
671
- },
672
- b: {
673
- en: 'original',
674
- de: 'original'
675
- }
676
- };
677
- const result = countChangedFields({
678
- valueFrom,
679
- fields,
680
- valueTo,
681
- locales
682
- });
683
- expect(result).toBe(2);
684
- });
685
- it('should count changed fields inside localized groups fields', ()=>{
686
- const fields = [
687
- {
688
- type: 'group',
689
- name: 'group',
690
- localized: true,
691
- fields: [
692
- {
693
- name: 'a',
694
- type: 'text'
695
- },
696
- {
697
- name: 'b',
698
- type: 'text'
699
- },
700
- {
701
- name: 'c',
702
- type: 'text'
703
- }
704
- ]
705
- }
706
- ];
707
- const valueFrom = {
708
- group: {
709
- en: {
710
- a: 'original',
711
- b: 'original',
712
- c: 'original'
713
- },
714
- de: {
715
- a: 'original',
716
- b: 'original',
717
- c: 'original'
718
- }
719
- }
720
- };
721
- const valueTo = {
722
- group: {
723
- en: {
724
- a: 'changed',
725
- b: 'changed',
726
- c: 'original'
727
- },
728
- de: {
729
- a: 'original',
730
- b: 'changed',
731
- c: 'original'
732
- }
733
- }
734
- };
735
- const result = countChangedFields({
736
- valueFrom,
737
- fields,
738
- valueTo,
739
- locales
740
- });
741
- expect(result).toBe(3);
742
- });
743
- it('should count changed fields inside localized tabs', ()=>{
744
- const fields = [
745
- {
746
- type: 'tabs',
747
- tabs: [
748
- {
749
- name: 'tab',
750
- localized: true,
751
- fields: [
752
- {
753
- name: 'a',
754
- type: 'text'
755
- },
756
- {
757
- name: 'b',
758
- type: 'text'
759
- },
760
- {
761
- name: 'c',
762
- type: 'text'
763
- }
764
- ]
765
- }
766
- ]
767
- }
768
- ];
769
- const valueFrom = {
770
- tab: {
771
- en: {
772
- a: 'original',
773
- b: 'original',
774
- c: 'original'
775
- },
776
- de: {
777
- a: 'original',
778
- b: 'original',
779
- c: 'original'
780
- }
781
- }
782
- };
783
- const valueTo = {
784
- tab: {
785
- en: {
786
- a: 'changed',
787
- b: 'changed',
788
- c: 'original'
789
- },
790
- de: {
791
- a: 'original',
792
- b: 'changed',
793
- c: 'original'
794
- }
795
- }
796
- };
797
- const result = countChangedFields({
798
- valueFrom,
799
- fields,
800
- valueTo,
801
- locales
802
- });
803
- expect(result).toBe(3);
804
- });
805
- it('should count changed fields inside localized array fields', ()=>{
806
- const fields = [
807
- {
808
- name: 'arrayField',
809
- type: 'array',
810
- localized: true,
811
- fields: [
812
- {
813
- name: 'a',
814
- type: 'text'
815
- },
816
- {
817
- name: 'b',
818
- type: 'text'
819
- },
820
- {
821
- name: 'c',
822
- type: 'text'
823
- }
824
- ]
825
- }
826
- ];
827
- const valueFrom = {
828
- arrayField: {
829
- en: [
830
- {
831
- a: 'original',
832
- b: 'original',
833
- c: 'original'
834
- }
835
- ],
836
- de: [
837
- {
838
- a: 'original',
839
- b: 'original',
840
- c: 'original'
841
- }
842
- ]
843
- }
844
- };
845
- const valueTo = {
846
- arrayField: {
847
- en: [
848
- {
849
- a: 'changed',
850
- b: 'changed',
851
- c: 'original'
852
- }
853
- ],
854
- de: [
855
- {
856
- a: 'original',
857
- b: 'changed',
858
- c: 'original'
859
- }
860
- ]
861
- }
862
- };
863
- const result = countChangedFields({
864
- valueFrom,
865
- fields,
866
- valueTo,
867
- locales
868
- });
869
- expect(result).toBe(3);
870
- });
871
- it('should count changed fields inside localized blocks fields', ()=>{
872
- const fields = [
873
- {
874
- name: 'blocks',
875
- type: 'blocks',
876
- localized: true,
877
- blocks: [
878
- {
879
- slug: 'blockA',
880
- fields: [
881
- {
882
- name: 'a',
883
- type: 'text'
884
- },
885
- {
886
- name: 'b',
887
- type: 'text'
888
- },
889
- {
890
- name: 'c',
891
- type: 'text'
892
- }
893
- ]
894
- }
895
- ]
896
- }
897
- ];
898
- const valueFrom = {
899
- blocks: {
900
- en: [
901
- {
902
- blockType: 'blockA',
903
- a: 'original',
904
- b: 'original',
905
- c: 'original'
906
- }
907
- ],
908
- de: [
909
- {
910
- blockType: 'blockA',
911
- a: 'original',
912
- b: 'original',
913
- c: 'original'
914
- }
915
- ]
916
- }
917
- };
918
- const valueTo = {
919
- blocks: {
920
- en: [
921
- {
922
- blockType: 'blockA',
923
- a: 'changed',
924
- b: 'changed',
925
- c: 'original'
926
- }
927
- ],
928
- de: [
929
- {
930
- blockType: 'blockA',
931
- a: 'original',
932
- b: 'changed',
933
- c: 'original'
934
- }
935
- ]
936
- }
937
- };
938
- const result = countChangedFields({
939
- valueFrom,
940
- fields,
941
- valueTo,
942
- locales
943
- });
944
- expect(result).toBe(3);
945
- });
757
+ b: 'original',
758
+ c: 'original'
759
+ }]
760
+ }
761
+ };
762
+ const valueTo = {
763
+ blocks: {
764
+ en: [{
765
+ blockType: 'blockA',
766
+ a: 'changed',
767
+ b: 'changed',
768
+ c: 'original'
769
+ }],
770
+ de: [{
771
+ blockType: 'blockA',
772
+ a: 'original',
773
+ b: 'changed',
774
+ c: 'original'
775
+ }]
776
+ }
777
+ };
778
+ const result = countChangedFields({
779
+ valueFrom,
780
+ fields,
781
+ valueTo,
782
+ locales
783
+ });
784
+ expect(result).toBe(3);
946
785
  });
786
+ });
947
787
  });
948
- describe('countChangedFieldsInRows', ()=>{
949
- it('should count fields in array rows', ()=>{
950
- const field = {
951
- name: 'myArray',
952
- type: 'array',
953
- fields: [
954
- {
955
- name: 'a',
956
- type: 'text'
957
- },
958
- {
959
- name: 'b',
960
- type: 'text'
961
- },
962
- {
963
- name: 'c',
964
- type: 'text'
965
- }
966
- ]
967
- };
968
- const valueFromRows = [
969
- {
970
- a: 'original',
971
- b: 'original',
972
- c: 'original'
973
- }
974
- ];
975
- const valueToRows = [
976
- {
977
- a: 'changed',
978
- b: 'changed',
979
- c: 'original'
980
- }
981
- ];
982
- const result = countChangedFieldsInRows({
983
- valueFromRows,
984
- field,
985
- locales: undefined,
986
- valueToRows: valueToRows
987
- });
988
- expect(result).toBe(2);
788
+ describe('countChangedFieldsInRows', () => {
789
+ it('should count fields in array rows', () => {
790
+ const field = {
791
+ name: 'myArray',
792
+ type: 'array',
793
+ fields: [{
794
+ name: 'a',
795
+ type: 'text'
796
+ }, {
797
+ name: 'b',
798
+ type: 'text'
799
+ }, {
800
+ name: 'c',
801
+ type: 'text'
802
+ }]
803
+ };
804
+ const valueFromRows = [{
805
+ a: 'original',
806
+ b: 'original',
807
+ c: 'original'
808
+ }];
809
+ const valueToRows = [{
810
+ a: 'changed',
811
+ b: 'changed',
812
+ c: 'original'
813
+ }];
814
+ const result = countChangedFieldsInRows({
815
+ valueFromRows,
816
+ field,
817
+ locales: undefined,
818
+ valueToRows: valueToRows
989
819
  });
990
- it('should count fields in blocks', ()=>{
991
- const field = {
992
- name: 'myBlocks',
993
- type: 'blocks',
994
- blocks: [
995
- {
996
- slug: 'blockA',
997
- fields: [
998
- {
999
- name: 'a',
1000
- type: 'text'
1001
- },
1002
- {
1003
- name: 'b',
1004
- type: 'text'
1005
- },
1006
- {
1007
- name: 'c',
1008
- type: 'text'
1009
- }
1010
- ]
1011
- }
1012
- ]
1013
- };
1014
- const valueFromRows = [
1015
- {
1016
- blockType: 'blockA',
1017
- a: 'original',
1018
- b: 'original',
1019
- c: 'original'
1020
- }
1021
- ];
1022
- const valueToRows = [
1023
- {
1024
- blockType: 'blockA',
1025
- a: 'changed',
1026
- b: 'changed',
1027
- c: 'original'
1028
- }
1029
- ];
1030
- const result = countChangedFieldsInRows({
1031
- valueFromRows,
1032
- field,
1033
- locales: undefined,
1034
- valueToRows
1035
- });
1036
- expect(result).toBe(2);
820
+ expect(result).toBe(2);
821
+ });
822
+ it('should count fields in blocks', () => {
823
+ const field = {
824
+ name: 'myBlocks',
825
+ type: 'blocks',
826
+ blocks: [{
827
+ slug: 'blockA',
828
+ fields: [{
829
+ name: 'a',
830
+ type: 'text'
831
+ }, {
832
+ name: 'b',
833
+ type: 'text'
834
+ }, {
835
+ name: 'c',
836
+ type: 'text'
837
+ }]
838
+ }]
839
+ };
840
+ const valueFromRows = [{
841
+ blockType: 'blockA',
842
+ a: 'original',
843
+ b: 'original',
844
+ c: 'original'
845
+ }];
846
+ const valueToRows = [{
847
+ blockType: 'blockA',
848
+ a: 'changed',
849
+ b: 'changed',
850
+ c: 'original'
851
+ }];
852
+ const result = countChangedFieldsInRows({
853
+ valueFromRows,
854
+ field,
855
+ locales: undefined,
856
+ valueToRows
1037
857
  });
858
+ expect(result).toBe(2);
859
+ });
1038
860
  });
1039
-
1040
861
  //# sourceMappingURL=countChangedFields.spec.js.map