@payloadcms/ui 4.0.0-internal.011fd46 → 4.0.0-internal.078835b

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 (927) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/css/colors.css +3 -0
  3. package/dist/css/forms.css +6 -3
  4. package/dist/css/theme.css +2 -1
  5. package/dist/css/utilities.css +3 -2
  6. package/dist/css/z-index.css +9 -0
  7. package/dist/elements/APIKeyInput/index.css +4 -4
  8. package/dist/elements/AddNewRelation/index.css +28 -28
  9. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  10. package/dist/elements/AppHeader/index.css +2 -15
  11. package/dist/elements/AppHeader/index.d.ts +2 -1
  12. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  13. package/dist/elements/AppHeader/index.js +13 -8
  14. package/dist/elements/AppHeader/index.js.map +1 -1
  15. package/dist/elements/ArrayAction/index.js +2 -2
  16. package/dist/elements/ArrayAction/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/ActionsBar/index.css +4 -8
  18. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +1 -5
  19. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +15 -22
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.css +14 -8
  23. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -2
  24. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  25. package/dist/elements/BulkUpload/AddFilesView/index.js +41 -36
  26. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  27. package/dist/elements/BulkUpload/AddingFilesView/index.css +158 -6
  28. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +5 -1
  29. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  30. package/dist/elements/BulkUpload/AddingFilesView/index.js +134 -65
  31. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  33. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditForm/index.d.ts +1 -1
  35. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  36. package/dist/elements/BulkUpload/EditForm/index.js +16 -17
  37. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/EditForm/types.d.ts +2 -3
  39. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -1
  40. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  41. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  42. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +78 -64
  43. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  44. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  45. package/dist/elements/BulkUpload/EditMany/index.js +28 -10
  46. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  47. package/dist/elements/BulkUpload/FileSidebar/index.css +63 -143
  48. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  49. package/dist/elements/BulkUpload/FileSidebar/index.js +42 -175
  50. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  51. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  52. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  53. package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
  54. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  55. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  56. package/dist/elements/BulkUpload/FormsManager/index.js +15 -2
  57. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  58. package/dist/elements/BulkUpload/index.css +48 -0
  59. package/dist/elements/BulkUpload/index.d.ts +6 -5
  60. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  61. package/dist/elements/BulkUpload/index.js +42 -41
  62. package/dist/elements/BulkUpload/index.js.map +1 -1
  63. package/dist/elements/Button/index.d.ts.map +1 -1
  64. package/dist/elements/Button/index.js +5 -0
  65. package/dist/elements/Button/index.js.map +1 -1
  66. package/dist/elements/Card/index.css +1 -1
  67. package/dist/elements/ClipboardAction/ClipboardActionLabel.d.ts.map +1 -1
  68. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  69. package/dist/elements/ClipboardAction/index.js +1 -0
  70. package/dist/elements/ClipboardAction/index.js.map +1 -1
  71. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  72. package/dist/elements/CodeEditor/index.css +5 -0
  73. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  74. package/dist/elements/Collapsible/index.js +2 -0
  75. package/dist/elements/Collapsible/index.js.map +1 -1
  76. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  77. package/dist/elements/ColumnSelection/Popup.js +5 -1
  78. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  79. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +10 -0
  80. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +1 -0
  81. package/dist/elements/ColumnSelection/matchesColumnSearch.js +21 -0
  82. package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +1 -0
  83. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js +87 -0
  84. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js.map +1 -0
  85. package/dist/elements/CopyLocaleData/index.js +1 -1
  86. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  87. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  88. package/dist/elements/CreateDocumentButton/index.js +0 -1
  89. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  90. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  91. package/dist/elements/DatePicker/getFormattedLocale.d.ts.map +1 -1
  92. package/dist/elements/DatePicker/index.css +9 -9
  93. package/dist/elements/DatePicker/index.js +1 -1
  94. package/dist/elements/DatePicker/index.js.map +1 -1
  95. package/dist/elements/Dialog/DialogHeader/index.d.ts +4 -0
  96. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -1
  97. package/dist/elements/Dialog/DialogHeader/index.js +45 -30
  98. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  99. package/dist/elements/Dialog/DialogModal/index.d.ts +5 -0
  100. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  101. package/dist/elements/Dialog/DialogModal/index.js +58 -31
  102. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  103. package/dist/elements/Dialog/DialogTitle/index.css +9 -0
  104. package/dist/elements/Dialog/DialogTitle/index.d.ts +5 -0
  105. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -0
  106. package/dist/elements/Dialog/DialogTitle/index.js +10 -0
  107. package/dist/elements/Dialog/DialogTitle/index.js.map +1 -0
  108. package/dist/elements/Dialog/index.css +7 -1
  109. package/dist/elements/DocumentControls/index.css +1 -3
  110. package/dist/elements/DocumentControls/index.d.ts +2 -2
  111. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  112. package/dist/elements/DocumentControls/index.js +11 -1
  113. package/dist/elements/DocumentControls/index.js.map +1 -1
  114. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +2 -2
  115. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  116. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  117. package/dist/elements/DocumentFields/index.css +14 -2
  118. package/dist/elements/DocumentFields/index.d.ts +5 -0
  119. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  120. package/dist/elements/DocumentFields/index.js +9 -1
  121. package/dist/elements/DocumentFields/index.js.map +1 -1
  122. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts +12 -0
  123. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts.map +1 -0
  124. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +28 -0
  125. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -0
  126. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  127. package/dist/elements/DocumentHeader/index.js +2 -3
  128. package/dist/elements/DocumentHeader/index.js.map +1 -1
  129. package/dist/elements/DocumentLocked/index.d.ts +2 -2
  130. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  131. package/dist/elements/DocumentLocked/index.js.map +1 -1
  132. package/dist/elements/DraggableSortable/DragOverlayPreview/index.css +1 -1
  133. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  134. package/dist/elements/Drawer/index.d.ts.map +1 -1
  135. package/dist/elements/Drawer/index.js +1 -0
  136. package/dist/elements/Drawer/index.js.map +1 -1
  137. package/dist/elements/Drawer/useDrawerSlug.d.ts.map +1 -1
  138. package/dist/elements/DrawerActionHeader/index.css +1 -1
  139. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -1
  140. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.css +7 -1
  141. package/dist/elements/DrawerHeader/index.d.ts +10 -0
  142. package/dist/elements/DrawerHeader/index.d.ts.map +1 -0
  143. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.js +16 -11
  144. package/dist/elements/DrawerHeader/index.js.map +1 -0
  145. package/dist/elements/Dropzone/index.css +5 -13
  146. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +1 -1
  147. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  148. package/dist/elements/EditUpload/index.css +97 -158
  149. package/dist/elements/EditUpload/index.d.ts +2 -1
  150. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  151. package/dist/elements/EditUpload/index.js +209 -231
  152. package/dist/elements/EditUpload/index.js.map +1 -1
  153. package/dist/elements/EditUpload/{library.scss → library.css} +108 -46
  154. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  155. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  156. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  157. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  158. package/dist/elements/FileDetails/FileMeta/index.css +27 -0
  159. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  160. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  161. package/dist/elements/FileDetails/FileMeta/index.js +1 -1
  162. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  163. package/dist/elements/FileDetails/StaticFileDetails/index.css +140 -0
  164. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +2 -2
  165. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  166. package/dist/elements/FileDetails/StaticFileDetails/index.js +1 -1
  167. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  168. package/dist/elements/FileDetails/index.d.ts +1 -1
  169. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  170. package/dist/elements/FileDetails/index.js.map +1 -1
  171. package/dist/elements/FileManager/FilePreview/AudioPreview/index.css +8 -0
  172. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts +10 -0
  173. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts.map +1 -0
  174. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js +24 -0
  175. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js.map +1 -0
  176. package/dist/elements/FileManager/FilePreview/PdfPreview/index.css +9 -0
  177. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts +12 -0
  178. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts.map +1 -0
  179. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js +27 -0
  180. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js.map +1 -0
  181. package/dist/elements/FileManager/FilePreview/VideoPreview/index.css +8 -0
  182. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts +10 -0
  183. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts.map +1 -0
  184. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js +24 -0
  185. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js.map +1 -0
  186. package/dist/elements/FileManager/FilePreview/index.css +83 -0
  187. package/dist/elements/FileManager/FilePreview/index.d.ts +13 -0
  188. package/dist/elements/FileManager/FilePreview/index.d.ts.map +1 -0
  189. package/dist/elements/FileManager/FilePreview/index.js +140 -0
  190. package/dist/elements/FileManager/FilePreview/index.js.map +1 -0
  191. package/dist/elements/FileManager/FileToolbar/index.css +91 -0
  192. package/dist/elements/FileManager/FileToolbar/index.d.ts +14 -0
  193. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -0
  194. package/dist/elements/FileManager/FileToolbar/index.js +106 -0
  195. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -0
  196. package/dist/elements/FileManager/index.css +154 -0
  197. package/dist/elements/FileManager/index.d.ts +19 -0
  198. package/dist/elements/FileManager/index.d.ts.map +1 -0
  199. package/dist/elements/FileManager/index.js +424 -0
  200. package/dist/elements/FileManager/index.js.map +1 -0
  201. package/dist/elements/GroupBy/Popup.d.ts.map +1 -1
  202. package/dist/elements/GroupBy/Popup.js +0 -1
  203. package/dist/elements/GroupBy/Popup.js.map +1 -1
  204. package/dist/elements/HTMLDiff/diff/index.d.ts.map +1 -1
  205. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  206. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +5 -3
  207. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +1 -0
  208. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  209. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +1 -1
  210. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  211. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  212. package/dist/elements/Hierarchy/DocHeaderButton/index.js +12 -12
  213. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  214. package/dist/elements/Hierarchy/Field/index.client.js +14 -14
  215. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  216. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -0
  217. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -0
  218. package/dist/elements/Hierarchy/Modal/index.css +88 -0
  219. package/dist/elements/Hierarchy/Modal/index.d.ts +20 -0
  220. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -0
  221. package/dist/elements/Hierarchy/{Drawer → Modal}/index.js +105 -81
  222. package/dist/elements/Hierarchy/Modal/index.js.map +1 -0
  223. package/dist/elements/Hierarchy/{Drawer → Modal}/types.d.ts +22 -18
  224. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -0
  225. package/dist/elements/Hierarchy/Modal/types.js.map +1 -0
  226. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts +30 -0
  227. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -0
  228. package/dist/elements/Hierarchy/{Drawer/useHierarchyDrawer.js → Modal/useHierarchyModal.js} +51 -50
  229. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -0
  230. package/dist/elements/Hierarchy/MoveMany/index.d.ts +2 -2
  231. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  232. package/dist/elements/Hierarchy/MoveMany/index.js +9 -9
  233. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  234. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  235. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +1 -1
  236. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  237. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +38 -13
  238. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  239. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +37 -31
  240. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  241. package/dist/elements/Hierarchy/Tree/index.css +1 -1
  242. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  243. package/dist/elements/Hierarchy/Tree/index.js +18 -5
  244. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  245. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  246. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  247. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  248. package/dist/elements/ListControls/index.d.ts.map +1 -1
  249. package/dist/elements/ListControls/index.js +1 -2
  250. package/dist/elements/ListControls/index.js.map +1 -1
  251. package/dist/elements/ListDrawer/DrawerContent.js +1 -1
  252. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  253. package/dist/elements/ListDrawer/Provider.d.ts +1 -1
  254. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  255. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  256. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  257. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  258. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +2 -0
  259. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  260. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +4 -4
  261. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  262. package/dist/elements/LivePreview/Toolbar/Controls/index.js +2 -2
  263. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  264. package/dist/elements/LivePreview/Toolbar/SizeInput/index.css +5 -44
  265. package/dist/elements/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  266. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +26 -43
  267. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  268. package/dist/elements/LivePreview/Window/index.css +6 -0
  269. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  270. package/dist/elements/Locked/index.css +7 -4
  271. package/dist/elements/Locked/index.d.ts +2 -2
  272. package/dist/elements/Locked/index.d.ts.map +1 -1
  273. package/dist/elements/Locked/index.js +66 -53
  274. package/dist/elements/Locked/index.js.map +1 -1
  275. package/dist/elements/MiniCarousel/index.css +94 -0
  276. package/dist/elements/MiniCarousel/index.d.ts +15 -0
  277. package/dist/elements/MiniCarousel/index.d.ts.map +1 -0
  278. package/dist/elements/MiniCarousel/index.js +84 -0
  279. package/dist/elements/MiniCarousel/index.js.map +1 -0
  280. package/dist/elements/Nav/SettingsMenuButton/index.css +5 -0
  281. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +1 -1
  282. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  283. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -1
  284. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  285. package/dist/elements/Nav/index.css +2 -7
  286. package/dist/elements/NavGroup/index.css +1 -1
  287. package/dist/elements/Pagination/index.css +5 -0
  288. package/dist/elements/Pagination/index.d.ts.map +1 -1
  289. package/dist/elements/Pagination/index.js +21 -21
  290. package/dist/elements/Pagination/index.js.map +1 -1
  291. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  292. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  293. package/dist/elements/Popup/PopupTrigger/index.js +3 -0
  294. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  295. package/dist/elements/Popup/index.d.ts +7 -1
  296. package/dist/elements/Popup/index.d.ts.map +1 -1
  297. package/dist/elements/Popup/index.js +3 -1
  298. package/dist/elements/Popup/index.js.map +1 -1
  299. package/dist/elements/PreviewSizes/index.css +149 -0
  300. package/dist/elements/PreviewSizes/index.d.ts +2 -2
  301. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  302. package/dist/elements/PreviewSizes/index.js +1 -1
  303. package/dist/elements/PreviewSizes/index.js.map +1 -1
  304. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  305. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -1
  306. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts +7 -0
  307. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -0
  308. package/dist/elements/ReactSelect/DefaultMenuPortal.js +120 -0
  309. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -0
  310. package/dist/elements/ReactSelect/DropdownIndicator/index.css +1 -1
  311. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  312. package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -12
  313. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  314. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -1
  315. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +1 -1
  316. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -1
  317. package/dist/elements/ReactSelect/getMenuListStyles.js +13 -5
  318. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -1
  319. package/dist/elements/ReactSelect/getMenuStyles.d.ts +10 -0
  320. package/dist/elements/ReactSelect/getMenuStyles.d.ts.map +1 -0
  321. package/dist/elements/ReactSelect/getMenuStyles.js +21 -0
  322. package/dist/elements/ReactSelect/getMenuStyles.js.map +1 -0
  323. package/dist/elements/ReactSelect/index.css +10 -3
  324. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  325. package/dist/elements/ReactSelect/index.js +25 -102
  326. package/dist/elements/ReactSelect/index.js.map +1 -1
  327. package/dist/elements/ReactSelect/types.d.ts +2 -2
  328. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  329. package/dist/elements/ReactSelect/types.js.map +1 -1
  330. package/dist/elements/RelationshipTable/AddNewButton.d.ts +2 -2
  331. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  332. package/dist/elements/RelationshipTable/AddNewButton.js +1 -2
  333. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  334. package/dist/elements/RelationshipTable/index.css +1 -2
  335. package/dist/elements/RenderServerComponent/clientOnly.d.ts +8 -0
  336. package/dist/elements/RenderServerComponent/clientOnly.d.ts.map +1 -0
  337. package/dist/elements/RenderServerComponent/clientOnly.js +56 -0
  338. package/dist/elements/RenderServerComponent/clientOnly.js.map +1 -0
  339. package/dist/elements/Search/ListSearchFilter/index.d.ts.map +1 -1
  340. package/dist/elements/Search/ListSearchFilter/index.js +1 -0
  341. package/dist/elements/Search/ListSearchFilter/index.js.map +1 -1
  342. package/dist/elements/Search/SearchInput/index.d.ts +2 -0
  343. package/dist/elements/Search/SearchInput/index.d.ts.map +1 -1
  344. package/dist/elements/Search/SearchInput/index.js +22 -19
  345. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  346. package/dist/elements/SelectAll/index.css +3 -1
  347. package/dist/elements/SelectRow/index.d.ts +2 -2
  348. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  349. package/dist/elements/SelectRow/index.js.map +1 -1
  350. package/dist/elements/SidebarRow/index.css +0 -2
  351. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  352. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +32 -13
  353. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  354. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  355. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  356. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  357. package/dist/elements/Table/OrderableRowDragPreview.d.ts.map +1 -1
  358. package/dist/elements/Table/index.css +25 -2
  359. package/dist/elements/Tabs/index.d.ts.map +1 -1
  360. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -1
  361. package/dist/elements/Thumbnail/index.css +41 -0
  362. package/dist/elements/Thumbnail/index.d.ts +4 -4
  363. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  364. package/dist/elements/Thumbnail/index.js +1 -1
  365. package/dist/elements/Thumbnail/index.js.map +1 -1
  366. package/dist/elements/TimezonePicker/index.css +1 -1
  367. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +11 -0
  368. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -0
  369. package/dist/elements/Upload/UploadFromURLModal/index.js +88 -0
  370. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -0
  371. package/dist/elements/Upload/index.css +134 -45
  372. package/dist/elements/Upload/index.d.ts +3 -8
  373. package/dist/elements/Upload/index.d.ts.map +1 -1
  374. package/dist/elements/Upload/index.js +71 -92
  375. package/dist/elements/Upload/index.js.map +1 -1
  376. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -1
  377. package/dist/elements/UserMenu/SubMenuHeader/index.js +8 -9
  378. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -1
  379. package/dist/elements/UserMenu/index.css +26 -1
  380. package/dist/elements/UserMenu/index.d.ts +1 -0
  381. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  382. package/dist/elements/UserMenu/index.js +2 -1
  383. package/dist/elements/UserMenu/index.js.map +1 -1
  384. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  385. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.d.ts.map +1 -1
  386. package/dist/elements/WhereBuilder/Condition/validOperators.d.ts.map +1 -1
  387. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  388. package/dist/exports/client/index.d.ts +8 -5
  389. package/dist/exports/client/index.d.ts.map +1 -1
  390. package/dist/exports/client/index.js +1 -86
  391. package/dist/exports/client/index.js.map +4 -4
  392. package/dist/exports/layouts.d.ts +1 -0
  393. package/dist/exports/layouts.d.ts.map +1 -1
  394. package/dist/exports/layouts.js +1 -0
  395. package/dist/exports/layouts.js.map +1 -1
  396. package/dist/exports/rsc/index.d.ts +3 -0
  397. package/dist/exports/rsc/index.d.ts.map +1 -1
  398. package/dist/exports/rsc/index.js +3 -0
  399. package/dist/exports/rsc/index.js.map +1 -1
  400. package/dist/exports/server.d.ts +3 -0
  401. package/dist/exports/server.d.ts.map +1 -0
  402. package/dist/exports/server.js +2 -0
  403. package/dist/exports/server.js.map +1 -0
  404. package/dist/exports/shared/index.js +2 -2
  405. package/dist/exports/shared/index.js.map +2 -2
  406. package/dist/fields/Array/index.d.ts +1 -1
  407. package/dist/fields/Array/index.d.ts.map +1 -1
  408. package/dist/fields/Array/index.js +7 -4
  409. package/dist/fields/Array/index.js.map +1 -1
  410. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +1 -1
  411. package/dist/fields/Blocks/BlockSelector/index.css +2 -5
  412. package/dist/fields/Blocks/SectionTitle/index.d.ts.map +1 -1
  413. package/dist/fields/Blocks/SectionTitle/index.js +1 -0
  414. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  415. package/dist/fields/Blocks/index.d.ts +1 -1
  416. package/dist/fields/Blocks/index.d.ts.map +1 -1
  417. package/dist/fields/Blocks/index.js +6 -3
  418. package/dist/fields/Blocks/index.js.map +1 -1
  419. package/dist/fields/Checkbox/index.css +2 -2
  420. package/dist/fields/Checkbox/index.d.ts +1 -1
  421. package/dist/fields/Code/index.css +1 -1
  422. package/dist/fields/Code/index.d.ts +2 -2
  423. package/dist/fields/Collapsible/index.d.ts +1 -1
  424. package/dist/fields/ConfirmPassword/index.d.ts +4 -0
  425. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  426. package/dist/fields/ConfirmPassword/index.js +37 -33
  427. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  428. package/dist/fields/DateTime/index.d.ts +1 -1
  429. package/dist/fields/Email/index.d.ts +1 -1
  430. package/dist/fields/Group/index.css +4 -10
  431. package/dist/fields/Group/index.d.ts +2 -2
  432. package/dist/fields/JSON/index.d.ts +1 -1
  433. package/dist/fields/Join/index.d.ts +1 -1
  434. package/dist/fields/Number/Input.d.ts.map +1 -1
  435. package/dist/fields/Number/Input.js +62 -46
  436. package/dist/fields/Number/Input.js.map +1 -1
  437. package/dist/fields/Number/index.css +19 -0
  438. package/dist/fields/Number/index.d.ts +1 -1
  439. package/dist/fields/Number/types.d.ts +10 -0
  440. package/dist/fields/Number/types.d.ts.map +1 -1
  441. package/dist/fields/Number/types.js.map +1 -1
  442. package/dist/fields/Password/input.d.ts.map +1 -1
  443. package/dist/fields/Password/input.js +33 -29
  444. package/dist/fields/Password/input.js.map +1 -1
  445. package/dist/fields/Password/types.d.ts +7 -3
  446. package/dist/fields/Password/types.d.ts.map +1 -1
  447. package/dist/fields/Password/types.js.map +1 -1
  448. package/dist/fields/Point/index.d.ts +1 -1
  449. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  450. package/dist/fields/Relationship/Input.js +4 -0
  451. package/dist/fields/Relationship/Input.js.map +1 -1
  452. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  453. package/dist/fields/Relationship/index.d.ts +1 -1
  454. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  455. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  456. package/dist/fields/Relationship/types.d.ts +4 -0
  457. package/dist/fields/Relationship/types.d.ts.map +1 -1
  458. package/dist/fields/Relationship/types.js.map +1 -1
  459. package/dist/fields/Row/index.d.ts +1 -1
  460. package/dist/fields/Select/Input.d.ts +4 -0
  461. package/dist/fields/Select/Input.d.ts.map +1 -1
  462. package/dist/fields/Select/Input.js +45 -40
  463. package/dist/fields/Select/Input.js.map +1 -1
  464. package/dist/fields/Select/index.d.ts +1 -1
  465. package/dist/fields/Select/index.d.ts.map +1 -1
  466. package/dist/fields/Slug/index.d.ts +7 -5
  467. package/dist/fields/Slug/index.d.ts.map +1 -1
  468. package/dist/fields/Slug/index.js +6 -4
  469. package/dist/fields/Slug/index.js.map +1 -1
  470. package/dist/fields/Tabs/index.d.ts +1 -1
  471. package/dist/fields/Text/Input.d.ts.map +1 -1
  472. package/dist/fields/Text/Input.js +44 -37
  473. package/dist/fields/Text/Input.js.map +1 -1
  474. package/dist/fields/Text/index.d.ts +1 -1
  475. package/dist/fields/Text/types.d.ts +11 -2
  476. package/dist/fields/Text/types.d.ts.map +1 -1
  477. package/dist/fields/Text/types.js.map +1 -1
  478. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  479. package/dist/fields/Textarea/Input.js +27 -23
  480. package/dist/fields/Textarea/Input.js.map +1 -1
  481. package/dist/fields/Textarea/index.css +1 -1
  482. package/dist/fields/Textarea/index.d.ts +1 -1
  483. package/dist/fields/Textarea/types.d.ts +4 -0
  484. package/dist/fields/Textarea/types.d.ts.map +1 -1
  485. package/dist/fields/Textarea/types.js.map +1 -1
  486. package/dist/fields/Upload/Input.d.ts.map +1 -1
  487. package/dist/fields/Upload/Input.js +12 -11
  488. package/dist/fields/Upload/Input.js.map +1 -1
  489. package/dist/fields/Upload/index.js +1 -1
  490. package/dist/fields/Upload/index.js.map +1 -1
  491. package/dist/fields/index.d.ts.map +1 -1
  492. package/dist/fields/index.js +2 -0
  493. package/dist/fields/index.js.map +1 -1
  494. package/dist/fields/mergeFieldStyles.d.ts +1 -1
  495. package/dist/fields/mergeFieldStyles.d.ts.map +1 -1
  496. package/dist/forms/Form/context.d.ts.map +1 -1
  497. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  498. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  499. package/dist/forms/Form/index.d.ts.map +1 -1
  500. package/dist/forms/Form/index.js +3 -14
  501. package/dist/forms/Form/index.js.map +1 -1
  502. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  503. package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
  504. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  505. package/dist/forms/Form/rows.d.ts.map +1 -1
  506. package/dist/forms/Form/types.d.ts +2 -2
  507. package/dist/forms/Form/types.d.ts.map +1 -1
  508. package/dist/forms/Form/types.js.map +1 -1
  509. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  510. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  511. package/dist/forms/RenderFields/RenderField.js +10 -0
  512. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  513. package/dist/forms/RenderFields/index.css +4 -4
  514. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  515. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +1 -0
  516. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  517. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +21 -5
  518. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  519. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts +2 -2
  520. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  521. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  522. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts +2 -2
  523. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  524. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  525. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts +2 -2
  526. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  527. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  528. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -1
  529. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  530. package/dist/forms/fieldSchemasToFormState/index.js +2 -0
  531. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  532. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -1
  533. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  534. package/dist/forms/fieldSchemasToFormState/iterateFields.js +2 -0
  535. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  536. package/dist/forms/useField/index.d.ts.map +1 -1
  537. package/dist/forms/withCondition/index.d.ts +1 -1
  538. package/dist/forms/withCondition/index.d.ts.map +1 -1
  539. package/dist/graphics/Icon/index.js +1 -1
  540. package/dist/graphics/Icon/index.js.map +1 -1
  541. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  542. package/dist/hooks/useDelay.d.ts.map +1 -1
  543. package/dist/hooks/useElementHeightVariable.d.ts +15 -0
  544. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -0
  545. package/dist/hooks/useElementHeightVariable.js +53 -0
  546. package/dist/hooks/useElementHeightVariable.js.map +1 -0
  547. package/dist/hooks/useHotkey.d.ts.map +1 -1
  548. package/dist/hooks/useIntersect.d.ts.map +1 -1
  549. package/dist/hooks/usePopupWindow.d.ts +1 -1
  550. package/dist/hooks/usePopupWindow.d.ts.map +1 -1
  551. package/dist/hooks/useRelatedCollections.d.ts.map +1 -1
  552. package/dist/hooks/useResize.d.ts.map +1 -1
  553. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  554. package/dist/icons/Crop/index.css +5 -0
  555. package/dist/icons/Crop/index.d.ts +7 -0
  556. package/dist/icons/Crop/index.d.ts.map +1 -0
  557. package/dist/icons/Crop/index.js +24 -0
  558. package/dist/icons/Crop/index.js.map +1 -0
  559. package/dist/icons/Download/index.css +5 -0
  560. package/dist/icons/{ExternalLink → Download}/index.d.ts +1 -1
  561. package/dist/icons/Download/index.d.ts.map +1 -0
  562. package/dist/icons/Download/index.js +27 -0
  563. package/dist/icons/Download/index.js.map +1 -0
  564. package/dist/icons/{ExternalLink → NewTab}/index.css +1 -1
  565. package/dist/icons/NewTab/index.d.ts +7 -0
  566. package/dist/icons/NewTab/index.d.ts.map +1 -0
  567. package/dist/icons/NewTab/index.js +25 -0
  568. package/dist/icons/NewTab/index.js.map +1 -0
  569. package/dist/icons/Replace/index.css +5 -0
  570. package/dist/icons/Replace/index.d.ts +6 -0
  571. package/dist/icons/Replace/index.d.ts.map +1 -0
  572. package/dist/icons/Replace/index.js +20 -0
  573. package/dist/icons/Replace/index.js.map +1 -0
  574. package/dist/icons/Reset/index.css +5 -0
  575. package/dist/icons/Reset/index.d.ts +7 -0
  576. package/dist/icons/Reset/index.d.ts.map +1 -0
  577. package/dist/icons/Reset/index.js +25 -0
  578. package/dist/icons/Reset/index.js.map +1 -0
  579. package/dist/icons/Swap/index.js +1 -1
  580. package/dist/icons/Swap/index.js.map +1 -1
  581. package/dist/layouts/Root/index.d.ts.map +1 -1
  582. package/dist/layouts/Root/index.js +3 -1
  583. package/dist/layouts/Root/index.js.map +1 -1
  584. package/dist/layouts/Root/index.spec.js +20 -0
  585. package/dist/layouts/Root/index.spec.js.map +1 -0
  586. package/dist/layouts/Root/viewport.d.ts +5 -0
  587. package/dist/layouts/Root/viewport.d.ts.map +1 -0
  588. package/dist/layouts/Root/viewport.js +17 -0
  589. package/dist/layouts/Root/viewport.js.map +1 -0
  590. package/dist/providers/Auth/index.d.ts +7 -7
  591. package/dist/providers/Auth/index.d.ts.map +1 -1
  592. package/dist/providers/Auth/index.js.map +1 -1
  593. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  594. package/dist/providers/DocumentInfo/index.js.map +1 -1
  595. package/dist/providers/DocumentInfo/types.d.ts +6 -6
  596. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  597. package/dist/providers/DocumentInfo/types.js.map +1 -1
  598. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  599. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  600. package/dist/providers/ListQuery/index.js +8 -1
  601. package/dist/providers/ListQuery/index.js.map +1 -1
  602. package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
  603. package/dist/providers/ListQuery/sanitizeQuery.d.ts.map +1 -1
  604. package/dist/providers/LivePreview/sizeReducer.d.ts +1 -1
  605. package/dist/providers/LivePreview/sizeReducer.d.ts.map +1 -1
  606. package/dist/providers/Root/index.d.ts +2 -2
  607. package/dist/providers/Root/index.d.ts.map +1 -1
  608. package/dist/providers/Root/index.js.map +1 -1
  609. package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -1
  610. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.d.ts.map +1 -1
  611. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -1
  612. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  613. package/dist/providers/TableColumns/getInitialColumns.d.ts +1 -1
  614. package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -1
  615. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  616. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  617. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  618. package/dist/providers/UploadHandlers/index.js +102 -42
  619. package/dist/providers/UploadHandlers/index.js.map +1 -1
  620. package/dist/scss/app.scss +3 -2
  621. package/dist/styles.css +1379 -1
  622. package/dist/templates/Default/index.d.ts.map +1 -1
  623. package/dist/templates/Default/index.js +7 -1
  624. package/dist/templates/Default/index.js.map +1 -1
  625. package/dist/utilities/api.d.ts.map +1 -1
  626. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  627. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  628. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  629. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  630. package/dist/utilities/buildFormState.d.ts +2 -2
  631. package/dist/utilities/buildFormState.d.ts.map +1 -1
  632. package/dist/utilities/buildFormState.js +1 -0
  633. package/dist/utilities/buildFormState.js.map +1 -1
  634. package/dist/utilities/checkDependencies.d.ts.map +1 -1
  635. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  636. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  637. package/dist/utilities/copyDataFromLocale.js +1 -0
  638. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  639. package/dist/utilities/filterOutUploadFields.d.ts.map +1 -1
  640. package/dist/utilities/findLocaleFromCode.d.ts.map +1 -1
  641. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  642. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  643. package/dist/utilities/formatDocTitle/formatRelationshipTitle.d.ts.map +1 -1
  644. package/dist/utilities/formatDocTitle/index.d.ts +1 -1
  645. package/dist/utilities/formatDocTitle/index.d.ts.map +1 -1
  646. package/dist/utilities/formatDocTitle/index.js +1 -1
  647. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  648. package/dist/utilities/formatFields.d.ts.map +1 -1
  649. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  650. package/dist/utilities/formatRelativeDate.d.ts +15 -0
  651. package/dist/utilities/formatRelativeDate.d.ts.map +1 -0
  652. package/dist/utilities/formatRelativeDate.js +62 -0
  653. package/dist/utilities/formatRelativeDate.js.map +1 -0
  654. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  655. package/dist/utilities/getColumns.d.ts.map +1 -1
  656. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
  657. package/dist/utilities/getDocPreferences.d.ts +2 -2
  658. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  659. package/dist/utilities/getDocPreferences.js.map +1 -1
  660. package/dist/utilities/getDocumentData.d.ts +2 -2
  661. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  662. package/dist/utilities/getDocumentData.js.map +1 -1
  663. package/dist/utilities/getDocumentPermissions.d.ts.map +1 -1
  664. package/dist/utilities/getGlobalData.d.ts +2 -2
  665. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  666. package/dist/utilities/getGlobalData.js.map +1 -1
  667. package/dist/utilities/getHasScheduledPublish.d.ts +2 -2
  668. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  669. package/dist/utilities/getHasScheduledPublish.js.map +1 -1
  670. package/dist/utilities/getIsLocked.d.ts +2 -2
  671. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  672. package/dist/utilities/getIsLocked.js.map +1 -1
  673. package/dist/utilities/getOffsetTop.d.ts.map +1 -1
  674. package/dist/utilities/getRequestHighContrast.d.ts.map +1 -1
  675. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  676. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  677. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -1
  678. package/dist/utilities/getSupportedMonacoLocale.d.ts.map +1 -1
  679. package/dist/utilities/getVersions.d.ts +2 -2
  680. package/dist/utilities/getVersions.d.ts.map +1 -1
  681. package/dist/utilities/getVersions.js.map +1 -1
  682. package/dist/utilities/handleAuthRedirect.d.ts +2 -2
  683. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  684. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  685. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  686. package/dist/utilities/handleFormStateLocking.d.ts +2 -2
  687. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  688. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  689. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  690. package/dist/utilities/handleLivePreview.d.ts +1 -0
  691. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  692. package/dist/utilities/handlePreview.d.ts.map +1 -1
  693. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  694. package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -1
  695. package/dist/utilities/handleTakeOver.d.ts +5 -5
  696. package/dist/utilities/handleTakeOver.d.ts.map +1 -1
  697. package/dist/utilities/handleTakeOver.js.map +1 -1
  698. package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +1 -1
  699. package/dist/utilities/hasSavePermission.d.ts.map +1 -1
  700. package/dist/utilities/initReq.d.ts.map +1 -1
  701. package/dist/utilities/isClientUserObject.d.ts +2 -2
  702. package/dist/utilities/isClientUserObject.d.ts.map +1 -1
  703. package/dist/utilities/isClientUserObject.js.map +1 -1
  704. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  705. package/dist/utilities/isEditing.d.ts.map +1 -1
  706. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  707. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  708. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  709. package/dist/utilities/isURLAllowed.js +9 -3
  710. package/dist/utilities/isURLAllowed.js.map +1 -1
  711. package/dist/utilities/recentlyViewed.d.ts +16 -0
  712. package/dist/utilities/recentlyViewed.d.ts.map +1 -0
  713. package/dist/utilities/recentlyViewed.js +21 -0
  714. package/dist/utilities/recentlyViewed.js.map +1 -0
  715. package/dist/utilities/recentlyViewed.spec.js +92 -0
  716. package/dist/utilities/recentlyViewed.spec.js.map +1 -0
  717. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  718. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  719. package/dist/utilities/renderTable.d.ts +2 -2
  720. package/dist/utilities/renderTable.d.ts.map +1 -1
  721. package/dist/utilities/resolveFilterOptions.d.ts +1 -1
  722. package/dist/utilities/resolveFilterOptions.d.ts.map +1 -1
  723. package/dist/utilities/sanitizeFilterOptionsQuery.d.ts.map +1 -1
  724. package/dist/utilities/scrollToID.d.ts.map +1 -1
  725. package/dist/utilities/selectiveCache.d.ts.map +1 -1
  726. package/dist/utilities/serverFunctionRegistry.d.ts +13 -0
  727. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -0
  728. package/dist/utilities/serverFunctionRegistry.js +25 -0
  729. package/dist/utilities/serverFunctionRegistry.js.map +1 -0
  730. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  731. package/dist/utilities/slugify.d.ts +1 -1
  732. package/dist/utilities/slugify.js +1 -1
  733. package/dist/utilities/slugify.js.map +1 -1
  734. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  735. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  736. package/dist/views/API/index.client.js +2 -2
  737. package/dist/views/API/index.client.js.map +1 -1
  738. package/dist/views/Account/ResetPreferences/index.d.ts +2 -2
  739. package/dist/views/Account/ResetPreferences/index.d.ts.map +1 -1
  740. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  741. package/dist/views/Account/Settings/index.d.ts +2 -2
  742. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  743. package/dist/views/Account/Settings/index.js.map +1 -1
  744. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts.map +1 -1
  745. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -1
  746. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +27 -23
  747. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  748. package/dist/views/Dashboard/Default/ModularDashboard/index.css +2 -0
  749. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +2 -2
  750. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  751. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -2
  752. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  753. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts +2 -2
  754. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts.map +1 -1
  755. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -1
  756. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  757. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  758. package/dist/views/Dashboard/Default/index.js.map +1 -1
  759. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +1 -1
  760. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -1
  761. package/dist/views/Document/getCustomViewByRoute.d.ts +1 -1
  762. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  763. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  764. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  765. package/dist/views/Document/index.d.ts +1 -1
  766. package/dist/views/Document/index.d.ts.map +1 -1
  767. package/dist/views/Document/index.js +18 -1
  768. package/dist/views/Document/index.js.map +1 -1
  769. package/dist/views/Document/recordRecentlyViewed.d.ts +12 -0
  770. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -0
  771. package/dist/views/Document/recordRecentlyViewed.js +40 -0
  772. package/dist/views/Document/recordRecentlyViewed.js.map +1 -0
  773. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  774. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  775. package/dist/views/Document/renderDocumentSlots.js +47 -1
  776. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  777. package/dist/views/Edit/index.css +143 -6
  778. package/dist/views/Edit/index.d.ts +1 -1
  779. package/dist/views/Edit/index.d.ts.map +1 -1
  780. package/dist/views/Edit/index.js +34 -31
  781. package/dist/views/Edit/index.js.map +1 -1
  782. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +2 -2
  783. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -2
  784. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  785. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  786. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +2 -2
  787. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  788. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  789. package/dist/views/HierarchyList/TypeFilter/index.d.ts.map +1 -1
  790. package/dist/views/HierarchyList/TypeFilter/index.js +3 -0
  791. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  792. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  793. package/dist/views/HierarchyList/index.js +2 -6
  794. package/dist/views/HierarchyList/index.js.map +1 -1
  795. package/dist/views/List/ListHeader/index.css +5 -0
  796. package/dist/views/List/createSerializableValue.d.ts.map +1 -1
  797. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -1
  798. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -1
  799. package/dist/views/List/generateListViewMetadata.d.ts.map +1 -1
  800. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  801. package/dist/views/List/handleHierarchy.d.ts +1 -1
  802. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  803. package/dist/views/List/index.client.js +3 -3
  804. package/dist/views/List/index.client.js.map +1 -1
  805. package/dist/views/List/index.d.ts.map +1 -1
  806. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  807. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
  808. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -1
  809. package/dist/views/Logout/LogoutClient.d.ts +14 -0
  810. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  811. package/dist/views/Logout/LogoutClient.js +6 -4
  812. package/dist/views/Logout/LogoutClient.js.map +1 -1
  813. package/dist/views/Logout/index.d.ts.map +1 -1
  814. package/dist/views/Logout/index.js +7 -2
  815. package/dist/views/Logout/index.js.map +1 -1
  816. package/dist/views/NotFound/page.d.ts.map +1 -1
  817. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -1
  818. package/dist/views/Root/generatePageMetadata.d.ts.map +1 -1
  819. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts +1 -1
  820. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  821. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +1 -1
  822. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  823. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  824. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  825. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  826. package/dist/views/Root/index.d.ts.map +1 -1
  827. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  828. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  829. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  830. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  831. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  832. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +1 -0
  833. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  834. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  835. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  836. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +1 -0
  837. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  838. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  839. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  840. package/dist/views/Version/SelectComparison/index.js +1 -0
  841. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  842. package/dist/views/Versions/buildColumns.d.ts +1 -1
  843. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  844. package/dist/views/Versions/fetchVersions.d.ts +8 -8
  845. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  846. package/dist/views/Versions/fetchVersions.js.map +1 -1
  847. package/dist/views/Versions/types.d.ts +2 -2
  848. package/dist/views/Versions/types.d.ts.map +1 -1
  849. package/dist/views/Versions/types.js.map +1 -1
  850. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts +20 -0
  851. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts.map +1 -0
  852. package/dist/widgets/CollectionCards/getCollectionCardsData.js +29 -0
  853. package/dist/widgets/CollectionCards/getCollectionCardsData.js.map +1 -0
  854. package/dist/widgets/CollectionCards/index.client.d.ts +5 -0
  855. package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -0
  856. package/dist/widgets/CollectionCards/index.client.js +139 -0
  857. package/dist/widgets/CollectionCards/index.client.js.map +1 -0
  858. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  859. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -0
  860. package/dist/widgets/CollectionQuery/SortField/index.js +118 -0
  861. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -0
  862. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts +18 -0
  863. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts.map +1 -0
  864. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js +91 -0
  865. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js.map +1 -0
  866. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +100 -0
  867. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +1 -0
  868. package/dist/widgets/CollectionQuery/index.css +64 -0
  869. package/dist/widgets/CollectionQuery/index.d.ts +16 -0
  870. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -0
  871. package/dist/widgets/CollectionQuery/index.js +328 -0
  872. package/dist/widgets/CollectionQuery/index.js.map +1 -0
  873. package/dist/widgets/RecentlyViewed/CollectionsField/index.css +14 -0
  874. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts +10 -0
  875. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +1 -0
  876. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +76 -0
  877. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +1 -0
  878. package/dist/widgets/RecentlyViewed/index.d.ts +10 -0
  879. package/dist/widgets/RecentlyViewed/index.d.ts.map +1 -0
  880. package/dist/widgets/RecentlyViewed/index.js +148 -0
  881. package/dist/widgets/RecentlyViewed/index.js.map +1 -0
  882. package/dist/widgets/WidgetCard/index.css +155 -0
  883. package/dist/widgets/WidgetCard/index.d.ts +19 -0
  884. package/dist/widgets/WidgetCard/index.d.ts.map +1 -0
  885. package/dist/widgets/WidgetCard/index.js +49 -0
  886. package/dist/widgets/WidgetCard/index.js.map +1 -0
  887. package/package.json +59 -8
  888. package/dist/elements/BulkUpload/Header/index.d.ts +0 -9
  889. package/dist/elements/BulkUpload/Header/index.d.ts.map +0 -1
  890. package/dist/elements/BulkUpload/Header/index.js.map +0 -1
  891. package/dist/elements/FileDetails/FileMeta/index.scss +0 -31
  892. package/dist/elements/FileDetails/StaticFileDetails/index.scss +0 -134
  893. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +0 -1
  894. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +0 -1
  895. package/dist/elements/Hierarchy/Drawer/index.css +0 -90
  896. package/dist/elements/Hierarchy/Drawer/index.d.ts +0 -20
  897. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +0 -1
  898. package/dist/elements/Hierarchy/Drawer/index.js.map +0 -1
  899. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +0 -1
  900. package/dist/elements/Hierarchy/Drawer/types.js.map +0 -1
  901. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts +0 -30
  902. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +0 -1
  903. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +0 -1
  904. package/dist/elements/Nav/NavToggler/index.css +0 -12
  905. package/dist/elements/Nav/NavToggler/index.d.ts +0 -9
  906. package/dist/elements/Nav/NavToggler/index.d.ts.map +0 -1
  907. package/dist/elements/Nav/NavToggler/index.js +0 -91
  908. package/dist/elements/Nav/NavToggler/index.js.map +0 -1
  909. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  910. package/dist/elements/PreviewSizes/index.scss +0 -147
  911. package/dist/elements/Thumbnail/index.scss +0 -53
  912. package/dist/exports/client/CodeEditor-T3624SG3.js +0 -14
  913. package/dist/exports/client/CodeEditor-T3624SG3.js.map +0 -7
  914. package/dist/exports/client/DatePicker-6KF52Z3G.js +0 -14
  915. package/dist/exports/client/DatePicker-6KF52Z3G.js.map +0 -7
  916. package/dist/exports/client/chunk-5LKBKI4T.js +0 -14
  917. package/dist/exports/client/chunk-5LKBKI4T.js.map +0 -7
  918. package/dist/exports/client/chunk-7T64ULOM.js +0 -29
  919. package/dist/exports/client/chunk-7T64ULOM.js.map +0 -7
  920. package/dist/exports/client/chunk-DMFYTMX6.js +0 -27
  921. package/dist/exports/client/chunk-DMFYTMX6.js.map +0 -7
  922. package/dist/icons/ExternalLink/index.d.ts.map +0 -1
  923. package/dist/icons/ExternalLink/index.js +0 -26
  924. package/dist/icons/ExternalLink/index.js.map +0 -1
  925. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.d.ts +0 -0
  926. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.js +0 -0
  927. /package/dist/elements/Hierarchy/{Drawer → Modal}/types.js +0 -0
