@payloadcms/ui 4.0.0-internal.e55ccef → 4.0.0-internal.f05c47f

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 (561) hide show
  1. package/dist/css/app.css +121 -0
  2. package/dist/css/forms.css +0 -6
  3. package/dist/css/spacing.css +11 -3
  4. package/dist/css/z-index.css +1 -0
  5. package/dist/elements/AddNewRelation/index.css +0 -1
  6. package/dist/elements/AppHeader/index.css +1 -3
  7. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  8. package/dist/elements/AppHeader/index.js +5 -1
  9. package/dist/elements/AppHeader/index.js.map +1 -1
  10. package/dist/elements/ArrayAction/index.d.ts +3 -0
  11. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  12. package/dist/elements/ArrayAction/index.js +83 -29
  13. package/dist/elements/ArrayAction/index.js.map +1 -1
  14. package/dist/elements/Autosave/index.d.ts.map +1 -1
  15. package/dist/elements/Autosave/index.js +3 -0
  16. package/dist/elements/Autosave/index.js.map +1 -1
  17. package/dist/elements/BranchSelector/index.css +83 -0
  18. package/dist/elements/BranchSelector/index.d.ts +12 -0
  19. package/dist/elements/BranchSelector/index.d.ts.map +1 -0
  20. package/dist/elements/BranchSelector/index.js +160 -0
  21. package/dist/elements/BranchSelector/index.js.map +1 -0
  22. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  23. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  24. package/dist/elements/BulkUpload/FileSidebar/index.css +4 -0
  25. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  26. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  27. package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
  28. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  29. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  30. package/dist/elements/BulkUpload/FormsManager/index.js +7 -3
  31. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  32. package/dist/elements/Button/index.css +2 -2
  33. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
  34. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
  35. package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
  36. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  37. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +120 -0
  38. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +1 -0
  39. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  40. package/dist/elements/ClipboardAction/index.js +17 -1
  41. package/dist/elements/ClipboardAction/index.js.map +1 -1
  42. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +144 -0
  43. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +1 -0
  44. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  45. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  46. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
  47. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  48. package/dist/elements/ClipboardAction/types.d.ts +3 -0
  49. package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
  50. package/dist/elements/ClipboardAction/types.js.map +1 -1
  51. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
  52. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
  53. package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
  54. package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
  55. package/dist/elements/CodeEditor/index.css +0 -5
  56. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  57. package/dist/elements/ColumnSelection/Popup.js +3 -3
  58. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  59. package/dist/elements/Combobox/index.css +76 -23
  60. package/dist/elements/Combobox/index.d.ts +7 -0
  61. package/dist/elements/Combobox/index.d.ts.map +1 -1
  62. package/dist/elements/Combobox/index.js +58 -20
  63. package/dist/elements/Combobox/index.js.map +1 -1
  64. package/dist/elements/CommandPalette/index.css +0 -7
  65. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  66. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  67. package/dist/elements/CopyToClipboard/index.js +10 -8
  68. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  69. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  70. package/dist/elements/CreateDocumentButton/index.js +4 -1
  71. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  72. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  73. package/dist/elements/DatePicker/DatePicker.js +1 -0
  74. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  75. package/dist/elements/DatePicker/index.css +1 -1
  76. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  77. package/dist/elements/DeleteDocument/index.js +24 -2
  78. package/dist/elements/DeleteDocument/index.js.map +1 -1
  79. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  80. package/dist/elements/DeleteMany/index.js +4 -1
  81. package/dist/elements/DeleteMany/index.js.map +1 -1
  82. package/dist/elements/Drawer/index.css +10 -4
  83. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  84. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  85. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  86. package/dist/elements/DuplicateDocument/index.js +6 -1
  87. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  88. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  89. package/dist/elements/EditMany/DrawerContent.js +6 -3
  90. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  91. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  92. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  93. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  94. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
  95. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
  96. package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
  97. package/dist/elements/FileManager/FilePreview/index.css +3 -3
  98. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  99. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  100. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  101. package/dist/elements/FileManager/index.css +36 -23
  102. package/dist/elements/FileManager/index.d.ts +1 -1
  103. package/dist/elements/FileManager/index.d.ts.map +1 -1
  104. package/dist/elements/FileManager/index.js +15 -4
  105. package/dist/elements/FileManager/index.js.map +1 -1
  106. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
  107. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  108. package/dist/elements/Hierarchy/ColumnBrowser/index.js +4 -1
  109. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  110. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  111. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +4 -1
  112. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  113. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +2 -1
  114. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  115. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +2 -0
  116. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  117. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  118. package/dist/elements/Hierarchy/Modal/index.js +3 -0
  119. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  120. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  121. package/dist/elements/Hierarchy/MoveMany/index.js +4 -1
  122. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  123. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  124. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +3 -0
  125. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  126. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  127. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
  128. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  129. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  130. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  131. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  132. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
  133. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  134. package/dist/elements/Hierarchy/Tree/useChildren.js +4 -1
  135. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  136. package/dist/elements/IDLabel/index.css +6 -0
  137. package/dist/elements/IDLabel/index.d.ts +1 -1
  138. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  139. package/dist/elements/IDLabel/index.js +16 -21
  140. package/dist/elements/IDLabel/index.js.map +1 -1
  141. package/dist/elements/InputStepper/index.css +0 -1
  142. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  143. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  144. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  145. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  146. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  147. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +6 -2
  148. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  149. package/dist/elements/Locked/index.css +0 -8
  150. package/dist/elements/Locked/index.d.ts.map +1 -1
  151. package/dist/elements/Locked/index.js +70 -64
  152. package/dist/elements/Locked/index.js.map +1 -1
  153. package/dist/elements/MiniCarousel/index.css +39 -37
  154. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  155. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  156. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  157. package/dist/elements/Nav/SidebarTabs/index.css +0 -5
  158. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  159. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  160. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
  161. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  162. package/dist/elements/NavGroup/index.css +0 -1
  163. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  164. package/dist/elements/PermanentlyDeleteButton/index.js +4 -1
  165. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  166. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  167. package/dist/elements/Popup/index.js +1 -1
  168. package/dist/elements/Popup/index.js.map +1 -1
  169. package/dist/elements/PreviewButton/index.d.ts +1 -2
  170. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  171. package/dist/elements/PreviewButton/index.js +11 -5
  172. package/dist/elements/PreviewButton/index.js.map +1 -1
  173. package/dist/elements/PreviewSizes/index.css +8 -9
  174. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  175. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  176. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  177. package/dist/elements/PublishButton/index.js +6 -2
  178. package/dist/elements/PublishButton/index.js.map +1 -1
  179. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  180. package/dist/elements/PublishMany/DrawerContent.js +4 -1
  181. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  182. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  183. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  184. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  185. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  186. package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
  187. package/dist/elements/ReactSelect/index.css +0 -3
  188. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  189. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  190. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  191. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  192. package/dist/elements/RelationshipTable/index.css +0 -2
  193. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  194. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  195. package/dist/elements/RelationshipTable/index.js +41 -5
  196. package/dist/elements/RelationshipTable/index.js.map +1 -1
  197. package/dist/elements/RenderTitle/index.css +4 -0
  198. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  199. package/dist/elements/RenderTitle/index.js +18 -13
  200. package/dist/elements/RenderTitle/index.js.map +1 -1
  201. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  202. package/dist/elements/RestoreButton/index.js +4 -1
  203. package/dist/elements/RestoreButton/index.js.map +1 -1
  204. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  205. package/dist/elements/RestoreMany/index.js +3 -0
  206. package/dist/elements/RestoreMany/index.js.map +1 -1
  207. package/dist/elements/SelectRow/index.d.ts +4 -3
  208. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  209. package/dist/elements/SelectRow/index.js +10 -7
  210. package/dist/elements/SelectRow/index.js.map +1 -1
  211. package/dist/elements/SidebarToggle/index.css +0 -17
  212. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  213. package/dist/elements/SortColumn/index.js +42 -38
  214. package/dist/elements/SortColumn/index.js.map +1 -1
  215. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  216. package/dist/elements/SortHeader/index.js +29 -26
  217. package/dist/elements/SortHeader/index.js.map +1 -1
  218. package/dist/elements/StepNav/index.css +64 -14
  219. package/dist/elements/StepNav/index.d.ts.map +1 -1
  220. package/dist/elements/StepNav/index.js +145 -69
  221. package/dist/elements/StepNav/index.js.map +1 -1
  222. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  223. package/dist/elements/Table/DefaultCell/index.js +3 -11
  224. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  225. package/dist/elements/Table/OrderableRow.d.ts +3 -1
  226. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  227. package/dist/elements/Table/OrderableRow.js +17 -1
  228. package/dist/elements/Table/OrderableRow.js.map +1 -1
  229. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  230. package/dist/elements/Table/OrderableTable.js +22 -3
  231. package/dist/elements/Table/OrderableTable.js.map +1 -1
  232. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  233. package/dist/elements/Table/RelationshipProvider/index.js +29 -23
  234. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  235. package/dist/elements/Table/index.css +1 -0
  236. package/dist/elements/TableSection/index.css +0 -1
  237. package/dist/elements/Thumbnail/index.d.ts +1 -1
  238. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  239. package/dist/elements/Thumbnail/index.js.map +1 -1
  240. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  241. package/dist/elements/TimezonePicker/index.js +5 -1
  242. package/dist/elements/TimezonePicker/index.js.map +1 -1
  243. package/dist/elements/Tooltip/index.css +15 -34
  244. package/dist/elements/Tooltip/index.d.ts +11 -3
  245. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  246. package/dist/elements/Tooltip/index.js +151 -85
  247. package/dist/elements/Tooltip/index.js.map +1 -1
  248. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  249. package/dist/elements/UnpublishButton/index.js +4 -1
  250. package/dist/elements/UnpublishButton/index.js.map +1 -1
  251. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  252. package/dist/elements/UnpublishMany/DrawerContent.js +4 -1
  253. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  254. package/dist/elements/Upload/index.css +0 -5
  255. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  256. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +3 -0
  257. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  258. package/dist/exports/client/index.d.ts +8 -1
  259. package/dist/exports/client/index.d.ts.map +1 -1
  260. package/dist/exports/client/index.js +1 -1
  261. package/dist/exports/client/index.js.map +3 -3
  262. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  263. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  264. package/dist/fields/Array/ArrayRow.js +99 -160
  265. package/dist/fields/Array/ArrayRow.js.map +1 -1
  266. package/dist/fields/Array/index.d.ts.map +1 -1
  267. package/dist/fields/Array/index.js +38 -10
  268. package/dist/fields/Array/index.js.map +1 -1
  269. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  270. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  271. package/dist/fields/Blocks/BlockRow.js +136 -195
  272. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  273. package/dist/fields/Blocks/RowActions.d.ts +3 -0
  274. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  275. package/dist/fields/Blocks/RowActions.js +26 -20
  276. package/dist/fields/Blocks/RowActions.js.map +1 -1
  277. package/dist/fields/Blocks/index.d.ts.map +1 -1
  278. package/dist/fields/Blocks/index.js +38 -10
  279. package/dist/fields/Blocks/index.js.map +1 -1
  280. package/dist/fields/Checkbox/Input.d.ts +2 -0
  281. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  282. package/dist/fields/Checkbox/Input.js +32 -26
  283. package/dist/fields/Checkbox/Input.js.map +1 -1
  284. package/dist/fields/Checkbox/index.css +37 -73
  285. package/dist/fields/FieldError/index.css +0 -9
  286. package/dist/fields/FieldError/index.d.ts.map +1 -1
  287. package/dist/fields/FieldError/index.js +19 -9
  288. package/dist/fields/FieldError/index.js.map +1 -1
  289. package/dist/fields/Join/index.css +9 -0
  290. package/dist/fields/Join/index.d.ts.map +1 -1
  291. package/dist/fields/Join/index.js +13 -9
  292. package/dist/fields/Join/index.js.map +1 -1
  293. package/dist/fields/RadioGroup/index.css +0 -7
  294. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  295. package/dist/fields/Relationship/Input.js +37 -15
  296. package/dist/fields/Relationship/Input.js.map +1 -1
  297. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  298. package/dist/fields/Slug/index.css +0 -1
  299. package/dist/fields/Slug/index.d.ts.map +1 -1
  300. package/dist/fields/Slug/index.js +75 -111
  301. package/dist/fields/Slug/index.js.map +1 -1
  302. package/dist/fields/Upload/Input.d.ts.map +1 -1
  303. package/dist/fields/Upload/Input.js +4 -1
  304. package/dist/fields/Upload/Input.js.map +1 -1
  305. package/dist/fields/Upload/index.css +19 -4
  306. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  307. package/dist/forms/Form/fieldReducer.js +3 -1
  308. package/dist/forms/Form/fieldReducer.js.map +1 -1
  309. package/dist/forms/Form/index.d.ts.map +1 -1
  310. package/dist/forms/Form/index.js +12 -15
  311. package/dist/forms/Form/index.js.map +1 -1
  312. package/dist/forms/Form/types.d.ts +1 -1
  313. package/dist/forms/Form/types.d.ts.map +1 -1
  314. package/dist/forms/Form/types.js.map +1 -1
  315. package/dist/forms/RenderFields/index.css +16 -2
  316. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  317. package/dist/forms/WatchChildErrors/index.js +2 -2
  318. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  319. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  320. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  321. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  322. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
  323. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  324. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  325. package/dist/hooks/usePayloadAPI.js +44 -40
  326. package/dist/hooks/usePayloadAPI.js.map +1 -1
  327. package/dist/icons/Edit/index.d.ts +0 -1
  328. package/dist/icons/Edit/index.d.ts.map +1 -1
  329. package/dist/icons/Edit/index.js +4 -4
  330. package/dist/icons/Edit/index.js.map +1 -1
  331. package/dist/layouts/Root/index.d.ts +1 -1
  332. package/dist/layouts/Root/index.d.ts.map +1 -1
  333. package/dist/layouts/Root/index.js +8 -2
  334. package/dist/layouts/Root/index.js.map +1 -1
  335. package/dist/providers/Actions/index.d.ts +1 -0
  336. package/dist/providers/Actions/index.d.ts.map +1 -1
  337. package/dist/providers/Actions/index.js +43 -11
  338. package/dist/providers/Actions/index.js.map +1 -1
  339. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  340. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  341. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  342. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  343. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  344. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  345. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  346. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  347. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  348. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  349. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  350. package/dist/providers/Auth/authSessionRequests.js +119 -0
  351. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  352. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  353. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  354. package/dist/providers/Auth/index.d.ts +2 -56
  355. package/dist/providers/Auth/index.d.ts.map +1 -1
  356. package/dist/providers/Auth/index.js +283 -135
  357. package/dist/providers/Auth/index.js.map +1 -1
  358. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  359. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  360. package/dist/providers/Auth/sessionActivity.js +49 -0
  361. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  362. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  363. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  364. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  365. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  366. package/dist/providers/Auth/sessionTiming.js +18 -0
  367. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  368. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  369. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  370. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  371. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  372. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  373. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  374. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  375. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  376. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  377. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  378. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  379. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  380. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  381. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  382. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  383. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  384. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  385. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  386. package/dist/providers/Auth/types.d.ts +65 -0
  387. package/dist/providers/Auth/types.d.ts.map +1 -0
  388. package/dist/providers/Auth/types.js +2 -0
  389. package/dist/providers/Auth/types.js.map +1 -0
  390. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  391. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  392. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  393. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  394. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  395. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  396. package/dist/providers/Branch/index.d.ts +62 -0
  397. package/dist/providers/Branch/index.d.ts.map +1 -0
  398. package/dist/providers/Branch/index.js +192 -0
  399. package/dist/providers/Branch/index.js.map +1 -0
  400. package/dist/providers/Branch/index.server.d.ts +14 -0
  401. package/dist/providers/Branch/index.server.d.ts.map +1 -0
  402. package/dist/providers/Branch/index.server.js +80 -0
  403. package/dist/providers/Branch/index.server.js.map +1 -0
  404. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  405. package/dist/providers/DocumentInfo/index.js +5 -1
  406. package/dist/providers/DocumentInfo/index.js.map +1 -1
  407. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +2 -1
  408. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  409. package/dist/providers/DocumentInfo/useGetDocPermissions.js +3 -1
  410. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  411. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  412. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  413. package/dist/providers/DocumentTitle/index.js +2 -0
  414. package/dist/providers/DocumentTitle/index.js.map +1 -1
  415. package/dist/providers/Embed/index.d.ts +24 -0
  416. package/dist/providers/Embed/index.d.ts.map +1 -0
  417. package/dist/providers/Embed/index.js +105 -0
  418. package/dist/providers/Embed/index.js.map +1 -0
  419. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  420. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  421. package/dist/providers/FormErrorHandler/index.js +6 -0
  422. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  423. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  424. package/dist/providers/Hierarchy/index.js +4 -1
  425. package/dist/providers/Hierarchy/index.js.map +1 -1
  426. package/dist/providers/Locale/index.d.ts.map +1 -1
  427. package/dist/providers/Locale/index.js +41 -36
  428. package/dist/providers/Locale/index.js.map +1 -1
  429. package/dist/providers/Root/index.d.ts +1 -0
  430. package/dist/providers/Root/index.d.ts.map +1 -1
  431. package/dist/providers/Root/index.js +37 -31
  432. package/dist/providers/Root/index.js.map +1 -1
  433. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  434. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  435. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  436. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  437. package/dist/providers/RouteTransition/index.d.ts +2 -0
  438. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  439. package/dist/providers/RouteTransition/index.js +42 -14
  440. package/dist/providers/RouteTransition/index.js.map +1 -1
  441. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  442. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  443. package/dist/providers/SidebarTabs/index.js.map +1 -1
  444. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  445. package/dist/providers/TableColumns/buildColumnState/index.js +1 -1
  446. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  447. package/dist/providers/TableColumns/buildColumnState/index.spec.js +40 -0
  448. package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +1 -0
  449. package/dist/providers/Theme/index.d.ts +3 -0
  450. package/dist/providers/Theme/index.d.ts.map +1 -1
  451. package/dist/providers/Theme/index.js +107 -95
  452. package/dist/providers/Theme/index.js.map +1 -1
  453. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  454. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  455. package/dist/providers/UploadHandlers/index.js +102 -42
  456. package/dist/providers/UploadHandlers/index.js.map +1 -1
  457. package/dist/styles.css +13 -10
  458. package/dist/templates/Default/index.d.ts +1 -0
  459. package/dist/templates/Default/index.d.ts.map +1 -1
  460. package/dist/templates/Default/index.js +45 -39
  461. package/dist/templates/Default/index.js.map +1 -1
  462. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  463. package/dist/utilities/combineFieldLabel.js +5 -1
  464. package/dist/utilities/combineFieldLabel.js.map +1 -1
  465. package/dist/utilities/generateFieldID.d.ts +1 -1
  466. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  467. package/dist/utilities/generateFieldID.js +2 -2
  468. package/dist/utilities/generateFieldID.js.map +1 -1
  469. package/dist/utilities/getRequestBranch.d.ts +18 -0
  470. package/dist/utilities/getRequestBranch.d.ts.map +1 -0
  471. package/dist/utilities/getRequestBranch.js +32 -0
  472. package/dist/utilities/getRequestBranch.js.map +1 -0
  473. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  474. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  475. package/dist/utilities/getRequestEmbed.js +10 -0
  476. package/dist/utilities/getRequestEmbed.js.map +1 -0
  477. package/dist/utilities/handleServerFunctions.d.ts +32 -8
  478. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  479. package/dist/utilities/handleServerFunctions.js +17 -37
  480. package/dist/utilities/handleServerFunctions.js.map +1 -1
  481. package/dist/utilities/initReq.d.ts.map +1 -1
  482. package/dist/utilities/initReq.js +8 -0
  483. package/dist/utilities/initReq.js.map +1 -1
  484. package/dist/utilities/matchesSearchQuery.d.ts +12 -0
  485. package/dist/utilities/matchesSearchQuery.d.ts.map +1 -0
  486. package/dist/utilities/matchesSearchQuery.js +23 -0
  487. package/dist/utilities/matchesSearchQuery.js.map +1 -0
  488. package/dist/{elements/ColumnSelection/matchesColumnSearch.spec.js → utilities/matchesSearchQuery.spec.js} +29 -29
  489. package/dist/utilities/matchesSearchQuery.spec.js.map +1 -0
  490. package/dist/utilities/renderTable.d.ts.map +1 -1
  491. package/dist/utilities/renderTable.js +18 -2
  492. package/dist/utilities/renderTable.js.map +1 -1
  493. package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
  494. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  495. package/dist/utilities/serverFunctionRegistry.js +25 -7
  496. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  497. package/dist/utilities/slugify.d.ts.map +1 -1
  498. package/dist/utilities/slugify.js +49 -6
  499. package/dist/utilities/slugify.js.map +1 -1
  500. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  501. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  502. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  503. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  504. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  505. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  506. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  507. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  508. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  509. package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
  510. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  511. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  512. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
  513. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  514. package/dist/views/Edit/index.css +61 -53
  515. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  516. package/dist/views/HierarchyList/HierarchyTable/index.js +6 -2
  517. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  518. package/dist/views/HierarchyList/index.css +1 -1
  519. package/dist/views/List/ListHeader/index.d.ts +1 -10
  520. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  521. package/dist/views/List/ListHeader/index.js +1 -3
  522. package/dist/views/List/ListHeader/index.js.map +1 -1
  523. package/dist/views/List/index.client.d.ts.map +1 -1
  524. package/dist/views/List/index.client.js +0 -14
  525. package/dist/views/List/index.client.js.map +1 -1
  526. package/dist/views/List/index.css +6 -1
  527. package/dist/views/List/index.d.ts.map +1 -1
  528. package/dist/views/List/index.js +4 -0
  529. package/dist/views/List/index.js.map +1 -1
  530. package/dist/views/Logout/index.d.ts.map +1 -1
  531. package/dist/views/Logout/index.js +11 -0
  532. package/dist/views/Logout/index.js.map +1 -1
  533. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  534. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  535. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  536. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  537. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  538. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  539. package/dist/views/Root/index.d.ts +12 -1
  540. package/dist/views/Root/index.d.ts.map +1 -1
  541. package/dist/views/Root/index.js +11 -3
  542. package/dist/views/Root/index.js.map +1 -1
  543. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  544. package/dist/views/Version/Restore/index.js +6 -3
  545. package/dist/views/Version/Restore/index.js.map +1 -1
  546. package/package.json +5 -10
  547. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +0 -10
  548. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +0 -1
  549. package/dist/elements/ColumnSelection/matchesColumnSearch.js +0 -21
  550. package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +0 -1
  551. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js.map +0 -1
  552. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  553. package/dist/scss/app.scss +0 -183
  554. package/dist/scss/colors.scss +0 -191
  555. package/dist/scss/custom.css +0 -1
  556. package/dist/scss/queries.scss +0 -27
  557. package/dist/scss/styles.scss +0 -9
  558. package/dist/scss/svg.scss +0 -10
  559. package/dist/scss/toastify.scss +0 -61
  560. package/dist/scss/vars.scss +0 -192
  561. package/dist/scss/z-index.scss +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","getBlockSelect","stripUnselectedFields","validateBlocksFilterOptions","deepCopyObjectSimple","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","fieldIsID","fieldIsLocalized","tabHasName","resolveFilterOptions","isRowCollapsed","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","blockData","clientFieldSchemaMap","collectionSlug","data","field","fieldSchemaMap","filter","forceFullValue","fullData","globalSlug","includeSchema","indexPath","mockRSCs","omitParents","operation","parentPath","parentPermissions","parentSchemaPath","passesCondition","path","preferences","previousFormState","readOnly","renderAllFields","renderFieldFn","req","schemaPath","select","selectMode","skipConditionChecks","skipValidation","state","console","warn","fieldPermissions","fieldState","lastRenderedPath","addedByServer","fieldSchema","isPresentationalWithSubFields","type","name","undefined","value","initialValue","hasPermission","read","access","collection","payload","collections","config","global","globals","find","g","slug","siblingData","validate","validationResult","jsonError","JSON","parse","e","event","previousValue","err","logger","error","msg","errorPath","errorPaths","includes","push","valid","errorMessage","arrayValue","Array","isArray","arraySelect","promises","rows","reduce","acc","row","rowIndex","rowPath","toHexString","idKey","fields","localized","parentIndexPath","parentPassesCondition","permissions","previousRow","prevRow","newRow","isLoading","isCollapsed","collapsedPrefs","collapsed","Promise","all","length","disableFormData","blocksValue","filterOptionsValidationResult","filterOptions","blocksFilterOptions","allowedBlockSlugs","rowMetadata","i","blockTypeToMatch","blockType","block","blocks","Error","blockSelect","blockSelectMode","invalidBlockSlugs","t","blockField","fieldKey","blockNameKey","blockName","groupSelect","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","selectFilterOptions","options","isNamedTab","shouldContinue","siblingDoc","childPermissions","tabSelect","tabPermissions","tabs","tab","fieldConfig","get","endsWith","formState","previousFieldState"],"sources":["../../../src/forms/fieldSchemasToFormState/addFieldStatePromise.ts"],"sourcesContent":["import type {\n BuildFormStateArgs,\n ClientFieldSchemaMap,\n Data,\n DocumentPreferences,\n Field,\n FieldSchemaMap,\n FieldState,\n FlattenedBlock,\n FormState,\n FormStateWithoutComponents,\n PayloadRequest,\n Row,\n SanitizedFieldPermissions,\n SanitizedFieldsPermissions,\n SelectMode,\n SelectType,\n TabAsField,\n Validate,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { getBlockSelect, stripUnselectedFields, validateBlocksFilterOptions } from 'payload'\nimport {\n deepCopyObjectSimple,\n fieldAffectsData,\n fieldHasSubFields,\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsLocalized,\n tabHasName,\n} from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { resolveFilterOptions } from '../../utilities/resolveFilterOptions.js'\nimport { isRowCollapsed } from './isRowCollapsed.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (fieldPath: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n /**\n * Data of the nearest parent block, or undefined\n */\n blockData: Data | undefined\n clientFieldSchemaMap?: ClientFieldSchemaMap\n collectionSlug?: string\n data: Data\n field: Field | TabAsField\n fieldIndex: number\n fieldSchemaMap: FieldSchemaMap\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n globalSlug?: string\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n indexPath: string\n mockRSCs?: BuildFormStateArgs['mockRSCs']\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n parentIndexPath: string\n parentPath: string\n parentPermissions: SanitizedFieldsPermissions\n parentSchemaPath: string\n passesCondition: boolean\n path: string\n preferences: DocumentPreferences\n previousFormState: FormState\n readOnly?: boolean\n renderAllFields: boolean\n renderFieldFn: RenderFieldMethod\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n schemaPath: string\n select?: SelectType\n selectMode?: SelectMode\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormStateWithoutComponents\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n field,\n fieldSchemaMap,\n filter,\n forceFullValue = false,\n fullData,\n globalSlug,\n includeSchema = false,\n indexPath,\n mockRSCs,\n omitParents = false,\n operation,\n parentPath,\n parentPermissions,\n parentSchemaPath,\n passesCondition,\n path,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n schemaPath,\n select,\n selectMode,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (!args.clientFieldSchemaMap && args.renderFieldFn) {\n // eslint-disable-next-line no-console\n console.warn(\n 'clientFieldSchemaMap is not passed to addFieldStatePromise - this will reduce performance',\n )\n }\n\n let fieldPermissions: SanitizedFieldPermissions = true\n\n const fieldState: FieldState = {}\n\n const lastRenderedPath = previousFormState?.[path]?.lastRenderedPath\n\n // Append only if true to avoid sending '$undefined' through the network\n if (lastRenderedPath) {\n fieldState.lastRenderedPath = lastRenderedPath\n }\n\n // If we're rendering all fields, no need to flag this as added by server\n const addedByServer = !renderAllFields && !previousFormState?.[path]\n\n // Append only if true to avoid sending '$undefined' through the network\n if (addedByServer) {\n fieldState.addedByServer = true\n }\n\n // Append only if true to avoid sending '$undefined' through the network\n if (passesCondition === false) {\n fieldState.passesCondition = false\n }\n\n // Append only if true to avoid sending '$undefined' through the network\n if (includeSchema) {\n fieldState.fieldSchema = field\n }\n\n // Short-circuit hidden fields to prevent recursing and rendering. Two exclusions:\n // - `tab`: visibility is keyed by `field.id` (not `path`); the tab branch owns that write.\n // - presentational containers (row, collapsible, unnamed group): they hold no value, so\n // returning here drops their nested fields' values.\n const isPresentationalWithSubFields = fieldHasSubFields(field) && !fieldAffectsData(field)\n\n if (passesCondition === false && field.type !== 'tab' && !isPresentationalWithSubFields) {\n if (fieldAffectsData(field) && data?.[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n return\n }\n\n if (fieldAffectsData(field) && !fieldIsHiddenOrDisabled(field) && field.type !== 'tab') {\n fieldPermissions =\n parentPermissions === true\n ? parentPermissions\n : deepCopyObjectSimple(parentPermissions?.[field.name])\n\n let hasPermission: boolean =\n fieldPermissions === true || deepCopyObjectSimple(fieldPermissions?.read)\n\n if (typeof field?.access?.read === 'function') {\n const collection = collectionSlug\n ? (req.payload.collections[collectionSlug]?.config ?? null)\n : null\n const global = globalSlug\n ? (req.payload.globals.config.find((g) => g.slug === globalSlug) ?? null)\n : null\n\n hasPermission = await field.access.read({\n id,\n blockData,\n data: fullData,\n req,\n siblingData: data,\n ...(collection ? { collection } : { global }),\n })\n } else {\n hasPermission = true\n }\n\n if (!hasPermission) {\n return\n }\n\n const validate: Validate = 'validate' in field ? field.validate : undefined\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name])\n } catch (e) {\n jsonError = e\n }\n }\n\n try {\n validationResult = await validate(data?.[field.name], {\n ...field,\n id,\n blockData,\n collectionSlug,\n data: fullData,\n event: 'onChange',\n // @AlessioGr added `jsonError` in https://github.com/payloadcms/payload/commit/c7ea62a39473408c3ea912c4fbf73e11be4b538d\n // @ts-expect-error-next-line\n jsonError,\n operation,\n preferences,\n previousValue: previousFormState?.[path]?.initialValue,\n req,\n siblingData: data,\n })\n } catch (err) {\n validationResult = `Error validating field at path: ${path}`\n\n req.payload.logger.error({\n err,\n msg: validationResult,\n })\n }\n }\n\n /**\n * This function adds the error **path** to the current field and all its parents. If a field is invalid, all its parents are also invalid.\n * It does not add the error **message** to the current field, as that shouldn't apply to all parents.\n * This is done separately below.\n */\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths) {\n fieldState.errorPaths = []\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(path)\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const arraySelect = select?.[field.name]\n\n const { promises, rows } = arrayValue.reduce(\n (acc, row, rowIndex: number) => {\n const rowPath = path + '.' + rowIndex\n\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n const idKey = rowPath + '.id'\n\n state[idKey] = {\n initialValue: row.id,\n value: row.id,\n }\n\n if (includeSchema) {\n state[idKey].fieldSchema = field.fields.find((field) => fieldIsID(field))\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: row,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: rowPath,\n parentSchemaPath: schemaPath,\n permissions:\n fieldPermissions === true ? fieldPermissions : fieldPermissions?.fields || {},\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof arraySelect === 'object' ? arraySelect : undefined,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n if (!acc.rows) {\n acc.rows = []\n }\n\n // First, check if `previousFormState` has a matching row\n const previousRow: Row = (previousFormState?.[path]?.rows || []).find(\n (prevRow) => prevRow.id === row.id,\n )\n\n const newRow: Row = {\n id: row.id,\n isLoading: false,\n }\n\n if (previousRow?.lastRenderedPath) {\n newRow.lastRenderedPath = previousRow.lastRenderedPath\n }\n\n // add addedByServer flag\n if (!previousRow) {\n newRow.addedByServer = true\n }\n\n const isCollapsed = isRowCollapsed({\n collapsedPrefs: preferences?.fields?.[path]?.collapsed,\n field,\n previousRow,\n row,\n })\n\n if (isCollapsed) {\n newRow.collapsed = true\n }\n\n acc.rows.push(newRow)\n\n return acc\n },\n {\n promises: [],\n rows: [],\n },\n )\n\n // Wait for all promises and update fields with the results\n await Promise.all(promises)\n\n if (rows) {\n fieldState.rows = rows\n }\n\n // Add values to field state\n if (data[field.name] !== null) {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n // Handle blocks filterOptions\n let filterOptionsValidationResult: Awaited<\n ReturnType<typeof validateBlocksFilterOptions>\n > | null = null\n if (field.filterOptions) {\n filterOptionsValidationResult = await validateBlocksFilterOptions({\n id,\n data: fullData,\n filterOptions: field.filterOptions,\n req,\n siblingData: data,\n value: data[field.name],\n })\n\n fieldState.blocksFilterOptions = filterOptionsValidationResult.allowedBlockSlugs\n }\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i: number) => {\n const blockTypeToMatch: string = row.blockType\n\n const block =\n req.payload.blocks[blockTypeToMatch] ??\n (field.blocks.find(\n (blockType) => typeof blockType !== 'string' && blockType.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (!block) {\n throw new Error(\n `Block with type \"${row.blockType}\" was found in block data, but no block with that type is defined in the config for field with schema path ${schemaPath}.`,\n )\n }\n\n const { blockSelect, blockSelectMode } = getBlockSelect({\n block,\n select: select?.[field.name],\n selectMode,\n })\n\n const rowPath = path + '.' + i\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n // Handle block `id` field\n const idKey = rowPath + '.id'\n\n state[idKey] = {\n initialValue: row.id,\n value: row.id,\n }\n\n // If the blocks field fails filterOptions validation, add error paths to the individual blocks that are no longer allowed\n if (\n filterOptionsValidationResult?.invalidBlockSlugs?.length &&\n filterOptionsValidationResult.invalidBlockSlugs.includes(row.blockType)\n ) {\n state[idKey].errorMessage = req.t('validation:invalidBlock', {\n block: row.blockType,\n })\n state[idKey].valid = false\n addErrorPathToParent(idKey)\n\n // If the error is due to block filterOptions, we want the blocks field (fieldState) to include all the filterOptions-related\n // error paths for each sub-block, not for the validation result of the block itself. Otherwise, say there are 2 invalid blocks,\n // the blocks field will have 3 instead of 2 error paths - one for itself, and one for each invalid block.\n // Instead, we want only the 2 error paths for the individual, invalid blocks.\n fieldState.errorPaths = fieldState.errorPaths.filter(\n (errorPath) => errorPath !== path,\n )\n }\n\n if (includeSchema) {\n state[idKey].fieldSchema = includeSchema\n ? block.fields.find((blockField) => fieldIsID(blockField))\n : undefined\n }\n\n // Handle `blockType` field\n const fieldKey = rowPath + '.blockType'\n\n state[fieldKey] = {\n initialValue: row.blockType,\n value: row.blockType,\n }\n\n if (addedByServer) {\n state[fieldKey].addedByServer = addedByServer\n }\n\n if (includeSchema) {\n state[fieldKey].fieldSchema = block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n }\n\n // Handle `blockName` field\n const blockNameKey = rowPath + '.blockName'\n\n state[blockNameKey] = {}\n\n if (row.blockName) {\n state[blockNameKey].initialValue = row.blockName\n state[blockNameKey].value = row.blockName\n }\n\n if (includeSchema) {\n state[blockNameKey].fieldSchema = block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData: row,\n clientFieldSchemaMap,\n collectionSlug,\n data: row,\n fields: block.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: rowPath,\n parentSchemaPath: schemaPath + '.' + block.slug,\n permissions:\n fieldPermissions === true\n ? fieldPermissions\n : parentPermissions?.[field.name]?.blocks?.[block.slug] === true\n ? true\n : parentPermissions?.[field.name]?.blocks?.[block.slug]?.fields || {},\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof blockSelect === 'object' ? blockSelect : undefined,\n selectMode: blockSelectMode,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n // First, check if `previousFormState` has a matching row\n const previousRow: Row = (previousFormState?.[path]?.rows || []).find(\n (prevRow) => prevRow.id === row.id,\n )\n\n const newRow: Row = {\n id: row.id,\n blockType: row.blockType,\n isLoading: false,\n }\n\n if (previousRow?.lastRenderedPath) {\n newRow.lastRenderedPath = previousRow.lastRenderedPath\n }\n\n acc.rowMetadata.push(newRow)\n\n const isCollapsed = isRowCollapsed({\n collapsedPrefs: preferences?.fields?.[path]?.collapsed,\n field,\n previousRow,\n row,\n })\n\n if (isCollapsed) {\n acc.rowMetadata[acc.rowMetadata.length - 1].collapsed = true\n }\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[path] = fieldState\n }\n\n const groupSelect = select?.[field.name]\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: data?.[field.name] || {},\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions:\n typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.fields,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof groupSelect === 'object' ? groupSelect : undefined,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n\n case 'relationship':\n case 'upload': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await resolveFilterOptions(field.filterOptions, {\n id,\n blockData,\n data: fullData,\n relationTo: field.relationTo,\n req,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'select': {\n if (typeof field.filterOptions === 'function') {\n fieldState.selectFilterOptions = field.filterOptions({\n data: fullData,\n options: field.options,\n req,\n siblingData: data,\n })\n }\n\n if (data[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n\n default: {\n if (data[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n // Add field to state\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n // Handle field types that do not use names (row, collapsible, unnamed group etc)\n\n if (!filter || filter(args)) {\n state[path] = {\n disableFormData: true,\n }\n\n // Presentational containers are hidden client-side via `withCondition`, which reads\n // `passesCondition` from their own state entry. Must be set here since these fields\n // are excluded from the short-circuit above (which would otherwise carry the flag).\n if (passesCondition === false) {\n state[path].passesCondition = false\n }\n }\n\n await iterateFields({\n id,\n mockRSCs,\n select,\n selectMode,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: fieldIsLocalized(field) || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: parentPermissions, // TODO: Verify this is correct\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tab') {\n const isNamedTab = tabHasName(field)\n\n if (isNamedTab) {\n const shouldContinue = stripUnselectedFields({\n field: { ...field, type: 'tab' },\n select,\n selectMode,\n siblingDoc: data?.[field.name] || {},\n })\n\n if (!shouldContinue) {\n return\n }\n }\n\n // Tab visibility on the client is keyed by `field.id`, not `path` (like all other fields).\n if (field?.id) {\n state[field.id] = {\n passesCondition,\n }\n\n // Flag newly added tab entries so the client accepts them during merge.\n // Otherwise, tabs revealed after a hidden ancestor becomes visible would never make it into client form state.\n if (!renderAllFields && !previousFormState?.[field.id]) {\n state[field.id].addedByServer = true\n }\n }\n\n if (!passesCondition) {\n return\n }\n\n let childPermissions: SanitizedFieldsPermissions\n let tabSelect: SelectType | undefined\n\n if (isNamedTab) {\n if (parentPermissions === true) {\n childPermissions = true\n } else {\n const tabPermissions = parentPermissions?.[field.name]\n childPermissions = tabPermissions === true ? true : tabPermissions?.fields\n }\n\n if (typeof select?.[field.name] === 'object') {\n tabSelect = select?.[field.name] as SelectType\n }\n } else {\n childPermissions = parentPermissions\n tabSelect = select\n }\n\n return iterateFields({\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: isNamedTab ? data?.[field.name] || {} : data,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: childPermissions,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: tabSelect,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n if (!filter || filter(args)) {\n state[path] = {\n disableFormData: true,\n }\n }\n\n return iterateFields({\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: fieldIsLocalized(field) || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: parentPermissions,\n preferences,\n previousFormState,\n renderAllFields,\n renderFieldFn,\n req,\n select,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[path] = fieldState\n state[path].disableFormData = true\n }\n }\n\n if (renderFieldFn && !fieldIsHiddenOrDisabled(field)) {\n const fieldConfig = fieldSchemaMap.get(schemaPath)\n\n if (!fieldConfig && !mockRSCs) {\n if (schemaPath.endsWith('.blockType')) {\n return\n } else {\n throw new Error(`Field config not found for ${schemaPath}`)\n }\n }\n\n if (!state[path]) {\n // Some fields (ie `Tab`) do not live in form state\n // therefore we cannot attach customComponents to them\n return\n }\n\n if (addedByServer) {\n state[path].addedByServer = addedByServer\n }\n\n renderFieldFn({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data: fullData,\n fieldConfig: fieldConfig as Field,\n fieldSchemaMap,\n fieldState: state[path],\n formState: state,\n indexPath,\n lastRenderedPath,\n mockRSCs,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions: fieldPermissions,\n preferences,\n previousFieldState: previousFormState?.[path],\n readOnly,\n renderAllFields,\n req,\n schemaPath,\n siblingData: data,\n })\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","getBlockSelect","stripUnselectedFields","validateBlocksFilterOptions","deepCopyObjectSimple","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","fieldIsID","fieldIsLocalized","tabHasName","resolveFilterOptions","isRowCollapsed","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","blockData","clientFieldSchemaMap","collectionSlug","data","field","fieldSchemaMap","filter","forceFullValue","fullData","globalSlug","includeSchema","indexPath","mockRSCs","omitParents","operation","parentPath","parentPermissions","parentSchemaPath","passesCondition","path","preferences","previousFormState","readOnly","renderAllFields","renderFieldFn","req","schemaPath","select","selectMode","skipConditionChecks","skipValidation","state","console","warn","fieldPermissions","fieldState","lastRenderedPath","addedByServer","fieldSchema","isPresentationalWithSubFields","type","name","undefined","value","initialValue","hasPermission","read","access","collection","payload","collections","config","global","globals","find","g","slug","siblingData","validate","validationResult","jsonError","JSON","parse","e","event","previousValue","err","logger","error","msg","errorPath","errorPaths","includes","push","valid","errorMessage","arrayValue","Array","isArray","arraySelect","promises","rows","reduce","acc","row","rowIndex","rowPath","toHexString","idKey","fields","localized","parentIndexPath","parentPassesCondition","permissions","previousRow","prevRow","newRow","isLoading","isCollapsed","collapsedPrefs","collapsed","Promise","all","length","disableFormData","blocksValue","filterOptionsValidationResult","filterOptions","blocksFilterOptions","allowedBlockSlugs","rowMetadata","i","blockTypeToMatch","blockType","block","blocks","Error","blockSelect","blockSelectMode","invalidBlockSlugs","t","blockField","fieldKey","blockNameKey","blockName","groupSelect","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","selectFilterOptions","options","isNamedTab","shouldContinue","siblingDoc","childPermissions","tabSelect","tabPermissions","tabs","tab","fieldConfig","get","endsWith","formState","previousFieldState"],"sources":["../../../src/forms/fieldSchemasToFormState/addFieldStatePromise.ts"],"sourcesContent":["import type {\n BuildFormStateArgs,\n ClientFieldSchemaMap,\n Data,\n DocumentPreferences,\n Field,\n FieldSchemaMap,\n FieldState,\n FlattenedBlock,\n FormState,\n FormStateWithoutComponents,\n PayloadRequest,\n Row,\n SanitizedFieldPermissions,\n SanitizedFieldsPermissions,\n SelectMode,\n SelectType,\n TabAsField,\n Validate,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { getBlockSelect, stripUnselectedFields, validateBlocksFilterOptions } from 'payload'\nimport {\n deepCopyObjectSimple,\n fieldAffectsData,\n fieldHasSubFields,\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsLocalized,\n tabHasName,\n} from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { resolveFilterOptions } from '../../utilities/resolveFilterOptions.js'\nimport { isRowCollapsed } from './isRowCollapsed.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (fieldPath: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n /**\n * Data of the nearest parent block, or undefined\n */\n blockData: Data | undefined\n clientFieldSchemaMap?: ClientFieldSchemaMap\n collectionSlug?: string\n data: Data\n field: Field | TabAsField\n fieldIndex: number\n fieldSchemaMap: FieldSchemaMap\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n globalSlug?: string\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n indexPath: string\n mockRSCs?: BuildFormStateArgs['mockRSCs']\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n parentIndexPath: string\n parentPath: string\n parentPermissions: SanitizedFieldsPermissions\n parentSchemaPath: string\n passesCondition: boolean\n path: string\n preferences: DocumentPreferences\n previousFormState: FormState\n readOnly?: boolean\n renderAllFields: boolean\n renderFieldFn: RenderFieldMethod\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n schemaPath: string\n select?: SelectType\n selectMode?: SelectMode\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormStateWithoutComponents\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n field,\n fieldSchemaMap,\n filter,\n forceFullValue = false,\n fullData,\n globalSlug,\n includeSchema = false,\n indexPath,\n mockRSCs,\n omitParents = false,\n operation,\n parentPath,\n parentPermissions,\n parentSchemaPath,\n passesCondition,\n path,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n schemaPath,\n select,\n selectMode,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (!args.clientFieldSchemaMap && args.renderFieldFn) {\n // eslint-disable-next-line no-console\n console.warn(\n 'clientFieldSchemaMap is not passed to addFieldStatePromise - this will reduce performance',\n )\n }\n\n let fieldPermissions: SanitizedFieldPermissions = true\n\n const fieldState: FieldState = {}\n\n const lastRenderedPath = previousFormState?.[path]?.lastRenderedPath\n\n // Append only if true to avoid sending '$undefined' through the network\n if (lastRenderedPath) {\n fieldState.lastRenderedPath = lastRenderedPath\n }\n\n // If we're rendering all fields, no need to flag this as added by server\n const addedByServer = !renderAllFields && !previousFormState?.[path]\n\n // Append only if true to avoid sending '$undefined' through the network\n if (addedByServer) {\n fieldState.addedByServer = true\n }\n\n // Append only if true to avoid sending '$undefined' through the network\n if (passesCondition === false) {\n fieldState.passesCondition = false\n }\n\n // Append only if true to avoid sending '$undefined' through the network\n if (includeSchema) {\n fieldState.fieldSchema = field\n }\n\n // Short-circuit hidden fields to prevent recursing and rendering. Two exclusions:\n // - `tab`: visibility is keyed by `field.id` (not `path`); the tab branch owns that write.\n // - presentational containers (row, collapsible, unnamed group): they hold no value, so\n // returning here drops their nested fields' values.\n const isPresentationalWithSubFields = fieldHasSubFields(field) && !fieldAffectsData(field)\n\n if (passesCondition === false && field.type !== 'tab' && !isPresentationalWithSubFields) {\n if (fieldAffectsData(field) && data?.[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n return\n }\n\n if (fieldAffectsData(field) && !fieldIsHiddenOrDisabled(field) && field.type !== 'tab') {\n fieldPermissions =\n parentPermissions === true\n ? parentPermissions\n : deepCopyObjectSimple(parentPermissions?.[field.name])\n\n let hasPermission: boolean =\n fieldPermissions === true || deepCopyObjectSimple(fieldPermissions?.read)\n\n if (typeof field?.access?.read === 'function') {\n const collection = collectionSlug\n ? (req.payload.collections[collectionSlug]?.config ?? null)\n : null\n const global = globalSlug\n ? (req.payload.globals.config.find((g) => g.slug === globalSlug) ?? null)\n : null\n\n hasPermission = await field.access.read({\n id,\n blockData,\n data: fullData,\n req,\n siblingData: data,\n ...(collection ? { collection } : { global }),\n })\n } else {\n hasPermission = true\n }\n\n if (!hasPermission) {\n return\n }\n\n const validate: Validate = 'validate' in field ? field.validate : undefined\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name])\n } catch (e) {\n jsonError = e\n }\n }\n\n try {\n validationResult = await validate(data?.[field.name], {\n ...field,\n id,\n blockData,\n collectionSlug,\n data: fullData,\n event: 'onChange',\n // @AlessioGr added `jsonError` in https://github.com/payloadcms/payload/commit/c7ea62a39473408c3ea912c4fbf73e11be4b538d\n // @ts-expect-error-next-line\n jsonError,\n operation,\n preferences,\n previousValue: previousFormState?.[path]?.initialValue,\n req,\n siblingData: data,\n })\n } catch (err) {\n validationResult = `Error validating field at path: ${path}`\n\n req.payload.logger.error({\n err,\n msg: validationResult,\n })\n }\n }\n\n /**\n * This function adds the error **path** to the current field and all its parents. If a field is invalid, all its parents are also invalid.\n * It does not add the error **message** to the current field, as that shouldn't apply to all parents.\n * This is done separately below.\n */\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths) {\n fieldState.errorPaths = []\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(path)\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const arraySelect = select?.[field.name]\n\n const { promises, rows } = arrayValue.reduce(\n (acc, row, rowIndex: number) => {\n const rowPath = path + '.' + rowIndex\n\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n const idKey = rowPath + '.id'\n\n state[idKey] = {\n initialValue: row.id,\n value: row.id,\n }\n\n if (includeSchema) {\n state[idKey].fieldSchema = field.fields.find((field) => fieldIsID(field))\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: row,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: rowPath,\n parentSchemaPath: schemaPath,\n permissions:\n fieldPermissions === true ? fieldPermissions : fieldPermissions?.fields || {},\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof arraySelect === 'object' ? arraySelect : undefined,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n if (!acc.rows) {\n acc.rows = []\n }\n\n // First, check if `previousFormState` has a matching row\n const previousRow: Row = (previousFormState?.[path]?.rows || []).find(\n (prevRow) => prevRow.id === row.id,\n )\n\n const newRow: Row = {\n id: row.id,\n isLoading: false,\n }\n\n if (previousRow?.lastRenderedPath) {\n newRow.lastRenderedPath = previousRow.lastRenderedPath\n }\n\n // add addedByServer flag\n if (!previousRow) {\n newRow.addedByServer = true\n }\n\n const isCollapsed = isRowCollapsed({\n collapsedPrefs: preferences?.fields?.[path]?.collapsed,\n field,\n previousRow,\n row,\n })\n\n if (isCollapsed) {\n newRow.collapsed = true\n }\n\n acc.rows.push(newRow)\n\n return acc\n },\n {\n promises: [],\n rows: [],\n },\n )\n\n // Wait for all promises and update fields with the results\n await Promise.all(promises)\n\n if (rows) {\n fieldState.rows = rows\n }\n\n // Add values to field state\n if (data[field.name] !== null) {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n // Handle blocks filterOptions\n let filterOptionsValidationResult: Awaited<\n ReturnType<typeof validateBlocksFilterOptions>\n > | null = null\n if (field.filterOptions) {\n filterOptionsValidationResult = await validateBlocksFilterOptions({\n id,\n data: fullData,\n filterOptions: field.filterOptions,\n req,\n siblingData: data,\n value: data[field.name],\n })\n\n fieldState.blocksFilterOptions = filterOptionsValidationResult.allowedBlockSlugs\n }\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i: number) => {\n const blockTypeToMatch: string = row.blockType\n\n const block =\n req.payload.blocks[blockTypeToMatch] ??\n (field.blocks.find(\n (blockType) => typeof blockType !== 'string' && blockType.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (!block) {\n throw new Error(\n `Block with type \"${row.blockType}\" was found in block data, but no block with that type is defined in the config for field with schema path ${schemaPath}.`,\n )\n }\n\n const { blockSelect, blockSelectMode } = getBlockSelect({\n block,\n select: select?.[field.name],\n selectMode,\n })\n\n const rowPath = path + '.' + i\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n // Handle block `id` field\n const idKey = rowPath + '.id'\n\n state[idKey] = {\n initialValue: row.id,\n value: row.id,\n }\n\n // If the blocks field fails filterOptions validation, add error paths to the individual blocks that are no longer allowed\n if (\n filterOptionsValidationResult?.invalidBlockSlugs?.length &&\n filterOptionsValidationResult.invalidBlockSlugs.includes(row.blockType)\n ) {\n state[idKey].errorMessage = req.t('validation:invalidBlock', {\n block: row.blockType,\n })\n state[idKey].valid = false\n addErrorPathToParent(idKey)\n\n // If the error is due to block filterOptions, we want the blocks field (fieldState) to include all the filterOptions-related\n // error paths for each sub-block, not for the validation result of the block itself. Otherwise, say there are 2 invalid blocks,\n // the blocks field will have 3 instead of 2 error paths - one for itself, and one for each invalid block.\n // Instead, we want only the 2 error paths for the individual, invalid blocks.\n fieldState.errorPaths = fieldState.errorPaths.filter(\n (errorPath) => errorPath !== path,\n )\n }\n\n if (includeSchema) {\n state[idKey].fieldSchema = includeSchema\n ? block.fields.find((blockField) => fieldIsID(blockField))\n : undefined\n }\n\n // Handle `blockType` field\n const fieldKey = rowPath + '.blockType'\n\n state[fieldKey] = {\n initialValue: row.blockType,\n value: row.blockType,\n }\n\n if (addedByServer) {\n state[fieldKey].addedByServer = addedByServer\n }\n\n if (includeSchema) {\n state[fieldKey].fieldSchema = block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n }\n\n // Handle `blockName` field\n const blockNameKey = rowPath + '.blockName'\n\n state[blockNameKey] = {}\n\n if (row.blockName) {\n state[blockNameKey].initialValue = row.blockName\n state[blockNameKey].value = row.blockName\n }\n\n if (includeSchema) {\n state[blockNameKey].fieldSchema = block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData: row,\n clientFieldSchemaMap,\n collectionSlug,\n data: row,\n fields: block.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: rowPath,\n parentSchemaPath: schemaPath + '.' + block.slug,\n permissions:\n fieldPermissions === true\n ? fieldPermissions\n : parentPermissions?.[field.name]?.blocks?.[block.slug] === true\n ? true\n : parentPermissions?.[field.name]?.blocks?.[block.slug]?.fields || {},\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof blockSelect === 'object' ? blockSelect : undefined,\n selectMode: blockSelectMode,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n // First, check if `previousFormState` has a matching row\n const previousRow: Row = (previousFormState?.[path]?.rows || []).find(\n (prevRow) => prevRow.id === row.id,\n )\n\n const newRow: Row = {\n id: row.id,\n blockType: row.blockType,\n isLoading: false,\n }\n\n if (previousRow?.lastRenderedPath) {\n newRow.lastRenderedPath = previousRow.lastRenderedPath\n }\n\n acc.rowMetadata.push(newRow)\n\n const isCollapsed = isRowCollapsed({\n collapsedPrefs: preferences?.fields?.[path]?.collapsed,\n field,\n previousRow,\n row,\n })\n\n if (isCollapsed) {\n acc.rowMetadata[acc.rowMetadata.length - 1].collapsed = true\n }\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[path] = fieldState\n }\n\n const groupSelect = select?.[field.name]\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: data?.[field.name] || {},\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: '',\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions:\n typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.fields,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: typeof groupSelect === 'object' ? groupSelect : undefined,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n\n case 'relationship':\n case 'upload': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await resolveFilterOptions(field.filterOptions, {\n id,\n blockData,\n data: fullData,\n relationTo: field.relationTo,\n req,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n\n case 'select': {\n if (typeof field.filterOptions === 'function') {\n fieldState.selectFilterOptions = await field.filterOptions({\n data: fullData,\n options: field.options,\n req,\n siblingData: data,\n })\n }\n\n if (data[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n\n default: {\n if (data[field.name] !== undefined) {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n }\n\n // Add field to state\n if (!filter || filter(args)) {\n state[path] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n // Handle field types that do not use names (row, collapsible, unnamed group etc)\n\n if (!filter || filter(args)) {\n state[path] = {\n disableFormData: true,\n }\n\n // Presentational containers are hidden client-side via `withCondition`, which reads\n // `passesCondition` from their own state entry. Must be set here since these fields\n // are excluded from the short-circuit above (which would otherwise carry the flag).\n if (passesCondition === false) {\n state[path].passesCondition = false\n }\n }\n\n await iterateFields({\n id,\n mockRSCs,\n select,\n selectMode,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: fieldIsLocalized(field) || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: parentPermissions, // TODO: Verify this is correct\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tab') {\n const isNamedTab = tabHasName(field)\n\n if (isNamedTab) {\n const shouldContinue = stripUnselectedFields({\n field: { ...field, type: 'tab' },\n select,\n selectMode,\n siblingDoc: data?.[field.name] || {},\n })\n\n if (!shouldContinue) {\n return\n }\n }\n\n // Tab visibility on the client is keyed by `field.id`, not `path` (like all other fields).\n if (field?.id) {\n state[field.id] = {\n passesCondition,\n }\n\n // Flag newly added tab entries so the client accepts them during merge.\n // Otherwise, tabs revealed after a hidden ancestor becomes visible would never make it into client form state.\n if (!renderAllFields && !previousFormState?.[field.id]) {\n state[field.id].addedByServer = true\n }\n }\n\n if (!passesCondition) {\n return\n }\n\n let childPermissions: SanitizedFieldsPermissions\n let tabSelect: SelectType | undefined\n\n if (isNamedTab) {\n if (parentPermissions === true) {\n childPermissions = true\n } else {\n const tabPermissions = parentPermissions?.[field.name]\n childPermissions = tabPermissions === true ? true : tabPermissions?.fields\n }\n\n if (typeof select?.[field.name] === 'object') {\n tabSelect = select?.[field.name] as SelectType\n }\n } else {\n childPermissions = parentPermissions\n tabSelect = select\n }\n\n return iterateFields({\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data: isNamedTab ? data?.[field.name] || {} : data,\n fields: field.fields,\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n mockRSCs,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: childPermissions,\n preferences,\n previousFormState,\n readOnly,\n renderAllFields,\n renderFieldFn,\n req,\n select: tabSelect,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n if (!filter || filter(args)) {\n state[path] = {\n disableFormData: true,\n }\n }\n\n return iterateFields({\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: fieldIsLocalized(field) || anyParentLocalized,\n blockData,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n fieldSchemaMap,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentIndexPath: indexPath,\n parentPassesCondition: passesCondition,\n parentPath: path,\n parentSchemaPath: schemaPath,\n permissions: parentPermissions,\n preferences,\n previousFormState,\n renderAllFields,\n renderFieldFn,\n req,\n select,\n selectMode,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[path] = fieldState\n state[path].disableFormData = true\n }\n }\n\n if (renderFieldFn && !fieldIsHiddenOrDisabled(field)) {\n const fieldConfig = fieldSchemaMap.get(schemaPath)\n\n if (!fieldConfig && !mockRSCs) {\n if (schemaPath.endsWith('.blockType')) {\n return\n } else {\n throw new Error(`Field config not found for ${schemaPath}`)\n }\n }\n\n if (!state[path]) {\n // Some fields (ie `Tab`) do not live in form state\n // therefore we cannot attach customComponents to them\n return\n }\n\n if (addedByServer) {\n state[path].addedByServer = addedByServer\n }\n\n renderFieldFn({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data: fullData,\n fieldConfig: fieldConfig as Field,\n fieldSchemaMap,\n fieldState: state[path],\n formState: state,\n indexPath,\n lastRenderedPath,\n mockRSCs,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions: fieldPermissions,\n preferences,\n previousFieldState: previousFormState?.[path],\n readOnly,\n renderAllFields,\n req,\n schemaPath,\n siblingData: data,\n })\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"renderField.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAcnD,eAAO,MAAM,WAAW,EAAE,iBA4XzB,CAAA"}
1
+ {"version":3,"file":"renderField.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAcnD,eAAO,MAAM,WAAW,EAAE,iBAsXzB,CAAA"}
@@ -31,9 +31,7 @@ export const renderField = ({
31
31
  schemaPath,
32
32
  siblingData
33
33
  }) => {
34
- // Fields with beforeInput/afterInput need custom components created, so they require render
35
- const hasBeforeOrAfterInput = fieldConfig.admin?.components && ('beforeInput' in fieldConfig.admin.components || 'afterInput' in fieldConfig.admin.components);
36
- const requiresRender = renderAllFields || !lastRenderedPath || lastRenderedPath !== path || hasBeforeOrAfterInput;
34
+ const requiresRender = renderAllFields || !lastRenderedPath || lastRenderedPath !== path;
37
35
  if (!requiresRender && fieldConfig.type !== 'array' && fieldConfig.type !== 'blocks') {
38
36
  return;
39
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","MissingEditorProp","fieldIsHiddenOrDisabled","RenderServerComponent","FieldDescription","WatchCondition","defaultUIFieldComponentKeys","renderField","id","clientFieldSchemaMap","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","forceCreateClientField","formState","indexPath","lastRenderedPath","mockRSCs","operation","parentPath","parentSchemaPath","path","permissions","preferences","readOnly","readOnlyFromProps","renderAllFields","req","schemaPath","siblingData","hasBeforeOrAfterInput","admin","components","requiresRender","type","clientField","get","defaultIDType","payload","config","db","field","i18n","importMap","clientProps","customComponents","includes","serverProps","user","value","name","rows","forEach","row","rowIndex","rowLastRenderedPath","rowPath","rowRequiresRender","RowLabel","Component","key","rowLabel","labels","singular","String","padStart","rowNumber","blockTypeToMatch","blockType","blockConfig","blocks","find","block","slug","Label","Object","keys","length","description","editor","Error","Field","_jsx","FieldComponent","sanitizedEditorConfig","editorConfig","undefined","Description","t","AfterInput","afterInput","BeforeInput","beforeInput"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n FlattenedBlock,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, MissingEditorProp } from 'payload'\nimport { fieldIsHiddenOrDisabled } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- MUST reference the exports dir: https://github.com/payloadcms/payload/issues/12002#issuecomment-2791493587\nimport { FieldDescription, WatchCondition } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n forceCreateClientField,\n formState,\n indexPath,\n lastRenderedPath,\n mockRSCs,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n preferences,\n readOnly: readOnlyFromProps,\n renderAllFields,\n req,\n schemaPath,\n siblingData,\n}) => {\n // Fields with beforeInput/afterInput need custom components created, so they require render\n const hasBeforeOrAfterInput =\n fieldConfig.admin?.components &&\n ('beforeInput' in fieldConfig.admin.components || 'afterInput' in fieldConfig.admin.components)\n\n const requiresRender =\n renderAllFields || !lastRenderedPath || lastRenderedPath !== path || hasBeforeOrAfterInput\n\n if (!requiresRender && fieldConfig.type !== 'array' && fieldConfig.type !== 'blocks') {\n return\n }\n\n const clientField =\n clientFieldSchemaMap && !forceCreateClientField\n ? (clientFieldSchemaMap.get(schemaPath) as ClientField)\n : createClientField({\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n field: clientField,\n path,\n permissions,\n readOnly:\n readOnlyFromProps === true\n ? true\n : typeof permissions === 'boolean'\n ? !permissions\n : !permissions?.[operation],\n schemaPath,\n }\n\n if (fieldState?.customComponents) {\n clientProps.customComponents = fieldState.customComponents\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n clientFieldSchemaMap,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n value: 'name' in fieldConfig && data?.[fieldConfig.name],\n }\n\n switch (fieldConfig.type) {\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const rowLastRenderedPath = row.lastRenderedPath\n\n const rowPath = `${path}.${rowIndex}`\n\n const rowRequiresRender =\n renderAllFields || !rowLastRenderedPath || rowLastRenderedPath !== rowPath\n\n if (!rowRequiresRender) {\n return\n }\n\n row.lastRenderedPath = rowPath\n\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!row.customComponents) {\n row.customComponents = {}\n }\n\n row.customComponents.RowLabel = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.RowLabel,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n : 'Mock'\n }\n })\n\n break\n }\n\n case 'blocks': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const rowLastRenderedPath = row.lastRenderedPath\n\n const rowPath = `${path}.${rowIndex}`\n\n const rowRequiresRender =\n renderAllFields || !rowLastRenderedPath || rowLastRenderedPath !== rowPath\n\n if (!rowRequiresRender) {\n return\n }\n\n row.lastRenderedPath = rowPath\n\n const blockTypeToMatch: string = row.blockType\n\n const blockConfig =\n req.payload.blocks[blockTypeToMatch] ??\n (fieldConfig.blocks.find(\n (block) => typeof block !== 'string' && block.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (blockConfig.admin?.components && 'Label' in blockConfig.admin.components) {\n if (!fieldState.rows[rowIndex]?.customComponents) {\n fieldState.rows[rowIndex].customComponents = {}\n }\n\n fieldState.rows[rowIndex].customComponents.RowLabel = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: blockConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n blockType: row.blockType,\n rowLabel: `${getTranslation(blockConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n : 'Mock'\n }\n })\n\n break\n }\n }\n\n if (!requiresRender) {\n return\n }\n\n /**\n * Set the `lastRenderedPath` equal to the new path of the field, this will prevent it from being rendered again\n */\n fieldState.lastRenderedPath = path\n\n if (fieldIsHiddenOrDisabled(clientField)) {\n return\n }\n\n /**\n * Only create the `customComponents` object if needed.\n * This will prevent unnecessary data from being transferred to the client.\n */\n if (fieldConfig.admin) {\n if (\n (Object.keys(fieldConfig.admin.components || {}).length > 0 ||\n fieldConfig.type === 'richText' ||\n ('description' in fieldConfig.admin &&\n typeof fieldConfig.admin.description === 'function')) &&\n !fieldState?.customComponents\n ) {\n fieldState.customComponents = {}\n }\n }\n\n switch (fieldConfig.type) {\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n fieldState.customComponents.Field = !mockRSCs ? (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.editor.FieldComponent,\n importMap: req.payload.importMap,\n serverProps: {\n ...serverProps,\n // Manually inject lexical-specific `sanitizedEditorConfig` server prop, in order to reduce the size of the field schema.\n // Otherwise, the editorConfig would be included twice - once on the top-level, and once as part of the `FieldComponent` server props.\n sanitizedEditorConfig:\n 'editorConfig' in fieldConfig.editor ? fieldConfig.editor.editorConfig : undefined,\n },\n })}\n </WatchCondition>\n ) : (\n 'Mock'\n )\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n\n const Component = fieldConfig.admin.components[key]\n\n fieldState.customComponents[key] = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component,\n importMap: req.payload.importMap,\n key: `field.admin.components.${key}`,\n serverProps,\n })\n : 'Mock'\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if (\n 'description' in fieldConfig.admin &&\n typeof fieldConfig.admin?.description === 'function'\n ) {\n fieldState.customComponents.Description = !mockRSCs ? (\n <FieldDescription\n description={fieldConfig.admin?.description({\n i18n: req.i18n,\n t: req.i18n.t,\n })}\n path={path}\n />\n ) : (\n 'Mock'\n )\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.afterInput,\n importMap: req.payload.importMap,\n key: `field.admin.components.afterInput.${path}`,\n serverProps,\n })\n : 'Mock'\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.beforeInput,\n importMap: req.payload.importMap,\n key: `field.admin.components.beforeInput.${path}`,\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Description,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Description',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Error,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Error',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Label',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = !mockRSCs ? (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Field,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Field',\n serverProps,\n })}\n </WatchCondition>\n ) : (\n 'Mock'\n )\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"renderField.js","names":["getTranslation","createClientField","MissingEditorProp","fieldIsHiddenOrDisabled","RenderServerComponent","FieldDescription","WatchCondition","defaultUIFieldComponentKeys","renderField","id","clientFieldSchemaMap","collectionSlug","data","fieldConfig","fieldSchemaMap","fieldState","forceCreateClientField","formState","indexPath","lastRenderedPath","mockRSCs","operation","parentPath","parentSchemaPath","path","permissions","preferences","readOnly","readOnlyFromProps","renderAllFields","req","schemaPath","siblingData","requiresRender","type","clientField","get","defaultIDType","payload","config","db","field","i18n","importMap","clientProps","customComponents","includes","serverProps","user","value","name","rows","forEach","row","rowIndex","rowLastRenderedPath","rowPath","rowRequiresRender","admin","components","RowLabel","Component","key","rowLabel","labels","singular","String","padStart","rowNumber","blockTypeToMatch","blockType","blockConfig","blocks","find","block","slug","Label","Object","keys","length","description","editor","Error","Field","_jsx","FieldComponent","sanitizedEditorConfig","editorConfig","undefined","Description","t","AfterInput","afterInput","BeforeInput","beforeInput"],"sources":["../../../src/forms/fieldSchemasToFormState/renderField.tsx"],"sourcesContent":["import type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n FlattenedBlock,\n ServerComponentProps,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { createClientField, MissingEditorProp } from 'payload'\nimport { fieldIsHiddenOrDisabled } from 'payload/shared'\n\nimport type { RenderFieldMethod } from './types.js'\n\nimport { RenderServerComponent } from '../../elements/RenderServerComponent/index.js'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- MUST reference the exports dir: https://github.com/payloadcms/payload/issues/12002#issuecomment-2791493587\nimport { FieldDescription, WatchCondition } from '../../exports/client/index.js'\n\nconst defaultUIFieldComponentKeys: Array<'Cell' | 'Description' | 'Field' | 'Filter'> = [\n 'Cell',\n 'Description',\n 'Field',\n 'Filter',\n]\n\nexport const renderField: RenderFieldMethod = ({\n id,\n clientFieldSchemaMap,\n collectionSlug,\n data,\n fieldConfig,\n fieldSchemaMap,\n fieldState,\n forceCreateClientField,\n formState,\n indexPath,\n lastRenderedPath,\n mockRSCs,\n operation,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n preferences,\n readOnly: readOnlyFromProps,\n renderAllFields,\n req,\n schemaPath,\n siblingData,\n}) => {\n const requiresRender = renderAllFields || !lastRenderedPath || lastRenderedPath !== path\n\n if (!requiresRender && fieldConfig.type !== 'array' && fieldConfig.type !== 'blocks') {\n return\n }\n\n const clientField =\n clientFieldSchemaMap && !forceCreateClientField\n ? (clientFieldSchemaMap.get(schemaPath) as ClientField)\n : createClientField({\n defaultIDType: req.payload.config.db.defaultIDType,\n field: fieldConfig,\n i18n: req.i18n,\n importMap: req.payload.importMap,\n })\n\n const clientProps: ClientComponentProps & Partial<FieldPaths> = {\n field: clientField,\n path,\n permissions,\n readOnly:\n readOnlyFromProps === true\n ? true\n : typeof permissions === 'boolean'\n ? !permissions\n : !permissions?.[operation],\n schemaPath,\n }\n\n if (fieldState?.customComponents) {\n clientProps.customComponents = fieldState.customComponents\n }\n\n // fields with subfields\n if (['array', 'blocks', 'collapsible', 'group', 'row', 'tabs'].includes(fieldConfig.type)) {\n clientProps.indexPath = indexPath\n clientProps.parentPath = parentPath\n clientProps.parentSchemaPath = parentSchemaPath\n }\n\n const serverProps: ServerComponentProps = {\n id,\n clientField,\n clientFieldSchemaMap,\n data,\n field: fieldConfig,\n fieldSchemaMap,\n permissions,\n // TODO: Should we pass explicit values? initialValue, value, valid\n // value and initialValue should be typed\n collectionSlug,\n formState,\n i18n: req.i18n,\n operation,\n payload: req.payload,\n preferences,\n req,\n siblingData,\n user: req.user,\n value: 'name' in fieldConfig && data?.[fieldConfig.name],\n }\n\n switch (fieldConfig.type) {\n case 'array': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const rowLastRenderedPath = row.lastRenderedPath\n\n const rowPath = `${path}.${rowIndex}`\n\n const rowRequiresRender =\n renderAllFields || !rowLastRenderedPath || rowLastRenderedPath !== rowPath\n\n if (!rowRequiresRender) {\n return\n }\n\n row.lastRenderedPath = rowPath\n\n if (fieldConfig.admin?.components && 'RowLabel' in fieldConfig.admin.components) {\n if (!row.customComponents) {\n row.customComponents = {}\n }\n\n row.customComponents.RowLabel = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.RowLabel,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n rowLabel: `${getTranslation(fieldConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n : 'Mock'\n }\n })\n\n break\n }\n\n case 'blocks': {\n fieldState?.rows?.forEach((row, rowIndex) => {\n const rowLastRenderedPath = row.lastRenderedPath\n\n const rowPath = `${path}.${rowIndex}`\n\n const rowRequiresRender =\n renderAllFields || !rowLastRenderedPath || rowLastRenderedPath !== rowPath\n\n if (!rowRequiresRender) {\n return\n }\n\n row.lastRenderedPath = rowPath\n\n const blockTypeToMatch: string = row.blockType\n\n const blockConfig =\n req.payload.blocks[blockTypeToMatch] ??\n (fieldConfig.blocks.find(\n (block) => typeof block !== 'string' && block.slug === blockTypeToMatch,\n ) as FlattenedBlock | undefined)\n\n if (blockConfig.admin?.components && 'Label' in blockConfig.admin.components) {\n if (!fieldState.rows[rowIndex]?.customComponents) {\n fieldState.rows[rowIndex].customComponents = {}\n }\n\n fieldState.rows[rowIndex].customComponents.RowLabel = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: blockConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: `${rowIndex}`,\n serverProps: {\n ...serverProps,\n blockType: row.blockType,\n rowLabel: `${getTranslation(blockConfig.labels.singular, req.i18n)} ${String(\n rowIndex + 1,\n ).padStart(2, '0')}`,\n rowNumber: rowIndex + 1,\n },\n })\n : 'Mock'\n }\n })\n\n break\n }\n }\n\n if (!requiresRender) {\n return\n }\n\n /**\n * Set the `lastRenderedPath` equal to the new path of the field, this will prevent it from being rendered again\n */\n fieldState.lastRenderedPath = path\n\n if (fieldIsHiddenOrDisabled(clientField)) {\n return\n }\n\n /**\n * Only create the `customComponents` object if needed.\n * This will prevent unnecessary data from being transferred to the client.\n */\n if (fieldConfig.admin) {\n if (\n (Object.keys(fieldConfig.admin.components || {}).length > 0 ||\n fieldConfig.type === 'richText' ||\n ('description' in fieldConfig.admin &&\n typeof fieldConfig.admin.description === 'function')) &&\n !fieldState?.customComponents\n ) {\n fieldState.customComponents = {}\n }\n }\n\n switch (fieldConfig.type) {\n case 'richText': {\n if (!fieldConfig?.editor) {\n throw new MissingEditorProp(fieldConfig) // while we allow disabling editor functionality, you should not have any richText fields defined if you do not have an editor\n }\n\n if (typeof fieldConfig?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (!fieldConfig.admin) {\n fieldConfig.admin = {}\n }\n\n if (!fieldConfig.admin.components) {\n fieldConfig.admin.components = {}\n }\n\n fieldState.customComponents.Field = !mockRSCs ? (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.editor.FieldComponent,\n importMap: req.payload.importMap,\n serverProps: {\n ...serverProps,\n // Manually inject lexical-specific `sanitizedEditorConfig` server prop, in order to reduce the size of the field schema.\n // Otherwise, the editorConfig would be included twice - once on the top-level, and once as part of the `FieldComponent` server props.\n sanitizedEditorConfig:\n 'editorConfig' in fieldConfig.editor ? fieldConfig.editor.editorConfig : undefined,\n },\n })}\n </WatchCondition>\n ) : (\n 'Mock'\n )\n\n break\n }\n\n case 'ui': {\n if (fieldConfig?.admin?.components) {\n // Render any extra, untyped components\n for (const key in fieldConfig.admin.components) {\n if (key in defaultUIFieldComponentKeys) {\n continue\n }\n\n const Component = fieldConfig.admin.components[key]\n\n fieldState.customComponents[key] = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component,\n importMap: req.payload.importMap,\n key: `field.admin.components.${key}`,\n serverProps,\n })\n : 'Mock'\n }\n }\n break\n }\n\n default: {\n break\n }\n }\n\n if (fieldConfig.admin) {\n if (\n 'description' in fieldConfig.admin &&\n typeof fieldConfig.admin?.description === 'function'\n ) {\n fieldState.customComponents.Description = !mockRSCs ? (\n <FieldDescription\n description={fieldConfig.admin?.description({\n i18n: req.i18n,\n t: req.i18n.t,\n })}\n path={path}\n />\n ) : (\n 'Mock'\n )\n }\n\n if (fieldConfig.admin?.components) {\n if ('afterInput' in fieldConfig.admin.components) {\n fieldState.customComponents.AfterInput = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.afterInput,\n importMap: req.payload.importMap,\n key: `field.admin.components.afterInput.${path}`,\n serverProps,\n })\n : 'Mock'\n }\n\n if ('beforeInput' in fieldConfig.admin.components) {\n fieldState.customComponents.BeforeInput = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.beforeInput,\n importMap: req.payload.importMap,\n key: `field.admin.components.beforeInput.${path}`,\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Description' in fieldConfig.admin.components) {\n fieldState.customComponents.Description = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Description,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Description',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Error' in fieldConfig.admin.components) {\n fieldState.customComponents.Error = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Error,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Error',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Label' in fieldConfig.admin.components) {\n fieldState.customComponents.Label = !mockRSCs\n ? RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Label,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Label',\n serverProps,\n })\n : 'Mock'\n }\n\n if ('Field' in fieldConfig.admin.components) {\n fieldState.customComponents.Field = !mockRSCs ? (\n <WatchCondition path={path}>\n {RenderServerComponent({\n clientProps,\n Component: fieldConfig.admin.components.Field,\n importMap: req.payload.importMap,\n key: 'field.admin.components.Field',\n serverProps,\n })}\n </WatchCondition>\n ) : (\n 'Mock'\n )\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"usePayloadAPI.d.ts","sourceRoot":"","sources":["../../src/hooks/usePayloadAPI.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAS9B,KAAK,MAAM,GAAG;IACZ;QACE,IAAI,EAAE,GAAG,CAAA;QACT,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,OAAO,CAAA;KACnB;IACD;QACE,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;KACnC;CACF,CAAA;AAED,KAAK,OAAO,GAAG;IACb,WAAW,CAAC,EAAE,GAAG,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,MAAM,CAAA;AAE/D,eAAO,MAAM,aAAa,EAAE,aAkF3B,CAAA"}
1
+ {"version":3,"file":"usePayloadAPI.d.ts","sourceRoot":"","sources":["../../src/hooks/usePayloadAPI.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAU9B,KAAK,MAAM,GAAG;IACZ;QACE,IAAI,EAAE,GAAG,CAAA;QACT,OAAO,EAAE,OAAO,CAAA;QAChB,SAAS,EAAE,OAAO,CAAA;KACnB;IACD;QACE,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;KACnC;CACF,CAAA;AAED,KAAK,OAAO,GAAG;IACb,WAAW,CAAC,EAAE,GAAG,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAAA;AAED,KAAK,aAAa,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,MAAM,CAAA;AAE/D,eAAO,MAAM,aAAa,EAAE,aAoF3B,CAAA"}
@@ -3,11 +3,12 @@
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import * as qs from 'qs-esm';
5
5
  import { useEffect, useRef, useState } from 'react';
6
+ import { useBranchParam } from '../providers/Branch/index.js';
6
7
  import { useLocale } from '../providers/Locale/index.js';
7
8
  import { useTranslation } from '../providers/Translation/index.js';
8
9
  import { requests } from '../utilities/api.js';
9
10
  export const usePayloadAPI = (url, t0) => {
10
- const $ = _c(30);
11
+ const $ = _c(31);
11
12
  let t1;
12
13
  if ($[0] !== t0) {
13
14
  t1 = t0 === undefined ? {} : t0;
@@ -48,24 +49,27 @@ export const usePayloadAPI = (url, t0) => {
48
49
  const {
49
50
  code: locale
50
51
  } = useLocale();
52
+ const branch = useBranchParam();
51
53
  const hasInitialized = useRef(false);
52
54
  let t5;
53
- if ($[6] !== locale || $[7] !== params) {
55
+ if ($[6] !== branch || $[7] !== locale || $[8] !== params) {
54
56
  t5 = qs.stringify({
57
+ branch,
55
58
  locale,
56
59
  ...(typeof params === "object" ? params : {})
57
60
  }, {
58
61
  addQueryPrefix: true
59
62
  });
60
- $[6] = locale;
61
- $[7] = params;
62
- $[8] = t5;
63
+ $[6] = branch;
64
+ $[7] = locale;
65
+ $[8] = params;
66
+ $[9] = t5;
63
67
  } else {
64
- t5 = $[8];
68
+ t5 = $[9];
65
69
  }
66
70
  const search = t5;
67
71
  let t6;
68
- if ($[9] !== i18n.language || $[10] !== initialData || $[11] !== search || $[12] !== url) {
72
+ if ($[10] !== i18n.language || $[11] !== initialData || $[12] !== search || $[13] !== url) {
69
73
  t6 = () => {
70
74
  if (initialData && !hasInitialized.current) {
71
75
  hasInitialized.current = true;
@@ -111,74 +115,74 @@ export const usePayloadAPI = (url, t0) => {
111
115
  }
112
116
  };
113
117
  };
114
- $[9] = i18n.language;
115
- $[10] = initialData;
116
- $[11] = search;
117
- $[12] = url;
118
- $[13] = t6;
118
+ $[10] = i18n.language;
119
+ $[11] = initialData;
120
+ $[12] = search;
121
+ $[13] = url;
122
+ $[14] = t6;
119
123
  } else {
120
- t6 = $[13];
124
+ t6 = $[14];
121
125
  }
122
126
  let t7;
123
- if ($[14] !== i18n.language || $[15] !== initialData || $[16] !== locale || $[17] !== search || $[18] !== url) {
127
+ if ($[15] !== i18n.language || $[16] !== initialData || $[17] !== locale || $[18] !== search || $[19] !== url) {
124
128
  t7 = [url, locale, search, i18n.language, initialData];
125
- $[14] = i18n.language;
126
- $[15] = initialData;
127
- $[16] = locale;
128
- $[17] = search;
129
- $[18] = url;
130
- $[19] = t7;
129
+ $[15] = i18n.language;
130
+ $[16] = initialData;
131
+ $[17] = locale;
132
+ $[18] = search;
133
+ $[19] = url;
134
+ $[20] = t7;
131
135
  } else {
132
- t7 = $[19];
136
+ t7 = $[20];
133
137
  }
134
138
  useEffect(t6, t7);
135
139
  let t8;
136
140
  let t9;
137
- if ($[20] !== initialData) {
141
+ if ($[21] !== initialData) {
138
142
  t8 = () => {
139
143
  if (initialData && hasInitialized.current) {
140
144
  setData(initialData);
141
145
  }
142
146
  };
143
147
  t9 = [initialData];
144
- $[20] = initialData;
145
- $[21] = t8;
146
- $[22] = t9;
148
+ $[21] = initialData;
149
+ $[22] = t8;
150
+ $[23] = t9;
147
151
  } else {
148
- t8 = $[21];
149
- t9 = $[22];
152
+ t8 = $[22];
153
+ t9 = $[23];
150
154
  }
151
155
  useEffect(t8, t9);
152
156
  let t10;
153
- if ($[23] !== data || $[24] !== isError || $[25] !== isLoading) {
157
+ if ($[24] !== data || $[25] !== isError || $[26] !== isLoading) {
154
158
  t10 = {
155
159
  data,
156
160
  isError,
157
161
  isLoading
158
162
  };
159
- $[23] = data;
160
- $[24] = isError;
161
- $[25] = isLoading;
162
- $[26] = t10;
163
+ $[24] = data;
164
+ $[25] = isError;
165
+ $[26] = isLoading;
166
+ $[27] = t10;
163
167
  } else {
164
- t10 = $[26];
168
+ t10 = $[27];
165
169
  }
166
170
  let t11;
167
- if ($[27] === Symbol.for("react.memo_cache_sentinel")) {
171
+ if ($[28] === Symbol.for("react.memo_cache_sentinel")) {
168
172
  t11 = {
169
173
  setParams
170
174
  };
171
- $[27] = t11;
175
+ $[28] = t11;
172
176
  } else {
173
- t11 = $[27];
177
+ t11 = $[28];
174
178
  }
175
179
  let t12;
176
- if ($[28] !== t10) {
180
+ if ($[29] !== t10) {
177
181
  t12 = [t10, t11];
178
- $[28] = t10;
179
- $[29] = t12;
182
+ $[29] = t10;
183
+ $[30] = t12;
180
184
  } else {
181
- t12 = $[29];
185
+ t12 = $[30];
182
186
  }
183
187
  return t12;
184
188
  };