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

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 (462) 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.js +26 -22
  111. package/dist/utilities/isCustomAdminView.js.map +1 -1
  112. package/dist/utilities/isPublicAdminRoute.js +20 -26
  113. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  114. package/dist/utilities/meta.js +63 -68
  115. package/dist/utilities/meta.js.map +1 -1
  116. package/dist/utilities/selectiveCache.js +26 -25
  117. package/dist/utilities/selectiveCache.js.map +1 -1
  118. package/dist/utilities/setPayloadAuthCookie.js +22 -19
  119. package/dist/utilities/setPayloadAuthCookie.js.map +1 -1
  120. package/dist/utilities/slugify.js +33 -24
  121. package/dist/utilities/slugify.js.map +1 -1
  122. package/dist/utilities/timestamp.js +6 -7
  123. package/dist/utilities/timestamp.js.map +1 -1
  124. package/dist/views/API/LocaleSelector/index.js +39 -17
  125. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  126. package/dist/views/API/RenderJSON/index.js +126 -171
  127. package/dist/views/API/RenderJSON/index.js.map +1 -1
  128. package/dist/views/API/index.client.d.ts.map +1 -1
  129. package/dist/views/API/index.client.js +205 -290
  130. package/dist/views/API/index.client.js.map +1 -1
  131. package/dist/views/API/index.js +2 -7
  132. package/dist/views/API/index.js.map +1 -1
  133. package/dist/views/API/metadata.js +23 -18
  134. package/dist/views/API/metadata.js.map +1 -1
  135. package/dist/views/Account/ResetPreferences/index.js +100 -76
  136. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  137. package/dist/views/Account/Settings/LanguageSelector.js +47 -18
  138. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  139. package/dist/views/Account/Settings/index.js +25 -60
  140. package/dist/views/Account/Settings/index.js.map +1 -1
  141. package/dist/views/Account/ToggleTheme/index.js +55 -38
  142. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  143. package/dist/views/Account/index.client.js +32 -16
  144. package/dist/views/Account/index.client.js.map +1 -1
  145. package/dist/views/Account/index.js +162 -149
  146. package/dist/views/Account/index.js.map +1 -1
  147. package/dist/views/Account/metadata.js +12 -8
  148. package/dist/views/Account/metadata.js.map +1 -1
  149. package/dist/views/BrowseByFolder/buildView.js +157 -138
  150. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  151. package/dist/views/BrowseByFolder/index.js +16 -16
  152. package/dist/views/BrowseByFolder/index.js.map +1 -1
  153. package/dist/views/BrowseByFolder/metadata.js +15 -13
  154. package/dist/views/BrowseByFolder/metadata.js.map +1 -1
  155. package/dist/views/CollectionFolders/buildView.js +142 -122
  156. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  157. package/dist/views/CollectionFolders/index.js +16 -16
  158. package/dist/views/CollectionFolders/index.js.map +1 -1
  159. package/dist/views/CollectionFolders/metadata.js +21 -18
  160. package/dist/views/CollectionFolders/metadata.js.map +1 -1
  161. package/dist/views/CollectionFolders/renderFolderViewSlots.js +61 -58
  162. package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +1 -1
  163. package/dist/views/CollectionTrash/index.js +17 -17
  164. package/dist/views/CollectionTrash/index.js.map +1 -1
  165. package/dist/views/CollectionTrash/metadata.js +21 -18
  166. package/dist/views/CollectionTrash/metadata.js.map +1 -1
  167. package/dist/views/CreateFirstUser/index.client.js +103 -117
  168. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  169. package/dist/views/CreateFirstUser/index.js +81 -87
  170. package/dist/views/CreateFirstUser/index.js.map +1 -1
  171. package/dist/views/CreateFirstUser/metadata.js +12 -8
  172. package/dist/views/CreateFirstUser/metadata.js.map +1 -1
  173. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +170 -145
  174. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  175. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +118 -144
  176. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  177. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +72 -59
  178. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  179. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +414 -435
  180. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  181. package/dist/views/Dashboard/Default/ModularDashboard/index.js +63 -54
  182. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  183. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +96 -65
  184. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  185. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +54 -44
  186. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  187. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +72 -65
  188. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  189. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +175 -193
  190. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  191. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +30 -31
  192. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -1
  193. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js +17 -18
  194. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js.map +1 -1
  195. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js +5 -6
  196. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -1
  197. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js +74 -69
  198. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js.map +1 -1
  199. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +234 -228
  200. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  201. package/dist/views/Dashboard/Default/index.js +45 -59
  202. package/dist/views/Dashboard/Default/index.js.map +1 -1
  203. package/dist/views/Dashboard/index.js +42 -46
  204. package/dist/views/Dashboard/index.js.map +1 -1
  205. package/dist/views/Dashboard/metadata.js +14 -10
  206. package/dist/views/Dashboard/metadata.js.map +1 -1
  207. package/dist/views/Document/getCustomDocumentViewByKey.js +2 -3
  208. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -1
  209. package/dist/views/Document/getCustomViewByRoute.js +30 -27
  210. package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
  211. package/dist/views/Document/getDocPreferences.js +41 -40
  212. package/dist/views/Document/getDocPreferences.js.map +1 -1
  213. package/dist/views/Document/getDocumentData.js +55 -44
  214. package/dist/views/Document/getDocumentData.js.map +1 -1
  215. package/dist/views/Document/getDocumentPermissions.js +117 -114
  216. package/dist/views/Document/getDocumentPermissions.js.map +1 -1
  217. package/dist/views/Document/getDocumentView.js +283 -313
  218. package/dist/views/Document/getDocumentView.js.map +1 -1
  219. package/dist/views/Document/getIsLocked.js +73 -73
  220. package/dist/views/Document/getIsLocked.js.map +1 -1
  221. package/dist/views/Document/getMetaBySegment.js +136 -130
  222. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  223. package/dist/views/Document/getVersions.js +213 -220
  224. package/dist/views/Document/getVersions.js.map +1 -1
  225. package/dist/views/Document/handleServerFunction.js +127 -100
  226. package/dist/views/Document/handleServerFunction.js.map +1 -1
  227. package/dist/views/Document/index.js +359 -319
  228. package/dist/views/Document/index.js.map +1 -1
  229. package/dist/views/Document/metadata.js +1 -2
  230. package/dist/views/Document/metadata.js.map +1 -1
  231. package/dist/views/Document/renderDocumentSlots.js +155 -141
  232. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  233. package/dist/views/Edit/index.js +6 -10
  234. package/dist/views/Edit/index.js.map +1 -1
  235. package/dist/views/Edit/metadata.js +46 -36
  236. package/dist/views/Edit/metadata.js.map +1 -1
  237. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +164 -130
  238. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  239. package/dist/views/ForgotPassword/index.js +62 -79
  240. package/dist/views/ForgotPassword/index.js.map +1 -1
  241. package/dist/views/ForgotPassword/metadata.js +12 -8
  242. package/dist/views/ForgotPassword/metadata.js.map +1 -1
  243. package/dist/views/List/createSerializableValue.js +11 -12
  244. package/dist/views/List/createSerializableValue.js.map +1 -1
  245. package/dist/views/List/enrichDocsWithVersionStatus.js +86 -86
  246. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  247. package/dist/views/List/extractRelationshipDisplayValue.js +14 -15
  248. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -1
  249. package/dist/views/List/extractValueOrRelationshipID.js +15 -16
  250. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -1
  251. package/dist/views/List/handleGroupBy.js +150 -133
  252. package/dist/views/List/handleGroupBy.js.map +1 -1
  253. package/dist/views/List/handleServerFunction.js +122 -96
  254. package/dist/views/List/handleServerFunction.js.map +1 -1
  255. package/dist/views/List/index.js +325 -306
  256. package/dist/views/List/index.js.map +1 -1
  257. package/dist/views/List/metadata.js +20 -17
  258. package/dist/views/List/metadata.js.map +1 -1
  259. package/dist/views/List/renderListViewSlots.js +75 -82
  260. package/dist/views/List/renderListViewSlots.js.map +1 -1
  261. package/dist/views/List/resolveAllFilterOptions.js +45 -43
  262. package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
  263. package/dist/views/List/transformColumnsToSelect.js +8 -9
  264. package/dist/views/List/transformColumnsToSelect.js.map +1 -1
  265. package/dist/views/Login/LoginField/index.js +89 -57
  266. package/dist/views/Login/LoginField/index.js.map +1 -1
  267. package/dist/views/Login/LoginForm/index.js +160 -107
  268. package/dist/views/Login/LoginForm/index.js.map +1 -1
  269. package/dist/views/Login/index.js +85 -82
  270. package/dist/views/Login/index.js.map +1 -1
  271. package/dist/views/Login/metadata.js +12 -8
  272. package/dist/views/Login/metadata.js.map +1 -1
  273. package/dist/views/Logout/LogoutClient.js +120 -84
  274. package/dist/views/Logout/LogoutClient.js.map +1 -1
  275. package/dist/views/Logout/index.js +29 -29
  276. package/dist/views/Logout/index.js.map +1 -1
  277. package/dist/views/Logout/metadata.js +11 -7
  278. package/dist/views/Logout/metadata.js.map +1 -1
  279. package/dist/views/NotFound/index.client.js +82 -71
  280. package/dist/views/NotFound/index.client.js.map +1 -1
  281. package/dist/views/NotFound/index.js +73 -72
  282. package/dist/views/NotFound/index.js.map +1 -1
  283. package/dist/views/NotFound/metadata.js +9 -7
  284. package/dist/views/NotFound/metadata.js.map +1 -1
  285. package/dist/views/ResetPassword/ResetPasswordForm/index.js +108 -97
  286. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  287. package/dist/views/ResetPassword/index.js +73 -93
  288. package/dist/views/ResetPassword/index.js.map +1 -1
  289. package/dist/views/ResetPassword/metadata.js +12 -8
  290. package/dist/views/ResetPassword/metadata.js.map +1 -1
  291. package/dist/views/Root/attachViewActions.js +23 -18
  292. package/dist/views/Root/attachViewActions.js.map +1 -1
  293. package/dist/views/Root/generateCustomViewMetadata.js +21 -19
  294. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -1
  295. package/dist/views/Root/getCustomViewByKey.js +14 -12
  296. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  297. package/dist/views/Root/getCustomViewByRoute.js +42 -31
  298. package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
  299. package/dist/views/Root/getDocumentViewInfo.js +23 -24
  300. package/dist/views/Root/getDocumentViewInfo.js.map +1 -1
  301. package/dist/views/Root/getRouteData.js +325 -333
  302. package/dist/views/Root/getRouteData.js.map +1 -1
  303. package/dist/views/Root/index.js +270 -248
  304. package/dist/views/Root/index.js.map +1 -1
  305. package/dist/views/Root/isPathMatchingRoute.js +26 -21
  306. package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
  307. package/dist/views/Root/metadata.js +181 -176
  308. package/dist/views/Root/metadata.js.map +1 -1
  309. package/dist/views/Unauthorized/index.js +46 -54
  310. package/dist/views/Unauthorized/index.js.map +1 -1
  311. package/dist/views/Unauthorized/metadata.js +12 -8
  312. package/dist/views/Unauthorized/metadata.js.map +1 -1
  313. package/dist/views/Verify/index.client.js +43 -25
  314. package/dist/views/Verify/index.client.js.map +1 -1
  315. package/dist/views/Verify/index.js +64 -69
  316. package/dist/views/Verify/index.js.map +1 -1
  317. package/dist/views/Verify/metadata.js +12 -8
  318. package/dist/views/Verify/metadata.js.map +1 -1
  319. package/dist/views/Version/Default/SelectedLocalesContext.js +4 -4
  320. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  321. package/dist/views/Version/Default/SetStepNav.js +127 -86
  322. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  323. package/dist/views/Version/Default/index.js +236 -380
  324. package/dist/views/Version/Default/index.js.map +1 -1
  325. package/dist/views/Version/Default/types.js +1 -2
  326. package/dist/views/Version/Default/types.js.map +1 -1
  327. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +119 -102
  328. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  329. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +73 -78
  330. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  331. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +408 -363
  332. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  333. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +51 -40
  334. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  335. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +70 -38
  336. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  337. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +56 -59
  338. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  339. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +117 -139
  340. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  341. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +61 -56
  342. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  343. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +206 -224
  344. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  345. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +11 -17
  346. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  347. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +74 -49
  348. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  349. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +146 -135
  350. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  351. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +82 -57
  352. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  353. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +211 -252
  354. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  355. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +22 -23
  356. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  357. package/dist/views/Version/RenderFieldsToDiff/index.js +9 -12
  358. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  359. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +228 -213
  360. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  361. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +826 -1005
  362. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -1
  363. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +1 -2
  364. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -1
  365. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +43 -44
  366. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -1
  367. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +36 -32
  368. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  369. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +129 -145
  370. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -1
  371. package/dist/views/Version/Restore/index.js +92 -117
  372. package/dist/views/Version/Restore/index.js.map +1 -1
  373. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -33
  374. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  375. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +226 -170
  376. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  377. package/dist/views/Version/SelectComparison/index.js +50 -73
  378. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  379. package/dist/views/Version/SelectComparison/types.js +1 -2
  380. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  381. package/dist/views/Version/SelectLocales/index.js +32 -34
  382. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  383. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +100 -106
  384. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  385. package/dist/views/Version/VersionPillLabel/getVersionLabel.js +35 -30
  386. package/dist/views/Version/VersionPillLabel/getVersionLabel.js.map +1 -1
  387. package/dist/views/Version/fetchVersions.js +138 -113
  388. package/dist/views/Version/fetchVersions.js.map +1 -1
  389. package/dist/views/Version/index.js +326 -328
  390. package/dist/views/Version/index.js.map +1 -1
  391. package/dist/views/Version/metadata.js +50 -43
  392. package/dist/views/Version/metadata.js.map +1 -1
  393. package/dist/views/Versions/buildColumns.js +79 -95
  394. package/dist/views/Versions/buildColumns.js.map +1 -1
  395. package/dist/views/Versions/cells/AutosaveCell/index.js +38 -34
  396. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  397. package/dist/views/Versions/cells/CreatedAt/index.js +53 -32
  398. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  399. package/dist/views/Versions/cells/ID/index.js +8 -10
  400. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  401. package/dist/views/Versions/index.client.js +83 -106
  402. package/dist/views/Versions/index.client.js.map +1 -1
  403. package/dist/views/Versions/index.js +164 -164
  404. package/dist/views/Versions/index.js.map +1 -1
  405. package/dist/views/Versions/metadata.js +44 -37
  406. package/dist/views/Versions/metadata.js.map +1 -1
  407. package/dist/views/Versions/types.js +1 -2
  408. package/dist/views/Versions/types.js.map +1 -1
  409. package/dist/withPayload/withPayload.d.ts.map +1 -1
  410. package/dist/withPayload/withPayload.js +180 -236
  411. package/dist/withPayload/withPayload.js.map +1 -1
  412. package/dist/withPayload/withPayload.spec.js +35 -36
  413. package/dist/withPayload/withPayload.spec.js.map +1 -1
  414. package/dist/withPayload/withPayload.utils.js +73 -65
  415. package/dist/withPayload/withPayload.utils.js.map +1 -1
  416. package/dist/withPayload/withPayloadLegacy.js +40 -41
  417. package/dist/withPayload/withPayloadLegacy.js.map +1 -1
  418. package/package.json +6 -6
  419. package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +0 -38
  420. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -54
  421. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.scss +0 -10
  422. package/dist/elements/DocumentHeader/index.scss +0 -64
  423. package/dist/elements/FormHeader/index.scss +0 -8
  424. package/dist/elements/Nav/NavWrapper/index.scss +0 -27
  425. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  426. package/dist/elements/Nav/index.scss +0 -173
  427. package/dist/esbuildEntry.d.ts +0 -5
  428. package/dist/esbuildEntry.d.ts.map +0 -1
  429. package/dist/esbuildEntry.js +0 -6
  430. package/dist/esbuildEntry.js.map +0 -1
  431. package/dist/templates/Default/Wrapper/index.scss +0 -58
  432. package/dist/templates/Default/index.scss +0 -79
  433. package/dist/templates/Minimal/index.scss +0 -30
  434. package/dist/views/API/RenderJSON/index.scss +0 -129
  435. package/dist/views/API/index.scss +0 -119
  436. package/dist/views/Account/Settings/index.scss +0 -48
  437. package/dist/views/CreateFirstUser/index.scss +0 -21
  438. package/dist/views/Dashboard/Default/ModularDashboard/index.scss +0 -318
  439. package/dist/views/Login/LoginForm/index.scss +0 -10
  440. package/dist/views/Login/index.scss +0 -10
  441. package/dist/views/Logout/index.scss +0 -25
  442. package/dist/views/NotFound/index.scss +0 -57
  443. package/dist/views/ResetPassword/index.scss +0 -11
  444. package/dist/views/Unauthorized/index.scss +0 -14
  445. package/dist/views/Verify/index.scss +0 -16
  446. package/dist/views/Version/Default/index.scss +0 -170
  447. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +0 -81
  448. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +0 -12
  449. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +0 -9
  450. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +0 -59
  451. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +0 -91
  452. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +0 -4
  453. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +0 -9
  454. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +0 -4
  455. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.scss +0 -121
  456. package/dist/views/Version/RenderFieldsToDiff/index.scss +0 -24
  457. package/dist/views/Version/Restore/index.scss +0 -84
  458. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  459. package/dist/views/Version/SelectComparison/index.scss +0 -9
  460. package/dist/views/Version/VersionPillLabel/index.scss +0 -26
  461. package/dist/views/Versions/cells/AutosaveCell/index.scss +0 -9
  462. 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":"AAEA,SAASA,gBAAgB,EAAEC,iBAAiB,EAAEC,UAAU,QAAQ,iBAAgB;AAIhF,SAASC,YAAYC,KAAe;IAClC,OAAO,eAAeA,SAASC,QAAQD,MAAME,SAAS;AACxD;AAEA,SAASC,eAAeC,KAAc;IACpC,OAAO,OAAOA,UAAU,YAAYA,UAAU,QAAQ,CAACC,MAAMC,OAAO,CAACF,SAChEA,QACD,CAAC;AACP;AAEA;;;;;;;;CAQC,GACD,OAAO,SAASG,kBACdC,UAAmC,EACnCC,MAAc,EACdC,MAA2B;IAE3B,MAAMC,SAAkC,CAAC;IAEzC,KAAK,MAAMX,SAASU,OAAQ;QAC1B,IAAIV,MAAMY,IAAI,KAAK,QAAQ;YACzB,KAAK,MAAMC,OAAOb,MAAMc,IAAI,CAAE;gBAC5B,MAAMC,YAAYF,IAAIH,MAAM;gBAC5B,IAAIZ,WAAWe,MAAM;oBACnBF,MAAM,CAACE,IAAIG,IAAI,CAAC,GAAGT,kBACjBJ,eAAeK,UAAU,CAACK,IAAIG,IAAI,CAAC,GACnCP,QACAM;gBAEJ,OAAO;oBACLE,OAAOC,MAAM,CAACP,QAAQJ,kBAAkBC,YAAYC,QAAQM;gBAC9D;YACF;YACA;QACF;QAEA,IAAIlB,kBAAkBG,UAAU,CAACJ,iBAAiBI,QAAQ;YACxDiB,OAAOC,MAAM,CAACP,QAAQJ,kBAAkBC,YAAYC,QAAQT,MAAMU,MAAM;YACxE;QACF;QAEA,IAAI,CAACd,iBAAiBI,QAAQ;YAC5B;QACF;QAEA,MAAM,EAAEgB,IAAI,EAAE,GAAGhB;QACjB,MAAMI,QAAQI,UAAU,CAACQ,KAAK;QAE9B,IAAInB,kBAAkBG,QAAQ;YAC5BW,MAAM,CAACK,KAAK,GAAGT,kBAAkBJ,eAAeC,QAAQK,QAAQT,MAAMU,MAAM;YAC5E;QACF;QAEA,IACEX,YAAYC,UACZI,UAAUe,aACV,OAAOf,UAAU,YACjBA,UAAU,QACV,CAACC,MAAMC,OAAO,CAACF,QACf;YACAO,MAAM,CAACK,KAAK,GAAG,AAACZ,KAAiC,CAACK,OAAO;QAC3D,OAAO;YACLE,MAAM,CAACK,KAAK,GAAGZ;QACjB;IACF;IAEA,OAAOO;AACT;AAEA;;;;;;;CAOC,GACD,OAAO,SAASS,gBACdC,YAAqC,EACrCC,QAAiC,EACjCb,MAAc,EACdC,MAA2B;IAE3B,MAAMC,SAAkC;QAAE,GAAGU,YAAY;IAAC;IAE1D,KAAK,MAAMrB,SAASU,OAAQ;QAC1B,IAAIV,MAAMY,IAAI,KAAK,QAAQ;YACzB,KAAK,MAAMC,OAAOb,MAAMc,IAAI,CAAE;gBAC5B,MAAMC,YAAYF,IAAIH,MAAM;gBAC5B,IAAIZ,WAAWe,MAAM;oBACnBF,MAAM,CAACE,IAAIG,IAAI,CAAC,GAAGI,gBACjBjB,eAAeQ,MAAM,CAACE,IAAIG,IAAI,CAAC,GAC/Bb,eAAemB,QAAQ,CAACT,IAAIG,IAAI,CAAC,GACjCP,QACAM;gBAEJ,OAAO;oBACLE,OAAOC,MAAM,CAACP,QAAQS,gBAAgBT,QAAQW,UAAUb,QAAQM;gBAClE;YACF;YACA;QACF;QAEA,IAAIlB,kBAAkBG,UAAU,CAACJ,iBAAiBI,QAAQ;YACxDiB,OAAOC,MAAM,CAACP,QAAQS,gBAAgBT,QAAQW,UAAUb,QAAQT,MAAMU,MAAM;YAC5E;QACF;QAEA,IAAI,CAACd,iBAAiBI,QAAQ;YAC5B;QACF;QAEA,MAAM,EAAEgB,IAAI,EAAE,GAAGhB;QAEjB,IAAIH,kBAAkBG,QAAQ;YAC5BW,MAAM,CAACK,KAAK,GAAGI,gBACbjB,eAAeQ,MAAM,CAACK,KAAK,GAC3Bb,eAAemB,QAAQ,CAACN,KAAK,GAC7BP,QACAT,MAAMU,MAAM;YAEd;QACF;QAEA,IAAIX,YAAYC,QAAQ;YACtBW,MAAM,CAACK,KAAK,GAAG;gBAAE,GAAGb,eAAeQ,MAAM,CAACK,KAAK,CAAC;gBAAE,CAACP,OAAO,EAAEa,QAAQ,CAACN,KAAK;YAAC;QAC7E,OAAO;YACLL,MAAM,CAACK,KAAK,GAAGM,QAAQ,CAACN,KAAK;QAC/B;IACF;IAEA,OAAOL;AACT"}
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":[]}