@payloadcms/ui 4.0.0-internal.e387174 → 4.0.0-internal.e38d3ac

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 (726) 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 +10 -0
  5. package/dist/elements/AddNewRelation/index.css +0 -1
  6. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  7. package/dist/elements/AppHeader/index.css +1 -3
  8. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  9. package/dist/elements/AppHeader/index.js +5 -1
  10. package/dist/elements/AppHeader/index.js.map +1 -1
  11. package/dist/elements/ArrayAction/index.d.ts +3 -0
  12. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  13. package/dist/elements/ArrayAction/index.js +83 -29
  14. package/dist/elements/ArrayAction/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  16. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  17. package/dist/elements/BulkUpload/FileSidebar/index.css +4 -0
  18. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  19. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  20. package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
  21. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  22. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  23. package/dist/elements/BulkUpload/FormsManager/index.js +1 -1
  24. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  25. package/dist/elements/Button/index.css +2 -2
  26. package/dist/elements/Button/index.d.ts.map +1 -1
  27. package/dist/elements/ClipboardAction/ClipboardActionLabel.d.ts.map +1 -1
  28. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
  29. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
  30. package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
  31. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  32. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +120 -0
  33. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +1 -0
  34. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  35. package/dist/elements/ClipboardAction/index.js +17 -1
  36. package/dist/elements/ClipboardAction/index.js.map +1 -1
  37. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +144 -0
  38. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +1 -0
  39. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  40. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  41. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
  42. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  43. package/dist/elements/ClipboardAction/types.d.ts +3 -0
  44. package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
  45. package/dist/elements/ClipboardAction/types.js.map +1 -1
  46. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
  47. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
  48. package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
  49. package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
  50. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  51. package/dist/elements/CodeEditor/index.css +5 -5
  52. package/dist/elements/CommandPalette/index.css +0 -7
  53. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  54. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  55. package/dist/elements/CopyToClipboard/index.js +10 -8
  56. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  57. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  58. package/dist/elements/CreateDocumentButton/index.js +4 -1
  59. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  60. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  61. package/dist/elements/DatePicker/DatePicker.js +1 -0
  62. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  63. package/dist/elements/DatePicker/getFormattedLocale.d.ts.map +1 -1
  64. package/dist/elements/DatePicker/index.css +1 -1
  65. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  66. package/dist/elements/DeleteDocument/index.js +16 -1
  67. package/dist/elements/DeleteDocument/index.js.map +1 -1
  68. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -1
  69. package/dist/elements/DocumentControls/index.d.ts +2 -2
  70. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  71. package/dist/elements/DocumentControls/index.js.map +1 -1
  72. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +2 -2
  73. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  74. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  75. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  76. package/dist/elements/DocumentLocked/index.d.ts +2 -2
  77. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  78. package/dist/elements/DocumentLocked/index.js.map +1 -1
  79. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  80. package/dist/elements/Drawer/index.css +10 -4
  81. package/dist/elements/Drawer/index.d.ts.map +1 -1
  82. package/dist/elements/Drawer/index.js +1 -0
  83. package/dist/elements/Drawer/index.js.map +1 -1
  84. package/dist/elements/Drawer/useDrawerSlug.d.ts.map +1 -1
  85. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -1
  86. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  87. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  88. package/dist/elements/EditMany/DrawerContent.js +2 -2
  89. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  90. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  91. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  92. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  93. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
  94. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
  95. package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
  96. package/dist/elements/FileManager/FilePreview/index.css +3 -3
  97. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  98. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  99. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  100. package/dist/elements/FileManager/index.css +36 -23
  101. package/dist/elements/FileManager/index.d.ts +1 -1
  102. package/dist/elements/FileManager/index.d.ts.map +1 -1
  103. package/dist/elements/FileManager/index.js +15 -4
  104. package/dist/elements/FileManager/index.js.map +1 -1
  105. package/dist/elements/HTMLDiff/diff/index.d.ts.map +1 -1
  106. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  107. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
  108. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  109. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  110. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  111. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  112. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  113. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
  114. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  115. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  116. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  117. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  118. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +1 -1
  119. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  120. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
  121. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  122. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  123. package/dist/elements/IDLabel/index.css +6 -0
  124. package/dist/elements/IDLabel/index.d.ts +1 -1
  125. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  126. package/dist/elements/IDLabel/index.js +16 -21
  127. package/dist/elements/IDLabel/index.js.map +1 -1
  128. package/dist/elements/InputStepper/index.css +0 -1
  129. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  130. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  131. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  132. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  133. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  134. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  135. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  136. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  137. package/dist/elements/Locked/index.css +0 -8
  138. package/dist/elements/Locked/index.d.ts +2 -2
  139. package/dist/elements/Locked/index.d.ts.map +1 -1
  140. package/dist/elements/Locked/index.js +70 -64
  141. package/dist/elements/Locked/index.js.map +1 -1
  142. package/dist/elements/MiniCarousel/index.css +39 -37
  143. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  144. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  145. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  146. package/dist/elements/Nav/SidebarTabs/index.css +0 -5
  147. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  148. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  149. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
  150. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  151. package/dist/elements/NavGroup/index.css +0 -1
  152. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  153. package/dist/elements/Popup/index.js +1 -1
  154. package/dist/elements/Popup/index.js.map +1 -1
  155. package/dist/elements/PreviewButton/index.d.ts +1 -2
  156. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  157. package/dist/elements/PreviewButton/index.js +11 -5
  158. package/dist/elements/PreviewButton/index.js.map +1 -1
  159. package/dist/elements/PreviewSizes/index.css +8 -9
  160. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  161. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -1
  162. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  163. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  164. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  165. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  166. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  167. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts +7 -0
  168. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -0
  169. package/dist/elements/ReactSelect/DefaultMenuPortal.js +120 -0
  170. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -0
  171. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  172. package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
  173. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -1
  174. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +1 -1
  175. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -1
  176. package/dist/elements/ReactSelect/getMenuListStyles.js +13 -5
  177. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -1
  178. package/dist/elements/ReactSelect/getMenuStyles.d.ts +10 -0
  179. package/dist/elements/ReactSelect/getMenuStyles.d.ts.map +1 -0
  180. package/dist/elements/ReactSelect/getMenuStyles.js +21 -0
  181. package/dist/elements/ReactSelect/getMenuStyles.js.map +1 -0
  182. package/dist/elements/ReactSelect/index.css +7 -3
  183. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  184. package/dist/elements/ReactSelect/index.js +24 -101
  185. package/dist/elements/ReactSelect/index.js.map +1 -1
  186. package/dist/elements/ReactSelect/types.d.ts +1 -2
  187. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  188. package/dist/elements/ReactSelect/types.js.map +1 -1
  189. package/dist/elements/RelationshipTable/AddNewButton.d.ts +2 -2
  190. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  191. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  192. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  193. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  194. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  195. package/dist/elements/RelationshipTable/index.css +0 -2
  196. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  197. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  198. package/dist/elements/RelationshipTable/index.js +41 -5
  199. package/dist/elements/RelationshipTable/index.js.map +1 -1
  200. package/dist/elements/RenderTitle/index.css +4 -0
  201. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  202. package/dist/elements/RenderTitle/index.js +18 -13
  203. package/dist/elements/RenderTitle/index.js.map +1 -1
  204. package/dist/elements/SelectAll/index.css +3 -1
  205. package/dist/elements/SelectRow/index.d.ts +5 -4
  206. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  207. package/dist/elements/SelectRow/index.js +10 -7
  208. package/dist/elements/SelectRow/index.js.map +1 -1
  209. package/dist/elements/SidebarToggle/index.css +0 -17
  210. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  211. package/dist/elements/SortColumn/index.js +42 -38
  212. package/dist/elements/SortColumn/index.js.map +1 -1
  213. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  214. package/dist/elements/SortHeader/index.js +29 -26
  215. package/dist/elements/SortHeader/index.js.map +1 -1
  216. package/dist/elements/StepNav/index.css +64 -14
  217. package/dist/elements/StepNav/index.d.ts.map +1 -1
  218. package/dist/elements/StepNav/index.js +143 -69
  219. package/dist/elements/StepNav/index.js.map +1 -1
  220. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  221. package/dist/elements/Table/DefaultCell/fields/index.d.ts.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/OrderableRowDragPreview.d.ts.map +1 -1
  230. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  231. package/dist/elements/Table/OrderableTable.js +19 -2
  232. package/dist/elements/Table/OrderableTable.js.map +1 -1
  233. package/dist/elements/Table/index.css +7 -0
  234. package/dist/elements/TableSection/index.css +0 -1
  235. package/dist/elements/Tabs/index.d.ts.map +1 -1
  236. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -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/Upload/index.css +0 -5
  249. package/dist/elements/Upload/index.d.ts.map +1 -1
  250. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  251. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.d.ts.map +1 -1
  252. package/dist/elements/WhereBuilder/Condition/validOperators.d.ts.map +1 -1
  253. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  254. package/dist/exports/client/index.d.ts +5 -1
  255. package/dist/exports/client/index.d.ts.map +1 -1
  256. package/dist/exports/client/index.js +1 -1
  257. package/dist/exports/client/index.js.map +3 -3
  258. package/dist/exports/layouts.d.ts +1 -0
  259. package/dist/exports/layouts.d.ts.map +1 -1
  260. package/dist/exports/layouts.js +1 -0
  261. package/dist/exports/layouts.js.map +1 -1
  262. package/dist/exports/shared/index.d.ts +1 -0
  263. package/dist/exports/shared/index.d.ts.map +1 -1
  264. package/dist/exports/shared/index.js +2 -2
  265. package/dist/exports/shared/index.js.map +4 -4
  266. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  267. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  268. package/dist/fields/Array/ArrayRow.js +99 -160
  269. package/dist/fields/Array/ArrayRow.js.map +1 -1
  270. package/dist/fields/Array/index.d.ts +1 -1
  271. package/dist/fields/Array/index.d.ts.map +1 -1
  272. package/dist/fields/Array/index.js +38 -10
  273. package/dist/fields/Array/index.js.map +1 -1
  274. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  275. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  276. package/dist/fields/Blocks/BlockRow.js +136 -195
  277. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  278. package/dist/fields/Blocks/RowActions.d.ts +3 -0
  279. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  280. package/dist/fields/Blocks/RowActions.js +26 -20
  281. package/dist/fields/Blocks/RowActions.js.map +1 -1
  282. package/dist/fields/Blocks/index.d.ts +1 -1
  283. package/dist/fields/Blocks/index.d.ts.map +1 -1
  284. package/dist/fields/Blocks/index.js +38 -10
  285. package/dist/fields/Blocks/index.js.map +1 -1
  286. package/dist/fields/Checkbox/Input.d.ts +2 -0
  287. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  288. package/dist/fields/Checkbox/Input.js +32 -26
  289. package/dist/fields/Checkbox/Input.js.map +1 -1
  290. package/dist/fields/Checkbox/index.css +37 -73
  291. package/dist/fields/Checkbox/index.d.ts +1 -1
  292. package/dist/fields/Code/index.css +1 -1
  293. package/dist/fields/Code/index.d.ts +2 -2
  294. package/dist/fields/Collapsible/index.d.ts +1 -1
  295. package/dist/fields/DateTime/index.d.ts +1 -1
  296. package/dist/fields/Email/index.d.ts +1 -1
  297. package/dist/fields/FieldError/index.css +0 -9
  298. package/dist/fields/FieldError/index.d.ts.map +1 -1
  299. package/dist/fields/FieldError/index.js +19 -9
  300. package/dist/fields/FieldError/index.js.map +1 -1
  301. package/dist/fields/Group/index.d.ts +2 -2
  302. package/dist/fields/JSON/index.d.ts +1 -1
  303. package/dist/fields/Join/index.css +9 -0
  304. package/dist/fields/Join/index.d.ts +1 -1
  305. package/dist/fields/Join/index.d.ts.map +1 -1
  306. package/dist/fields/Join/index.js +13 -9
  307. package/dist/fields/Join/index.js.map +1 -1
  308. package/dist/fields/Number/index.d.ts +1 -1
  309. package/dist/fields/Point/index.d.ts +1 -1
  310. package/dist/fields/RadioGroup/index.css +0 -7
  311. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  312. package/dist/fields/Relationship/Input.js +32 -14
  313. package/dist/fields/Relationship/Input.js.map +1 -1
  314. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  315. package/dist/fields/Relationship/index.d.ts +1 -1
  316. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  317. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  318. package/dist/fields/Row/index.d.ts +1 -1
  319. package/dist/fields/Select/index.d.ts +1 -1
  320. package/dist/fields/Select/index.d.ts.map +1 -1
  321. package/dist/fields/Slug/index.css +0 -1
  322. package/dist/fields/Slug/index.d.ts.map +1 -1
  323. package/dist/fields/Slug/index.js +75 -111
  324. package/dist/fields/Slug/index.js.map +1 -1
  325. package/dist/fields/Tabs/index.d.ts +1 -1
  326. package/dist/fields/Text/index.d.ts +1 -1
  327. package/dist/fields/Textarea/index.d.ts +1 -1
  328. package/dist/fields/Upload/index.css +19 -4
  329. package/dist/fields/mergeFieldStyles.d.ts +1 -1
  330. package/dist/fields/mergeFieldStyles.d.ts.map +1 -1
  331. package/dist/forms/Form/context.d.ts.map +1 -1
  332. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  333. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  334. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  335. package/dist/forms/Form/fieldReducer.js +3 -1
  336. package/dist/forms/Form/fieldReducer.js.map +1 -1
  337. package/dist/forms/Form/index.d.ts.map +1 -1
  338. package/dist/forms/Form/index.js +12 -15
  339. package/dist/forms/Form/index.js.map +1 -1
  340. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  341. package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
  342. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  343. package/dist/forms/Form/rows.d.ts.map +1 -1
  344. package/dist/forms/Form/types.d.ts +1 -1
  345. package/dist/forms/Form/types.d.ts.map +1 -1
  346. package/dist/forms/Form/types.js.map +1 -1
  347. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  348. package/dist/forms/RenderFields/index.css +16 -2
  349. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  350. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  351. package/dist/forms/WatchChildErrors/index.js +2 -2
  352. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  353. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  354. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  355. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  356. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  357. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  358. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  359. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  360. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  361. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  362. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
  363. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  364. package/dist/forms/useField/index.d.ts.map +1 -1
  365. package/dist/forms/withCondition/index.d.ts +1 -1
  366. package/dist/forms/withCondition/index.d.ts.map +1 -1
  367. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  368. package/dist/hooks/useDelay.d.ts.map +1 -1
  369. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -1
  370. package/dist/hooks/useHotkey.d.ts.map +1 -1
  371. package/dist/hooks/useIntersect.d.ts.map +1 -1
  372. package/dist/hooks/usePopupWindow.d.ts +1 -1
  373. package/dist/hooks/usePopupWindow.d.ts.map +1 -1
  374. package/dist/hooks/useRelatedCollections.d.ts.map +1 -1
  375. package/dist/hooks/useResize.d.ts.map +1 -1
  376. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  377. package/dist/icons/Edit/index.d.ts +0 -1
  378. package/dist/icons/Edit/index.d.ts.map +1 -1
  379. package/dist/icons/Edit/index.js +4 -4
  380. package/dist/icons/Edit/index.js.map +1 -1
  381. package/dist/layouts/Root/index.d.ts +1 -1
  382. package/dist/layouts/Root/index.d.ts.map +1 -1
  383. package/dist/layouts/Root/index.js +12 -4
  384. package/dist/layouts/Root/index.js.map +1 -1
  385. package/dist/layouts/Root/viewport.d.ts +1 -0
  386. package/dist/layouts/Root/viewport.d.ts.map +1 -1
  387. package/dist/layouts/Root/viewport.js +4 -1
  388. package/dist/layouts/Root/viewport.js.map +1 -1
  389. package/dist/providers/Actions/index.d.ts +1 -0
  390. package/dist/providers/Actions/index.d.ts.map +1 -1
  391. package/dist/providers/Actions/index.js +43 -11
  392. package/dist/providers/Actions/index.js.map +1 -1
  393. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  394. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  395. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  396. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  397. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  398. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  399. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  400. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  401. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  402. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  403. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  404. package/dist/providers/Auth/authSessionRequests.js +119 -0
  405. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  406. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  407. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  408. package/dist/providers/Auth/index.d.ts +5 -59
  409. package/dist/providers/Auth/index.d.ts.map +1 -1
  410. package/dist/providers/Auth/index.js +283 -135
  411. package/dist/providers/Auth/index.js.map +1 -1
  412. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  413. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  414. package/dist/providers/Auth/sessionActivity.js +49 -0
  415. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  416. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  417. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  418. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  419. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  420. package/dist/providers/Auth/sessionTiming.js +18 -0
  421. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  422. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  423. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  424. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  425. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  426. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  427. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  428. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  429. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  430. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  431. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  432. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  433. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  434. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  435. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  436. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  437. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  438. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  439. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  440. package/dist/providers/Auth/types.d.ts +65 -0
  441. package/dist/providers/Auth/types.d.ts.map +1 -0
  442. package/dist/providers/Auth/types.js +2 -0
  443. package/dist/providers/Auth/types.js.map +1 -0
  444. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  445. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  446. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  447. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  448. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  449. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  450. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  451. package/dist/providers/DocumentInfo/index.js.map +1 -1
  452. package/dist/providers/DocumentInfo/types.d.ts +5 -5
  453. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  454. package/dist/providers/DocumentInfo/types.js.map +1 -1
  455. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  456. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  457. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  458. package/dist/providers/DocumentTitle/index.js +2 -0
  459. package/dist/providers/DocumentTitle/index.js.map +1 -1
  460. package/dist/providers/Embed/index.d.ts +24 -0
  461. package/dist/providers/Embed/index.d.ts.map +1 -0
  462. package/dist/providers/Embed/index.js +105 -0
  463. package/dist/providers/Embed/index.js.map +1 -0
  464. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  465. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  466. package/dist/providers/FormErrorHandler/index.js +6 -0
  467. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  468. package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
  469. package/dist/providers/ListQuery/sanitizeQuery.d.ts.map +1 -1
  470. package/dist/providers/LivePreview/sizeReducer.d.ts +1 -1
  471. package/dist/providers/LivePreview/sizeReducer.d.ts.map +1 -1
  472. package/dist/providers/Locale/index.d.ts.map +1 -1
  473. package/dist/providers/Locale/index.js +41 -36
  474. package/dist/providers/Locale/index.js.map +1 -1
  475. package/dist/providers/Root/index.d.ts +1 -0
  476. package/dist/providers/Root/index.d.ts.map +1 -1
  477. package/dist/providers/Root/index.js +37 -31
  478. package/dist/providers/Root/index.js.map +1 -1
  479. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  480. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  481. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  482. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  483. package/dist/providers/RouteTransition/index.d.ts +2 -0
  484. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  485. package/dist/providers/RouteTransition/index.js +42 -14
  486. package/dist/providers/RouteTransition/index.js.map +1 -1
  487. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  488. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  489. package/dist/providers/SidebarTabs/index.js.map +1 -1
  490. package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -1
  491. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.d.ts.map +1 -1
  492. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -1
  493. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  494. package/dist/providers/TableColumns/buildColumnState/index.js +1 -1
  495. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  496. package/dist/providers/TableColumns/buildColumnState/index.spec.js +40 -0
  497. package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +1 -0
  498. package/dist/providers/TableColumns/getInitialColumns.d.ts +1 -1
  499. package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -1
  500. package/dist/providers/Theme/index.d.ts +5 -2
  501. package/dist/providers/Theme/index.d.ts.map +1 -1
  502. package/dist/providers/Theme/index.js +109 -96
  503. package/dist/providers/Theme/index.js.map +1 -1
  504. package/dist/providers/Theme/shared.d.ts +3 -0
  505. package/dist/providers/Theme/shared.d.ts.map +1 -0
  506. package/dist/providers/Theme/shared.js +2 -0
  507. package/dist/providers/Theme/shared.js.map +1 -0
  508. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  509. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  510. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  511. package/dist/providers/UploadHandlers/index.js +102 -42
  512. package/dist/providers/UploadHandlers/index.js.map +1 -1
  513. package/dist/styles.css +23 -10
  514. package/dist/templates/Default/index.d.ts +1 -0
  515. package/dist/templates/Default/index.d.ts.map +1 -1
  516. package/dist/templates/Default/index.js +2 -0
  517. package/dist/templates/Default/index.js.map +1 -1
  518. package/dist/utilities/api.d.ts.map +1 -1
  519. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  520. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  521. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  522. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  523. package/dist/utilities/buildFormState.d.ts +2 -2
  524. package/dist/utilities/buildFormState.d.ts.map +1 -1
  525. package/dist/utilities/buildFormState.js.map +1 -1
  526. package/dist/utilities/checkDependencies.d.ts.map +1 -1
  527. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  528. package/dist/utilities/combineFieldLabel.js +5 -1
  529. package/dist/utilities/combineFieldLabel.js.map +1 -1
  530. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  531. package/dist/utilities/filterOutUploadFields.d.ts.map +1 -1
  532. package/dist/utilities/findLocaleFromCode.d.ts.map +1 -1
  533. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  534. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  535. package/dist/utilities/formatDocTitle/formatRelationshipTitle.d.ts.map +1 -1
  536. package/dist/utilities/formatDocTitle/index.d.ts +1 -1
  537. package/dist/utilities/formatDocTitle/index.d.ts.map +1 -1
  538. package/dist/utilities/formatFields.d.ts.map +1 -1
  539. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  540. package/dist/utilities/formatMetadata.js +0 -5
  541. package/dist/utilities/formatMetadata.js.map +1 -1
  542. package/dist/utilities/generateFieldID.d.ts +1 -1
  543. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  544. package/dist/utilities/generateFieldID.js +2 -2
  545. package/dist/utilities/generateFieldID.js.map +1 -1
  546. package/dist/utilities/getColumns.d.ts.map +1 -1
  547. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
  548. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  549. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  550. package/dist/utilities/getDocumentPermissions.d.ts.map +1 -1
  551. package/dist/utilities/getGlobalData.d.ts +2 -2
  552. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  553. package/dist/utilities/getGlobalData.js.map +1 -1
  554. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  555. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  556. package/dist/utilities/getLanguageDir.d.ts +12 -0
  557. package/dist/utilities/getLanguageDir.d.ts.map +1 -0
  558. package/dist/utilities/getLanguageDir.js +12 -0
  559. package/dist/utilities/getLanguageDir.js.map +1 -0
  560. package/dist/utilities/getOffsetTop.d.ts.map +1 -1
  561. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  562. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  563. package/dist/utilities/getRequestEmbed.js +10 -0
  564. package/dist/utilities/getRequestEmbed.js.map +1 -0
  565. package/dist/utilities/getRequestHighContrast.d.ts.map +1 -1
  566. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  567. package/dist/utilities/getRequestTheme.d.ts +1 -1
  568. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  569. package/dist/utilities/getRequestTheme.js +1 -1
  570. package/dist/utilities/getRequestTheme.js.map +1 -1
  571. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -1
  572. package/dist/utilities/getSupportedMonacoLocale.d.ts.map +1 -1
  573. package/dist/utilities/getVersions.d.ts.map +1 -1
  574. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  575. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  576. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  577. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  578. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  579. package/dist/utilities/handlePreview.d.ts.map +1 -1
  580. package/dist/utilities/handleServerFunctions.d.ts +32 -8
  581. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  582. package/dist/utilities/handleServerFunctions.js +17 -37
  583. package/dist/utilities/handleServerFunctions.js.map +1 -1
  584. package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -1
  585. package/dist/utilities/handleTakeOver.d.ts +5 -5
  586. package/dist/utilities/handleTakeOver.d.ts.map +1 -1
  587. package/dist/utilities/handleTakeOver.js.map +1 -1
  588. package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +1 -1
  589. package/dist/utilities/hasSavePermission.d.ts.map +1 -1
  590. package/dist/utilities/initReq.d.ts.map +1 -1
  591. package/dist/utilities/isClientUserObject.d.ts +2 -2
  592. package/dist/utilities/isClientUserObject.d.ts.map +1 -1
  593. package/dist/utilities/isClientUserObject.js.map +1 -1
  594. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  595. package/dist/utilities/isEditing.d.ts.map +1 -1
  596. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  597. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  598. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  599. package/dist/utilities/recentlyViewed.d.ts.map +1 -1
  600. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  601. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  602. package/dist/utilities/renderTable.d.ts +2 -2
  603. package/dist/utilities/renderTable.d.ts.map +1 -1
  604. package/dist/utilities/renderTable.js +18 -2
  605. package/dist/utilities/renderTable.js.map +1 -1
  606. package/dist/utilities/resolveFilterOptions.d.ts +1 -1
  607. package/dist/utilities/resolveFilterOptions.d.ts.map +1 -1
  608. package/dist/utilities/sanitizeFilterOptionsQuery.d.ts.map +1 -1
  609. package/dist/utilities/scrollToID.d.ts.map +1 -1
  610. package/dist/utilities/selectiveCache.d.ts.map +1 -1
  611. package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
  612. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  613. package/dist/utilities/serverFunctionRegistry.js +25 -7
  614. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  615. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  616. package/dist/utilities/slugify.d.ts.map +1 -1
  617. package/dist/utilities/slugify.js +49 -6
  618. package/dist/utilities/slugify.js.map +1 -1
  619. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  620. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  621. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts.map +1 -1
  622. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  623. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  624. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  625. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  626. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  627. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  628. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  629. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  630. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  631. package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
  632. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  633. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  634. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
  635. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  636. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  637. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  638. package/dist/views/Dashboard/Default/index.js.map +1 -1
  639. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +1 -1
  640. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -1
  641. package/dist/views/Document/getCustomViewByRoute.d.ts +1 -1
  642. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  643. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  644. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  645. package/dist/views/Document/index.d.ts +1 -1
  646. package/dist/views/Document/index.d.ts.map +1 -1
  647. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -1
  648. package/dist/views/Edit/index.css +61 -53
  649. package/dist/views/Edit/index.d.ts.map +1 -1
  650. package/dist/views/Edit/index.js.map +1 -1
  651. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -2
  652. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  653. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  654. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +2 -2
  655. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  656. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  657. package/dist/views/HierarchyList/index.css +1 -1
  658. package/dist/views/List/ListHeader/index.d.ts +1 -10
  659. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  660. package/dist/views/List/ListHeader/index.js +1 -3
  661. package/dist/views/List/ListHeader/index.js.map +1 -1
  662. package/dist/views/List/createSerializableValue.d.ts.map +1 -1
  663. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -1
  664. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -1
  665. package/dist/views/List/generateListViewMetadata.d.ts.map +1 -1
  666. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  667. package/dist/views/List/handleHierarchy.d.ts +1 -1
  668. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  669. package/dist/views/List/index.client.d.ts.map +1 -1
  670. package/dist/views/List/index.client.js +0 -14
  671. package/dist/views/List/index.client.js.map +1 -1
  672. package/dist/views/List/index.css +6 -1
  673. package/dist/views/List/index.d.ts.map +1 -1
  674. package/dist/views/List/index.js +4 -0
  675. package/dist/views/List/index.js.map +1 -1
  676. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  677. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
  678. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -1
  679. package/dist/views/Logout/index.d.ts.map +1 -1
  680. package/dist/views/Logout/index.js +11 -0
  681. package/dist/views/Logout/index.js.map +1 -1
  682. package/dist/views/NotFound/page.d.ts.map +1 -1
  683. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -1
  684. package/dist/views/Root/generatePageMetadata.d.ts.map +1 -1
  685. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts +1 -1
  686. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  687. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  688. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +1 -1
  689. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  690. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  691. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  692. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  693. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  694. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  695. package/dist/views/Root/index.d.ts +12 -1
  696. package/dist/views/Root/index.d.ts.map +1 -1
  697. package/dist/views/Root/index.js +11 -3
  698. package/dist/views/Root/index.js.map +1 -1
  699. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  700. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  701. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  702. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  703. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  704. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  705. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
  706. package/dist/views/Versions/buildColumns.d.ts +1 -1
  707. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  708. package/dist/views/Versions/fetchVersions.d.ts +4 -4
  709. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  710. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
  711. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts +2 -2
  712. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts.map +1 -1
  713. package/dist/widgets/CollectionCards/getCollectionCardsData.js.map +1 -1
  714. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  715. package/dist/widgets/WidgetCard/index.css +1 -1
  716. package/package.json +6 -10
  717. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  718. package/dist/scss/app.scss +0 -183
  719. package/dist/scss/colors.scss +0 -191
  720. package/dist/scss/custom.css +0 -1
  721. package/dist/scss/queries.scss +0 -27
  722. package/dist/scss/styles.scss +0 -9
  723. package/dist/scss/svg.scss +0 -10
  724. package/dist/scss/toastify.scss +0 -61
  725. package/dist/scss/vars.scss +0 -192
  726. package/dist/scss/z-index.scss +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useCallback","useState","Button","FieldDescription","FieldError","FieldLabel","useForm","useField","withCondition","LockIcon","LockOpenIcon","RefreshIcon","useDocumentInfo","useServerFunctions","useTranslation","baseClass","SlugFieldComponent","t0","$","field","path","admin","label","required","useAsSlug","description","placeholder","readOnly","readOnlyFromProps","i18n","t","collectionSlug","globalSlug","slugify","t1","name","t2","fieldPath","setValue","showError","value","getData","getDataByPath","isLocked","setIsLocked","t3","e","preventDefault","valueToSlugify","formattedSlug","data","undefined","handleGenerate","t4","Symbol","for","e_0","_temp","toggleLock","t5","e_1","target","handleChange","isReadOnly","Boolean","t6","filter","join","t7","_jsx","htmlFor","t8","t9","t10","_jsxs","className","children","disabled","id","replace","onChange","type","buttonStyle","icon","margin","onClick","size","SlugField","prev"],"sources":["../../../src/fields/Slug/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SlugFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useState } from 'react'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { LockIcon } from '../../icons/Lock/index.js'\nimport { LockOpenIcon } from '../../icons/LockOpen/index.js'\nimport { RefreshIcon } from '../../icons/Refresh/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'slug-field-component'\n\ntype SlugFieldProps = {\n readonly field: SlugFieldClient\n readonly path?: string\n}\n\n/**\n * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.\n */\nconst SlugFieldComponent: React.FC<SlugFieldProps> = ({ field, path }) => {\n const { admin, label, required, useAsSlug } = field\n const { description, placeholder, readOnly: readOnlyFromProps } = admin || {}\n\n const { i18n, t } = useTranslation()\n\n const { collectionSlug, globalSlug } = useDocumentInfo()\n\n const { slugify } = useServerFunctions()\n\n const {\n path: fieldPath,\n setValue,\n showError,\n value,\n } = useField<string>({ path: path || field.name })\n\n const { getData, getDataByPath } = useForm()\n\n const [isLocked, setIsLocked] = useState(true)\n\n /**\n * This method allows the user to generate their slug on demand, e.g. when they click the \"generate\" button.\n * It uses the `slugify` server function to gain access to their custom slugify function defined in their field config.\n */\n const handleGenerate = useCallback(\n async (e: React.MouseEvent<Element>) => {\n e.preventDefault()\n\n const valueToSlugify = getDataByPath(useAsSlug)\n\n const formattedSlug = await slugify({\n collectionSlug,\n data: getData(),\n globalSlug,\n path: fieldPath,\n valueToSlugify,\n })\n\n if (formattedSlug === null || formattedSlug === undefined) {\n setValue('')\n return\n }\n\n /**\n * The result may be the same as the current value, and if so, we don't want to trigger a re-render.\n */\n if (value !== formattedSlug) {\n setValue(formattedSlug)\n }\n },\n [\n setValue,\n value,\n useAsSlug,\n getData,\n slugify,\n getDataByPath,\n collectionSlug,\n globalSlug,\n fieldPath,\n ],\n )\n\n const toggleLock = useCallback((e: React.MouseEvent<Element>) => {\n e.preventDefault()\n setIsLocked((prev) => !prev)\n }, [])\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value)\n },\n [setValue],\n )\n\n const isReadOnly = Boolean(readOnlyFromProps || isLocked)\n\n return (\n <div\n className={[\n 'field-type',\n baseClass,\n showError && `${baseClass}--error`,\n isLocked && `${baseClass}--locked`,\n readOnlyFromProps && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldLabel htmlFor={`field-${fieldPath}`} label={label} required={required} />\n <div className={`${baseClass}__wrap`}>\n <FieldError path={fieldPath} showError={showError} />\n\n <div\n className={[\n 'form-input-group',\n `${baseClass}__input-container`,\n showError && 'form-input-group-error',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <input\n aria-label={getTranslation(label, i18n) || path}\n className={`form-input ${baseClass}__input`}\n disabled={isReadOnly}\n id={`field-${fieldPath?.replace(/\\./g, '__')}`}\n name={fieldPath}\n onChange={handleChange}\n placeholder={getTranslation(placeholder, i18n)}\n type=\"text\"\n value={value || ''}\n />\n\n {!readOnlyFromProps && (\n <div className={`${baseClass}__actions`}>\n {!isLocked && (\n <Button\n aria-label={t('authentication:generate')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={<RefreshIcon />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-generate`}\n margin={false}\n onClick={handleGenerate}\n />\n )}\n <Button\n aria-label={isLocked ? t('general:unlock') : t('general:lock')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={isLocked ? <LockIcon size={16} /> : <LockOpenIcon size={16} />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-lock`}\n margin={false}\n onClick={toggleLock}\n />\n </div>\n )}\n </div>\n\n <FieldDescription description={description} path={fieldPath} />\n </div>\n </div>\n )\n}\n\nexport const SlugField = withCondition(SlugFieldComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","React","useCallback","useState","toast","Button","FieldDescription","FieldError","FieldLabel","useForm","useField","withCondition","LockIcon","LockOpenIcon","RefreshIcon","useDocumentInfo","useLocale","useServerFunctions","useTranslation","baseClass","SlugFieldComponent","field","path","admin","label","required","useAsSlug","description","placeholder","readOnly","readOnlyFromProps","i18n","t","id","collectionSlug","globalSlug","slugify","code","locale","fieldPath","setValue","showError","value","name","getData","getDataByPath","isLocked","setIsLocked","handleGenerate","e","preventDefault","valueToSlugify","undefined","formattedSlug","data","_err","error","toggleLock","prev","handleChange","target","isReadOnly","Boolean","_jsxs","className","filter","join","_jsx","htmlFor","disabled","replace","onChange","type","buttonStyle","icon","margin","onClick","size","SlugField"],"sources":["../../../src/fields/Slug/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SlugFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { LockIcon } from '../../icons/Lock/index.js'\nimport { LockOpenIcon } from '../../icons/LockOpen/index.js'\nimport { RefreshIcon } from '../../icons/Refresh/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'slug-field-component'\n\ntype SlugFieldProps = {\n readonly field: SlugFieldClient\n readonly path?: string\n}\n\n/**\n * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.\n */\nconst SlugFieldComponent: React.FC<SlugFieldProps> = ({ field, path }) => {\n const { admin, label, required, useAsSlug } = field\n const { description, placeholder, readOnly: readOnlyFromProps } = admin || {}\n\n const { i18n, t } = useTranslation()\n\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n const { slugify } = useServerFunctions()\n\n const { code: locale } = useLocale()\n\n const {\n path: fieldPath,\n setValue,\n showError,\n value,\n } = useField<string>({ path: path || field.name })\n\n const { getData, getDataByPath } = useForm()\n\n const [isLocked, setIsLocked] = useState(true)\n\n /**\n * This method allows the user to generate their slug on demand, e.g. when they click the \"generate\" button.\n * It uses the `slugify` server function to gain access to their custom slugify function defined in their field config.\n */\n const handleGenerate = useCallback(\n async (e: React.MouseEvent<Element>) => {\n e.preventDefault()\n\n const valueToSlugify = useAsSlug ? getDataByPath(useAsSlug) : undefined\n\n let formattedSlug: null | string | undefined\n\n try {\n formattedSlug = await slugify({\n id: id ?? undefined,\n collectionSlug,\n data: getData(),\n globalSlug,\n locale,\n path: fieldPath,\n valueToSlugify,\n })\n } catch (_err) {\n toast.error(t('error:unspecific'))\n return\n }\n\n // Empty only comes back for globals (no counter fallback) — keep the current value. For\n // collections the server returns the `<singular>-N` fallback when there's no source.\n if (formattedSlug === null || formattedSlug === undefined || formattedSlug === '') {\n return\n }\n\n /**\n * The result may be the same as the current value, and if so, we don't want to trigger a re-render.\n */\n if (value !== formattedSlug) {\n setValue(formattedSlug)\n }\n },\n [\n setValue,\n value,\n useAsSlug,\n getData,\n slugify,\n getDataByPath,\n id,\n collectionSlug,\n globalSlug,\n locale,\n fieldPath,\n t,\n ],\n )\n\n const toggleLock = useCallback((e: React.MouseEvent<Element>) => {\n e.preventDefault()\n setIsLocked((prev) => !prev)\n }, [])\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value)\n },\n [setValue],\n )\n\n const isReadOnly = Boolean(readOnlyFromProps || isLocked)\n\n return (\n <div\n className={[\n 'field-type',\n baseClass,\n showError && `${baseClass}--error`,\n isLocked && `${baseClass}--locked`,\n readOnlyFromProps && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldLabel htmlFor={`field-${fieldPath}`} label={label} required={required} />\n <div className={`${baseClass}__wrap`}>\n <FieldError path={fieldPath} showError={showError} />\n\n <div\n className={[\n 'form-input-group',\n `${baseClass}__input-container`,\n showError && 'form-input-group-error',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <input\n aria-label={getTranslation(label, i18n) || path}\n className={`form-input ${baseClass}__input`}\n disabled={isReadOnly}\n id={`field-${fieldPath?.replace(/\\./g, '__')}`}\n name={fieldPath}\n onChange={handleChange}\n placeholder={getTranslation(placeholder, i18n)}\n type=\"text\"\n value={value || ''}\n />\n\n {!readOnlyFromProps && (\n <div className={`${baseClass}__actions`}>\n {!isLocked && (\n <Button\n aria-label={t('authentication:generate')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={<RefreshIcon />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-generate`}\n margin={false}\n onClick={handleGenerate}\n />\n )}\n <Button\n aria-label={isLocked ? t('general:unlock') : t('general:lock')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={isLocked ? <LockIcon size={16} /> : <LockOpenIcon size={16} />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-lock`}\n margin={false}\n onClick={toggleLock}\n />\n </div>\n )}\n </div>\n\n <FieldDescription description={description} path={fieldPath} />\n </div>\n </div>\n )\n}\n\nexport const SlugField = withCondition(SlugFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -5,5 +5,5 @@ import './index.css';
5
5
  export { TabsProvider };
6
6
  export declare const TabsField: React.FC<import("payload").FieldPaths & {
7
7
  readonly field: Omit<import("payload").TabsFieldClient, "type"> & Partial<Pick<import("payload").TabsFieldClient, "type">>;
8
- } & Omit<ClientComponentProps, "field" | "customComponents">>;
8
+ } & Omit<ClientComponentProps, "customComponents" | "field">>;
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -10,5 +10,5 @@ export declare const TextField: React.FC<{
10
10
  readonly validate?: import("payload").TextFieldValidation;
11
11
  } & {
12
12
  readonly field: Omit<import("payload").TextFieldClient, "type"> & Partial<Pick<import("payload").TextFieldClient, "type">>;
13
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
13
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
14
14
  //# sourceMappingURL=index.d.ts.map
@@ -11,5 +11,5 @@ export declare const TextareaField: React.FC<{
11
11
  readonly validate?: TextareaFieldValidation;
12
12
  } & {
13
13
  readonly field: Omit<import("payload").TextareaFieldClient, "type"> & Partial<Pick<import("payload").TextareaFieldClient, "type">>;
14
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
14
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
15
15
  //# sourceMappingURL=index.d.ts.map
@@ -3,13 +3,20 @@
3
3
  display: flex;
4
4
  flex-direction: column;
5
5
  gap: var(--spacer-2);
6
+ container-type: inline-size;
7
+ container-name: upload-dropzone;
8
+ }
9
+
10
+ .upload__dropzoneAndUpload .dropzone.dropzone--style-default {
11
+ padding-block: 0;
6
12
  }
7
13
 
8
14
  .upload__dropzoneContent {
9
15
  display: flex;
10
16
  align-items: center;
11
- justify-content: space-between;
12
- padding: var(--spacer-2-5);
17
+ flex-wrap: wrap;
18
+ row-gap: var(--spacer-2);
19
+ padding: var(--spacer-3);
13
20
  gap: var(--spacer-2);
14
21
  width: 100%;
15
22
  }
@@ -18,6 +25,13 @@
18
25
  display: flex;
19
26
  align-items: center;
20
27
  gap: var(--spacer-2);
28
+ flex-wrap: wrap;
29
+ }
30
+
31
+ @supports (flex-wrap: balance) {
32
+ .upload__dropzoneContent__buttons {
33
+ flex-wrap: balance;
34
+ }
21
35
  }
22
36
 
23
37
  .upload__dropzoneContent__orText {
@@ -26,6 +40,7 @@
26
40
  }
27
41
 
28
42
  .upload__dragAndDropText {
43
+ display: none;
29
44
  flex-shrink: 0;
30
45
  margin: 0;
31
46
  text-transform: lowercase;
@@ -43,9 +58,9 @@
43
58
  border: var(--stroke-width-small) solid var(--color-border);
44
59
  }
45
60
 
46
- @media (max-width: 768px) {
61
+ @container upload-dropzone (min-width: 400px) {
47
62
  .upload__dragAndDropText {
48
- display: none;
63
+ display: block;
49
64
  }
50
65
  }
51
66
  }
@@ -1,3 +1,3 @@
1
1
  import type { ClientField } from 'payload';
2
- export declare const mergeFieldStyles: (field: ClientField | Omit<ClientField, "type">) => React.CSSProperties;
2
+ export declare const mergeFieldStyles: (field: ClientField | Omit<ClientField, 'type'>) => React.CSSProperties;
3
3
  //# sourceMappingURL=mergeFieldStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeFieldStyles.d.ts","sourceRoot":"","sources":["../../src/fields/mergeFieldStyles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,eAAO,MAAM,gBAAgB,GAC3B,OAAO,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,KAC7C,KAAK,CAAC,aAeP,CAAA"}
1
+ {"version":3,"file":"mergeFieldStyles.d.ts","sourceRoot":"","sources":["../../src/fields/mergeFieldStyles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,eAAO,MAAM,gBAAgB,UACpB,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,KAC7C,KAAK,CAAC,aAeP,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAS5C,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAErF,QAAA,MAAM,WAAW,kCAA+B,CAAA;AAChD,QAAA,MAAM,mBAAmB,kCAA+B,CAAA;AACxD,QAAA,MAAM,gBAAgB,kCAA+B,CAAA;AACrD,QAAA,MAAM,gBAAgB,kCAAuB,CAAA;AAC7C,QAAA,MAAM,iBAAiB,kCAAuB,CAAA;AAC9C;;;GAGG;AACH,QAAA,MAAM,2BAA2B,kCAAuB,CAAA;AACxD,QAAA,MAAM,eAAe,kCAAuB,CAAA;AAC5C,QAAA,MAAM,mBAAmB,kCAAuB,CAAA;AAChD,QAAA,MAAM,iBAAiB,+DAAiE,CAAA;AAExF,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAE3D;;;;GAIG;AACH,QAAA,MAAM,OAAO,QAAO,OAA2B,CAAA;AAC/C;;;GAGG;AACH,QAAA,MAAM,eAAe,QAAO,OAAmC,CAAA;AAE/D,QAAA,MAAM,YAAY,QAAO,OAAgC,CAAA;AACzD,QAAA,MAAM,gBAAgB,QAAO,OAAgC,CAAA;AAC7D,QAAA,MAAM,iBAAiB,QAAO,OAAiC,CAAA;AAC/D;;;GAGG;AACH,QAAA,MAAM,2BAA2B,QAAO,OAA2C,CAAA;AACnF,QAAA,MAAM,eAAe,QAAO,OAA+B,CAAA;AAC3D,QAAA,MAAM,mBAAmB,QAAO,OAAmC,CAAA;AAEnE;;;;GAIG;AACH,QAAA,MAAM,aAAa,GAAI,KAAK,GAAG,OAAO,EACpC,UAAU,CAAC,OAAO,EAAE,qBAAqB,KAAK,KAAK,KAClD,KAAwD,CAAA;AAE3D;;;;GAIG;AACH,QAAA,MAAM,gBAAgB,QAAO,qBAA0D,CAAA;AAEvF,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,2BAA2B,EAC3B,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,CAAA"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAS5C,OAAO,KAAK,EAAE,OAAO,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAErF,QAAA,MAAM,WAAW,kCAA+B,CAAA;AAChD,QAAA,MAAM,mBAAmB,kCAA+B,CAAA;AACxD,QAAA,MAAM,gBAAgB,kCAA+B,CAAA;AACrD,QAAA,MAAM,gBAAgB,kCAAuB,CAAA;AAC7C,QAAA,MAAM,iBAAiB,kCAAuB,CAAA;AAC9C;;;GAGG;AACH,QAAA,MAAM,2BAA2B,kCAAuB,CAAA;AACxD,QAAA,MAAM,eAAe,kCAAuB,CAAA;AAC5C,QAAA,MAAM,mBAAmB,kCAAuB,CAAA;AAChD,QAAA,MAAM,iBAAiB,+DAAiE,CAAA;AAExF,MAAM,MAAM,kBAAkB,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAE3D;;;;GAIG;AACH,QAAA,MAAM,OAAO,QAAO,OAA2B,CAAA;AAC/C;;;GAGG;AACH,QAAA,MAAM,eAAe,QAAO,OAAmC,CAAA;AAE/D,QAAA,MAAM,YAAY,QAAO,OAAgC,CAAA;AACzD,QAAA,MAAM,gBAAgB,QAAO,OAAgC,CAAA;AAC7D,QAAA,MAAM,iBAAiB,QAAO,OAAiC,CAAA;AAC/D;;;GAGG;AACH,QAAA,MAAM,2BAA2B,QAAO,OAA2C,CAAA;AACnF,QAAA,MAAM,eAAe,QAAO,OAA+B,CAAA;AAC3D,QAAA,MAAM,mBAAmB,QAAO,OAAmC,CAAA;AAEnE;;;;GAIG;AACH,QAAA,MAAM,aAAa,GAAI,KAAK,GAAG,OAAO,YAC1B,CAAC,OAAO,EAAE,qBAAqB,KAAK,KAAK,KAClD,KAAwD,CAAA;AAE3D;;;;GAIG;AACH,QAAA,MAAM,gBAAgB,QAAO,qBAA0D,CAAA;AAEvF,OAAO,EACL,2BAA2B,EAC3B,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,2BAA2B,EAC3B,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"createNestedClientFieldPath.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/createNestedClientFieldPath.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAI1C,eAAO,MAAM,2BAA2B,GAAI,YAAY,MAAM,EAAE,OAAO,WAAW,KAAG,MAapF,CAAA"}
1
+ {"version":3,"file":"createNestedClientFieldPath.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/createNestedClientFieldPath.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAI1C,eAAO,MAAM,2BAA2B,eAAgB,MAAM,SAAS,WAAW,KAAG,MAapF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"errorMessages.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/errorMessages.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,aAAa;;CAEzB,CAAA"}
1
+ {"version":3,"file":"errorMessages.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/errorMessages.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,aAAa;IACxB,GAAG;CACJ,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fieldReducer.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/fieldReducer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,SAAS,EAAO,MAAM,SAAS,CAAA;AAMxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAO7C;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,CAwb7E"}
1
+ {"version":3,"file":"fieldReducer.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/fieldReducer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,SAAS,EAAO,MAAM,SAAS,CAAA;AAMxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAO7C;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,CA0b7E"}
@@ -207,7 +207,9 @@ export function fieldReducer(state, action) {
207
207
  currentState: state || {},
208
208
  incomingState: serverState
209
209
  });
210
- prevStateRef.current = newState;
210
+ if (prevStateRef) {
211
+ prevStateRef.current = newState;
212
+ }
211
213
  return newState;
212
214
  }
213
215
  case 'MOVE_ROW':
@@ -1 +1 @@
1
- {"version":3,"file":"fieldReducer.js","names":["ObjectIdImport","dequal","deepCopyObjectSimpleWithoutReactComponents","mergeServerFormState","flattenRows","separateRows","ObjectId","default","fieldReducer","state","action","type","blockType","path","rowIndex","rowIndexFromArgs","subFieldState","rows","length","withNewRow","newRow","id","value","toHexString","isLoading","splice","initialValue","valid","remainingFields","siblingRows","newState","passesCondition","disableFormData","errorPaths","errors","forEach","message","fieldPath","errorMessage","segments","split","push","fieldErrorPath","parentPath","slice","join","Object","entries","reduce","acc","fieldState","fieldErrorPaths","errorACC","startsWith","changed","newErrorPaths","Array","isArray","includes","newRows","newRowID","customComponents","RowLabel","newRowState","key","keys","filter","endsWith","idState","newNestedFieldID","isValid","parseInt","parentFieldPath","parentFieldRows","acceptValues","prevStateRef","serverState","currentState","incomingState","current","moveFromIndex","moveToIndex","topLevelRows","copyOfMovingRow","rowsWithinField","copyOfMovingRow2","rowsMetadata","rowIndexArg","Math","max","min","undefined","collapsed","optimize","newField","oldField","sanitize","field","values","updatedRows","isModified","_","fieldWithoutIsModified","formState"],"sources":["../../../src/forms/Form/fieldReducer.ts"],"sourcesContent":["'use client'\nimport type { FormField, FormState, Row } from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport { deepCopyObjectSimpleWithoutReactComponents } from 'payload/shared'\n\nimport type { FieldAction } from './types.js'\n\nimport { mergeServerFormState } from './mergeServerFormState.js'\nimport { flattenRows, separateRows } from './rows.js'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\n/**\n * Reducer which modifies the form field state (all the current data of the fields in the form). When called using dispatch, it will return a new state object.\n */\nexport function fieldReducer(state: FormState, action: FieldAction): FormState {\n switch (action.type) {\n case 'ADD_ROW': {\n const { blockType, path, rowIndex: rowIndexFromArgs, subFieldState = {} } = action\n\n const rowIndex =\n typeof rowIndexFromArgs === 'number' ? rowIndexFromArgs : state[path]?.rows?.length || 0\n\n const withNewRow = [...(state[path]?.rows || [])]\n\n const newRow: Row = {\n id: (subFieldState?.id?.value as string) || new ObjectId().toHexString(),\n isLoading: true,\n }\n\n if (blockType) {\n newRow.blockType = blockType\n }\n\n withNewRow.splice(rowIndex, 0, newRow)\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // add new row to array _field state_\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n\n siblingRows.splice(rowIndex, 0, subFieldState)\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [`${path}.${rowIndex}.id`]: {\n initialValue: newRow.id,\n passesCondition: true,\n valid: true,\n value: newRow.id,\n },\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: withNewRow,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'ADD_SERVER_ERRORS': {\n let newState = { ...state }\n\n const errorPaths: { fieldErrorPath: string; parentPath: string }[] = []\n\n action.errors.forEach(({ message, path: fieldPath }) => {\n newState[fieldPath] = {\n ...(newState[fieldPath] || {\n initialValue: null,\n value: null,\n }),\n errorMessage: message,\n valid: false,\n }\n\n const segments = fieldPath.split('.')\n if (segments.length > 1) {\n errorPaths.push({\n fieldErrorPath: fieldPath,\n parentPath: segments.slice(0, segments.length - 1).join('.'),\n })\n }\n })\n\n newState = Object.entries(newState).reduce((acc, [path, fieldState]) => {\n const fieldErrorPaths = errorPaths.reduce((errorACC, { fieldErrorPath, parentPath }) => {\n if (parentPath.startsWith(path)) {\n errorACC.push(fieldErrorPath)\n }\n return errorACC\n }, [])\n\n let changed = false\n\n if (fieldErrorPaths.length > 0) {\n const newErrorPaths = Array.isArray(fieldState.errorPaths) ? fieldState.errorPaths : []\n\n fieldErrorPaths.forEach((fieldErrorPath) => {\n if (!newErrorPaths.includes(fieldErrorPath)) {\n newErrorPaths.push(fieldErrorPath)\n changed = true\n }\n })\n\n if (changed) {\n acc[path] = {\n ...fieldState,\n errorPaths: newErrorPaths,\n }\n }\n }\n\n if (!changed) {\n acc[path] = fieldState\n }\n\n return acc\n }, {})\n\n return newState\n }\n\n /**\n * Duplicates a row in an array or blocks field.\n * It needs to manipulate two distinct parts of the form state:\n * - The `rows` property of the parent field, e.g. `array.rows`, `blocks.rows`, etc.\n * - The row's state, e.g. `array.0.id`, `array.0.text`, etc.\n */\n case 'DUPLICATE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n\n // 1. Duplicate the `rows` property of the parent field, e.g. `array.rows`, `blocks.rows`, etc.\n const newRows = [...(state[path].rows || [])]\n\n const newRow = deepCopyObjectSimpleWithoutReactComponents(newRows[rowIndex])\n\n const newRowID = new ObjectId().toHexString()\n\n if (newRow.id) {\n newRow.id = newRowID\n }\n\n if (newRows[rowIndex]?.customComponents?.RowLabel) {\n newRow.customComponents = {\n RowLabel: newRows[rowIndex].customComponents.RowLabel,\n }\n }\n\n // 2. Duplicate the row's state, e.g. `array.0.id`, `array.0.text`, etc.\n const newRowState = deepCopyObjectSimpleWithoutReactComponents(rows[rowIndex])\n\n // Ensure that `id` in form state exactly matches the row id on the parent field\n if (newRowState.id) {\n newRowState.id.value = newRowID\n newRowState.id.initialValue = newRowID\n }\n\n // Generate new ids for all nested id fields, e.g. `array.0.nestedArray.0.id`\n for (const key of Object.keys(newRowState).filter((key) => key.endsWith('.id'))) {\n const idState = newRowState[key]\n\n const newNestedFieldID = new ObjectId().toHexString()\n\n if (idState && typeof idState.value === 'string' && ObjectId.isValid(idState.value)) {\n newRowState[key].value = newNestedFieldID\n newRowState[key].initialValue = newNestedFieldID\n\n // Apply the ID to its corresponding parent field's rows, e.g. `array.0.nestedArray.rows[0].id`\n const segments = key.split('.')\n const rowIndex = parseInt(segments[segments.length - 2], 10)\n const parentFieldPath = segments.slice(0, segments.length - 2).join('.')\n const parentFieldRows = newRowState?.[parentFieldPath]?.rows\n\n if (newRowState[parentFieldPath] && Array.isArray(parentFieldRows)) {\n if (!parentFieldRows[rowIndex]) {\n parentFieldRows[rowIndex] = {\n id: newNestedFieldID,\n }\n } else {\n parentFieldRows[rowIndex].id = newNestedFieldID\n }\n }\n }\n }\n\n // If there are subfields\n if (Object.keys(newRowState).length > 0) {\n // Add new object containing subfield names to unflattenedRows array\n rows.splice(rowIndex + 1, 0, newRowState)\n newRows.splice(rowIndex + 1, 0, newRow)\n }\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: newRows,\n value: rows.length,\n },\n }\n\n return newState\n }\n\n case 'MERGE_SERVER_STATE': {\n const { acceptValues, prevStateRef, serverState } = action\n\n const newState = mergeServerFormState({\n acceptValues,\n currentState: state || {},\n incomingState: serverState,\n })\n\n prevStateRef.current = newState\n\n return newState\n }\n\n case 'MOVE_ROW': {\n const { moveFromIndex, moveToIndex, path } = action\n\n // Handle moving rows on the top-level, i.e. `array.0.text` -> `array.1.text`\n const { remainingFields, rows: topLevelRows } = separateRows(path, state)\n const copyOfMovingRow = topLevelRows[moveFromIndex]\n topLevelRows.splice(moveFromIndex, 1)\n topLevelRows.splice(moveToIndex, 0, copyOfMovingRow)\n\n // modify array/block internal row state (i.e. collapsed, blockType)\n const rowsWithinField = [...(state[path]?.rows || [])]\n const copyOfMovingRow2 = { ...rowsWithinField[moveFromIndex] }\n rowsWithinField.splice(moveFromIndex, 1)\n rowsWithinField.splice(moveToIndex, 0, copyOfMovingRow2)\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, topLevelRows),\n [path]: {\n ...state[path],\n rows: rowsWithinField,\n },\n }\n\n return newState\n }\n\n case 'REMOVE': {\n const newState = { ...state }\n if (newState[action.path]) {\n delete newState[action.path]\n }\n return newState\n }\n\n case 'REMOVE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path]?.rows || [])]\n\n rows.splice(rowIndex, 1)\n rowsMetadata.splice(rowIndex, 1)\n\n const newState: FormState = {\n ...remainingFields,\n [path]: {\n ...state[path],\n disableFormData: rows.length > 0,\n rows: rowsMetadata,\n value: rows.length,\n },\n ...flattenRows(path, rows),\n }\n\n return newState\n }\n\n case 'REPLACE_ROW': {\n const { blockType, path, rowIndex: rowIndexArg, subFieldState = {} } = action\n\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n const rowIndex = Math.max(0, Math.min(rowIndexArg, siblingRows?.length - 1 || 0))\n\n const rowsMetadata = [...(state[path]?.rows || [])]\n rowsMetadata[rowIndex] = {\n id: new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // replace form _field state_\n siblingRows[rowIndex] = subFieldState\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'REPLACE_STATE': {\n if (action.optimize !== false) {\n // Only update fields that have changed\n // by comparing old value / initialValue to new\n // ..\n // This is a performance enhancement for saving\n // large documents with hundreds of fields\n const newState: FormState = {}\n\n for (const [path, newField] of Object.entries(action.state)) {\n const oldField = state[path]\n\n if (newField.valid !== false) {\n newField.valid = true\n }\n if (newField.passesCondition !== false) {\n newField.passesCondition = true\n }\n\n if (!dequal(oldField, newField)) {\n newState[path] = newField\n } else if (oldField) {\n newState[path] = oldField\n }\n }\n\n return newState\n }\n\n // TODO: Remove this in 4.0 - this is a temporary fix to prevent a breaking change\n if (action.sanitize) {\n for (const field of Object.values(action.state)) {\n if (field.valid !== false) {\n field.valid = true\n }\n if (field.passesCondition !== false) {\n field.passesCondition = true\n }\n }\n }\n // If we're not optimizing, just set the state to the new state\n return action.state\n }\n\n case 'SET_ALL_ROWS_COLLAPSED': {\n const { path, updatedRows } = action\n\n return {\n ...state,\n [path]: {\n ...state[path],\n rows: updatedRows,\n },\n }\n }\n\n case 'SET_ROW_COLLAPSED': {\n const { path, updatedRows } = action\n\n const newState = {\n ...state,\n [path]: {\n ...state[path],\n rows: updatedRows,\n },\n }\n\n return newState\n }\n\n case 'UPDATE': {\n const newField = Object.entries(action).reduce(\n (field, [key, value]) => {\n if (\n [\n 'disableFormData',\n 'errorMessage',\n 'initialValue',\n 'rows',\n 'valid',\n 'validate',\n 'value',\n ].includes(key)\n ) {\n return {\n ...field,\n [key]: value,\n ...(key === 'value' ? { isModified: true } : {}),\n }\n }\n\n return field\n },\n state?.[action.path] || ({} as FormField),\n )\n\n const newState = {\n ...state,\n [action.path]: newField,\n }\n\n // reset `isModified` in all other fields\n // Use destructuring instead of delete to avoid mutating field objects\n // shared with the previous state (shallow copy shares references)\n if ('value' in action) {\n for (const [path, field] of Object.entries(newState)) {\n if (path !== action.path && 'isModified' in field) {\n const { isModified: _, ...fieldWithoutIsModified } = field\n newState[path] = fieldWithoutIsModified as typeof field\n }\n }\n }\n\n return newState\n }\n\n case 'UPDATE_MANY': {\n const newState = { ...state }\n\n Object.entries(action.formState).forEach(([path, field]) => {\n newState[path] = field\n })\n\n return newState\n }\n\n default: {\n return state\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"fieldReducer.js","names":["ObjectIdImport","dequal","deepCopyObjectSimpleWithoutReactComponents","mergeServerFormState","flattenRows","separateRows","ObjectId","default","fieldReducer","state","action","type","blockType","path","rowIndex","rowIndexFromArgs","subFieldState","rows","length","withNewRow","newRow","id","value","toHexString","isLoading","splice","initialValue","valid","remainingFields","siblingRows","newState","passesCondition","disableFormData","errorPaths","errors","forEach","message","fieldPath","errorMessage","segments","split","push","fieldErrorPath","parentPath","slice","join","Object","entries","reduce","acc","fieldState","fieldErrorPaths","errorACC","startsWith","changed","newErrorPaths","Array","isArray","includes","newRows","newRowID","customComponents","RowLabel","newRowState","key","keys","filter","endsWith","idState","newNestedFieldID","isValid","parseInt","parentFieldPath","parentFieldRows","acceptValues","prevStateRef","serverState","currentState","incomingState","current","moveFromIndex","moveToIndex","topLevelRows","copyOfMovingRow","rowsWithinField","copyOfMovingRow2","rowsMetadata","rowIndexArg","Math","max","min","undefined","collapsed","optimize","newField","oldField","sanitize","field","values","updatedRows","isModified","_","fieldWithoutIsModified","formState"],"sources":["../../../src/forms/Form/fieldReducer.ts"],"sourcesContent":["'use client'\nimport type { FormField, FormState, Row } from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport { deepCopyObjectSimpleWithoutReactComponents } from 'payload/shared'\n\nimport type { FieldAction } from './types.js'\n\nimport { mergeServerFormState } from './mergeServerFormState.js'\nimport { flattenRows, separateRows } from './rows.js'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\n/**\n * Reducer which modifies the form field state (all the current data of the fields in the form). When called using dispatch, it will return a new state object.\n */\nexport function fieldReducer(state: FormState, action: FieldAction): FormState {\n switch (action.type) {\n case 'ADD_ROW': {\n const { blockType, path, rowIndex: rowIndexFromArgs, subFieldState = {} } = action\n\n const rowIndex =\n typeof rowIndexFromArgs === 'number' ? rowIndexFromArgs : state[path]?.rows?.length || 0\n\n const withNewRow = [...(state[path]?.rows || [])]\n\n const newRow: Row = {\n id: (subFieldState?.id?.value as string) || new ObjectId().toHexString(),\n isLoading: true,\n }\n\n if (blockType) {\n newRow.blockType = blockType\n }\n\n withNewRow.splice(rowIndex, 0, newRow)\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // add new row to array _field state_\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n\n siblingRows.splice(rowIndex, 0, subFieldState)\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [`${path}.${rowIndex}.id`]: {\n initialValue: newRow.id,\n passesCondition: true,\n valid: true,\n value: newRow.id,\n },\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: withNewRow,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'ADD_SERVER_ERRORS': {\n let newState = { ...state }\n\n const errorPaths: { fieldErrorPath: string; parentPath: string }[] = []\n\n action.errors.forEach(({ message, path: fieldPath }) => {\n newState[fieldPath] = {\n ...(newState[fieldPath] || {\n initialValue: null,\n value: null,\n }),\n errorMessage: message,\n valid: false,\n }\n\n const segments = fieldPath.split('.')\n if (segments.length > 1) {\n errorPaths.push({\n fieldErrorPath: fieldPath,\n parentPath: segments.slice(0, segments.length - 1).join('.'),\n })\n }\n })\n\n newState = Object.entries(newState).reduce((acc, [path, fieldState]) => {\n const fieldErrorPaths = errorPaths.reduce((errorACC, { fieldErrorPath, parentPath }) => {\n if (parentPath.startsWith(path)) {\n errorACC.push(fieldErrorPath)\n }\n return errorACC\n }, [])\n\n let changed = false\n\n if (fieldErrorPaths.length > 0) {\n const newErrorPaths = Array.isArray(fieldState.errorPaths) ? fieldState.errorPaths : []\n\n fieldErrorPaths.forEach((fieldErrorPath) => {\n if (!newErrorPaths.includes(fieldErrorPath)) {\n newErrorPaths.push(fieldErrorPath)\n changed = true\n }\n })\n\n if (changed) {\n acc[path] = {\n ...fieldState,\n errorPaths: newErrorPaths,\n }\n }\n }\n\n if (!changed) {\n acc[path] = fieldState\n }\n\n return acc\n }, {})\n\n return newState\n }\n\n /**\n * Duplicates a row in an array or blocks field.\n * It needs to manipulate two distinct parts of the form state:\n * - The `rows` property of the parent field, e.g. `array.rows`, `blocks.rows`, etc.\n * - The row's state, e.g. `array.0.id`, `array.0.text`, etc.\n */\n case 'DUPLICATE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n\n // 1. Duplicate the `rows` property of the parent field, e.g. `array.rows`, `blocks.rows`, etc.\n const newRows = [...(state[path].rows || [])]\n\n const newRow = deepCopyObjectSimpleWithoutReactComponents(newRows[rowIndex])\n\n const newRowID = new ObjectId().toHexString()\n\n if (newRow.id) {\n newRow.id = newRowID\n }\n\n if (newRows[rowIndex]?.customComponents?.RowLabel) {\n newRow.customComponents = {\n RowLabel: newRows[rowIndex].customComponents.RowLabel,\n }\n }\n\n // 2. Duplicate the row's state, e.g. `array.0.id`, `array.0.text`, etc.\n const newRowState = deepCopyObjectSimpleWithoutReactComponents(rows[rowIndex])\n\n // Ensure that `id` in form state exactly matches the row id on the parent field\n if (newRowState.id) {\n newRowState.id.value = newRowID\n newRowState.id.initialValue = newRowID\n }\n\n // Generate new ids for all nested id fields, e.g. `array.0.nestedArray.0.id`\n for (const key of Object.keys(newRowState).filter((key) => key.endsWith('.id'))) {\n const idState = newRowState[key]\n\n const newNestedFieldID = new ObjectId().toHexString()\n\n if (idState && typeof idState.value === 'string' && ObjectId.isValid(idState.value)) {\n newRowState[key].value = newNestedFieldID\n newRowState[key].initialValue = newNestedFieldID\n\n // Apply the ID to its corresponding parent field's rows, e.g. `array.0.nestedArray.rows[0].id`\n const segments = key.split('.')\n const rowIndex = parseInt(segments[segments.length - 2], 10)\n const parentFieldPath = segments.slice(0, segments.length - 2).join('.')\n const parentFieldRows = newRowState?.[parentFieldPath]?.rows\n\n if (newRowState[parentFieldPath] && Array.isArray(parentFieldRows)) {\n if (!parentFieldRows[rowIndex]) {\n parentFieldRows[rowIndex] = {\n id: newNestedFieldID,\n }\n } else {\n parentFieldRows[rowIndex].id = newNestedFieldID\n }\n }\n }\n }\n\n // If there are subfields\n if (Object.keys(newRowState).length > 0) {\n // Add new object containing subfield names to unflattenedRows array\n rows.splice(rowIndex + 1, 0, newRowState)\n newRows.splice(rowIndex + 1, 0, newRow)\n }\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: newRows,\n value: rows.length,\n },\n }\n\n return newState\n }\n\n case 'MERGE_SERVER_STATE': {\n const { acceptValues, prevStateRef, serverState } = action\n\n const newState = mergeServerFormState({\n acceptValues,\n currentState: state || {},\n incomingState: serverState,\n })\n\n if (prevStateRef) {\n prevStateRef.current = newState\n }\n\n return newState\n }\n\n case 'MOVE_ROW': {\n const { moveFromIndex, moveToIndex, path } = action\n\n // Handle moving rows on the top-level, i.e. `array.0.text` -> `array.1.text`\n const { remainingFields, rows: topLevelRows } = separateRows(path, state)\n const copyOfMovingRow = topLevelRows[moveFromIndex]\n topLevelRows.splice(moveFromIndex, 1)\n topLevelRows.splice(moveToIndex, 0, copyOfMovingRow)\n\n // modify array/block internal row state (i.e. collapsed, blockType)\n const rowsWithinField = [...(state[path]?.rows || [])]\n const copyOfMovingRow2 = { ...rowsWithinField[moveFromIndex] }\n rowsWithinField.splice(moveFromIndex, 1)\n rowsWithinField.splice(moveToIndex, 0, copyOfMovingRow2)\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, topLevelRows),\n [path]: {\n ...state[path],\n rows: rowsWithinField,\n },\n }\n\n return newState\n }\n\n case 'REMOVE': {\n const newState = { ...state }\n if (newState[action.path]) {\n delete newState[action.path]\n }\n return newState\n }\n\n case 'REMOVE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path]?.rows || [])]\n\n rows.splice(rowIndex, 1)\n rowsMetadata.splice(rowIndex, 1)\n\n const newState: FormState = {\n ...remainingFields,\n [path]: {\n ...state[path],\n disableFormData: rows.length > 0,\n rows: rowsMetadata,\n value: rows.length,\n },\n ...flattenRows(path, rows),\n }\n\n return newState\n }\n\n case 'REPLACE_ROW': {\n const { blockType, path, rowIndex: rowIndexArg, subFieldState = {} } = action\n\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n const rowIndex = Math.max(0, Math.min(rowIndexArg, siblingRows?.length - 1 || 0))\n\n const rowsMetadata = [...(state[path]?.rows || [])]\n rowsMetadata[rowIndex] = {\n id: new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // replace form _field state_\n siblingRows[rowIndex] = subFieldState\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'REPLACE_STATE': {\n if (action.optimize !== false) {\n // Only update fields that have changed\n // by comparing old value / initialValue to new\n // ..\n // This is a performance enhancement for saving\n // large documents with hundreds of fields\n const newState: FormState = {}\n\n for (const [path, newField] of Object.entries(action.state)) {\n const oldField = state[path]\n\n if (newField.valid !== false) {\n newField.valid = true\n }\n if (newField.passesCondition !== false) {\n newField.passesCondition = true\n }\n\n if (!dequal(oldField, newField)) {\n newState[path] = newField\n } else if (oldField) {\n newState[path] = oldField\n }\n }\n\n return newState\n }\n\n // TODO: Remove this in 4.0 - this is a temporary fix to prevent a breaking change\n if (action.sanitize) {\n for (const field of Object.values(action.state)) {\n if (field.valid !== false) {\n field.valid = true\n }\n if (field.passesCondition !== false) {\n field.passesCondition = true\n }\n }\n }\n // If we're not optimizing, just set the state to the new state\n return action.state\n }\n\n case 'SET_ALL_ROWS_COLLAPSED': {\n const { path, updatedRows } = action\n\n return {\n ...state,\n [path]: {\n ...state[path],\n rows: updatedRows,\n },\n }\n }\n\n case 'SET_ROW_COLLAPSED': {\n const { path, updatedRows } = action\n\n const newState = {\n ...state,\n [path]: {\n ...state[path],\n rows: updatedRows,\n },\n }\n\n return newState\n }\n\n case 'UPDATE': {\n const newField = Object.entries(action).reduce(\n (field, [key, value]) => {\n if (\n [\n 'disableFormData',\n 'errorMessage',\n 'initialValue',\n 'rows',\n 'valid',\n 'validate',\n 'value',\n ].includes(key)\n ) {\n return {\n ...field,\n [key]: value,\n ...(key === 'value' ? { isModified: true } : {}),\n }\n }\n\n return field\n },\n state?.[action.path] || ({} as FormField),\n )\n\n const newState = {\n ...state,\n [action.path]: newField,\n }\n\n // reset `isModified` in all other fields\n // Use destructuring instead of delete to avoid mutating field objects\n // shared with the previous state (shallow copy shares references)\n if ('value' in action) {\n for (const [path, field] of Object.entries(newState)) {\n if (path !== action.path && 'isModified' in field) {\n const { isModified: _, ...fieldWithoutIsModified } = field\n newState[path] = fieldWithoutIsModified as typeof field\n }\n }\n }\n\n return newState\n }\n\n case 'UPDATE_MANY': {\n const newState = { ...state }\n\n Object.entries(action.formState).forEach(([path, field]) => {\n newState[path] = field\n })\n\n return newState\n }\n\n default: {\n return state\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAGV,SAAS,EAIV,MAAM,YAAY,CAAA;AAqCnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CA+1BpC,CAAA;AAED,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAGV,SAAS,EAIV,MAAM,YAAY,CAAA;AAsCnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CA21BpC,CAAA;AAED,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -14,6 +14,7 @@ import { useThrottledEffect } from '../../hooks/useThrottledEffect.js';
14
14
  import { useAuth } from '../../providers/Auth/index.js';
15
15
  import { useConfig } from '../../providers/Config/index.js';
16
16
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
17
+ import { useFormErrorHandler } from '../../providers/FormErrorHandler/index.js';
17
18
  import { useLocale } from '../../providers/Locale/index.js';
18
19
  import { useOperation } from '../../providers/Operation/index.js';
19
20
  import { useRouter } from '../../providers/RouterAdapter/index.js';
@@ -74,6 +75,7 @@ export const Form = props => {
74
75
  refreshCookie,
75
76
  user
76
77
  } = useAuth();
78
+ const onNonFieldError = useFormErrorHandler();
77
79
  const operation = useOperation();
78
80
  const {
79
81
  queueTask
@@ -409,6 +411,12 @@ export const Form = props => {
409
411
  errors: fieldErrors
410
412
  });
411
413
  nonFieldErrors.forEach(err_1 => {
414
+ // Pass overridesFromArgs (not the computed overrides) so a retry re-evaluates any function overrides against current fields.
415
+ if (onNonFieldError?.(err_1, () => void submit({
416
+ overrides: overridesFromArgs
417
+ }))) {
418
+ return;
419
+ }
412
420
  errorToast(/*#__PURE__*/_jsx(FieldErrorsToast, {
413
421
  errorMessage: err_1.message || t('error:unknown')
414
422
  }));
@@ -429,7 +437,7 @@ export const Form = props => {
429
437
  setDisabled(false);
430
438
  errorToast(err.message);
431
439
  }
432
- }, [beforeSubmit, startRouteTransition, action, disableSuccessStatus, disableValidationOnSubmit, disabled, dispatchFields, handleResponse, method, onSubmit, onSuccess, redirect, router, t, i18n, validateDrafts, waitForAutocomplete, setModified, setSubmitted]);
440
+ }, [beforeSubmit, startRouteTransition, action, disableSuccessStatus, disableValidationOnSubmit, disabled, dispatchFields, handleResponse, method, onSubmit, onSuccess, redirect, router, t, i18n, validateDrafts, waitForAutocomplete, setModified, setSubmitted, onNonFieldError]);
433
441
  const getFields = useCallback(() => contextRef.current.fields, []);
434
442
  const getField = useCallback(path_0 => contextRef.current.fields[path_0], []);
435
443
  const getData = useCallback(() => reduceFieldsToValues(contextRef.current.fields, true), []);
@@ -447,21 +455,10 @@ export const Form = props => {
447
455
  collectionSlug
448
456
  });
449
457
  if (typeof handler === 'function') {
450
- let filename = file.name;
451
- const clientUploadContext = await handler({
458
+ file = JSON.stringify(await handler({
452
459
  docPrefix: typeof data_5?.prefix === 'string' ? data_5.prefix : undefined,
453
- file,
454
- updateFilename: value_0 => {
455
- filename = value_0;
456
- }
457
- });
458
- file = JSON.stringify({
459
- clientUploadContext,
460
- collectionSlug,
461
- filename,
462
- mimeType: file.type,
463
- size: file.size
464
- });
460
+ file
461
+ }));
465
462
  }
466
463
  }
467
464
  if (mergeOverrideData) {