@@ -289,9 +289,12 @@ export const ArrayFieldComponent = props => {
289
289
  }), [getFields, path]);
290
290
  const hasMaxRows = maxRows && rows.length >= maxRows;
291
291
  const fieldErrorCount = errorPaths.length;
292
- const fieldHasErrors = submitted && errorPaths.length > 0;
292
+ const fieldHasErrors = submitted && (fieldErrorCount > 0 || !valid);
293
+ const displayedErrorCount = fieldErrorCount > 0 ? fieldErrorCount : fieldHasErrors ? 1 : 0;
293
294
  const showRequired = (readOnly || disabled) && rows.length === 0;
294
295
  const showMinRows = rows.length && rows.length < minRows || required && rows.length === 0;
296
+ const shouldShowSummaryBanner = !valid && (showRequired || showMinRows);
297
+ const shouldShowFieldError = showError && !shouldShowSummaryBanner;
295
298
  const styles = useMemo(() => mergeFieldStyles(field), [field]);
296
299
  const renderDragOverlay = useCallback(activeId => {
297
300
  const activeIndex = rows.findIndex(row => row.id === activeId);
@@ -311,7 +314,7 @@ export const ArrayFieldComponent = props => {
311
314
  className: [fieldBaseClass, baseClass, className, fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`].filter(Boolean).join(' '),
312
315
  id: `field-${path.replace(/\./g, '__')}`,
313
316
  style: styles,
314
- children: [showError && /*#__PURE__*/_jsx(RenderCustomComponent, {
317
+ children: [shouldShowFieldError && /*#__PURE__*/_jsx(RenderCustomComponent, {
315
318
  CustomComponent: Error,
316
319
  Fallback: /*#__PURE__*/_jsx(FieldError, {
317
320
  path: path,
@@ -335,8 +338,8 @@ export const ArrayFieldComponent = props => {
335
338
  required: required
336
339
  })
337
340
  })
338
- }), fieldHasErrors && fieldErrorCount > 0 && /*#__PURE__*/_jsx(ErrorPill, {
339
- count: fieldErrorCount,
341
+ }), displayedErrorCount > 0 && /*#__PURE__*/_jsx(ErrorPill, {
342
+ count: displayedErrorCount,
340
343
  i18n: i18n,
341
344
  withMessage: true
342
345
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["verticalListSortingStrategy","getTranslation","React","useCallback","useId","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","CollapseAllToggle","DraggableSortableItem","DragOverlayPreview","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","RowLabel","useField","withCondition","CirclePlusIcon","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","mergeFieldStyles","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","field","name","type","admin","className","description","isSortable","fields","label","localized","maxRows","minRows","minRowsProp","required","forceRender","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","submitted","code","locale","i18n","t","config","localization","editingDefaultLocale","fallback","defaultLocale","getLabels","p","labels","plural","singular","undefined","memoizedValidate","value","options","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","componentId","scrollIdPrefix","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","formState","clipboardResult","getDataToCopy","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaFields","pasteField","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showRequired","showMinRows","styles","renderDragOverlay","activeId","activeIndex","findIndex","row","id","_jsx","header","CustomComponent","String","padStart","rowNumber","_jsxs","filter","Boolean","join","replace","style","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","onDragEnd","sortingStrategy","rowData","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","draggableSortableItemProps","CustomRowLabel","errorCount","parentPath","rowCount","Fragment","buttonStyle","icon","iconPosition","ArrayField"],"sources":["../../../src/fields/Array/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayFieldClientComponent,\n ArrayFieldClientProps,\n ArrayField as ArrayFieldType,\n} from 'payload'\n\nimport { verticalListSortingStrategy } from '@dnd-kit/sortable'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useId, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { CollapseAllToggle } from '../../elements/CollapseAllToggle/index.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DragOverlayPreview } from '../../elements/DraggableSortable/DragOverlayPreview/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/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, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { CirclePlusIcon } from '../../icons/CirclePlus/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { ArrayRow } from './ArrayRow.js'\nimport './index.css'\n\nconst baseClass = 'array-field'\n\nexport const ArrayFieldComponent: ArrayFieldClientComponent = (props) => {\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n fields,\n label,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n forceRender = false,\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const submitted = useFormSubmitted()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const {\n config: { localization },\n } = useConfig()\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n // Handle labeling for Arrays, Global Arrays, and Blocks\n const getLabels = (p: ArrayFieldClientProps): Partial<ArrayFieldType['labels']> => {\n if ('labels' in p && p?.labels) {\n return p.labels\n }\n\n if ('labels' in p.field && p.field.labels) {\n return { plural: p.field.labels?.plural, singular: p.field.labels?.singular }\n }\n\n if ('label' in p.field && p.field.label) {\n return { plural: undefined, singular: p.field.label }\n }\n\n return { plural: t('general:rows'), singular: t('general:row') }\n }\n\n const labels = getLabels(props)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const componentId = useId()\n const scrollIdPrefix = useMemo(() => `scroll-${componentId}`, [componentId])\n\n const addRow = useCallback(\n (rowIndex: number) => {\n addFieldRow({\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${scrollIdPrefix}-row-${rowIndex}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath, scrollIdPrefix],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${scrollIdPrefix}-row-${rowIndex}`)\n }, 0)\n },\n [dispatchFields, path, scrollIdPrefix, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({ path, rowIndex })\n },\n [removeFieldRow, path],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({\n moveFromIndex,\n moveToIndex,\n path,\n })\n },\n [path, moveFieldRow],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const clipboardResult = clipboardCopy({\n type,\n fields,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState,\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [fields, getFields, path, t, type],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaFields: fields,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [fields, getFields, path, replaceState, setModified, t],\n )\n\n const pasteField = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const getDataToCopy = useCallback(\n () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n }),\n [getFields, path],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && errorPaths.length > 0\n\n const showRequired = (readOnly || disabled) && rows.length === 0\n const showMinRows = (rows.length && rows.length < minRows) || (required && rows.length === 0)\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const renderDragOverlay = useCallback(\n (activeId: number | string) => {\n const activeIndex = rows.findIndex((row) => row.id === activeId)\n if (activeIndex === -1) {\n return null\n }\n\n return (\n <DragOverlayPreview\n header={\n <RowLabel\n CustomComponent={rows?.[activeIndex]?.customComponents?.RowLabel}\n label={`${getTranslation(label, i18n)} ${String(activeIndex + 1).padStart(2, '0')}`}\n path={`${path}.${activeIndex}`}\n rowNumber={activeIndex}\n />\n }\n />\n )\n },\n [rows, label, i18n, path],\n )\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={styles}\n >\n {showError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows?.length > 0 && <CollapseAllToggle onClick={toggleCollapseAll} />}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n fields={fields}\n getDataToCopy={getDataToCopy}\n onPaste={pasteField}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {BeforeInput}\n {(rows?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n renderDragOverlay={isSortable && !readOnly && !disabled ? renderDragOverlay : undefined}\n sortingStrategy={verticalListSortingStrategy}\n >\n {rows.map((rowData, i) => {\n const { id: rowID, isLoading } = rowData\n\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths?.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={rowID}\n key={rowID}\n >\n {(draggableSortableItemProps) => (\n <ArrayRow\n {...draggableSortableItemProps}\n addRow={addRow}\n copyRow={copyRow}\n CustomRowLabel={rows?.[i]?.customComponents?.RowLabel}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={fields}\n forceRender={forceRender}\n hasMaxRows={hasMaxRows}\n isLoading={isLoading}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n removeRow={removeRow}\n row={rowData}\n rowCount={rows?.length}\n rowIndex={i}\n schemaPath={schemaPath}\n scrollIdPrefix={scrollIdPrefix}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n })}\n {!valid && (\n <React.Fragment>\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n {showMinRows && (\n <Banner type=\"danger\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:rows' : 'general:row'),\n })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && !readOnly && (\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__add-row`}\n disabled={disabled}\n icon={<CirclePlusIcon />}\n iconPosition=\"left\"\n onClick={() => {\n void addRow(value || 0)\n }}\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const ArrayField = withCondition(ArrayFieldComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["verticalListSortingStrategy","getTranslation","React","useCallback","useId","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","CollapseAllToggle","DraggableSortableItem","DragOverlayPreview","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","RowLabel","useField","withCondition","CirclePlusIcon","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","mergeFieldStyles","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","field","name","type","admin","className","description","isSortable","fields","label","localized","maxRows","minRows","minRowsProp","required","forceRender","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","submitted","code","locale","i18n","t","config","localization","editingDefaultLocale","fallback","defaultLocale","getLabels","p","labels","plural","singular","undefined","memoizedValidate","value","options","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","componentId","scrollIdPrefix","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","formState","clipboardResult","getDataToCopy","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaFields","pasteField","hasMaxRows","length","fieldErrorCount","fieldHasErrors","displayedErrorCount","showRequired","showMinRows","shouldShowSummaryBanner","shouldShowFieldError","styles","renderDragOverlay","activeId","activeIndex","findIndex","row","id","_jsx","header","CustomComponent","String","padStart","rowNumber","_jsxs","filter","Boolean","join","replace","style","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","onDragEnd","sortingStrategy","rowData","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","draggableSortableItemProps","CustomRowLabel","errorCount","parentPath","rowCount","Fragment","buttonStyle","icon","iconPosition","ArrayField"],"sources":["../../../src/fields/Array/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayFieldClientComponent,\n ArrayFieldClientProps,\n ArrayField as ArrayFieldType,\n} from 'payload'\n\nimport { verticalListSortingStrategy } from '@dnd-kit/sortable'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useId, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { CollapseAllToggle } from '../../elements/CollapseAllToggle/index.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DragOverlayPreview } from '../../elements/DraggableSortable/DragOverlayPreview/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/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, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { CirclePlusIcon } from '../../icons/CirclePlus/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { ArrayRow } from './ArrayRow.js'\nimport './index.css'\n\nconst baseClass = 'array-field'\n\nexport const ArrayFieldComponent: ArrayFieldClientComponent = (props) => {\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n fields,\n label,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n forceRender = false,\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const submitted = useFormSubmitted()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const {\n config: { localization },\n } = useConfig()\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n // Handle labeling for Arrays, Global Arrays, and Blocks\n const getLabels = (p: ArrayFieldClientProps): Partial<ArrayFieldType['labels']> => {\n if ('labels' in p && p?.labels) {\n return p.labels\n }\n\n if ('labels' in p.field && p.field.labels) {\n return { plural: p.field.labels?.plural, singular: p.field.labels?.singular }\n }\n\n if ('label' in p.field && p.field.label) {\n return { plural: undefined, singular: p.field.label }\n }\n\n return { plural: t('general:rows'), singular: t('general:row') }\n }\n\n const labels = getLabels(props)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const componentId = useId()\n const scrollIdPrefix = useMemo(() => `scroll-${componentId}`, [componentId])\n\n const addRow = useCallback(\n (rowIndex: number) => {\n addFieldRow({\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${scrollIdPrefix}-row-${rowIndex}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath, scrollIdPrefix],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${scrollIdPrefix}-row-${rowIndex}`)\n }, 0)\n },\n [dispatchFields, path, scrollIdPrefix, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({ path, rowIndex })\n },\n [removeFieldRow, path],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({\n moveFromIndex,\n moveToIndex,\n path,\n })\n },\n [path, moveFieldRow],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const clipboardResult = clipboardCopy({\n type,\n fields,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState,\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [fields, getFields, path, t, type],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaFields: fields,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [fields, getFields, path, replaceState, setModified, t],\n )\n\n const pasteField = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const getDataToCopy = useCallback(\n () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n }),\n [getFields, path],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && (fieldErrorCount > 0 || !valid)\n const displayedErrorCount = fieldErrorCount > 0 ? fieldErrorCount : fieldHasErrors ? 1 : 0\n\n const showRequired = (readOnly || disabled) && rows.length === 0\n const showMinRows = (rows.length && rows.length < minRows) || (required && rows.length === 0)\n const shouldShowSummaryBanner = !valid && (showRequired || showMinRows)\n const shouldShowFieldError = showError && !shouldShowSummaryBanner\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const renderDragOverlay = useCallback(\n (activeId: number | string) => {\n const activeIndex = rows.findIndex((row) => row.id === activeId)\n if (activeIndex === -1) {\n return null\n }\n\n return (\n <DragOverlayPreview\n header={\n <RowLabel\n CustomComponent={rows?.[activeIndex]?.customComponents?.RowLabel}\n label={`${getTranslation(label, i18n)} ${String(activeIndex + 1).padStart(2, '0')}`}\n path={`${path}.${activeIndex}`}\n rowNumber={activeIndex}\n />\n }\n />\n )\n },\n [rows, label, i18n, path],\n )\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={styles}\n >\n {shouldShowFieldError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {displayedErrorCount > 0 && (\n <ErrorPill count={displayedErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows?.length > 0 && <CollapseAllToggle onClick={toggleCollapseAll} />}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n fields={fields}\n getDataToCopy={getDataToCopy}\n onPaste={pasteField}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {BeforeInput}\n {(rows?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n renderDragOverlay={isSortable && !readOnly && !disabled ? renderDragOverlay : undefined}\n sortingStrategy={verticalListSortingStrategy}\n >\n {rows.map((rowData, i) => {\n const { id: rowID, isLoading } = rowData\n\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths?.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={rowID}\n key={rowID}\n >\n {(draggableSortableItemProps) => (\n <ArrayRow\n {...draggableSortableItemProps}\n addRow={addRow}\n copyRow={copyRow}\n CustomRowLabel={rows?.[i]?.customComponents?.RowLabel}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={fields}\n forceRender={forceRender}\n hasMaxRows={hasMaxRows}\n isLoading={isLoading}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n removeRow={removeRow}\n row={rowData}\n rowCount={rows?.length}\n rowIndex={i}\n schemaPath={schemaPath}\n scrollIdPrefix={scrollIdPrefix}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n })}\n {!valid && (\n <React.Fragment>\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n {showMinRows && (\n <Banner type=\"danger\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:rows' : 'general:row'),\n })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && !readOnly && (\n <Button\n buttonStyle=\"ghost\"\n className={`${baseClass}__add-row`}\n disabled={disabled}\n icon={<CirclePlusIcon />}\n iconPosition=\"left\"\n onClick={() => {\n void addRow(value || 0)\n }}\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const ArrayField = withCondition(ArrayFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@
6
6
  width: 100%;
7
7
  align-items: flex-start;
8
8
  padding: var(--spacer-2-5) var(--spacer-3);
9
- border-bottom: 1px solid var(--color-border);
9
+ border-bottom: var(--stroke-width-small) solid var(--color-border);
10
10
  z-index: 1;
11
11
  background: var(--color-bg);
12
12
  }
@@ -10,10 +10,7 @@
10
10
  padding: 0;
11
11
  list-style: none;
12
12
  display: grid;
13
- grid-template-columns: repeat(
14
- auto-fill,
15
- minmax(var(--blocks-drawer-card-min-width), 1fr)
16
- );
13
+ grid-template-columns: repeat(auto-fill, minmax(var(--blocks-drawer-card-min-width), 1fr));
17
14
  gap: var(--spacer-3);
18
15
  }
19
16
 
@@ -59,7 +56,7 @@
59
56
  .blocks-drawer__block-group-none {
60
57
  order: 1;
61
58
  padding-top: var(--spacer-2-5);
62
- border-top: 1px solid var(--color-border);
59
+ border-top: var(--stroke-width-small) solid var(--color-border);
63
60
 
64
61
  &:only-child {
65
62
  padding-top: 0;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/Blocks/SectionTitle/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,aAAa,CAAA;AAIpB,MAAM,MAAM,KAAK,GAAG;IAClB,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACjE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8BxC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/fields/Blocks/SectionTitle/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,aAAa,CAAA;AAIpB,MAAM,MAAM,KAAK,GAAG;IAClB,cAAc,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAA;IACjE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA+BxC,CAAA"}
@@ -64,6 +64,7 @@ export const SectionTitle = props => {
64
64
  className: classes,
65
65
  "data-value": customValue || value || t("general:untitled"),
66
66
  children: _jsx("input", {
67
+ "aria-label": t("fields:blockName"),
67
68
  className: `${baseClass}__input`,
68
69
  id: path,
69
70
  name: path,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useField","useTranslation","baseClass","SectionTitle","props","$","customOnChange","customValue","path","readOnly","t0","setValue","value","t","t1","Symbol","for","filter","Boolean","classes","join","t2","e","stopPropagation","preventDefault","target","onChange","t3","_jsx","className","children","id","name","placeholder","type"],"sources":["../../../../src/fields/Blocks/SectionTitle/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useField } from '../../../forms/useField/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'section-title'\n\nexport type Props = {\n customOnChange?: (e: React.ChangeEvent<HTMLInputElement>) => void\n customValue?: string\n path: string\n readOnly: boolean\n}\n\n/**\n * An input field representing the block's `blockName` property - responsible for reading and saving the `blockName`\n * property from/into the provided path.\n */\nexport const SectionTitle: React.FC<Props> = (props) => {\n const { customOnChange, customValue, path, readOnly } = props\n\n const { setValue, value } = useField({ path })\n const { t } = useTranslation()\n\n const classes = [baseClass].filter(Boolean).join(' ')\n\n const onChange =\n customOnChange ||\n ((e) => {\n e.stopPropagation()\n e.preventDefault()\n setValue(e.target.value)\n })\n\n return (\n <div className={classes} data-value={customValue || value || t('general:untitled')}>\n <input\n className={`${baseClass}__input`}\n id={path}\n name={path}\n onChange={onChange}\n placeholder={t('general:untitled')}\n readOnly={readOnly}\n type=\"text\"\n value={customValue || (value as string) || ''}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AASlB;;;;AAIA,OAAO,MAAMC,YAAA,GAAgCC,KAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAC3C;IAAAQ,cAAA;IAAAC,WAAA;IAAAC,IAAA;IAAAC;EAAA,IAAwDL,KAAA;EAAA,IAAAM,EAAA;EAAA,IAAAL,CAAA,QAAAG,IAAA;IAEnBE,EAAA;MAAAF;IAAA;IAAOH,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAA5C;IAAAM,QAAA;IAAAC;EAAA,IAA4BZ,QAAA,CAASU,EAAO;EAC5C;IAAAG;EAAA,IAAcZ,cAAA;EAAA,IAAAa,EAAA;EAAA,IAAAT,CAAA,QAAAU,MAAA,CAAAC,GAAA;IAEEF,EAAA,IAAAZ,SAAA,EAAAe,MAAA,CAAAC,OAAmB;IAAAb,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAnC,MAAAc,OAAA,GAAgBL,EAAmB,CAAAM,IAAA,CAAc;EAAA,IAAAC,EAAA;EAAA,IAAAhB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAM,QAAA;IAG/CU,EAAA,GAAAf,cAAA,KAAAgB,CAAA;MAEEA,CAAA,CAAAC,eAAA,CAAiB;MACjBD,CAAA,CAAAE,cAAA,CAAgB;MAChBb,QAAA,CAASW,CAAA,CAAAG,MAAA,CAAAb,KAAc;IAAA,EACzB;IAAAP,CAAA,MAAAC,cAAA;IAAAD,CAAA,MAAAM,QAAA;IAAAN,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EANF,MAAAqB,QAAA,GACEL,EAKA;EAAA,IAAAM,EAAA;EAAA,IAAAtB,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAqB,QAAA,IAAArB,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAI,QAAA,IAAAJ,CAAA,SAAAQ,CAAA,IAAAR,CAAA,SAAAO,KAAA;IAGAe,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAeV,OAAA;MAAA,cAAqBZ,WAAA,IAAeK,KAAA,IAASC,CAAA,CAAE;MAAAiB,QAAA,EAC7DF,IAAA,CAAC;QAAAC,SAAA,EACY,GAAA3B,SAAA,SAAqB;QAAA6B,EAAA,EAC5BvB,IAAA;QAAAwB,IAAA,EACExB,IAAA;QAAAkB,QAAA;QAAAO,WAAA,EAEOpB,CAAA,CAAE;QAAAJ,QAAA;QAAAyB,IAAA,EAEV;QAAAtB,KAAA,EACEL,WAAA,IAAgBK,KAAA,IAAoB;MAAA,C;;;;;;;;;;;;SAT/Ce,E;CAaJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useField","useTranslation","baseClass","SectionTitle","props","$","customOnChange","customValue","path","readOnly","t0","setValue","value","t","t1","Symbol","for","filter","Boolean","classes","join","t2","e","stopPropagation","preventDefault","target","onChange","t3","_jsx","className","children","id","name","placeholder","type"],"sources":["../../../../src/fields/Blocks/SectionTitle/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useField } from '../../../forms/useField/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'section-title'\n\nexport type Props = {\n customOnChange?: (e: React.ChangeEvent<HTMLInputElement>) => void\n customValue?: string\n path: string\n readOnly: boolean\n}\n\n/**\n * An input field representing the block's `blockName` property - responsible for reading and saving the `blockName`\n * property from/into the provided path.\n */\nexport const SectionTitle: React.FC<Props> = (props) => {\n const { customOnChange, customValue, path, readOnly } = props\n\n const { setValue, value } = useField({ path })\n const { t } = useTranslation()\n\n const classes = [baseClass].filter(Boolean).join(' ')\n\n const onChange =\n customOnChange ||\n ((e) => {\n e.stopPropagation()\n e.preventDefault()\n setValue(e.target.value)\n })\n\n return (\n <div className={classes} data-value={customValue || value || t('general:untitled')}>\n <input\n aria-label={t('fields:blockName')}\n className={`${baseClass}__input`}\n id={path}\n name={path}\n onChange={onChange}\n placeholder={t('general:untitled')}\n readOnly={readOnly}\n type=\"text\"\n value={customValue || (value as string) || ''}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,MAAMC,SAAA,GAAY;AASlB;;;;AAIA,OAAO,MAAMC,YAAA,GAAgCC,KAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAC3C;IAAAQ,cAAA;IAAAC,WAAA;IAAAC,IAAA;IAAAC;EAAA,IAAwDL,KAAA;EAAA,IAAAM,EAAA;EAAA,IAAAL,CAAA,QAAAG,IAAA;IAEnBE,EAAA;MAAAF;IAAA;IAAOH,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAA5C;IAAAM,QAAA;IAAAC;EAAA,IAA4BZ,QAAA,CAASU,EAAO;EAC5C;IAAAG;EAAA,IAAcZ,cAAA;EAAA,IAAAa,EAAA;EAAA,IAAAT,CAAA,QAAAU,MAAA,CAAAC,GAAA;IAEEF,EAAA,IAAAZ,SAAA,EAAAe,MAAA,CAAAC,OAAmB;IAAAb,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAAnC,MAAAc,OAAA,GAAgBL,EAAmB,CAAAM,IAAA,CAAc;EAAA,IAAAC,EAAA;EAAA,IAAAhB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAM,QAAA;IAG/CU,EAAA,GAAAf,cAAA,KAAAgB,CAAA;MAEEA,CAAA,CAAAC,eAAA,CAAiB;MACjBD,CAAA,CAAAE,cAAA,CAAgB;MAChBb,QAAA,CAASW,CAAA,CAAAG,MAAA,CAAAb,KAAc;IAAA,EACzB;IAAAP,CAAA,MAAAC,cAAA;IAAAD,CAAA,MAAAM,QAAA;IAAAN,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EANF,MAAAqB,QAAA,GACEL,EAKA;EAAA,IAAAM,EAAA;EAAA,IAAAtB,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAqB,QAAA,IAAArB,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAI,QAAA,IAAAJ,CAAA,SAAAQ,CAAA,IAAAR,CAAA,SAAAO,KAAA;IAGAe,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAeV,OAAA;MAAA,cAAqBZ,WAAA,IAAeK,KAAA,IAASC,CAAA,CAAE;MAAAiB,QAAA,EAC7DF,IAAA,CAAC;QAAA,cACaf,CAAA,CAAE;QAAAgB,SAAA,EACH,GAAA3B,SAAA,SAAqB;QAAA6B,EAAA,EAC5BvB,IAAA;QAAAwB,IAAA,EACExB,IAAA;QAAAkB,QAAA;QAAAO,WAAA,EAEOpB,CAAA,CAAE;QAAAJ,QAAA;QAAAyB,IAAA,EAEV;QAAAtB,KAAA,EACEL,WAAA,IAAgBK,KAAA,IAAoB;MAAA,C;;;;;;;;;;;;SAV/Ce,E;CAcJ","ignoreList":[]}
@@ -4,5 +4,5 @@ export declare const BlocksField: React.FC<{
4
4
  readonly validate?: import("payload").BlocksFieldValidation;
5
5
  } & import("payload").FieldPaths & {
6
6
  readonly field: Omit<import("payload").BlocksFieldClient, "type"> & Partial<Pick<import("payload").BlocksFieldClient, "type">>;
7
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
7
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Blocks/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAyC,MAAM,OAAO,CAAA;AAgC7D,OAAO,aAAa,CAAA;AA0gBpB,eAAO,MAAM,WAAW;;;;+EAAsC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Blocks/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAyC,MAAM,OAAO,CAAA;AAgC7D,OAAO,aAAa,CAAA;AA6gBpB,eAAO,MAAM,WAAW;;;;+EAAsC,CAAA"}
@@ -298,8 +298,11 @@ const BlocksFieldComponent = props => {
298
298
  const hasMaxRows = maxRows && rows.length >= maxRows;
299
299
  const fieldErrorCount = errorPaths.length;
300
300
  const fieldHasErrors = submitted && fieldErrorCount + (valid ? 0 : 1) > 0;
301
+ const displayedErrorCount = fieldErrorCount > 0 ? fieldErrorCount : fieldHasErrors ? 1 : 0;
301
302
  const showMinRows = rows.length < minRows || required && rows.length === 0;
302
303
  const showRequired = readOnly && rows.length === 0;
304
+ const shouldShowSummaryBanner = !valid && (showRequired || showMinRows);
305
+ const shouldShowFieldError = showError && !shouldShowSummaryBanner;
303
306
  const styles = useMemo(() => mergeFieldStyles(field), [field]);
304
307
  const renderDragOverlay = useCallback(activeId => {
305
308
  const activeIndex = rows.findIndex(row => row.id === activeId);
@@ -342,7 +345,7 @@ const BlocksFieldComponent = props => {
342
345
  className: [fieldBaseClass, baseClass, className, fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`].filter(Boolean).join(' '),
343
346
  id: `field-${path?.replace(/\./g, '__')}`,
344
347
  style: styles,
345
- children: [showError && /*#__PURE__*/_jsx(RenderCustomComponent, {
348
+ children: [shouldShowFieldError && /*#__PURE__*/_jsx(RenderCustomComponent, {
346
349
  CustomComponent: Error,
347
350
  Fallback: /*#__PURE__*/_jsx(FieldError, {
348
351
  path: path,
@@ -366,8 +369,8 @@ const BlocksFieldComponent = props => {
366
369
  required: required
367
370
  })
368
371
  })
369
- }), fieldHasErrors && fieldErrorCount > 0 && /*#__PURE__*/_jsx(ErrorPill, {
370
- count: fieldErrorCount,
372
+ }), displayedErrorCount > 0 && /*#__PURE__*/_jsx(ErrorPill, {
373
+ count: displayedErrorCount,
371
374
  i18n: i18n,
372
375
  withMessage: true
373
376
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["verticalListSortingStrategy","getTranslation","React","Fragment","useCallback","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","CollapseAllToggle","DraggableSortableItem","DragOverlayPreview","DraggableSortable","DrawerToggler","useDrawerSlug","ErrorPill","Pill","RenderCustomComponent","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","RowLabel","useField","withCondition","CirclePlusIcon","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","FieldDescription","FieldError","FieldLabel","mergeFieldStyles","fieldBaseClass","BlockRow","BlocksDrawer","baseClass","BlocksFieldComponent","props","i18n","t","field","name","type","admin","className","description","isSortable","blocks","label","labels","labelsFromProps","localized","maxRows","minRows","minRowsProp","required","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","code","locale","config","localization","drawerSlug","submitted","plural","singular","editingDefaultLocale","fallback","defaultLocale","memoizedValidate","value","options","blocksFilterOptions","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","clientBlocks","clientBlocksAfterFilter","resolvedBlocks","blockOrSlug","block","blocksMap","push","Array","isArray","filter","blockSlug","slug","includes","getBlockConfig","blockType","find","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","clipboardResult","getDataToCopy","formState","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaBlocks","pasteBlocks","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showMinRows","showRequired","styles","renderDragOverlay","activeId","activeIndex","findIndex","row","id","activeRow","blockConfig","showBlockName","disableBlockName","blockName","undefined","_jsx","header","CustomComponent","_jsxs","_Fragment","String","padStart","pillStyle","size","rowNumber","Boolean","join","replace","style","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","onDragEnd","sortingStrategy","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","draggableSortableItemProps","errorCount","fields","parentPath","rowCount","buttonStyle","el","icon","iconPosition","addRowIndex","BlocksField"],"sources":["../../../src/fields/Blocks/index.tsx"],"sourcesContent":["'use client'\nimport type { BlocksFieldClientComponent, ClientBlock } from 'payload'\n\nimport { verticalListSortingStrategy } from '@dnd-kit/sortable'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { CollapseAllToggle } from '../../elements/CollapseAllToggle/index.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DragOverlayPreview } from '../../elements/DraggableSortable/DragOverlayPreview/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { DrawerToggler } from '../../elements/Drawer/index.js'\nimport { useDrawerSlug } from '../../elements/Drawer/useDrawerSlug.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { useForm, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { CirclePlusIcon } from '../../icons/CirclePlus/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport './index.css'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { BlockRow } from './BlockRow.js'\nimport { BlocksDrawer } from './BlocksDrawer/index.js'\n\nconst baseClass = 'blocks-field'\n\nconst BlocksFieldComponent: BlocksFieldClientComponent = (props) => {\n const { i18n, t } = useTranslation()\n\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n blocks,\n label,\n labels: labelsFromProps,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const { code: locale } = useLocale()\n const {\n config: { localization },\n config,\n } = useConfig()\n const drawerSlug = useDrawerSlug('blocks-drawer')\n const submitted = useFormSubmitted()\n\n const labels = {\n plural: t('fields:blocks'),\n singular: t('fields:block'),\n ...labelsFromProps,\n }\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n blocksFilterOptions,\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const { clientBlocks, clientBlocksAfterFilter } = useMemo(() => {\n const resolvedBlocks: ClientBlock[] = []\n\n for (const blockOrSlug of blocks) {\n const block = typeof blockOrSlug === 'string' ? config.blocksMap[blockOrSlug] : blockOrSlug\n if (block) {\n resolvedBlocks.push(block)\n }\n }\n\n if (Array.isArray(blocksFilterOptions)) {\n const clientBlocksAfterFilter = resolvedBlocks.filter((block) => {\n const blockSlug = typeof block === 'string' ? block : block.slug\n return blocksFilterOptions.includes(blockSlug)\n })\n\n return {\n clientBlocks: resolvedBlocks,\n clientBlocksAfterFilter,\n }\n }\n return {\n clientBlocks: resolvedBlocks,\n clientBlocksAfterFilter: resolvedBlocks,\n }\n }, [blocks, blocksFilterOptions, config.blocksMap])\n\n const getBlockConfig = (blockType: string): ClientBlock | undefined =>\n config.blocksMap[blockType] ?? clientBlocks.find((block) => block.slug === blockType)\n\n const addRow = useCallback(\n (rowIndex: number, blockType: string) => {\n addFieldRow({\n blockType,\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({\n path,\n rowIndex,\n })\n },\n [path, removeFieldRow],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({ moveFromIndex, moveToIndex, path })\n },\n [moveFieldRow, path],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const clipboardResult = clipboardCopy({\n type,\n blocks: clientBlocks,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [clientBlocks, path, t, type, getFields],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaBlocks: clientBlocks,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [clientBlocks, getFields, path, replaceState, setModified, t],\n )\n\n const pasteBlocks = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && fieldErrorCount + (valid ? 0 : 1) > 0\n\n const showMinRows = rows.length < minRows || (required && rows.length === 0)\n const showRequired = readOnly && rows.length === 0\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const renderDragOverlay = useCallback(\n (activeId: number | string) => {\n const activeIndex = rows.findIndex((row) => row.id === activeId)\n if (activeIndex === -1) {\n return null\n }\n\n const activeRow = rows[activeIndex]\n const blockConfig = getBlockConfig(activeRow.blockType)\n\n if (!blockConfig) {\n return null\n }\n\n const showBlockName = !blockConfig.admin?.disableBlockName\n const blockName = showBlockName\n ? (getFields()?.[`${path}.${activeIndex}.blockName`]?.value as string)\n : undefined\n\n return (\n <DragOverlayPreview\n header={\n <div className={`${baseClass}__block-header`}>\n <RowLabel\n CustomComponent={rows?.[activeIndex]?.customComponents?.RowLabel}\n label={\n <>\n <span className={`${baseClass}__block-number`}>\n {String(activeIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${activeRow.blockType}`}\n pillStyle=\"white\"\n size=\"small\"\n >\n {getTranslation(blockConfig.labels.singular, i18n)}\n </Pill>\n {blockName && <span className=\"section-title__text\">{blockName}</span>}\n </>\n }\n path={`${path}.${activeIndex}`}\n rowNumber={activeIndex}\n />\n </div>\n }\n />\n )\n },\n [rows, config.blocksMap, clientBlocks, i18n, path, getFields],\n )\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path?.replace(/\\./g, '__')}`}\n style={styles}\n >\n {showError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows.length > 0 && <CollapseAllToggle onClick={toggleCollapseAll} />}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n blocks={clientBlocks}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n getDataToCopy={() =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n })\n }\n onPaste={pasteBlocks}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n {BeforeInput}\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {(rows.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n renderDragOverlay={isSortable && !readOnly && !disabled ? renderDragOverlay : undefined}\n sortingStrategy={verticalListSortingStrategy}\n >\n {rows.map((row, i) => {\n const { blockType, isLoading } = row\n\n const blockConfig = getBlockConfig(blockType)\n\n if (blockConfig) {\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={row.id}\n key={row.id}\n >\n {(draggableSortableItemProps) => (\n <BlockRow\n {...draggableSortableItemProps}\n addRow={addRow}\n block={blockConfig}\n // Pass all blocks, not just clientBlocksAfterFilter, as existing blocks should still be displayed even if they don't match the new filter\n blocks={clientBlocks}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={blockConfig.fields}\n hasMaxRows={hasMaxRows}\n isLoading={isLoading}\n isSortable={isSortable}\n Label={rows?.[i]?.customComponents?.RowLabel}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n removeRow={removeRow}\n row={row}\n rowCount={rows.length}\n rowIndex={i}\n schemaPath={schemaPath + blockConfig.slug}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n }\n\n return null\n })}\n {!valid && (\n <React.Fragment>\n {showMinRows && (\n <Banner type=\"danger\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:row' : 'general:rows'),\n })}\n </Banner>\n )}\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && (\n <Fragment>\n <DrawerToggler\n className={`${baseClass}__drawer-toggler`}\n disabled={readOnly || disabled}\n slug={drawerSlug}\n >\n <Button\n buttonStyle=\"ghost\"\n disabled={readOnly || disabled}\n el=\"span\"\n icon={<CirclePlusIcon />}\n iconPosition=\"left\"\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n </DrawerToggler>\n <BlocksDrawer\n addRow={addRow}\n addRowIndex={rows?.length || 0}\n // Only allow choosing filtered blocks\n blocks={clientBlocksAfterFilter}\n drawerSlug={drawerSlug}\n labels={labels}\n />\n </Fragment>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const BlocksField = withCondition(BlocksFieldComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["verticalListSortingStrategy","getTranslation","React","Fragment","useCallback","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","CollapseAllToggle","DraggableSortableItem","DragOverlayPreview","DraggableSortable","DrawerToggler","useDrawerSlug","ErrorPill","Pill","RenderCustomComponent","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","RowLabel","useField","withCondition","CirclePlusIcon","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","FieldDescription","FieldError","FieldLabel","mergeFieldStyles","fieldBaseClass","BlockRow","BlocksDrawer","baseClass","BlocksFieldComponent","props","i18n","t","field","name","type","admin","className","description","isSortable","blocks","label","labels","labelsFromProps","localized","maxRows","minRows","minRowsProp","required","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","code","locale","config","localization","drawerSlug","submitted","plural","singular","editingDefaultLocale","fallback","defaultLocale","memoizedValidate","value","options","blocksFilterOptions","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","clientBlocks","clientBlocksAfterFilter","resolvedBlocks","blockOrSlug","block","blocksMap","push","Array","isArray","filter","blockSlug","slug","includes","getBlockConfig","blockType","find","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","clipboardResult","getDataToCopy","formState","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaBlocks","pasteBlocks","hasMaxRows","length","fieldErrorCount","fieldHasErrors","displayedErrorCount","showMinRows","showRequired","shouldShowSummaryBanner","shouldShowFieldError","styles","renderDragOverlay","activeId","activeIndex","findIndex","row","id","activeRow","blockConfig","showBlockName","disableBlockName","blockName","undefined","_jsx","header","CustomComponent","_jsxs","_Fragment","String","padStart","pillStyle","size","rowNumber","Boolean","join","replace","style","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","onDragEnd","sortingStrategy","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","draggableSortableItemProps","errorCount","fields","parentPath","rowCount","buttonStyle","el","icon","iconPosition","addRowIndex","BlocksField"],"sources":["../../../src/fields/Blocks/index.tsx"],"sourcesContent":["'use client'\nimport type { BlocksFieldClientComponent, ClientBlock } from 'payload'\n\nimport { verticalListSortingStrategy } from '@dnd-kit/sortable'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { CollapseAllToggle } from '../../elements/CollapseAllToggle/index.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DragOverlayPreview } from '../../elements/DraggableSortable/DragOverlayPreview/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { DrawerToggler } from '../../elements/Drawer/index.js'\nimport { useDrawerSlug } from '../../elements/Drawer/useDrawerSlug.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { useForm, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { CirclePlusIcon } from '../../icons/CirclePlus/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport './index.css'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { BlockRow } from './BlockRow.js'\nimport { BlocksDrawer } from './BlocksDrawer/index.js'\n\nconst baseClass = 'blocks-field'\n\nconst BlocksFieldComponent: BlocksFieldClientComponent = (props) => {\n const { i18n, t } = useTranslation()\n\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n blocks,\n label,\n labels: labelsFromProps,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const { code: locale } = useLocale()\n const {\n config: { localization },\n config,\n } = useConfig()\n const drawerSlug = useDrawerSlug('blocks-drawer')\n const submitted = useFormSubmitted()\n\n const labels = {\n plural: t('fields:blocks'),\n singular: t('fields:block'),\n ...labelsFromProps,\n }\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n blocksFilterOptions,\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const { clientBlocks, clientBlocksAfterFilter } = useMemo(() => {\n const resolvedBlocks: ClientBlock[] = []\n\n for (const blockOrSlug of blocks) {\n const block = typeof blockOrSlug === 'string' ? config.blocksMap[blockOrSlug] : blockOrSlug\n if (block) {\n resolvedBlocks.push(block)\n }\n }\n\n if (Array.isArray(blocksFilterOptions)) {\n const clientBlocksAfterFilter = resolvedBlocks.filter((block) => {\n const blockSlug = typeof block === 'string' ? block : block.slug\n return blocksFilterOptions.includes(blockSlug)\n })\n\n return {\n clientBlocks: resolvedBlocks,\n clientBlocksAfterFilter,\n }\n }\n return {\n clientBlocks: resolvedBlocks,\n clientBlocksAfterFilter: resolvedBlocks,\n }\n }, [blocks, blocksFilterOptions, config.blocksMap])\n\n const getBlockConfig = (blockType: string): ClientBlock | undefined =>\n config.blocksMap[blockType] ?? clientBlocks.find((block) => block.slug === blockType)\n\n const addRow = useCallback(\n (rowIndex: number, blockType: string) => {\n addFieldRow({\n blockType,\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({\n path,\n rowIndex,\n })\n },\n [path, removeFieldRow],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({ moveFromIndex, moveToIndex, path })\n },\n [moveFieldRow, path],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const clipboardResult = clipboardCopy({\n type,\n blocks: clientBlocks,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [clientBlocks, path, t, type, getFields],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaBlocks: clientBlocks,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [clientBlocks, getFields, path, replaceState, setModified, t],\n )\n\n const pasteBlocks = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && fieldErrorCount + (valid ? 0 : 1) > 0\n const displayedErrorCount = fieldErrorCount > 0 ? fieldErrorCount : fieldHasErrors ? 1 : 0\n\n const showMinRows = rows.length < minRows || (required && rows.length === 0)\n const showRequired = readOnly && rows.length === 0\n const shouldShowSummaryBanner = !valid && (showRequired || showMinRows)\n const shouldShowFieldError = showError && !shouldShowSummaryBanner\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n const renderDragOverlay = useCallback(\n (activeId: number | string) => {\n const activeIndex = rows.findIndex((row) => row.id === activeId)\n if (activeIndex === -1) {\n return null\n }\n\n const activeRow = rows[activeIndex]\n const blockConfig = getBlockConfig(activeRow.blockType)\n\n if (!blockConfig) {\n return null\n }\n\n const showBlockName = !blockConfig.admin?.disableBlockName\n const blockName = showBlockName\n ? (getFields()?.[`${path}.${activeIndex}.blockName`]?.value as string)\n : undefined\n\n return (\n <DragOverlayPreview\n header={\n <div className={`${baseClass}__block-header`}>\n <RowLabel\n CustomComponent={rows?.[activeIndex]?.customComponents?.RowLabel}\n label={\n <>\n <span className={`${baseClass}__block-number`}>\n {String(activeIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${activeRow.blockType}`}\n pillStyle=\"white\"\n size=\"small\"\n >\n {getTranslation(blockConfig.labels.singular, i18n)}\n </Pill>\n {blockName && <span className=\"section-title__text\">{blockName}</span>}\n </>\n }\n path={`${path}.${activeIndex}`}\n rowNumber={activeIndex}\n />\n </div>\n }\n />\n )\n },\n [rows, config.blocksMap, clientBlocks, i18n, path, getFields],\n )\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path?.replace(/\\./g, '__')}`}\n style={styles}\n >\n {shouldShowFieldError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {displayedErrorCount > 0 && (\n <ErrorPill count={displayedErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows.length > 0 && <CollapseAllToggle onClick={toggleCollapseAll} />}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n blocks={clientBlocks}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n getDataToCopy={() =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n })\n }\n onPaste={pasteBlocks}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n {BeforeInput}\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {(rows.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n renderDragOverlay={isSortable && !readOnly && !disabled ? renderDragOverlay : undefined}\n sortingStrategy={verticalListSortingStrategy}\n >\n {rows.map((row, i) => {\n const { blockType, isLoading } = row\n\n const blockConfig = getBlockConfig(blockType)\n\n if (blockConfig) {\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={row.id}\n key={row.id}\n >\n {(draggableSortableItemProps) => (\n <BlockRow\n {...draggableSortableItemProps}\n addRow={addRow}\n block={blockConfig}\n // Pass all blocks, not just clientBlocksAfterFilter, as existing blocks should still be displayed even if they don't match the new filter\n blocks={clientBlocks}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={blockConfig.fields}\n hasMaxRows={hasMaxRows}\n isLoading={isLoading}\n isSortable={isSortable}\n Label={rows?.[i]?.customComponents?.RowLabel}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n removeRow={removeRow}\n row={row}\n rowCount={rows.length}\n rowIndex={i}\n schemaPath={schemaPath + blockConfig.slug}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n }\n\n return null\n })}\n {!valid && (\n <React.Fragment>\n {showMinRows && (\n <Banner type=\"danger\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:row' : 'general:rows'),\n })}\n </Banner>\n )}\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && (\n <Fragment>\n <DrawerToggler\n className={`${baseClass}__drawer-toggler`}\n disabled={readOnly || disabled}\n slug={drawerSlug}\n >\n <Button\n buttonStyle=\"ghost\"\n disabled={readOnly || disabled}\n el=\"span\"\n icon={<CirclePlusIcon />}\n iconPosition=\"left\"\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n </DrawerToggler>\n <BlocksDrawer\n addRow={addRow}\n addRowIndex={rows?.length || 0}\n // Only allow choosing filtered blocks\n blocks={clientBlocksAfterFilter}\n drawerSlug={drawerSlug}\n labels={labels}\n />\n </Fragment>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const BlocksField = withCondition(BlocksFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -116,7 +116,7 @@
116
116
  }
117
117
 
118
118
  &:has(:focus-visible) .checkbox-input__input {
119
- outline: 1px solid var(--color-bg);
119
+ outline: var(--stroke-width-small) solid var(--color-bg);
120
120
  outline-offset: -2px;
121
121
  }
122
122
  }
@@ -128,7 +128,7 @@
128
128
  }
129
129
 
130
130
  &:has(:focus-visible) .checkbox-input__input {
131
- outline: 1px solid var(--color-bg);
131
+ outline: var(--stroke-width-small) solid var(--color-bg);
132
132
  outline-offset: -2px; /* inset offset */
133
133
  }
134
134
 
@@ -14,5 +14,5 @@ export declare const CheckboxField: React.FC<{
14
14
  readonly validate?: CheckboxFieldValidation;
15
15
  } & {
16
16
  readonly field: Omit<import("payload").CheckboxFieldClient, "type"> & Partial<Pick<import("payload").CheckboxFieldClient, "type">>;
17
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
17
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -10,7 +10,7 @@
10
10
  border: var(--stroke-width-small) solid var(--field-color-border);
11
11
  border-radius: var(--field-border-radius);
12
12
  padding: var(--spacer-2) 0;
13
- overflow: clip;
13
+ overflow: visible;
14
14
  box-shadow: none;
15
15
 
16
16
  &:hover {
@@ -2,10 +2,10 @@ import React from 'react';
2
2
  import './index.css';
3
3
  export declare const CodeField: React.FC<{
4
4
  readonly autoComplete?: string;
5
- readonly onMount?: import("@monaco-editor/react").EditorProps["onMount"];
5
+ readonly onMount?: import("@monaco-editor/react").EditorProps['onMount'];
6
6
  readonly path: string;
7
7
  readonly validate?: import("payload").CodeFieldValidation;
8
8
  } & {
9
9
  readonly field: Omit<import("payload").CodeFieldClient, "type"> & Partial<Pick<import("payload").CodeFieldClient, "type">>;
10
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
10
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
11
11
  //# sourceMappingURL=index.d.ts.map
@@ -2,5 +2,5 @@ import React from 'react';
2
2
  import './index.css';
3
3
  export declare const CollapsibleField: React.FC<import("payload").FieldPaths & {
4
4
  readonly field: Omit<import("payload").CollapsibleFieldClient, "type"> & Partial<Pick<import("payload").CollapsibleFieldClient, "type">>;
5
- } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
5
+ } & Omit<import("payload").ClientComponentProps, "customComponents" | "field">>;
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -3,6 +3,10 @@ import './index.css';
3
3
  export type ConfirmPasswordFieldProps = {
4
4
  readonly disabled?: boolean;
5
5
  readonly path?: string;
6
+ /**
7
+ * Controls the height of the input. Defaults to `'large'`.
8
+ */
9
+ readonly size?: 'large' | 'medium';
6
10
  };
7
11
  export declare const ConfirmPasswordField: React.FC<ConfirmPasswordFieldProps>;
8
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/ConfirmPassword/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAQvC,OAAO,aAAa,CAAA;AAEpB,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA8DpE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/ConfirmPassword/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAQvC,OAAO,aAAa,CAAA;AAEpB,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA+DpE,CAAA"}