@payloadcms/next 3.81.0-internal-debug.1a0f4d0 → 3.81.0

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 (466) 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 +27 -65
  8. package/dist/cjs/withPayload.cjs.map +3 -3
  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 +170 -191
  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.d.ts +4 -2
  64. package/dist/layouts/Root/index.d.ts.map +1 -1
  65. package/dist/layouts/Root/index.js +125 -128
  66. package/dist/layouts/Root/index.js.map +1 -1
  67. package/dist/prod/styles.css +1 -5
  68. package/dist/routes/graphql/handler.js +122 -114
  69. package/dist/routes/graphql/handler.js.map +1 -1
  70. package/dist/routes/graphql/index.js +0 -1
  71. package/dist/routes/graphql/index.js.map +1 -1
  72. package/dist/routes/graphql/playground.js +27 -28
  73. package/dist/routes/graphql/playground.js.map +1 -1
  74. package/dist/routes/index.js +0 -1
  75. package/dist/routes/index.js.map +1 -1
  76. package/dist/routes/rest/index.js +22 -23
  77. package/dist/routes/rest/index.js.map +1 -1
  78. package/dist/routes/rest/og/image.js +79 -103
  79. package/dist/routes/rest/og/image.js.map +1 -1
  80. package/dist/routes/rest/og/index.js +54 -59
  81. package/dist/routes/rest/og/index.js.map +1 -1
  82. package/dist/templates/Default/NavHamburger/index.js +20 -12
  83. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  84. package/dist/templates/Default/Wrapper/index.js +44 -20
  85. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  86. package/dist/templates/Default/index.js +116 -147
  87. package/dist/templates/Default/index.js.map +1 -1
  88. package/dist/templates/Minimal/index.js +17 -26
  89. package/dist/templates/Minimal/index.js.map +1 -1
  90. package/dist/utilities/getExistingAuthToken.js +2 -3
  91. package/dist/utilities/getExistingAuthToken.js.map +1 -1
  92. package/dist/utilities/getNextRequestI18n.js +13 -12
  93. package/dist/utilities/getNextRequestI18n.js.map +1 -1
  94. package/dist/utilities/getPayloadHMR.js +5 -5
  95. package/dist/utilities/getPayloadHMR.js.map +1 -1
  96. package/dist/utilities/getPreferences.js +22 -27
  97. package/dist/utilities/getPreferences.js.map +1 -1
  98. package/dist/utilities/getRequestLocale.js +14 -13
  99. package/dist/utilities/getRequestLocale.js.map +1 -1
  100. package/dist/utilities/getRequestTheme.js +19 -19
  101. package/dist/utilities/getRequestTheme.js.map +1 -1
  102. package/dist/utilities/getRouteWithoutAdmin.js +5 -3
  103. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -1
  104. package/dist/utilities/handleAuthRedirect.js +36 -22
  105. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  106. package/dist/utilities/handleServerFunctions.js +43 -33
  107. package/dist/utilities/handleServerFunctions.js.map +1 -1
  108. package/dist/utilities/initReq.js +96 -78
  109. package/dist/utilities/initReq.js.map +1 -1
  110. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  111. package/dist/utilities/isCustomAdminView.js +26 -22
  112. package/dist/utilities/isCustomAdminView.js.map +1 -1
  113. package/dist/utilities/isCustomAdminView.spec.js +90 -0
  114. package/dist/utilities/isCustomAdminView.spec.js.map +1 -0
  115. package/dist/utilities/isPublicAdminRoute.js +20 -26
  116. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  117. package/dist/utilities/meta.js +63 -68
  118. package/dist/utilities/meta.js.map +1 -1
  119. package/dist/utilities/selectiveCache.js +26 -25
  120. package/dist/utilities/selectiveCache.js.map +1 -1
  121. package/dist/utilities/setPayloadAuthCookie.js +22 -19
  122. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  123. package/dist/utilities/slugify.js +33 -24
  124. package/dist/utilities/slugify.js.map +1 -1
  125. package/dist/utilities/timestamp.js +6 -7
  126. package/dist/utilities/timestamp.js.map +1 -1
  127. package/dist/views/API/LocaleSelector/index.js +39 -17
  128. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  129. package/dist/views/API/RenderJSON/index.js +126 -171
  130. package/dist/views/API/RenderJSON/index.js.map +1 -1
  131. package/dist/views/API/index.client.d.ts.map +1 -1
  132. package/dist/views/API/index.client.js +205 -290
  133. package/dist/views/API/index.client.js.map +1 -1
  134. package/dist/views/API/index.js +2 -7
  135. package/dist/views/API/index.js.map +1 -1
  136. package/dist/views/API/metadata.js +23 -18
  137. package/dist/views/API/metadata.js.map +1 -1
  138. package/dist/views/Account/ResetPreferences/index.js +100 -76
  139. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  140. package/dist/views/Account/Settings/LanguageSelector.js +47 -18
  141. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  142. package/dist/views/Account/Settings/index.js +25 -60
  143. package/dist/views/Account/Settings/index.js.map +1 -1
  144. package/dist/views/Account/ToggleTheme/index.js +55 -38
  145. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  146. package/dist/views/Account/index.client.js +32 -16
  147. package/dist/views/Account/index.client.js.map +1 -1
  148. package/dist/views/Account/index.js +162 -149
  149. package/dist/views/Account/index.js.map +1 -1
  150. package/dist/views/Account/metadata.js +12 -8
  151. package/dist/views/Account/metadata.js.map +1 -1
  152. package/dist/views/BrowseByFolder/buildView.js +157 -138
  153. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  154. package/dist/views/BrowseByFolder/index.js +16 -16
  155. package/dist/views/BrowseByFolder/index.js.map +1 -1
  156. package/dist/views/BrowseByFolder/metadata.js +15 -13
  157. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  158. package/dist/views/CollectionFolders/buildView.js +142 -122
  159. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  160. package/dist/views/CollectionFolders/index.js +16 -16
  161. package/dist/views/CollectionFolders/index.js.map +1 -1
  162. package/dist/views/CollectionFolders/metadata.js +21 -18
  163. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  164. package/dist/views/CollectionFolders/renderFolderViewSlots.js +61 -58
  165. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  166. package/dist/views/CollectionTrash/index.js +17 -17
  167. package/dist/views/CollectionTrash/index.js.map +1 -1
  168. package/dist/views/CollectionTrash/metadata.js +21 -18
  169. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  170. package/dist/views/CreateFirstUser/index.client.js +103 -117
  171. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  172. package/dist/views/CreateFirstUser/index.js +81 -87
  173. package/dist/views/CreateFirstUser/index.js.map +1 -1
  174. package/dist/views/CreateFirstUser/metadata.js +12 -8
  175. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  176. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +170 -145
  177. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  178. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +118 -144
  179. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  180. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +72 -59
  181. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  182. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +414 -435
  183. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  184. package/dist/views/Dashboard/Default/ModularDashboard/index.js +63 -54
  185. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  186. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +96 -65
  187. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  188. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +54 -44
  189. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  190. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +72 -65
  191. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  192. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +175 -193
  193. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  194. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +30 -31
  195. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  196. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js +17 -18
  197. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js.map +1 -1
  198. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js +5 -6
  199. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -1
  200. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js +74 -69
  201. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js.map +1 -1
  202. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +234 -228
  203. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  204. package/dist/views/Dashboard/Default/index.js +45 -59
  205. package/dist/views/Dashboard/Default/index.js.map +1 -1
  206. package/dist/views/Dashboard/index.js +42 -46
  207. package/dist/views/Dashboard/index.js.map +1 -1
  208. package/dist/views/Dashboard/metadata.js +14 -10
  209. package/dist/views/Dashboard/metadata.js.map +1 -1
  210. package/dist/views/Document/getCustomDocumentViewByKey.js +2 -3
  211. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  212. package/dist/views/Document/getCustomViewByRoute.js +30 -27
  213. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  214. package/dist/views/Document/getDocPreferences.js +41 -40
  215. package/dist/views/Document/getDocPreferences.js.map +1 -1
  216. package/dist/views/Document/getDocumentData.js +55 -44
  217. package/dist/views/Document/getDocumentData.js.map +1 -1
  218. package/dist/views/Document/getDocumentPermissions.js +117 -114
  219. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  220. package/dist/views/Document/getDocumentView.js +283 -313
  221. package/dist/views/Document/getDocumentView.js.map +1 -1
  222. package/dist/views/Document/getIsLocked.js +73 -73
  223. package/dist/views/Document/getIsLocked.js.map +1 -1
  224. package/dist/views/Document/getMetaBySegment.js +136 -130
  225. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  226. package/dist/views/Document/getVersions.js +213 -220
  227. package/dist/views/Document/getVersions.js.map +1 -1
  228. package/dist/views/Document/handleServerFunction.js +127 -100
  229. package/dist/views/Document/handleServerFunction.js.map +1 -1
  230. package/dist/views/Document/index.js +359 -319
  231. package/dist/views/Document/index.js.map +1 -1
  232. package/dist/views/Document/metadata.js +1 -2
  233. package/dist/views/Document/metadata.js.map +1 -1
  234. package/dist/views/Document/renderDocumentSlots.js +155 -141
  235. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  236. package/dist/views/Edit/index.js +6 -10
  237. package/dist/views/Edit/index.js.map +1 -1
  238. package/dist/views/Edit/metadata.js +46 -36
  239. package/dist/views/Edit/metadata.js.map +1 -1
  240. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  241. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +169 -132
  242. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  243. package/dist/views/ForgotPassword/index.js +62 -79
  244. package/dist/views/ForgotPassword/index.js.map +1 -1
  245. package/dist/views/ForgotPassword/metadata.js +12 -8
  246. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  247. package/dist/views/List/createSerializableValue.js +11 -12
  248. package/dist/views/List/createSerializableValue.js.map +1 -1
  249. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  250. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  251. package/dist/views/List/extractRelationshipDisplayValue.js +14 -15
  252. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  253. package/dist/views/List/extractValueOrRelationshipID.js +15 -16
  254. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  255. package/dist/views/List/handleGroupBy.js +150 -133
  256. package/dist/views/List/handleGroupBy.js.map +1 -1
  257. package/dist/views/List/handleServerFunction.js +122 -96
  258. package/dist/views/List/handleServerFunction.js.map +1 -1
  259. package/dist/views/List/index.js +325 -306
  260. package/dist/views/List/index.js.map +1 -1
  261. package/dist/views/List/metadata.js +20 -17
  262. package/dist/views/List/metadata.js.map +1 -1
  263. package/dist/views/List/renderListViewSlots.js +75 -82
  264. package/dist/views/List/renderListViewSlots.js.map +1 -1
  265. package/dist/views/List/resolveAllFilterOptions.js +45 -43
  266. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  267. package/dist/views/List/transformColumnsToSelect.js +8 -9
  268. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  269. package/dist/views/Login/LoginField/index.js +89 -57
  270. package/dist/views/Login/LoginField/index.js.map +1 -1
  271. package/dist/views/Login/LoginForm/index.js +160 -107
  272. package/dist/views/Login/LoginForm/index.js.map +1 -1
  273. package/dist/views/Login/index.js +85 -82
  274. package/dist/views/Login/index.js.map +1 -1
  275. package/dist/views/Login/metadata.js +12 -8
  276. package/dist/views/Login/metadata.js.map +1 -1
  277. package/dist/views/Logout/LogoutClient.js +120 -84
  278. package/dist/views/Logout/LogoutClient.js.map +1 -1
  279. package/dist/views/Logout/index.js +29 -29
  280. package/dist/views/Logout/index.js.map +1 -1
  281. package/dist/views/Logout/metadata.js +11 -7
  282. package/dist/views/Logout/metadata.js.map +1 -1
  283. package/dist/views/NotFound/index.client.js +82 -71
  284. package/dist/views/NotFound/index.client.js.map +1 -1
  285. package/dist/views/NotFound/index.js +73 -72
  286. package/dist/views/NotFound/index.js.map +1 -1
  287. package/dist/views/NotFound/metadata.js +9 -7
  288. package/dist/views/NotFound/metadata.js.map +1 -1
  289. package/dist/views/ResetPassword/ResetPasswordForm/index.js +108 -97
  290. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  291. package/dist/views/ResetPassword/index.js +73 -93
  292. package/dist/views/ResetPassword/index.js.map +1 -1
  293. package/dist/views/ResetPassword/metadata.js +12 -8
  294. package/dist/views/ResetPassword/metadata.js.map +1 -1
  295. package/dist/views/Root/attachViewActions.js +23 -18
  296. package/dist/views/Root/attachViewActions.js.map +1 -1
  297. package/dist/views/Root/generateCustomViewMetadata.js +21 -19
  298. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  299. package/dist/views/Root/getCustomViewByKey.js +14 -12
  300. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  301. package/dist/views/Root/getCustomViewByRoute.js +42 -31
  302. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  303. package/dist/views/Root/getDocumentViewInfo.js +23 -24
  304. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  305. package/dist/views/Root/getRouteData.js +325 -333
  306. package/dist/views/Root/getRouteData.js.map +1 -1
  307. package/dist/views/Root/index.js +270 -248
  308. package/dist/views/Root/index.js.map +1 -1
  309. package/dist/views/Root/isPathMatchingRoute.js +26 -21
  310. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  311. package/dist/views/Root/metadata.js +181 -176
  312. package/dist/views/Root/metadata.js.map +1 -1
  313. package/dist/views/Unauthorized/index.js +46 -54
  314. package/dist/views/Unauthorized/index.js.map +1 -1
  315. package/dist/views/Unauthorized/metadata.js +12 -8
  316. package/dist/views/Unauthorized/metadata.js.map +1 -1
  317. package/dist/views/Verify/index.client.js +43 -25
  318. package/dist/views/Verify/index.client.js.map +1 -1
  319. package/dist/views/Verify/index.js +64 -69
  320. package/dist/views/Verify/index.js.map +1 -1
  321. package/dist/views/Verify/metadata.js +12 -8
  322. package/dist/views/Verify/metadata.js.map +1 -1
  323. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  324. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  325. package/dist/views/Version/Default/SetStepNav.js +127 -86
  326. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  327. package/dist/views/Version/Default/index.js +236 -380
  328. package/dist/views/Version/Default/index.js.map +1 -1
  329. package/dist/views/Version/Default/types.js +1 -2
  330. package/dist/views/Version/Default/types.js.map +1 -1
  331. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +119 -102
  332. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  333. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +73 -78
  334. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  335. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +408 -363
  336. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  337. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +51 -40
  338. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  339. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +70 -38
  340. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  341. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +56 -59
  342. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  343. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +117 -139
  344. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  345. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +61 -56
  346. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  347. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +206 -224
  348. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  349. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +11 -17
  350. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  351. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +74 -49
  352. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +146 -135
  354. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  355. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +82 -57
  356. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  357. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +211 -252
  358. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  359. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +22 -23
  360. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  361. package/dist/views/Version/RenderFieldsToDiff/index.js +9 -12
  362. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  363. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +228 -213
  364. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  365. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +826 -1005
  366. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +1 -2
  368. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +43 -44
  370. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  371. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +36 -32
  372. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  373. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
  374. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  375. package/dist/views/Version/Restore/index.js +92 -117
  376. package/dist/views/Version/Restore/index.js.map +1 -1
  377. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -33
  378. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  379. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +226 -170
  380. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  381. package/dist/views/Version/SelectComparison/index.js +50 -73
  382. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  383. package/dist/views/Version/SelectComparison/types.js +1 -2
  384. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  385. package/dist/views/Version/SelectLocales/index.js +32 -34
  386. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  387. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +100 -106
  388. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  389. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +35 -30
  390. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  391. package/dist/views/Version/fetchVersions.js +138 -113
  392. package/dist/views/Version/fetchVersions.js.map +1 -1
  393. package/dist/views/Version/index.js +326 -328
  394. package/dist/views/Version/index.js.map +1 -1
  395. package/dist/views/Version/metadata.js +50 -43
  396. package/dist/views/Version/metadata.js.map +1 -1
  397. package/dist/views/Versions/buildColumns.js +79 -95
  398. package/dist/views/Versions/buildColumns.js.map +1 -1
  399. package/dist/views/Versions/cells/AutosaveCell/index.js +38 -34
  400. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  401. package/dist/views/Versions/cells/CreatedAt/index.js +53 -32
  402. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  403. package/dist/views/Versions/cells/ID/index.js +8 -10
  404. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  405. package/dist/views/Versions/index.client.js +83 -106
  406. package/dist/views/Versions/index.client.js.map +1 -1
  407. package/dist/views/Versions/index.js +164 -164
  408. package/dist/views/Versions/index.js.map +1 -1
  409. package/dist/views/Versions/metadata.js +44 -37
  410. package/dist/views/Versions/metadata.js.map +1 -1
  411. package/dist/views/Versions/types.js +1 -2
  412. package/dist/views/Versions/types.js.map +1 -1
  413. package/dist/withPayload/withPayload.d.ts.map +1 -1
  414. package/dist/withPayload/withPayload.js +180 -236
  415. package/dist/withPayload/withPayload.js.map +1 -1
  416. package/dist/withPayload/withPayload.spec.js +35 -36
  417. package/dist/withPayload/withPayload.spec.js.map +1 -1
  418. package/dist/withPayload/withPayload.utils.js +73 -65
  419. package/dist/withPayload/withPayload.utils.js.map +1 -1
  420. package/dist/withPayload/withPayloadLegacy.js +40 -41
  421. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  422. package/package.json +8 -8
  423. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +0 -38
  424. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -54
  425. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +0 -10
  426. package/dist/elements/DocumentHeader/index.scss +0 -64
  427. package/dist/elements/FormHeader/index.scss +0 -8
  428. package/dist/elements/Nav/NavWrapper/index.scss +0 -27
  429. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  430. package/dist/elements/Nav/index.scss +0 -173
  431. package/dist/esbuildEntry.d.ts +0 -5
  432. package/dist/esbuildEntry.d.ts.map +0 -1
  433. package/dist/esbuildEntry.js +0 -6
  434. package/dist/esbuildEntry.js.map +0 -1
  435. package/dist/templates/Default/Wrapper/index.scss +0 -58
  436. package/dist/templates/Default/index.scss +0 -79
  437. package/dist/templates/Minimal/index.scss +0 -30
  438. package/dist/views/API/RenderJSON/index.scss +0 -129
  439. package/dist/views/API/index.scss +0 -119
  440. package/dist/views/Account/Settings/index.scss +0 -48
  441. package/dist/views/CreateFirstUser/index.scss +0 -21
  442. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +0 -318
  443. package/dist/views/Login/LoginForm/index.scss +0 -10
  444. package/dist/views/Login/index.scss +0 -10
  445. package/dist/views/Logout/index.scss +0 -25
  446. package/dist/views/NotFound/index.scss +0 -57
  447. package/dist/views/ResetPassword/index.scss +0 -11
  448. package/dist/views/Unauthorized/index.scss +0 -14
  449. package/dist/views/Verify/index.scss +0 -16
  450. package/dist/views/Version/Default/index.scss +0 -170
  451. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +0 -81
  452. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +0 -12
  453. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +0 -9
  454. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +0 -59
  455. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +0 -91
  456. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +0 -4
  457. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +0 -9
  458. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +0 -4
  459. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +0 -121
  460. package/dist/views/Version/RenderFieldsToDiff/index.scss +0 -24
  461. package/dist/views/Version/Restore/index.scss +0 -84
  462. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  463. package/dist/views/Version/SelectComparison/index.scss +0 -9
  464. package/dist/views/Version/VersionPillLabel/index.scss +0 -26
  465. package/dist/views/Versions/cells/AutosaveCell/index.scss +0 -9
  466. package/dist/views/Versions/index.scss +0 -110
@@ -1,39 +1,38 @@
1
1
  /**
2
2
  * Collision detection that considers the X
3
3
  * axis only with respect to the position of the pointer (or collisionRect for keyboard)
4
- */ export const closestInXAxis = (args)=>{
5
- const collisions = [];
6
- // Use pointer coordinates if available (mouse/touch), otherwise use collisionRect center (keyboard)
7
- let x;
8
- let y;
9
- if (args.pointerCoordinates) {
10
- x = args.pointerCoordinates.x;
11
- y = args.pointerCoordinates.y;
12
- } else if (args.collisionRect) {
13
- // For keyboard navigation, use the center of the collisionRect
14
- x = args.collisionRect.left + args.collisionRect.width / 2;
15
- y = args.collisionRect.top + args.collisionRect.height / 2;
16
- } else {
17
- return [];
4
+ */export const closestInXAxis = args => {
5
+ const collisions = [];
6
+ // Use pointer coordinates if available (mouse/touch), otherwise use collisionRect center (keyboard)
7
+ let x;
8
+ let y;
9
+ if (args.pointerCoordinates) {
10
+ x = args.pointerCoordinates.x;
11
+ y = args.pointerCoordinates.y;
12
+ } else if (args.collisionRect) {
13
+ // For keyboard navigation, use the center of the collisionRect
14
+ x = args.collisionRect.left + args.collisionRect.width / 2;
15
+ y = args.collisionRect.top + args.collisionRect.height / 2;
16
+ } else {
17
+ return [];
18
+ }
19
+ for (const container of args.droppableContainers) {
20
+ const rect = args.droppableRects.get(container.id);
21
+ if (!rect) {
22
+ continue;
18
23
  }
19
- for (const container of args.droppableContainers){
20
- const rect = args.droppableRects.get(container.id);
21
- if (!rect) {
22
- continue;
23
- }
24
- // Only consider widgets in the same row (same Y axis)
25
- if (y >= rect.top && y <= rect.bottom) {
26
- const centerX = rect.left + rect.width / 2;
27
- const distance = Math.abs(x - centerX);
28
- collisions.push({
29
- id: String(container.id),
30
- data: {
31
- value: distance
32
- }
33
- });
24
+ // Only consider widgets in the same row (same Y axis)
25
+ if (y >= rect.top && y <= rect.bottom) {
26
+ const centerX = rect.left + rect.width / 2;
27
+ const distance = Math.abs(x - centerX);
28
+ collisions.push({
29
+ id: String(container.id),
30
+ data: {
31
+ value: distance
34
32
  }
33
+ });
35
34
  }
36
- return collisions.sort((a, b)=>a.data.value - b.data.value);
35
+ }
36
+ return collisions.sort((a, b) => a.data.value - b.data.value);
37
37
  };
38
-
39
38
  //# sourceMappingURL=collisionDetection.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.ts"],"sourcesContent":["import type { CollisionDetection } from '@dnd-kit/core'\n\n/**\n * Collision detection that considers the X\n * axis only with respect to the position of the pointer (or collisionRect for keyboard)\n */\nexport const closestInXAxis: CollisionDetection = (args) => {\n const collisions: Array<{ data: { value: number }; id: string }> = []\n\n // Use pointer coordinates if available (mouse/touch), otherwise use collisionRect center (keyboard)\n let x: number\n let y: number\n\n if (args.pointerCoordinates) {\n x = args.pointerCoordinates.x\n y = args.pointerCoordinates.y\n } else if (args.collisionRect) {\n // For keyboard navigation, use the center of the collisionRect\n x = args.collisionRect.left + args.collisionRect.width / 2\n y = args.collisionRect.top + args.collisionRect.height / 2\n } else {\n return []\n }\n\n for (const container of args.droppableContainers) {\n const rect = args.droppableRects.get(container.id)\n if (!rect) {\n continue\n }\n\n // Only consider widgets in the same row (same Y axis)\n if (y >= rect.top && y <= rect.bottom) {\n const centerX = rect.left + rect.width / 2\n const distance = Math.abs(x - centerX)\n collisions.push({ id: String(container.id), data: { value: distance } })\n }\n }\n\n return collisions.sort((a, b) => a.data.value - b.data.value)\n}\n"],"names":["closestInXAxis","args","collisions","x","y","pointerCoordinates","collisionRect","left","width","top","height","container","droppableContainers","rect","droppableRects","get","id","bottom","centerX","distance","Math","abs","push","String","data","value","sort","a","b"],"mappings":"AAEA;;;CAGC,GACD,OAAO,MAAMA,iBAAqC,CAACC;IACjD,MAAMC,aAA6D,EAAE;IAErE,oGAAoG;IACpG,IAAIC;IACJ,IAAIC;IAEJ,IAAIH,KAAKI,kBAAkB,EAAE;QAC3BF,IAAIF,KAAKI,kBAAkB,CAACF,CAAC;QAC7BC,IAAIH,KAAKI,kBAAkB,CAACD,CAAC;IAC/B,OAAO,IAAIH,KAAKK,aAAa,EAAE;QAC7B,+DAA+D;QAC/DH,IAAIF,KAAKK,aAAa,CAACC,IAAI,GAAGN,KAAKK,aAAa,CAACE,KAAK,GAAG;QACzDJ,IAAIH,KAAKK,aAAa,CAACG,GAAG,GAAGR,KAAKK,aAAa,CAACI,MAAM,GAAG;IAC3D,OAAO;QACL,OAAO,EAAE;IACX;IAEA,KAAK,MAAMC,aAAaV,KAAKW,mBAAmB,CAAE;QAChD,MAAMC,OAAOZ,KAAKa,cAAc,CAACC,GAAG,CAACJ,UAAUK,EAAE;QACjD,IAAI,CAACH,MAAM;YACT;QACF;QAEA,sDAAsD;QACtD,IAAIT,KAAKS,KAAKJ,GAAG,IAAIL,KAAKS,KAAKI,MAAM,EAAE;YACrC,MAAMC,UAAUL,KAAKN,IAAI,GAAGM,KAAKL,KAAK,GAAG;YACzC,MAAMW,WAAWC,KAAKC,GAAG,CAAClB,IAAIe;YAC9BhB,WAAWoB,IAAI,CAAC;gBAAEN,IAAIO,OAAOZ,UAAUK,EAAE;gBAAGQ,MAAM;oBAAEC,OAAON;gBAAS;YAAE;QACxE;IACF;IAEA,OAAOjB,WAAWwB,IAAI,CAAC,CAACC,GAAGC,IAAMD,EAAEH,IAAI,CAACC,KAAK,GAAGG,EAAEJ,IAAI,CAACC,KAAK;AAC9D,EAAC"}
1
+ {"version":3,"file":"collisionDetection.js","names":["closestInXAxis","args","collisions","x","y","pointerCoordinates","collisionRect","left","width","top","height","container","droppableContainers","rect","droppableRects","get","id","bottom","centerX","distance","Math","abs","push","String","data","value","sort","a","b"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.ts"],"sourcesContent":["import type { CollisionDetection } from '@dnd-kit/core'\n\n/**\n * Collision detection that considers the X\n * axis only with respect to the position of the pointer (or collisionRect for keyboard)\n */\nexport const closestInXAxis: CollisionDetection = (args) => {\n const collisions: Array<{ data: { value: number }; id: string }> = []\n\n // Use pointer coordinates if available (mouse/touch), otherwise use collisionRect center (keyboard)\n let x: number\n let y: number\n\n if (args.pointerCoordinates) {\n x = args.pointerCoordinates.x\n y = args.pointerCoordinates.y\n } else if (args.collisionRect) {\n // For keyboard navigation, use the center of the collisionRect\n x = args.collisionRect.left + args.collisionRect.width / 2\n y = args.collisionRect.top + args.collisionRect.height / 2\n } else {\n return []\n }\n\n for (const container of args.droppableContainers) {\n const rect = args.droppableRects.get(container.id)\n if (!rect) {\n continue\n }\n\n // Only consider widgets in the same row (same Y axis)\n if (y >= rect.top && y <= rect.bottom) {\n const centerX = rect.left + rect.width / 2\n const distance = Math.abs(x - centerX)\n collisions.push({ id: String(container.id), data: { value: distance } })\n }\n }\n\n return collisions.sort((a, b) => a.data.value - b.data.value)\n}\n"],"mappings":"AAEA;;;GAIA,OAAO,MAAMA,cAAA,GAAsCC,IAAA;EACjD,MAAMC,UAAA,GAA6D,EAAE;EAErE;EACA,IAAIC,CAAA;EACJ,IAAIC,CAAA;EAEJ,IAAIH,IAAA,CAAKI,kBAAkB,EAAE;IAC3BF,CAAA,GAAIF,IAAA,CAAKI,kBAAkB,CAACF,CAAC;IAC7BC,CAAA,GAAIH,IAAA,CAAKI,kBAAkB,CAACD,CAAC;EAC/B,OAAO,IAAIH,IAAA,CAAKK,aAAa,EAAE;IAC7B;IACAH,CAAA,GAAIF,IAAA,CAAKK,aAAa,CAACC,IAAI,GAAGN,IAAA,CAAKK,aAAa,CAACE,KAAK,GAAG;IACzDJ,CAAA,GAAIH,IAAA,CAAKK,aAAa,CAACG,GAAG,GAAGR,IAAA,CAAKK,aAAa,CAACI,MAAM,GAAG;EAC3D,OAAO;IACL,OAAO,EAAE;EACX;EAEA,KAAK,MAAMC,SAAA,IAAaV,IAAA,CAAKW,mBAAmB,EAAE;IAChD,MAAMC,IAAA,GAAOZ,IAAA,CAAKa,cAAc,CAACC,GAAG,CAACJ,SAAA,CAAUK,EAAE;IACjD,IAAI,CAACH,IAAA,EAAM;MACT;IACF;IAEA;IACA,IAAIT,CAAA,IAAKS,IAAA,CAAKJ,GAAG,IAAIL,CAAA,IAAKS,IAAA,CAAKI,MAAM,EAAE;MACrC,MAAMC,OAAA,GAAUL,IAAA,CAAKN,IAAI,GAAGM,IAAA,CAAKL,KAAK,GAAG;MACzC,MAAMW,QAAA,GAAWC,IAAA,CAAKC,GAAG,CAAClB,CAAA,GAAIe,OAAA;MAC9BhB,UAAA,CAAWoB,IAAI,CAAC;QAAEN,EAAA,EAAIO,MAAA,CAAOZ,SAAA,CAAUK,EAAE;QAAGQ,IAAA,EAAM;UAAEC,KAAA,EAAON;QAAS;MAAE;IACxE;EACF;EAEA,OAAOjB,UAAA,CAAWwB,IAAI,CAAC,CAACC,CAAA,EAAGC,CAAA,KAAMD,CAAA,CAAEH,IAAI,CAACC,KAAK,GAAGG,CAAA,CAAEJ,IAAI,CAACC,KAAK;AAC9D","ignoreList":[]}
@@ -1,22 +1,21 @@
1
1
  export async function getItemsFromConfig(defaultLayout, req, widgets) {
2
- let widgetInstances;
3
- if (typeof defaultLayout === 'function') {
4
- widgetInstances = await defaultLayout({
5
- req
6
- });
7
- } else {
8
- widgetInstances = defaultLayout;
9
- }
10
- return widgetInstances.map((widgetInstance, index)=>{
11
- const widget = widgets.find((w)=>w.slug === widgetInstance.widgetSlug);
12
- return {
13
- id: `${widgetInstance.widgetSlug}-${index}`,
14
- data: widgetInstance.data,
15
- maxWidth: widget?.maxWidth ?? 'full',
16
- minWidth: widget?.minWidth ?? 'x-small',
17
- width: widgetInstance.width || 'x-small'
18
- };
2
+ let widgetInstances;
3
+ if (typeof defaultLayout === 'function') {
4
+ widgetInstances = await defaultLayout({
5
+ req
19
6
  });
7
+ } else {
8
+ widgetInstances = defaultLayout;
9
+ }
10
+ return widgetInstances.map((widgetInstance, index) => {
11
+ const widget = widgets.find(w => w.slug === widgetInstance.widgetSlug);
12
+ return {
13
+ id: `${widgetInstance.widgetSlug}-${index}`,
14
+ data: widgetInstance.data,
15
+ maxWidth: widget?.maxWidth ?? 'full',
16
+ minWidth: widget?.minWidth ?? 'x-small',
17
+ width: widgetInstance.width || 'x-small'
18
+ };
19
+ });
20
20
  }
21
-
22
21
  //# sourceMappingURL=getItemsFromConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.ts"],"sourcesContent":["import type { DashboardConfig, PayloadRequest, Widget, WidgetInstance } from 'payload'\n\nimport type { WidgetItem } from '../index.client.js'\n\nexport async function getItemsFromConfig(\n defaultLayout: NonNullable<DashboardConfig['defaultLayout']>,\n req: PayloadRequest,\n widgets: Pick<Widget, 'maxWidth' | 'minWidth' | 'slug'>[],\n): Promise<WidgetItem[]> {\n let widgetInstances: WidgetInstance[]\n if (typeof defaultLayout === 'function') {\n widgetInstances = await defaultLayout({ req })\n } else {\n widgetInstances = defaultLayout\n }\n\n return widgetInstances.map((widgetInstance, index) => {\n const widget = widgets.find((w) => w.slug === widgetInstance.widgetSlug)\n return {\n id: `${widgetInstance.widgetSlug}-${index}`,\n data: widgetInstance.data,\n maxWidth: widget?.maxWidth ?? 'full',\n minWidth: widget?.minWidth ?? 'x-small',\n width: widgetInstance.width || 'x-small',\n }\n })\n}\n"],"names":["getItemsFromConfig","defaultLayout","req","widgets","widgetInstances","map","widgetInstance","index","widget","find","w","slug","widgetSlug","id","data","maxWidth","minWidth","width"],"mappings":"AAIA,OAAO,eAAeA,mBACpBC,aAA4D,EAC5DC,GAAmB,EACnBC,OAAyD;IAEzD,IAAIC;IACJ,IAAI,OAAOH,kBAAkB,YAAY;QACvCG,kBAAkB,MAAMH,cAAc;YAAEC;QAAI;IAC9C,OAAO;QACLE,kBAAkBH;IACpB;IAEA,OAAOG,gBAAgBC,GAAG,CAAC,CAACC,gBAAgBC;QAC1C,MAAMC,SAASL,QAAQM,IAAI,CAAC,CAACC,IAAMA,EAAEC,IAAI,KAAKL,eAAeM,UAAU;QACvE,OAAO;YACLC,IAAI,GAAGP,eAAeM,UAAU,CAAC,CAAC,EAAEL,OAAO;YAC3CO,MAAMR,eAAeQ,IAAI;YACzBC,UAAUP,QAAQO,YAAY;YAC9BC,UAAUR,QAAQQ,YAAY;YAC9BC,OAAOX,eAAeW,KAAK,IAAI;QACjC;IACF;AACF"}
1
+ {"version":3,"file":"getItemsFromConfig.js","names":["getItemsFromConfig","defaultLayout","req","widgets","widgetInstances","map","widgetInstance","index","widget","find","w","slug","widgetSlug","id","data","maxWidth","minWidth","width"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.ts"],"sourcesContent":["import type { DashboardConfig, PayloadRequest, Widget, WidgetInstance } from 'payload'\n\nimport type { WidgetItem } from '../index.client.js'\n\nexport async function getItemsFromConfig(\n defaultLayout: NonNullable<DashboardConfig['defaultLayout']>,\n req: PayloadRequest,\n widgets: Pick<Widget, 'maxWidth' | 'minWidth' | 'slug'>[],\n): Promise<WidgetItem[]> {\n let widgetInstances: WidgetInstance[]\n if (typeof defaultLayout === 'function') {\n widgetInstances = await defaultLayout({ req })\n } else {\n widgetInstances = defaultLayout\n }\n\n return widgetInstances.map((widgetInstance, index) => {\n const widget = widgets.find((w) => w.slug === widgetInstance.widgetSlug)\n return {\n id: `${widgetInstance.widgetSlug}-${index}`,\n data: widgetInstance.data,\n maxWidth: widget?.maxWidth ?? 'full',\n minWidth: widget?.minWidth ?? 'x-small',\n width: widgetInstance.width || 'x-small',\n }\n })\n}\n"],"mappings":"AAIA,OAAO,eAAeA,mBACpBC,aAA4D,EAC5DC,GAAmB,EACnBC,OAAyD;EAEzD,IAAIC,eAAA;EACJ,IAAI,OAAOH,aAAA,KAAkB,YAAY;IACvCG,eAAA,GAAkB,MAAMH,aAAA,CAAc;MAAEC;IAAI;EAC9C,OAAO;IACLE,eAAA,GAAkBH,aAAA;EACpB;EAEA,OAAOG,eAAA,CAAgBC,GAAG,CAAC,CAACC,cAAA,EAAgBC,KAAA;IAC1C,MAAMC,MAAA,GAASL,OAAA,CAAQM,IAAI,CAAEC,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAKL,cAAA,CAAeM,UAAU;IACvE,OAAO;MACLC,EAAA,EAAI,GAAGP,cAAA,CAAeM,UAAU,IAAIL,KAAA,EAAO;MAC3CO,IAAA,EAAMR,cAAA,CAAeQ,IAAI;MACzBC,QAAA,EAAUP,MAAA,EAAQO,QAAA,IAAY;MAC9BC,QAAA,EAAUR,MAAA,EAAQQ,QAAA,IAAY;MAC9BC,KAAA,EAAOX,cAAA,CAAeW,KAAK,IAAI;IACjC;EACF;AACF","ignoreList":[]}
@@ -1,11 +1,10 @@
1
1
  import { PREFERENCE_KEYS } from 'payload/shared';
2
2
  import { getPreferences } from '../../../../../utilities/getPreferences.js';
3
3
  export async function getItemsFromPreferences(payload, user) {
4
- const savedPreferences = await getPreferences(PREFERENCE_KEYS.DASHBOARD_LAYOUT, payload, user.id, user.collection);
5
- if (!savedPreferences?.value || typeof savedPreferences.value !== 'object' || !('layouts' in savedPreferences.value)) {
6
- return null;
7
- }
8
- return savedPreferences.value.layouts;
4
+ const savedPreferences = await getPreferences(PREFERENCE_KEYS.DASHBOARD_LAYOUT, payload, user.id, user.collection);
5
+ if (!savedPreferences?.value || typeof savedPreferences.value !== 'object' || !('layouts' in savedPreferences.value)) {
6
+ return null;
7
+ }
8
+ return savedPreferences.value.layouts;
9
9
  }
10
-
11
10
  //# sourceMappingURL=getItemsFromPreferences.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.ts"],"sourcesContent":["import type { BasePayload, TypedUser } from 'payload'\n\nimport { PREFERENCE_KEYS } from 'payload/shared'\n\nimport type { WidgetItem } from '../index.client.js'\n\nimport { getPreferences } from '../../../../../utilities/getPreferences.js'\n\nexport async function getItemsFromPreferences(\n payload: BasePayload,\n user: TypedUser,\n): Promise<null | WidgetItem[]> {\n const savedPreferences = await getPreferences(\n PREFERENCE_KEYS.DASHBOARD_LAYOUT,\n payload,\n user.id,\n user.collection,\n )\n if (\n !savedPreferences?.value ||\n typeof savedPreferences.value !== 'object' ||\n !('layouts' in savedPreferences.value)\n ) {\n return null\n }\n return savedPreferences.value.layouts as null | WidgetItem[]\n}\n"],"names":["PREFERENCE_KEYS","getPreferences","getItemsFromPreferences","payload","user","savedPreferences","DASHBOARD_LAYOUT","id","collection","value","layouts"],"mappings":"AAEA,SAASA,eAAe,QAAQ,iBAAgB;AAIhD,SAASC,cAAc,QAAQ,6CAA4C;AAE3E,OAAO,eAAeC,wBACpBC,OAAoB,EACpBC,IAAe;IAEf,MAAMC,mBAAmB,MAAMJ,eAC7BD,gBAAgBM,gBAAgB,EAChCH,SACAC,KAAKG,EAAE,EACPH,KAAKI,UAAU;IAEjB,IACE,CAACH,kBAAkBI,SACnB,OAAOJ,iBAAiBI,KAAK,KAAK,YAClC,CAAE,CAAA,aAAaJ,iBAAiBI,KAAK,AAAD,GACpC;QACA,OAAO;IACT;IACA,OAAOJ,iBAAiBI,KAAK,CAACC,OAAO;AACvC"}
1
+ {"version":3,"file":"getItemsFromPreferences.js","names":["PREFERENCE_KEYS","getPreferences","getItemsFromPreferences","payload","user","savedPreferences","DASHBOARD_LAYOUT","id","collection","value","layouts"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.ts"],"sourcesContent":["import type { BasePayload, TypedUser } from 'payload'\n\nimport { PREFERENCE_KEYS } from 'payload/shared'\n\nimport type { WidgetItem } from '../index.client.js'\n\nimport { getPreferences } from '../../../../../utilities/getPreferences.js'\n\nexport async function getItemsFromPreferences(\n payload: BasePayload,\n user: TypedUser,\n): Promise<null | WidgetItem[]> {\n const savedPreferences = await getPreferences(\n PREFERENCE_KEYS.DASHBOARD_LAYOUT,\n payload,\n user.id,\n user.collection,\n )\n if (\n !savedPreferences?.value ||\n typeof savedPreferences.value !== 'object' ||\n !('layouts' in savedPreferences.value)\n ) {\n return null\n }\n return savedPreferences.value.layouts as null | WidgetItem[]\n}\n"],"mappings":"AAEA,SAASA,eAAe,QAAQ;AAIhC,SAASC,cAAc,QAAQ;AAE/B,OAAO,eAAeC,wBACpBC,OAAoB,EACpBC,IAAe;EAEf,MAAMC,gBAAA,GAAmB,MAAMJ,cAAA,CAC7BD,eAAA,CAAgBM,gBAAgB,EAChCH,OAAA,EACAC,IAAA,CAAKG,EAAE,EACPH,IAAA,CAAKI,UAAU;EAEjB,IACE,CAACH,gBAAA,EAAkBI,KAAA,IACnB,OAAOJ,gBAAA,CAAiBI,KAAK,KAAK,YAClC,EAAE,aAAaJ,gBAAA,CAAiBI,KAAK,CAAD,EACpC;IACA,OAAO;EACT;EACA,OAAOJ,gBAAA,CAAiBI,KAAK,CAACC,OAAO;AACvC","ignoreList":[]}
@@ -1,9 +1,9 @@
1
1
  import { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared';
2
2
  function isLocalized(field) {
3
- return 'localized' in field && Boolean(field.localized);
3
+ return 'localized' in field && Boolean(field.localized);
4
4
  }
5
5
  function getObjectValue(value) {
6
- return typeof value === 'object' && value !== null && !Array.isArray(value) ? value : {};
6
+ return typeof value === 'object' && value !== null && !Array.isArray(value) ? value : {};
7
7
  }
8
8
  /**
9
9
  * Extracts locale-specific data from widget data stored in preferences.
@@ -13,40 +13,43 @@ function getObjectValue(value) {
13
13
  * which is the format the form state builder expects.
14
14
  *
15
15
  * Recursively handles nested field types (group, row, collapsible, tabs).
16
- */ export function extractLocaleData(widgetData, locale, fields) {
17
- const result = {};
18
- for (const field of fields){
19
- if (field.type === 'tabs') {
20
- for (const tab of field.tabs){
21
- const tabFields = tab.fields;
22
- if (tabHasName(tab)) {
23
- result[tab.name] = extractLocaleData(getObjectValue(widgetData[tab.name]), locale, tabFields);
24
- } else {
25
- Object.assign(result, extractLocaleData(widgetData, locale, tabFields));
26
- }
27
- }
28
- continue;
29
- }
30
- if (fieldHasSubFields(field) && !fieldAffectsData(field)) {
31
- Object.assign(result, extractLocaleData(widgetData, locale, field.fields));
32
- continue;
33
- }
34
- if (!fieldAffectsData(field)) {
35
- continue;
36
- }
37
- const { name } = field;
38
- const value = widgetData[name];
39
- if (fieldHasSubFields(field)) {
40
- result[name] = extractLocaleData(getObjectValue(value), locale, field.fields);
41
- continue;
42
- }
43
- if (isLocalized(field) && value !== undefined && typeof value === 'object' && value !== null && !Array.isArray(value)) {
44
- result[name] = value[locale];
16
+ */
17
+ export function extractLocaleData(widgetData, locale, fields) {
18
+ const result = {};
19
+ for (const field of fields) {
20
+ if (field.type === 'tabs') {
21
+ for (const tab of field.tabs) {
22
+ const tabFields = tab.fields;
23
+ if (tabHasName(tab)) {
24
+ result[tab.name] = extractLocaleData(getObjectValue(widgetData[tab.name]), locale, tabFields);
45
25
  } else {
46
- result[name] = value;
26
+ Object.assign(result, extractLocaleData(widgetData, locale, tabFields));
47
27
  }
28
+ }
29
+ continue;
30
+ }
31
+ if (fieldHasSubFields(field) && !fieldAffectsData(field)) {
32
+ Object.assign(result, extractLocaleData(widgetData, locale, field.fields));
33
+ continue;
34
+ }
35
+ if (!fieldAffectsData(field)) {
36
+ continue;
37
+ }
38
+ const {
39
+ name
40
+ } = field;
41
+ const value = widgetData[name];
42
+ if (fieldHasSubFields(field)) {
43
+ result[name] = extractLocaleData(getObjectValue(value), locale, field.fields);
44
+ continue;
45
+ }
46
+ if (isLocalized(field) && value !== undefined && typeof value === 'object' && value !== null && !Array.isArray(value)) {
47
+ result[name] = value[locale];
48
+ } else {
49
+ result[name] = value;
48
50
  }
49
- return result;
51
+ }
52
+ return result;
50
53
  }
51
54
  /**
52
55
  * Merges locale-specific form data back into the full widget data structure.
@@ -55,44 +58,46 @@ function getObjectValue(value) {
55
58
  * `{ fieldName: { en: "Hello", de: "Hallo" } }` so each locale's value is preserved independently.
56
59
  *
57
60
  * Recursively handles nested field types (group, row, collapsible, tabs).
58
- */ export function mergeLocaleData(existingData, formData, locale, fields) {
59
- const result = {
60
- ...existingData
61
- };
62
- for (const field of fields){
63
- if (field.type === 'tabs') {
64
- for (const tab of field.tabs){
65
- const tabFields = tab.fields;
66
- if (tabHasName(tab)) {
67
- result[tab.name] = mergeLocaleData(getObjectValue(result[tab.name]), getObjectValue(formData[tab.name]), locale, tabFields);
68
- } else {
69
- Object.assign(result, mergeLocaleData(result, formData, locale, tabFields));
70
- }
71
- }
72
- continue;
73
- }
74
- if (fieldHasSubFields(field) && !fieldAffectsData(field)) {
75
- Object.assign(result, mergeLocaleData(result, formData, locale, field.fields));
76
- continue;
77
- }
78
- if (!fieldAffectsData(field)) {
79
- continue;
80
- }
81
- const { name } = field;
82
- if (fieldHasSubFields(field)) {
83
- result[name] = mergeLocaleData(getObjectValue(result[name]), getObjectValue(formData[name]), locale, field.fields);
84
- continue;
85
- }
86
- if (isLocalized(field)) {
87
- result[name] = {
88
- ...getObjectValue(result[name]),
89
- [locale]: formData[name]
90
- };
61
+ */
62
+ export function mergeLocaleData(existingData, formData, locale, fields) {
63
+ const result = {
64
+ ...existingData
65
+ };
66
+ for (const field of fields) {
67
+ if (field.type === 'tabs') {
68
+ for (const tab of field.tabs) {
69
+ const tabFields = tab.fields;
70
+ if (tabHasName(tab)) {
71
+ result[tab.name] = mergeLocaleData(getObjectValue(result[tab.name]), getObjectValue(formData[tab.name]), locale, tabFields);
91
72
  } else {
92
- result[name] = formData[name];
73
+ Object.assign(result, mergeLocaleData(result, formData, locale, tabFields));
93
74
  }
75
+ }
76
+ continue;
77
+ }
78
+ if (fieldHasSubFields(field) && !fieldAffectsData(field)) {
79
+ Object.assign(result, mergeLocaleData(result, formData, locale, field.fields));
80
+ continue;
81
+ }
82
+ if (!fieldAffectsData(field)) {
83
+ continue;
84
+ }
85
+ const {
86
+ name
87
+ } = field;
88
+ if (fieldHasSubFields(field)) {
89
+ result[name] = mergeLocaleData(getObjectValue(result[name]), getObjectValue(formData[name]), locale, field.fields);
90
+ continue;
91
+ }
92
+ if (isLocalized(field)) {
93
+ result[name] = {
94
+ ...getObjectValue(result[name]),
95
+ [locale]: formData[name]
96
+ };
97
+ } else {
98
+ result[name] = formData[name];
94
99
  }
95
- return result;
100
+ }
101
+ return result;
96
102
  }
97
-
98
103
  //# sourceMappingURL=localeUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/localeUtils.ts"],"sourcesContent":["import type { ClientField, Field } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\ntype AnyField = ClientField | Field\n\nfunction isLocalized(field: AnyField): boolean {\n return 'localized' in field && Boolean(field.localized)\n}\n\nfunction getObjectValue(value: unknown): Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : {}\n}\n\n/**\n * Extracts locale-specific data from widget data stored in preferences.\n *\n * Localized fields are stored as `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` in preferences.\n * This function flattens them to `{ fieldName: \"Hello\" }` for the given locale,\n * which is the format the form state builder expects.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function extractLocaleData(\n widgetData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {}\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = extractLocaleData(\n getObjectValue(widgetData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, extractLocaleData(widgetData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, extractLocaleData(widgetData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n const value = widgetData[name]\n\n if (fieldHasSubFields(field)) {\n result[name] = extractLocaleData(getObjectValue(value), locale, field.fields as AnyField[])\n continue\n }\n\n if (\n isLocalized(field) &&\n value !== undefined &&\n typeof value === 'object' &&\n value !== null &&\n !Array.isArray(value)\n ) {\n result[name] = (value as Record<string, unknown>)[locale]\n } else {\n result[name] = value\n }\n }\n\n return result\n}\n\n/**\n * Merges locale-specific form data back into the full widget data structure.\n *\n * Non-localized fields are stored directly. Localized fields are stored as\n * `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` so each locale's value is preserved independently.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function mergeLocaleData(\n existingData: Record<string, unknown>,\n formData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = { ...existingData }\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = mergeLocaleData(\n getObjectValue(result[tab.name]),\n getObjectValue(formData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, mergeLocaleData(result, formData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, mergeLocaleData(result, formData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n\n if (fieldHasSubFields(field)) {\n result[name] = mergeLocaleData(\n getObjectValue(result[name]),\n getObjectValue(formData[name]),\n locale,\n field.fields as AnyField[],\n )\n continue\n }\n\n if (isLocalized(field)) {\n result[name] = { ...getObjectValue(result[name]), [locale]: formData[name] }\n } else {\n result[name] = formData[name]\n }\n }\n\n return result\n}\n"],"names":["fieldAffectsData","fieldHasSubFields","tabHasName","isLocalized","field","Boolean","localized","getObjectValue","value","Array","isArray","extractLocaleData","widgetData","locale","fields","result","type","tab","tabs","tabFields","name","Object","assign","undefined","mergeLocaleData","existingData","formData"],"mappings":"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"}
1
+ {"version":3,"file":"localeUtils.js","names":["fieldAffectsData","fieldHasSubFields","tabHasName","isLocalized","field","Boolean","localized","getObjectValue","value","Array","isArray","extractLocaleData","widgetData","locale","fields","result","type","tab","tabs","tabFields","name","Object","assign","undefined","mergeLocaleData","existingData","formData"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/localeUtils.ts"],"sourcesContent":["import type { ClientField, Field } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\ntype AnyField = ClientField | Field\n\nfunction isLocalized(field: AnyField): boolean {\n return 'localized' in field && Boolean(field.localized)\n}\n\nfunction getObjectValue(value: unknown): Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : {}\n}\n\n/**\n * Extracts locale-specific data from widget data stored in preferences.\n *\n * Localized fields are stored as `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` in preferences.\n * This function flattens them to `{ fieldName: \"Hello\" }` for the given locale,\n * which is the format the form state builder expects.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function extractLocaleData(\n widgetData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {}\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = extractLocaleData(\n getObjectValue(widgetData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, extractLocaleData(widgetData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, extractLocaleData(widgetData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n const value = widgetData[name]\n\n if (fieldHasSubFields(field)) {\n result[name] = extractLocaleData(getObjectValue(value), locale, field.fields as AnyField[])\n continue\n }\n\n if (\n isLocalized(field) &&\n value !== undefined &&\n typeof value === 'object' &&\n value !== null &&\n !Array.isArray(value)\n ) {\n result[name] = (value as Record<string, unknown>)[locale]\n } else {\n result[name] = value\n }\n }\n\n return result\n}\n\n/**\n * Merges locale-specific form data back into the full widget data structure.\n *\n * Non-localized fields are stored directly. Localized fields are stored as\n * `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` so each locale's value is preserved independently.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function mergeLocaleData(\n existingData: Record<string, unknown>,\n formData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = { ...existingData }\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = mergeLocaleData(\n getObjectValue(result[tab.name]),\n getObjectValue(formData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, mergeLocaleData(result, formData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, mergeLocaleData(result, formData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n\n if (fieldHasSubFields(field)) {\n result[name] = mergeLocaleData(\n getObjectValue(result[name]),\n getObjectValue(formData[name]),\n locale,\n field.fields as AnyField[],\n )\n continue\n }\n\n if (isLocalized(field)) {\n result[name] = { ...getObjectValue(result[name]), [locale]: formData[name] }\n } else {\n result[name] = formData[name]\n }\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}