@payloadcms/ui 3.71.0-internal-debug.80dab4c → 3.71.0-internal.27e1e08

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 (1199) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +0 -1
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AddNewRelation/index.js +273 -218
  5. package/dist/elements/AddNewRelation/index.js.map +1 -1
  6. package/dist/elements/AddNewRelation/types.js +1 -2
  7. package/dist/elements/AddNewRelation/types.js.map +1 -1
  8. package/dist/elements/AnimateHeight/index.js +73 -84
  9. package/dist/elements/AnimateHeight/index.js.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +68 -71
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/AppHeader/index.js +101 -171
  13. package/dist/elements/AppHeader/index.js.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +118 -186
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.js +181 -162
  17. package/dist/elements/Autosave/index.js.map +1 -1
  18. package/dist/elements/Banner/index.js +32 -52
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +173 -169
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.js +51 -84
  23. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js +94 -85
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +56 -30
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +27 -19
  29. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +169 -179
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditForm/types.js +1 -2
  33. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +172 -221
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.js +57 -56
  37. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/FileSidebar/index.js +316 -395
  39. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FormsManager/createFormData.js +32 -33
  41. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  42. package/dist/elements/BulkUpload/FormsManager/index.js +473 -503
  43. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  44. package/dist/elements/BulkUpload/FormsManager/reducer.js +90 -100
  45. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  46. package/dist/elements/BulkUpload/Header/index.js +15 -27
  47. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.js +271 -204
  49. package/dist/elements/BulkUpload/index.js.map +1 -1
  50. package/dist/elements/Button/index.js +160 -227
  51. package/dist/elements/Button/index.js.map +1 -1
  52. package/dist/elements/Button/types.js +1 -14
  53. package/dist/elements/Button/types.js.map +1 -1
  54. package/dist/elements/Card/index.js +33 -53
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CheckboxPopup/index.js +36 -43
  57. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  58. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +35 -29
  59. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  60. package/dist/elements/ClipboardAction/clipboardUtilities.js +43 -33
  61. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  62. package/dist/elements/ClipboardAction/index.js +83 -110
  63. package/dist/elements/ClipboardAction/index.js.map +1 -1
  64. package/dist/elements/ClipboardAction/isClipboardDataValid.js +71 -64
  65. package/dist/elements/ClipboardAction/isClipboardDataValid.js.map +1 -1
  66. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +93 -75
  67. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  68. package/dist/elements/ClipboardAction/types.js +1 -2
  69. package/dist/elements/ClipboardAction/types.js.map +1 -1
  70. package/dist/elements/CloseModalButton/index.js +20 -25
  71. package/dist/elements/CloseModalButton/index.js.map +1 -1
  72. package/dist/elements/CloseModalOnRouteChange/index.js +43 -17
  73. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  74. package/dist/elements/CodeEditor/CodeEditor.js +97 -82
  75. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  76. package/dist/elements/CodeEditor/constants.js +14 -15
  77. package/dist/elements/CodeEditor/constants.js.map +1 -1
  78. package/dist/elements/CodeEditor/index.js +10 -22
  79. package/dist/elements/CodeEditor/index.js.map +1 -1
  80. package/dist/elements/CodeEditor/types.js +1 -4
  81. package/dist/elements/CodeEditor/types.js.map +1 -1
  82. package/dist/elements/Collapsible/index.js +141 -151
  83. package/dist/elements/Collapsible/index.js.map +1 -1
  84. package/dist/elements/Collapsible/provider.js +30 -32
  85. package/dist/elements/Collapsible/provider.js.map +1 -1
  86. package/dist/elements/ColumnSelector/index.js +54 -54
  87. package/dist/elements/ColumnSelector/index.js.map +1 -1
  88. package/dist/elements/Combobox/index.js +84 -114
  89. package/dist/elements/Combobox/index.js.map +1 -1
  90. package/dist/elements/ConfirmationModal/index.js +129 -116
  91. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  92. package/dist/elements/CopyLocaleData/index.js +272 -213
  93. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  94. package/dist/elements/CopyToClipboard/index.js +70 -47
  95. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  96. package/dist/elements/DatePicker/DatePicker.js +136 -130
  97. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  98. package/dist/elements/DatePicker/getFormattedLocale.js +10 -11
  99. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  100. package/dist/elements/DatePicker/index.js +11 -23
  101. package/dist/elements/DatePicker/index.js.map +1 -1
  102. package/dist/elements/DatePicker/types.js +1 -2
  103. package/dist/elements/DatePicker/types.js.map +1 -1
  104. package/dist/elements/DefaultListViewTabs/index.js +131 -97
  105. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  106. package/dist/elements/DeleteDocument/index.js +141 -170
  107. package/dist/elements/DeleteDocument/index.js.map +1 -1
  108. package/dist/elements/DeleteMany/index.js +332 -371
  109. package/dist/elements/DeleteMany/index.js.map +1 -1
  110. package/dist/elements/DocumentControls/index.js +274 -494
  111. package/dist/elements/DocumentControls/index.js.map +1 -1
  112. package/dist/elements/DocumentDrawer/DrawerContent.js +122 -141
  113. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  114. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +103 -96
  115. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DocumentDrawer/Provider.js +18 -24
  117. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  118. package/dist/elements/DocumentDrawer/index.js +210 -134
  119. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  120. package/dist/elements/DocumentDrawer/types.js +1 -12
  121. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  122. package/dist/elements/DocumentFields/index.js +69 -106
  123. package/dist/elements/DocumentFields/index.js.map +1 -1
  124. package/dist/elements/DocumentLocked/index.js +179 -154
  125. package/dist/elements/DocumentLocked/index.js.map +1 -1
  126. package/dist/elements/DocumentTakeOver/index.js +113 -97
  127. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  128. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +60 -26
  129. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  130. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +1 -2
  131. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  132. package/dist/elements/DraggableSortable/index.js +124 -72
  133. package/dist/elements/DraggableSortable/index.js.map +1 -1
  134. package/dist/elements/DraggableSortable/types.js +1 -2
  135. package/dist/elements/DraggableSortable/types.js.map +1 -1
  136. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +85 -25
  137. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  138. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +1 -2
  139. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  140. package/dist/elements/Drawer/index.js +192 -166
  141. package/dist/elements/Drawer/index.js.map +1 -1
  142. package/dist/elements/Drawer/types.js +1 -2
  143. package/dist/elements/Drawer/types.js.map +1 -1
  144. package/dist/elements/Drawer/useDrawerSlug.js +19 -7
  145. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  146. package/dist/elements/DrawerActionHeader/index.js +61 -59
  147. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  148. package/dist/elements/DrawerContentContainer/index.js +9 -14
  149. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  150. package/dist/elements/Dropzone/index.js +75 -90
  151. package/dist/elements/Dropzone/index.js.map +1 -1
  152. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +87 -145
  153. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  154. package/dist/elements/DuplicateDocument/index.js +145 -155
  155. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  156. package/dist/elements/EditMany/DrawerContent.js +392 -398
  157. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  158. package/dist/elements/EditMany/index.js +131 -79
  159. package/dist/elements/EditMany/index.js.map +1 -1
  160. package/dist/elements/EditUpload/index.js +395 -572
  161. package/dist/elements/EditUpload/index.js.map +1 -1
  162. package/dist/elements/EmailAndUsername/index.js +77 -96
  163. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  164. package/dist/elements/ErrorPill/index.js +24 -38
  165. package/dist/elements/ErrorPill/index.js.map +1 -1
  166. package/dist/elements/FieldDiffContainer/index.js +34 -50
  167. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  168. package/dist/elements/FieldDiffLabel/index.js +7 -10
  169. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  170. package/dist/elements/FieldSelect/index.js +75 -45
  171. package/dist/elements/FieldSelect/index.js.map +1 -1
  172. package/dist/elements/FieldSelect/reduceFieldOptions.js +67 -69
  173. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  174. package/dist/elements/FileDetails/DraggableFileDetails/index.js +105 -113
  175. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  176. package/dist/elements/FileDetails/FileMeta/index.js +33 -72
  177. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  178. package/dist/elements/FileDetails/StaticFileDetails/index.js +58 -76
  179. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  180. package/dist/elements/FileDetails/index.js +14 -20
  181. package/dist/elements/FileDetails/index.js.map +1 -1
  182. package/dist/elements/FolderView/Breadcrumbs/index.js +86 -59
  183. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  184. package/dist/elements/FolderView/BrowseByFolderButton/index.js +30 -30
  185. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  186. package/dist/elements/FolderView/Cell/index.client.js +87 -88
  187. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  188. package/dist/elements/FolderView/Cell/index.server.js +14 -19
  189. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  190. package/dist/elements/FolderView/ColoredFolderIcon/index.js +4 -9
  191. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  192. package/dist/elements/FolderView/CurrentFolderActions/index.js +138 -174
  193. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  194. package/dist/elements/FolderView/DragOverlaySelection/index.js +51 -70
  195. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  196. package/dist/elements/FolderView/DraggableTableRow/index.js +54 -71
  197. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  198. package/dist/elements/FolderView/DraggableWithClick/index.js +79 -75
  199. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  200. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +33 -35
  201. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  202. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +565 -497
  203. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  204. package/dist/elements/FolderView/FilterFolderTypePill/index.js +89 -61
  205. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  206. package/dist/elements/FolderView/FolderField/index.server.js +10 -15
  207. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  208. package/dist/elements/FolderView/FolderFileCard/index.js +188 -218
  209. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  210. package/dist/elements/FolderView/FolderFileTable/index.js +264 -203
  211. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  212. package/dist/elements/FolderView/FolderTypeField/index.js +114 -93
  213. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  214. package/dist/elements/FolderView/ItemCardGrid/index.js +27 -35
  215. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  216. package/dist/elements/FolderView/MoveDocToFolder/index.js +264 -142
  217. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  218. package/dist/elements/FolderView/SimpleTable/index.js +83 -105
  219. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  220. package/dist/elements/FolderView/SortByPill/index.js +100 -162
  221. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  222. package/dist/elements/FolderView/ToggleViewButtons/index.js +24 -47
  223. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  224. package/dist/elements/FullscreenModal/index.js +22 -16
  225. package/dist/elements/FullscreenModal/index.js.map +1 -1
  226. package/dist/elements/GenerateConfirmation/index.js +83 -63
  227. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  228. package/dist/elements/GroupByBuilder/index.js +100 -142
  229. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  230. package/dist/elements/Gutter/index.js +19 -22
  231. package/dist/elements/Gutter/index.js.map +1 -1
  232. package/dist/elements/HTMLDiff/diff/index.js +500 -522
  233. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  234. package/dist/elements/HTMLDiff/index.js +26 -31
  235. package/dist/elements/HTMLDiff/index.js.map +1 -1
  236. package/dist/elements/Hamburger/index.js +40 -51
  237. package/dist/elements/Hamburger/index.js.map +1 -1
  238. package/dist/elements/HydrateAuthProvider/index.js +27 -15
  239. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  240. package/dist/elements/IDLabel/index.js +57 -31
  241. package/dist/elements/IDLabel/index.js.map +1 -1
  242. package/dist/elements/ItemsDrawer/ItemSearch/index.js +48 -43
  243. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  244. package/dist/elements/ItemsDrawer/index.js +168 -219
  245. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  246. package/dist/elements/LeaveWithoutSaving/index.js +142 -73
  247. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  248. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +129 -113
  249. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  250. package/dist/elements/Link/formatUrl.js +56 -53
  251. package/dist/elements/Link/formatUrl.js.map +1 -1
  252. package/dist/elements/Link/index.js +54 -50
  253. package/dist/elements/Link/index.js.map +1 -1
  254. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +17 -17
  255. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  256. package/dist/elements/ListControls/index.js +168 -253
  257. package/dist/elements/ListControls/index.js.map +1 -1
  258. package/dist/elements/ListControls/types.js +1 -8
  259. package/dist/elements/ListControls/types.js.map +1 -1
  260. package/dist/elements/ListDrawer/DrawerContent.js +168 -183
  261. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  262. package/dist/elements/ListDrawer/Provider.js +19 -28
  263. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  264. package/dist/elements/ListDrawer/index.js +229 -149
  265. package/dist/elements/ListDrawer/index.js.map +1 -1
  266. package/dist/elements/ListDrawer/types.js +1 -6
  267. package/dist/elements/ListDrawer/types.js.map +1 -1
  268. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +84 -43
  269. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  270. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +33 -23
  271. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  272. package/dist/elements/ListHeader/DrawerTitleActions/index.js +0 -1
  273. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  274. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +73 -49
  275. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  276. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +40 -22
  277. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  278. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +162 -130
  279. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  280. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +148 -169
  281. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  282. package/dist/elements/ListHeader/TitleActions/index.js +0 -1
  283. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  284. package/dist/elements/ListHeader/index.js +24 -65
  285. package/dist/elements/ListHeader/index.js.map +1 -1
  286. package/dist/elements/ListSelection/index.js +58 -93
  287. package/dist/elements/ListSelection/index.js.map +1 -1
  288. package/dist/elements/LivePreview/Device/index.js +83 -83
  289. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  290. package/dist/elements/LivePreview/DeviceContainer/index.js +49 -29
  291. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  292. package/dist/elements/LivePreview/IFrame/index.js +44 -20
  293. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  294. package/dist/elements/LivePreview/Toggler/index.js +26 -32
  295. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  296. package/dist/elements/LivePreview/Toolbar/Controls/index.js +141 -210
  297. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  298. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +92 -62
  299. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  300. package/dist/elements/LivePreview/Toolbar/index.js +84 -84
  301. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  302. package/dist/elements/LivePreview/ToolbarArea/index.js +33 -15
  303. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  304. package/dist/elements/LivePreview/Window/index.js +166 -132
  305. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  306. package/dist/elements/Loading/index.js +144 -112
  307. package/dist/elements/Loading/index.js.map +1 -1
  308. package/dist/elements/LoadingOverlay/index.js +67 -68
  309. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  310. package/dist/elements/LoadingOverlay/reducer.js +29 -27
  311. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  312. package/dist/elements/LoadingOverlay/types.js +1 -2
  313. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  314. package/dist/elements/Localizer/LocalizerLabel/index.js +51 -55
  315. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  316. package/dist/elements/Localizer/index.js +117 -99
  317. package/dist/elements/Localizer/index.js.map +1 -1
  318. package/dist/elements/Locked/index.js +59 -38
  319. package/dist/elements/Locked/index.js.map +1 -1
  320. package/dist/elements/Logout/index.js +51 -30
  321. package/dist/elements/Logout/index.js.map +1 -1
  322. package/dist/elements/Modal/index.js +1 -1
  323. package/dist/elements/Modal/index.js.map +1 -1
  324. package/dist/elements/Nav/NavToggler/index.js +80 -34
  325. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  326. package/dist/elements/Nav/context.js +103 -107
  327. package/dist/elements/Nav/context.js.map +1 -1
  328. package/dist/elements/NavGroup/index.js +122 -98
  329. package/dist/elements/NavGroup/index.js.map +1 -1
  330. package/dist/elements/NoListResults/index.js +14 -27
  331. package/dist/elements/NoListResults/index.js.map +1 -1
  332. package/dist/elements/PageControls/GroupByPageControls.js +71 -40
  333. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  334. package/dist/elements/PageControls/index.js +107 -77
  335. package/dist/elements/PageControls/index.js.map +1 -1
  336. package/dist/elements/Pagination/ClickableArrow/index.js +16 -24
  337. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  338. package/dist/elements/Pagination/Page/index.js +16 -19
  339. package/dist/elements/Pagination/Page/index.js.map +1 -1
  340. package/dist/elements/Pagination/Separator/index.js +6 -10
  341. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  342. package/dist/elements/Pagination/index.js +99 -102
  343. package/dist/elements/Pagination/index.js.map +1 -1
  344. package/dist/elements/PerPage/index.js +80 -93
  345. package/dist/elements/PerPage/index.js.map +1 -1
  346. package/dist/elements/PermanentlyDeleteButton/index.js +133 -150
  347. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  348. package/dist/elements/Pill/index.js +121 -103
  349. package/dist/elements/Pill/index.js.map +1 -1
  350. package/dist/elements/PillSelector/index.js +56 -79
  351. package/dist/elements/PillSelector/index.js.map +1 -1
  352. package/dist/elements/Popup/PopupButtonList/index.js +52 -65
  353. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  354. package/dist/elements/Popup/PopupDivider/index.js +5 -10
  355. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  356. package/dist/elements/Popup/PopupGroupLabel/index.js +8 -11
  357. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  358. package/dist/elements/Popup/PopupTrigger/index.js +44 -50
  359. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  360. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  361. package/dist/elements/Popup/index.js +282 -339
  362. package/dist/elements/Popup/index.js.map +1 -1
  363. package/dist/elements/PreviewButton/index.js +31 -24
  364. package/dist/elements/PreviewButton/index.js.map +1 -1
  365. package/dist/elements/PreviewSizes/index.js +132 -206
  366. package/dist/elements/PreviewSizes/index.js.map +1 -1
  367. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +110 -154
  368. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  369. package/dist/elements/PublishButton/ScheduleDrawer/index.js +309 -461
  370. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  371. package/dist/elements/PublishButton/ScheduleDrawer/types.js +1 -2
  372. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  373. package/dist/elements/PublishButton/index.js +195 -234
  374. package/dist/elements/PublishButton/index.js.map +1 -1
  375. package/dist/elements/PublishMany/DrawerContent.js +134 -137
  376. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  377. package/dist/elements/PublishMany/index.js +109 -58
  378. package/dist/elements/PublishMany/index.js.map +1 -1
  379. package/dist/elements/QueryPresets/QueryPresetBar/index.js +267 -344
  380. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  381. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +87 -80
  382. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  383. package/dist/elements/QueryPresets/cells/AccessCell/index.js +21 -47
  384. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  385. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +19 -26
  386. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  387. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +48 -61
  388. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  389. package/dist/elements/QueryPresets/cells/WhereCell/index.js +27 -29
  390. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  391. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +47 -42
  392. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  393. package/dist/elements/QueryPresets/fields/GroupByField/index.js +74 -96
  394. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  395. package/dist/elements/QueryPresets/fields/WhereField/index.js +98 -149
  396. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  397. package/dist/elements/ReactSelect/ClearIndicator/index.js +27 -29
  398. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  399. package/dist/elements/ReactSelect/Control/index.js +41 -40
  400. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  401. package/dist/elements/ReactSelect/DropdownIndicator/index.js +23 -26
  402. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  403. package/dist/elements/ReactSelect/Input/index.js +13 -20
  404. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  405. package/dist/elements/ReactSelect/MultiValue/index.js +126 -48
  406. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  407. package/dist/elements/ReactSelect/MultiValueLabel/index.js +32 -29
  408. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  409. package/dist/elements/ReactSelect/MultiValueRemove/index.js +86 -49
  410. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  411. package/dist/elements/ReactSelect/SingleValue/index.js +14 -22
  412. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  413. package/dist/elements/ReactSelect/ValueContainer/index.js +29 -38
  414. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  415. package/dist/elements/ReactSelect/index.js +198 -211
  416. package/dist/elements/ReactSelect/index.js.map +1 -1
  417. package/dist/elements/ReactSelect/types.js +1 -9
  418. package/dist/elements/ReactSelect/types.js.map +1 -1
  419. package/dist/elements/RelationshipTable/AddNewButton.js +58 -68
  420. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  421. package/dist/elements/RelationshipTable/Pagination.js +48 -21
  422. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  423. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +34 -39
  424. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  425. package/dist/elements/RelationshipTable/index.js +258 -374
  426. package/dist/elements/RelationshipTable/index.js.map +1 -1
  427. package/dist/elements/RenderComponent/index.js +20 -29
  428. package/dist/elements/RenderComponent/index.js.map +1 -1
  429. package/dist/elements/RenderCustomComponent/index.js +5 -3
  430. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  431. package/dist/elements/RenderIfInViewport/index.js +58 -27
  432. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  433. package/dist/elements/RenderServerComponent/index.js +56 -57
  434. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  435. package/dist/elements/RenderTitle/index.js +59 -44
  436. package/dist/elements/RenderTitle/index.js.map +1 -1
  437. package/dist/elements/RestoreButton/index.js +154 -187
  438. package/dist/elements/RestoreButton/index.js.map +1 -1
  439. package/dist/elements/RestoreMany/index.js +170 -177
  440. package/dist/elements/RestoreMany/index.js.map +1 -1
  441. package/dist/elements/SaveButton/index.js +49 -46
  442. package/dist/elements/SaveButton/index.js.map +1 -1
  443. package/dist/elements/SaveDraftButton/index.js +88 -84
  444. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  445. package/dist/elements/SearchBar/index.js +19 -37
  446. package/dist/elements/SearchBar/index.js.map +1 -1
  447. package/dist/elements/SearchFilter/index.js +54 -60
  448. package/dist/elements/SearchFilter/index.js.map +1 -1
  449. package/dist/elements/SearchFilter/types.js +1 -20
  450. package/dist/elements/SearchFilter/types.js.map +1 -1
  451. package/dist/elements/SelectAll/index.js +46 -21
  452. package/dist/elements/SelectAll/index.js.map +1 -1
  453. package/dist/elements/SelectMany/index.js +25 -27
  454. package/dist/elements/SelectMany/index.js.map +1 -1
  455. package/dist/elements/SelectRow/index.js +79 -27
  456. package/dist/elements/SelectRow/index.js.map +1 -1
  457. package/dist/elements/ShimmerEffect/index.js +73 -58
  458. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  459. package/dist/elements/SortColumn/index.js +106 -98
  460. package/dist/elements/SortColumn/index.js.map +1 -1
  461. package/dist/elements/SortComplex/index.js +163 -142
  462. package/dist/elements/SortComplex/index.js.map +1 -1
  463. package/dist/elements/SortHeader/index.js +87 -54
  464. package/dist/elements/SortHeader/index.js.map +1 -1
  465. package/dist/elements/SortRow/index.js +27 -21
  466. package/dist/elements/SortRow/index.js.map +1 -1
  467. package/dist/elements/Status/index.js +161 -203
  468. package/dist/elements/Status/index.js.map +1 -1
  469. package/dist/elements/StayLoggedIn/index.js +76 -38
  470. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  471. package/dist/elements/StepNav/SetStepNav.js +27 -10
  472. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  473. package/dist/elements/StepNav/context.js +41 -24
  474. package/dist/elements/StepNav/context.js.map +1 -1
  475. package/dist/elements/StepNav/index.js +92 -148
  476. package/dist/elements/StepNav/index.js.map +1 -1
  477. package/dist/elements/StepNav/types.js +1 -2
  478. package/dist/elements/StepNav/types.js.map +1 -1
  479. package/dist/elements/StickyToolbar/index.js +8 -10
  480. package/dist/elements/StickyToolbar/index.js.map +1 -1
  481. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -13
  482. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  483. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +60 -34
  484. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  485. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +27 -18
  486. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  487. package/dist/elements/Table/DefaultCell/fields/Code/index.js +17 -22
  488. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  489. package/dist/elements/Table/DefaultCell/fields/Date/index.js +41 -22
  490. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  491. package/dist/elements/Table/DefaultCell/fields/File/index.js +42 -52
  492. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  493. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +12 -18
  494. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  495. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +183 -115
  496. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  497. package/dist/elements/Table/DefaultCell/fields/Select/index.js +44 -22
  498. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  499. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +9 -11
  500. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  501. package/dist/elements/Table/DefaultCell/fields/index.js +14 -14
  502. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  503. package/dist/elements/Table/DefaultCell/index.js +151 -124
  504. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  505. package/dist/elements/Table/OrderableRow.js +32 -40
  506. package/dist/elements/Table/OrderableRow.js.map +1 -1
  507. package/dist/elements/Table/OrderableRowDragPreview.js +15 -24
  508. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  509. package/dist/elements/Table/OrderableTable.js +167 -224
  510. package/dist/elements/Table/OrderableTable.js.map +1 -1
  511. package/dist/elements/Table/RelationshipProvider/index.js +162 -106
  512. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  513. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  514. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  515. package/dist/elements/Table/index.js +45 -83
  516. package/dist/elements/Table/index.js.map +1 -1
  517. package/dist/elements/Thumbnail/createThumbnail.js +48 -53
  518. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  519. package/dist/elements/Thumbnail/index.js +148 -127
  520. package/dist/elements/Thumbnail/index.js.map +1 -1
  521. package/dist/elements/ThumbnailCard/index.js +68 -47
  522. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  523. package/dist/elements/TimezonePicker/index.js +44 -53
  524. package/dist/elements/TimezonePicker/index.js.map +1 -1
  525. package/dist/elements/TimezonePicker/types.js +1 -2
  526. package/dist/elements/TimezonePicker/types.js.map +1 -1
  527. package/dist/elements/Toasts/fieldErrors.js +77 -69
  528. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  529. package/dist/elements/Tooltip/index.js +65 -98
  530. package/dist/elements/Tooltip/index.js.map +1 -1
  531. package/dist/elements/Translation/index.js +39 -48
  532. package/dist/elements/Translation/index.js.map +1 -1
  533. package/dist/elements/TrashBanner/index.js +26 -33
  534. package/dist/elements/TrashBanner/index.js.map +1 -1
  535. package/dist/elements/UnpublishMany/DrawerContent.js +127 -130
  536. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  537. package/dist/elements/UnpublishMany/index.js +109 -58
  538. package/dist/elements/UnpublishMany/index.js.map +1 -1
  539. package/dist/elements/Upload/index.js +481 -633
  540. package/dist/elements/Upload/index.js.map +1 -1
  541. package/dist/elements/ViewDescription/index.js +26 -15
  542. package/dist/elements/ViewDescription/index.js.map +1 -1
  543. package/dist/elements/ViewDescription/types.js.map +1 -1
  544. package/dist/elements/WhereBuilder/Condition/Date/index.js +29 -23
  545. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  546. package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -2
  547. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  548. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +76 -95
  549. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  550. package/dist/elements/WhereBuilder/Condition/Number/index.js +129 -74
  551. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  552. package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -2
  553. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  554. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +313 -353
  555. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  556. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +67 -83
  557. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  558. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -2
  559. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  560. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js +9 -10
  561. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js.map +1 -1
  562. package/dist/elements/WhereBuilder/Condition/Select/index.js +154 -69
  563. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  564. package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -2
  565. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  566. package/dist/elements/WhereBuilder/Condition/Text/index.js +123 -72
  567. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  568. package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -2
  569. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  570. package/dist/elements/WhereBuilder/Condition/index.js +143 -206
  571. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  572. package/dist/elements/WhereBuilder/Condition/types.js +1 -2
  573. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  574. package/dist/elements/WhereBuilder/Condition/validOperators.js +33 -32
  575. package/dist/elements/WhereBuilder/Condition/validOperators.js.map +1 -1
  576. package/dist/elements/WhereBuilder/field-types.js +119 -192
  577. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  578. package/dist/elements/WhereBuilder/index.js +193 -258
  579. package/dist/elements/WhereBuilder/index.js.map +1 -1
  580. package/dist/elements/WhereBuilder/types.js +1 -2
  581. package/dist/elements/WhereBuilder/types.js.map +1 -1
  582. package/dist/elements/WindowInfo/index.js +1 -1
  583. package/dist/elements/WindowInfo/index.js.map +1 -1
  584. package/dist/elements/WithServerSideProps/index.js +19 -20
  585. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  586. package/dist/elements/withMergedProps/index.js +26 -26
  587. package/dist/elements/withMergedProps/index.js.map +1 -1
  588. package/dist/exports/client/CodeEditor-QOURTFMT.js +14 -0
  589. package/dist/exports/client/CodeEditor-QOURTFMT.js.map +7 -0
  590. package/dist/exports/client/DatePicker-VMLA35FO.js +14 -0
  591. package/dist/exports/client/DatePicker-VMLA35FO.js.map +7 -0
  592. package/dist/exports/client/chunk-53XJ3K67.js +27 -0
  593. package/dist/exports/client/chunk-53XJ3K67.js.map +7 -0
  594. package/dist/exports/client/chunk-5LKBKI4T.js +14 -0
  595. package/dist/exports/client/chunk-5LKBKI4T.js.map +7 -0
  596. package/dist/exports/client/chunk-7V3NHDV6.js +29 -0
  597. package/dist/exports/client/chunk-7V3NHDV6.js.map +7 -0
  598. package/dist/exports/client/index.js +96 -297
  599. package/dist/exports/client/index.js.map +7 -1
  600. package/dist/exports/rsc/index.js +0 -1
  601. package/dist/exports/rsc/index.js.map +1 -1
  602. package/dist/exports/shared/index.js +6 -35
  603. package/dist/exports/shared/index.js.map +7 -1
  604. package/dist/fields/Array/ArrayRow.js +168 -111
  605. package/dist/fields/Array/ArrayRow.js.map +1 -1
  606. package/dist/fields/Array/index.js +398 -532
  607. package/dist/fields/Array/index.js.map +1 -1
  608. package/dist/fields/Blocks/BlockRow.js +198 -163
  609. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  610. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +38 -30
  611. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  612. package/dist/fields/Blocks/BlockSelector/index.js +103 -159
  613. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  614. package/dist/fields/Blocks/BlocksDrawer/index.js +80 -37
  615. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  616. package/dist/fields/Blocks/RowActions.js +106 -50
  617. package/dist/fields/Blocks/RowActions.js.map +1 -1
  618. package/dist/fields/Blocks/SectionTitle/index.js +78 -36
  619. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  620. package/dist/fields/Blocks/index.js +425 -566
  621. package/dist/fields/Blocks/index.js.map +1 -1
  622. package/dist/fields/Checkbox/Input.js +99 -86
  623. package/dist/fields/Checkbox/Input.js.map +1 -1
  624. package/dist/fields/Checkbox/index.js +99 -107
  625. package/dist/fields/Checkbox/index.js.map +1 -1
  626. package/dist/fields/Code/index.js +114 -146
  627. package/dist/fields/Code/index.js.map +1 -1
  628. package/dist/fields/Collapsible/index.js +134 -172
  629. package/dist/fields/Collapsible/index.js.map +1 -1
  630. package/dist/fields/ConfirmPassword/index.js +83 -67
  631. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  632. package/dist/fields/DateTime/index.js +171 -217
  633. package/dist/fields/DateTime/index.js.map +1 -1
  634. package/dist/fields/Email/index.js +86 -111
  635. package/dist/fields/Email/index.js.map +1 -1
  636. package/dist/fields/FieldDescription/index.js +43 -20
  637. package/dist/fields/FieldDescription/index.js.map +1 -1
  638. package/dist/fields/FieldError/index.js +58 -22
  639. package/dist/fields/FieldError/index.js.map +1 -1
  640. package/dist/fields/FieldLabel/index.js +45 -43
  641. package/dist/fields/FieldLabel/index.js.map +1 -1
  642. package/dist/fields/Group/index.js +102 -150
  643. package/dist/fields/Group/index.js.map +1 -1
  644. package/dist/fields/Group/provider.js +12 -13
  645. package/dist/fields/Group/provider.js.map +1 -1
  646. package/dist/fields/Hidden/index.js +67 -27
  647. package/dist/fields/Hidden/index.js.map +1 -1
  648. package/dist/fields/JSON/index.js +143 -185
  649. package/dist/fields/JSON/index.js.map +1 -1
  650. package/dist/fields/Join/index.js +189 -214
  651. package/dist/fields/Join/index.js.map +1 -1
  652. package/dist/fields/Number/index.js +169 -213
  653. package/dist/fields/Number/index.js.map +1 -1
  654. package/dist/fields/Password/index.js +101 -80
  655. package/dist/fields/Password/index.js.map +1 -1
  656. package/dist/fields/Password/input.js +122 -108
  657. package/dist/fields/Password/input.js.map +1 -1
  658. package/dist/fields/Password/types.js +1 -12
  659. package/dist/fields/Password/types.js.map +1 -1
  660. package/dist/fields/Point/index.js +127 -199
  661. package/dist/fields/Point/index.js.map +1 -1
  662. package/dist/fields/RadioGroup/Radio/index.js +81 -56
  663. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  664. package/dist/fields/RadioGroup/index.js +114 -146
  665. package/dist/fields/RadioGroup/index.js.map +1 -1
  666. package/dist/fields/Relationship/Input.js +733 -811
  667. package/dist/fields/Relationship/Input.js.map +1 -1
  668. package/dist/fields/Relationship/createRelationMap.js +33 -31
  669. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  670. package/dist/fields/Relationship/findOptionsByValue.js +32 -28
  671. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  672. package/dist/fields/Relationship/index.js +160 -152
  673. package/dist/fields/Relationship/index.js.map +1 -1
  674. package/dist/fields/Relationship/optionsReducer.js +139 -144
  675. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  676. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +82 -92
  677. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  678. package/dist/fields/Relationship/select-components/SingleValue/index.js +118 -95
  679. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  680. package/dist/fields/Relationship/types.js +1 -2
  681. package/dist/fields/Relationship/types.js.map +1 -1
  682. package/dist/fields/RichText/index.js +3 -3
  683. package/dist/fields/RichText/index.js.map +1 -1
  684. package/dist/fields/Row/index.js +35 -37
  685. package/dist/fields/Row/index.js.map +1 -1
  686. package/dist/fields/Row/provider.js +12 -13
  687. package/dist/fields/Row/provider.js.map +1 -1
  688. package/dist/fields/Select/Input.js +165 -114
  689. package/dist/fields/Select/Input.js.map +1 -1
  690. package/dist/fields/Select/index.js +108 -89
  691. package/dist/fields/Select/index.js.map +1 -1
  692. package/dist/fields/Slug/index.js +134 -103
  693. package/dist/fields/Slug/index.js.map +1 -1
  694. package/dist/fields/Tabs/Tab/index.js +60 -54
  695. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  696. package/dist/fields/Tabs/index.js +445 -245
  697. package/dist/fields/Tabs/index.js.map +1 -1
  698. package/dist/fields/Tabs/provider.js +12 -13
  699. package/dist/fields/Tabs/provider.js.map +1 -1
  700. package/dist/fields/Text/Input.js +191 -169
  701. package/dist/fields/Text/Input.js.map +1 -1
  702. package/dist/fields/Text/index.js +126 -107
  703. package/dist/fields/Text/index.js.map +1 -1
  704. package/dist/fields/Text/types.js +1 -2
  705. package/dist/fields/Text/types.js.map +1 -1
  706. package/dist/fields/Textarea/Input.js +115 -104
  707. package/dist/fields/Textarea/Input.js.map +1 -1
  708. package/dist/fields/Textarea/index.js +88 -61
  709. package/dist/fields/Textarea/index.js.map +1 -1
  710. package/dist/fields/Textarea/types.js +1 -2
  711. package/dist/fields/Textarea/types.js.map +1 -1
  712. package/dist/fields/UI/index.js +3 -3
  713. package/dist/fields/UI/index.js.map +1 -1
  714. package/dist/fields/Upload/HasMany/index.js +186 -141
  715. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  716. package/dist/fields/Upload/HasOne/index.js +60 -59
  717. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  718. package/dist/fields/Upload/Input.js +566 -755
  719. package/dist/fields/Upload/Input.js.map +1 -1
  720. package/dist/fields/Upload/RelationshipContent/index.js +143 -140
  721. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  722. package/dist/fields/Upload/UploadCard/index.js +10 -15
  723. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  724. package/dist/fields/Upload/index.js +96 -79
  725. package/dist/fields/Upload/index.js.map +1 -1
  726. package/dist/fields/Upload/types.js +1 -3
  727. package/dist/fields/Upload/types.js.map +1 -1
  728. package/dist/fields/index.js +31 -31
  729. package/dist/fields/index.js.map +1 -1
  730. package/dist/fields/mergeFieldStyles.js +12 -13
  731. package/dist/fields/mergeFieldStyles.js.map +1 -1
  732. package/dist/fields/shared/index.js +17 -8
  733. package/dist/fields/shared/index.js.map +1 -1
  734. package/dist/forms/Form/context.js +24 -17
  735. package/dist/forms/Form/context.js.map +1 -1
  736. package/dist/forms/Form/createNestedClientFieldPath.js +11 -11
  737. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  738. package/dist/forms/Form/errorMessages.js +2 -2
  739. package/dist/forms/Form/errorMessages.js.map +1 -1
  740. package/dist/forms/Form/fieldReducer.js +412 -378
  741. package/dist/forms/Form/fieldReducer.js.map +1 -1
  742. package/dist/forms/Form/index.js +684 -745
  743. package/dist/forms/Form/index.js.map +1 -1
  744. package/dist/forms/Form/initContextState.js +38 -38
  745. package/dist/forms/Form/initContextState.js.map +1 -1
  746. package/dist/forms/Form/mergeServerFormState.js +97 -93
  747. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  748. package/dist/forms/Form/reduceToSerializableFields.js +17 -20
  749. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  750. package/dist/forms/Form/rowHelpers.js +34 -27
  751. package/dist/forms/Form/rowHelpers.js.map +1 -1
  752. package/dist/forms/Form/rows.js +34 -34
  753. package/dist/forms/Form/rows.js.map +1 -1
  754. package/dist/forms/Form/types.js +1 -53
  755. package/dist/forms/Form/types.js.map +1 -1
  756. package/dist/forms/NullifyField/index.js +96 -61
  757. package/dist/forms/NullifyField/index.js.map +1 -1
  758. package/dist/forms/RenderFields/RenderField.js +259 -237
  759. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  760. package/dist/forms/RenderFields/context.js +9 -9
  761. package/dist/forms/RenderFields/context.js.map +1 -1
  762. package/dist/forms/RenderFields/index.js +115 -76
  763. package/dist/forms/RenderFields/index.js.map +1 -1
  764. package/dist/forms/RenderFields/types.js +1 -2
  765. package/dist/forms/RenderFields/types.js.map +1 -1
  766. package/dist/forms/RowLabel/Context/index.js +29 -30
  767. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  768. package/dist/forms/RowLabel/index.js +24 -33
  769. package/dist/forms/RowLabel/index.js.map +1 -1
  770. package/dist/forms/RowLabel/types.js +1 -2
  771. package/dist/forms/RowLabel/types.js.map +1 -1
  772. package/dist/forms/Submit/index.js +35 -32
  773. package/dist/forms/Submit/index.js.map +1 -1
  774. package/dist/forms/WatchChildErrors/buildPathSegments.js +29 -29
  775. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  776. package/dist/forms/WatchChildErrors/index.js +66 -41
  777. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  778. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +683 -654
  779. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  780. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +22 -14
  781. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  782. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +26 -17
  783. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  784. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +198 -186
  785. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  786. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +60 -67
  787. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
  788. package/dist/forms/fieldSchemasToFormState/index.js +79 -90
  789. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  790. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +16 -12
  791. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  792. package/dist/forms/fieldSchemasToFormState/iterateFields.js +116 -95
  793. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  794. package/dist/forms/fieldSchemasToFormState/renderField.js +274 -273
  795. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  796. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +75 -90
  797. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  798. package/dist/forms/fieldSchemasToFormState/types.js +1 -6
  799. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  800. package/dist/forms/useField/index.js +292 -180
  801. package/dist/forms/useField/index.js.map +1 -1
  802. package/dist/forms/useField/types.js +1 -20
  803. package/dist/forms/useField/types.js.map +1 -1
  804. package/dist/forms/withCondition/WatchCondition.js +27 -9
  805. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  806. package/dist/forms/withCondition/index.js +15 -21
  807. package/dist/forms/withCondition/index.js.map +1 -1
  808. package/dist/graphics/Account/Default/index.js +22 -46
  809. package/dist/graphics/Account/Default/index.js.map +1 -1
  810. package/dist/graphics/Account/Gravatar/index.js +34 -25
  811. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  812. package/dist/graphics/Account/index.js +51 -24
  813. package/dist/graphics/Account/index.js.map +1 -1
  814. package/dist/graphics/DefaultBlockImage/index.js +62 -117
  815. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  816. package/dist/graphics/File/index.js +17 -33
  817. package/dist/graphics/File/index.js.map +1 -1
  818. package/dist/graphics/Icon/index.js +19 -33
  819. package/dist/graphics/Icon/index.js.map +1 -1
  820. package/dist/graphics/Logo/index.js +39 -112
  821. package/dist/graphics/Logo/index.js.map +1 -1
  822. package/dist/hooks/useClickOutside.js +15 -19
  823. package/dist/hooks/useClickOutside.js.map +1 -1
  824. package/dist/hooks/useControllableState.js +35 -25
  825. package/dist/hooks/useControllableState.js.map +1 -1
  826. package/dist/hooks/useDebounce.js +26 -15
  827. package/dist/hooks/useDebounce.js.map +1 -1
  828. package/dist/hooks/useDebouncedCallback.js +23 -15
  829. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  830. package/dist/hooks/useDebouncedEffect.js +53 -18
  831. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  832. package/dist/hooks/useDelay.js +52 -27
  833. package/dist/hooks/useDelay.js.map +1 -1
  834. package/dist/hooks/useDelayedRender.js +76 -42
  835. package/dist/hooks/useDelayedRender.js.map +1 -1
  836. package/dist/hooks/useEffectEvent.js +33 -12
  837. package/dist/hooks/useEffectEvent.js.map +1 -1
  838. package/dist/hooks/useHotkey.js +110 -96
  839. package/dist/hooks/useHotkey.js.map +1 -1
  840. package/dist/hooks/useIntersect.js +59 -28
  841. package/dist/hooks/useIntersect.js.map +1 -1
  842. package/dist/hooks/usePayloadAPI.js +172 -78
  843. package/dist/hooks/usePayloadAPI.js.map +1 -1
  844. package/dist/hooks/usePopupWindow.js +133 -91
  845. package/dist/hooks/usePopupWindow.js.map +1 -1
  846. package/dist/hooks/useQueue.js +38 -48
  847. package/dist/hooks/useQueue.js.map +1 -1
  848. package/dist/hooks/useRelatedCollections.js +27 -15
  849. package/dist/hooks/useRelatedCollections.js.map +1 -1
  850. package/dist/hooks/useResize.js +70 -42
  851. package/dist/hooks/useResize.js.map +1 -1
  852. package/dist/hooks/useThrottledEffect.js +51 -17
  853. package/dist/hooks/useThrottledEffect.js.map +1 -1
  854. package/dist/hooks/useThrottledValue.js +13 -16
  855. package/dist/hooks/useThrottledValue.js.map +1 -1
  856. package/dist/hooks/useUseAsTitle.js +27 -7
  857. package/dist/hooks/useUseAsTitle.js.map +1 -1
  858. package/dist/icons/Calendar/index.js +11 -20
  859. package/dist/icons/Calendar/index.js.map +1 -1
  860. package/dist/icons/Check/index.js +11 -20
  861. package/dist/icons/Check/index.js.map +1 -1
  862. package/dist/icons/Chevron/index.js +22 -30
  863. package/dist/icons/Chevron/index.js.map +1 -1
  864. package/dist/icons/CloseMenu/index.js +11 -20
  865. package/dist/icons/CloseMenu/index.js.map +1 -1
  866. package/dist/icons/CodeBlock/index.js +13 -22
  867. package/dist/icons/CodeBlock/index.js.map +1 -1
  868. package/dist/icons/Copy/index.js +17 -24
  869. package/dist/icons/Copy/index.js.map +1 -1
  870. package/dist/icons/Document/index.js +16 -25
  871. package/dist/icons/Document/index.js.map +1 -1
  872. package/dist/icons/Dots/index.js +11 -32
  873. package/dist/icons/Dots/index.js.map +1 -1
  874. package/dist/icons/DragHandle/index.js +33 -70
  875. package/dist/icons/DragHandle/index.js.map +1 -1
  876. package/dist/icons/Edit/index.js +13 -23
  877. package/dist/icons/Edit/index.js.map +1 -1
  878. package/dist/icons/ExternalLink/index.js +15 -25
  879. package/dist/icons/ExternalLink/index.js.map +1 -1
  880. package/dist/icons/Eye/index.js +25 -53
  881. package/dist/icons/Eye/index.js.map +1 -1
  882. package/dist/icons/Folder/index.js +16 -26
  883. package/dist/icons/Folder/index.js.map +1 -1
  884. package/dist/icons/Gear/index.js +21 -34
  885. package/dist/icons/Gear/index.js.map +1 -1
  886. package/dist/icons/GridView/index.js +31 -57
  887. package/dist/icons/GridView/index.js.map +1 -1
  888. package/dist/icons/Line/index.js +14 -23
  889. package/dist/icons/Line/index.js.map +1 -1
  890. package/dist/icons/Link/index.js +16 -25
  891. package/dist/icons/Link/index.js.map +1 -1
  892. package/dist/icons/ListView/index.js +16 -25
  893. package/dist/icons/ListView/index.js.map +1 -1
  894. package/dist/icons/Lock/index.js +24 -41
  895. package/dist/icons/Lock/index.js.map +1 -1
  896. package/dist/icons/LogOut/index.js +14 -23
  897. package/dist/icons/LogOut/index.js.map +1 -1
  898. package/dist/icons/Menu/index.js +14 -23
  899. package/dist/icons/Menu/index.js.map +1 -1
  900. package/dist/icons/MinimizeMaximize/index.js +19 -33
  901. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  902. package/dist/icons/More/index.js +21 -43
  903. package/dist/icons/More/index.js.map +1 -1
  904. package/dist/icons/MoveFolder/index.js +34 -62
  905. package/dist/icons/MoveFolder/index.js.map +1 -1
  906. package/dist/icons/People/index.js +17 -28
  907. package/dist/icons/People/index.js.map +1 -1
  908. package/dist/icons/Plus/index.js +13 -22
  909. package/dist/icons/Plus/index.js.map +1 -1
  910. package/dist/icons/Search/index.js +12 -21
  911. package/dist/icons/Search/index.js.map +1 -1
  912. package/dist/icons/Sort/index.js +35 -48
  913. package/dist/icons/Sort/index.js.map +1 -1
  914. package/dist/icons/Swap/index.js +11 -20
  915. package/dist/icons/Swap/index.js.map +1 -1
  916. package/dist/icons/ThreeDots/index.js +8 -27
  917. package/dist/icons/ThreeDots/index.js.map +1 -1
  918. package/dist/icons/Trash/index.js +18 -28
  919. package/dist/icons/Trash/index.js.map +1 -1
  920. package/dist/icons/X/index.js +15 -25
  921. package/dist/icons/X/index.js.map +1 -1
  922. package/dist/providers/Actions/index.js +33 -21
  923. package/dist/providers/Actions/index.js.map +1 -1
  924. package/dist/providers/Auth/index.js +243 -293
  925. package/dist/providers/Auth/index.js.map +1 -1
  926. package/dist/providers/ClickOutside/index.js +35 -35
  927. package/dist/providers/ClickOutside/index.js.map +1 -1
  928. package/dist/providers/ClientFunction/index.js +104 -63
  929. package/dist/providers/ClientFunction/index.js.map +1 -1
  930. package/dist/providers/Config/index.js +91 -91
  931. package/dist/providers/Config/index.js.map +1 -1
  932. package/dist/providers/DocumentEvents/index.js +30 -19
  933. package/dist/providers/DocumentEvents/index.js.map +1 -1
  934. package/dist/providers/DocumentInfo/index.js +325 -331
  935. package/dist/providers/DocumentInfo/index.js.map +1 -1
  936. package/dist/providers/DocumentInfo/types.js +1 -26
  937. package/dist/providers/DocumentInfo/types.js.map +1 -1
  938. package/dist/providers/DocumentInfo/useGetDocPermissions.js +79 -81
  939. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  940. package/dist/providers/DocumentTitle/context.js.map +1 -1
  941. package/dist/providers/DocumentTitle/index.js +55 -51
  942. package/dist/providers/DocumentTitle/index.js.map +1 -1
  943. package/dist/providers/EditDepth/index.js +25 -15
  944. package/dist/providers/EditDepth/index.js.map +1 -1
  945. package/dist/providers/EntityVisibility/index.js +48 -26
  946. package/dist/providers/EntityVisibility/index.js.map +1 -1
  947. package/dist/providers/Folders/groupItemIDsByRelation.js +7 -8
  948. package/dist/providers/Folders/groupItemIDsByRelation.js.map +1 -1
  949. package/dist/providers/Folders/index.js +600 -698
  950. package/dist/providers/Folders/index.js.map +1 -1
  951. package/dist/providers/ListQuery/context.js +2 -3
  952. package/dist/providers/ListQuery/context.js.map +1 -1
  953. package/dist/providers/ListQuery/index.js +140 -156
  954. package/dist/providers/ListQuery/index.js.map +1 -1
  955. package/dist/providers/ListQuery/mergeQuery.js +31 -49
  956. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  957. package/dist/providers/ListQuery/sanitizeQuery.js +23 -24
  958. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  959. package/dist/providers/ListQuery/types.js +1 -6
  960. package/dist/providers/ListQuery/types.js.map +1 -1
  961. package/dist/providers/LivePreview/collisionDetection.js +24 -21
  962. package/dist/providers/LivePreview/collisionDetection.js.map +1 -1
  963. package/dist/providers/LivePreview/context.js +55 -60
  964. package/dist/providers/LivePreview/context.js.map +1 -1
  965. package/dist/providers/LivePreview/index.js +205 -225
  966. package/dist/providers/LivePreview/index.js.map +1 -1
  967. package/dist/providers/LivePreview/sizeReducer.js +18 -19
  968. package/dist/providers/LivePreview/sizeReducer.js.map +1 -1
  969. package/dist/providers/Locale/index.js +154 -87
  970. package/dist/providers/Locale/index.js.map +1 -1
  971. package/dist/providers/Operation/index.js +11 -12
  972. package/dist/providers/Operation/index.js.map +1 -1
  973. package/dist/providers/Params/index.js +26 -14
  974. package/dist/providers/Params/index.js.map +1 -1
  975. package/dist/providers/Preferences/index.js +122 -130
  976. package/dist/providers/Preferences/index.js.map +1 -1
  977. package/dist/providers/Root/index.js +116 -190
  978. package/dist/providers/Root/index.js.map +1 -1
  979. package/dist/providers/RouteCache/index.js +103 -53
  980. package/dist/providers/RouteCache/index.js.map +1 -1
  981. package/dist/providers/RouteTransition/ProgressBar/index.js +80 -61
  982. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  983. package/dist/providers/RouteTransition/index.js +94 -69
  984. package/dist/providers/RouteTransition/index.js.map +1 -1
  985. package/dist/providers/ScrollInfo/index.js +1 -1
  986. package/dist/providers/ScrollInfo/index.js.map +1 -1
  987. package/dist/providers/SearchParams/index.js +35 -36
  988. package/dist/providers/SearchParams/index.js.map +1 -1
  989. package/dist/providers/Selection/index.js +183 -203
  990. package/dist/providers/Selection/index.js.map +1 -1
  991. package/dist/providers/ServerFunctions/index.js +189 -199
  992. package/dist/providers/ServerFunctions/index.js.map +1 -1
  993. package/dist/providers/TableColumns/RenderDefaultCell/index.js +62 -33
  994. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  995. package/dist/providers/TableColumns/buildColumnState/filterFields.js +32 -32
  996. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -1
  997. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js +52 -50
  998. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js.map +1 -1
  999. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +2 -3
  1000. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -1
  1001. package/dist/providers/TableColumns/buildColumnState/index.js +143 -132
  1002. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  1003. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +14 -10
  1004. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -1
  1005. package/dist/providers/TableColumns/buildColumnState/renderCell.js +151 -150
  1006. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1007. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +15 -16
  1008. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -1
  1009. package/dist/providers/TableColumns/context.js +1 -2
  1010. package/dist/providers/TableColumns/context.js.map +1 -1
  1011. package/dist/providers/TableColumns/getInitialColumns.js +28 -42
  1012. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -1
  1013. package/dist/providers/TableColumns/index.js +85 -88
  1014. package/dist/providers/TableColumns/index.js.map +1 -1
  1015. package/dist/providers/TableColumns/types.js +1 -18
  1016. package/dist/providers/TableColumns/types.js.map +1 -1
  1017. package/dist/providers/Theme/index.js +104 -69
  1018. package/dist/providers/Theme/index.js.map +1 -1
  1019. package/dist/providers/ToastContainer/icons/Error.js +19 -34
  1020. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  1021. package/dist/providers/ToastContainer/icons/Info.js +19 -34
  1022. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  1023. package/dist/providers/ToastContainer/icons/Success.js +19 -34
  1024. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  1025. package/dist/providers/ToastContainer/icons/Warning.js +19 -34
  1026. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  1027. package/dist/providers/ToastContainer/index.js +47 -56
  1028. package/dist/providers/ToastContainer/index.js.map +1 -1
  1029. package/dist/providers/Translation/index.js +112 -66
  1030. package/dist/providers/Translation/index.js.map +1 -1
  1031. package/dist/providers/UploadControls/index.js +40 -28
  1032. package/dist/providers/UploadControls/index.js.map +1 -1
  1033. package/dist/providers/UploadEdits/index.js +73 -31
  1034. package/dist/providers/UploadEdits/index.js.map +1 -1
  1035. package/dist/providers/UploadHandlers/index.js +65 -30
  1036. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1037. package/dist/providers/WindowInfo/index.js +9 -5
  1038. package/dist/providers/WindowInfo/index.js.map +1 -1
  1039. package/dist/styles.css +1 -0
  1040. package/dist/utilities/abortAndIgnore.js +17 -15
  1041. package/dist/utilities/abortAndIgnore.js.map +1 -1
  1042. package/dist/utilities/api.js +77 -78
  1043. package/dist/utilities/api.js.map +1 -1
  1044. package/dist/utilities/buildClientFieldSchemaMap/index.js +65 -61
  1045. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1046. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +154 -142
  1047. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1048. package/dist/utilities/buildFieldSchemaMap/index.js +61 -59
  1049. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  1050. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +122 -110
  1051. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  1052. package/dist/utilities/buildFormState.js +186 -151
  1053. package/dist/utilities/buildFormState.js.map +1 -1
  1054. package/dist/utilities/buildTableState.js +168 -145
  1055. package/dist/utilities/buildTableState.js.map +1 -1
  1056. package/dist/utilities/canUseDOM.js +0 -1
  1057. package/dist/utilities/canUseDOM.js.map +1 -1
  1058. package/dist/utilities/combineFieldLabel.js +26 -53
  1059. package/dist/utilities/combineFieldLabel.js.map +1 -1
  1060. package/dist/utilities/copyDataFromLocale.js +210 -202
  1061. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  1062. package/dist/utilities/dateLocales.js +27 -28
  1063. package/dist/utilities/dateLocales.js.map +1 -1
  1064. package/dist/utilities/deepMerge.js +13 -14
  1065. package/dist/utilities/deepMerge.js.map +1 -1
  1066. package/dist/utilities/fetchPreferences.js.map +1 -1
  1067. package/dist/utilities/filterOutUploadFields.js +4 -17
  1068. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1069. package/dist/utilities/findLocaleFromCode.js +5 -6
  1070. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  1071. package/dist/utilities/formatAbsoluteURL.js +8 -8
  1072. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1073. package/dist/utilities/formatAdminURL.js +1 -2
  1074. package/dist/utilities/formatAdminURL.js.map +1 -1
  1075. package/dist/utilities/formatDocTitle/formatDateTitle.js +27 -20
  1076. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  1077. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js +13 -14
  1078. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1079. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js +13 -14
  1080. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js.map +1 -1
  1081. package/dist/utilities/formatDocTitle/index.js +44 -38
  1082. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  1083. package/dist/utilities/formatFields.js +1 -2
  1084. package/dist/utilities/formatFields.js.map +1 -1
  1085. package/dist/utilities/generateFieldID.js +5 -6
  1086. package/dist/utilities/generateFieldID.js.map +1 -1
  1087. package/dist/utilities/getClientConfig.js +29 -25
  1088. package/dist/utilities/getClientConfig.js.map +1 -1
  1089. package/dist/utilities/getClientSchemaMap.js +32 -24
  1090. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1091. package/dist/utilities/getColumns.js +35 -29
  1092. package/dist/utilities/getColumns.js.map +1 -1
  1093. package/dist/utilities/getDisplayedFieldValue.js +16 -16
  1094. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1095. package/dist/utilities/getFolderResultsComponentAndData.js +121 -134
  1096. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  1097. package/dist/utilities/getGlobalData.js +45 -41
  1098. package/dist/utilities/getGlobalData.js.map +1 -1
  1099. package/dist/utilities/getNavGroups.js +18 -21
  1100. package/dist/utilities/getNavGroups.js.map +1 -1
  1101. package/dist/utilities/getOffsetTop.js +13 -14
  1102. package/dist/utilities/getOffsetTop.js.map +1 -1
  1103. package/dist/utilities/getRequestLanguage.js +8 -5
  1104. package/dist/utilities/getRequestLanguage.js.map +1 -1
  1105. package/dist/utilities/getSchemaMap.js +28 -22
  1106. package/dist/utilities/getSchemaMap.js.map +1 -1
  1107. package/dist/utilities/getSupportedMonacoLocale.js +13 -14
  1108. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  1109. package/dist/utilities/getVisibleEntities.js +26 -15
  1110. package/dist/utilities/getVisibleEntities.js.map +1 -1
  1111. package/dist/utilities/groupNavItems.js +50 -53
  1112. package/dist/utilities/groupNavItems.js.map +1 -1
  1113. package/dist/utilities/handleBackToDashboard.js +11 -8
  1114. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  1115. package/dist/utilities/handleFormStateLocking.js +121 -127
  1116. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  1117. package/dist/utilities/handleGoBack.js +11 -7
  1118. package/dist/utilities/handleGoBack.js.map +1 -1
  1119. package/dist/utilities/handleLivePreview.js +76 -59
  1120. package/dist/utilities/handleLivePreview.js.map +1 -1
  1121. package/dist/utilities/handlePreview.js +52 -41
  1122. package/dist/utilities/handlePreview.js.map +1 -1
  1123. package/dist/utilities/handleTakeOver.js +39 -28
  1124. package/dist/utilities/handleTakeOver.js.map +1 -1
  1125. package/dist/utilities/hasOptionLabelJSXElement.js +11 -9
  1126. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -1
  1127. package/dist/utilities/hasSavePermission.js +14 -14
  1128. package/dist/utilities/hasSavePermission.js.map +1 -1
  1129. package/dist/utilities/isClientUserObject.js +2 -3
  1130. package/dist/utilities/isClientUserObject.js.map +1 -1
  1131. package/dist/utilities/isEditing.js +5 -2
  1132. package/dist/utilities/isEditing.js.map +1 -1
  1133. package/dist/utilities/isURLAllowed.js +30 -31
  1134. package/dist/utilities/isURLAllowed.js.map +1 -1
  1135. package/dist/utilities/isValidReactElement.js +3 -3
  1136. package/dist/utilities/isValidReactElement.js.map +1 -1
  1137. package/dist/utilities/normalizeRelationshipValue.js +28 -29
  1138. package/dist/utilities/normalizeRelationshipValue.js.map +1 -1
  1139. package/dist/utilities/normalizeRelationshipValue.spec.js +368 -407
  1140. package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
  1141. package/dist/utilities/parseSearchParams.js +7 -7
  1142. package/dist/utilities/parseSearchParams.js.map +1 -1
  1143. package/dist/utilities/reduceFieldsToOptions.js +154 -145
  1144. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  1145. package/dist/utilities/reduceFieldsToValuesWithValidation.js +20 -20
  1146. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  1147. package/dist/utilities/removeUndefined.js +1 -2
  1148. package/dist/utilities/removeUndefined.js.map +1 -1
  1149. package/dist/utilities/renderTable.js +195 -239
  1150. package/dist/utilities/renderTable.js.map +1 -1
  1151. package/dist/utilities/resolveFilterOptions.js +26 -27
  1152. package/dist/utilities/resolveFilterOptions.js.map +1 -1
  1153. package/dist/utilities/sanitizeFilterOptionsQuery.js +15 -16
  1154. package/dist/utilities/sanitizeFilterOptionsQuery.js.map +1 -1
  1155. package/dist/utilities/sanitizeID.js +7 -8
  1156. package/dist/utilities/sanitizeID.js.map +1 -1
  1157. package/dist/utilities/schedulePublishHandler.js +57 -47
  1158. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1159. package/dist/utilities/scrollToID.js +9 -10
  1160. package/dist/utilities/scrollToID.js.map +1 -1
  1161. package/dist/utilities/setsAreEqual.js +2 -3
  1162. package/dist/utilities/setsAreEqual.js.map +1 -1
  1163. package/dist/utilities/traverseForLocalizedFields.js +35 -36
  1164. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1165. package/dist/utilities/upsertPreferences.js +75 -75
  1166. package/dist/utilities/upsertPreferences.js.map +1 -1
  1167. package/dist/views/BrowseByFolder/index.js +324 -365
  1168. package/dist/views/BrowseByFolder/index.js.map +1 -1
  1169. package/dist/views/CollectionFolder/ListSelection/index.js +158 -161
  1170. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  1171. package/dist/views/CollectionFolder/index.js +282 -360
  1172. package/dist/views/CollectionFolder/index.js.map +1 -1
  1173. package/dist/views/Edit/Auth/APIKey.js +124 -185
  1174. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1175. package/dist/views/Edit/Auth/index.js +321 -309
  1176. package/dist/views/Edit/Auth/index.js.map +1 -1
  1177. package/dist/views/Edit/Auth/types.js +1 -2
  1178. package/dist/views/Edit/Auth/types.js.map +1 -1
  1179. package/dist/views/Edit/SetDocumentStepNav/index.js +150 -84
  1180. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1181. package/dist/views/Edit/SetDocumentTitle/index.js +77 -30
  1182. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1183. package/dist/views/Edit/index.js +501 -579
  1184. package/dist/views/Edit/index.js.map +1 -1
  1185. package/dist/views/Edit/types.js +1 -2
  1186. package/dist/views/Edit/types.js.map +1 -1
  1187. package/dist/views/List/GroupByHeader/index.js +24 -35
  1188. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  1189. package/dist/views/List/ListHeader/index.js +80 -115
  1190. package/dist/views/List/ListHeader/index.js.map +1 -1
  1191. package/dist/views/List/ListSelection/index.js +111 -103
  1192. package/dist/views/List/ListSelection/index.js.map +1 -1
  1193. package/dist/views/List/index.js +213 -321
  1194. package/dist/views/List/index.js.map +1 -1
  1195. package/dist/views/List/types.js +1 -2
  1196. package/dist/views/List/types.js.map +1 -1
  1197. package/dist/widgets/CollectionCards/index.js +119 -149
  1198. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1199. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"sourcesContent":["'use client'\n\nimport type {\n CollectionSlug,\n Data,\n DocumentSlots,\n FormState,\n JsonObject,\n SanitizedDocumentPermissions,\n UploadEdits,\n} from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport type { State } from './reducer.js'\n\nimport { fieldReducer } from '../../../forms/Form/fieldReducer.js'\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useUploadHandlers } from '../../../providers/UploadHandlers/index.js'\nimport { hasSavePermission as getHasSavePermission } from '../../../utilities/hasSavePermission.js'\nimport { LoadingOverlay } from '../../Loading/index.js'\nimport { useLoadingOverlay } from '../../LoadingOverlay/index.js'\nimport { useBulkUpload } from '../index.js'\nimport { createFormData } from './createFormData.js'\nimport { formsManagementReducer } from './reducer.js'\n\ntype FormsManagerContext = {\n readonly activeIndex: State['activeIndex']\n readonly addFiles: (filelist: FileList) => Promise<void>\n readonly bulkUpdateForm: (\n updatedFields: Record<string, unknown>,\n afterStateUpdate?: () => void,\n ) => Promise<void>\n readonly collectionSlug: string\n readonly docPermissions?: SanitizedDocumentPermissions\n readonly documentSlots: DocumentSlots\n readonly forms: State['forms']\n getFormDataRef: React.RefObject<() => Data>\n readonly hasPublishPermission: boolean\n readonly hasSavePermission: boolean\n readonly hasSubmitted: boolean\n readonly isInitializing: boolean\n readonly removeFile: (index: number) => void\n readonly resetUploadEdits?: () => void\n readonly saveAllDocs: ({ overrides }?: { overrides?: Record<string, unknown> }) => Promise<void>\n readonly setActiveIndex: (index: number) => void\n readonly setFormTotalErrorCount: ({\n errorCount,\n index,\n }: {\n errorCount: number\n index: number\n }) => void\n readonly totalErrorCount?: number\n readonly updateUploadEdits: (args: UploadEdits) => void\n}\n\nconst Context = React.createContext<FormsManagerContext>({\n activeIndex: 0,\n addFiles: () => Promise.resolve(),\n bulkUpdateForm: () => null,\n collectionSlug: '',\n docPermissions: undefined,\n documentSlots: {},\n forms: [],\n getFormDataRef: { current: () => ({}) },\n hasPublishPermission: false,\n hasSavePermission: false,\n hasSubmitted: false,\n isInitializing: false,\n removeFile: () => {},\n saveAllDocs: () => Promise.resolve(),\n setActiveIndex: () => 0,\n setFormTotalErrorCount: () => {},\n totalErrorCount: 0,\n updateUploadEdits: () => {},\n})\n\nconst initialState: State = {\n activeIndex: 0,\n forms: [],\n totalErrorCount: 0,\n}\n\nexport type InitialForms = Array<{\n file: File\n formID?: string\n initialState?: FormState | null\n}>\n\ntype FormsManagerProps = {\n readonly children: React.ReactNode\n}\n\nexport function FormsManagerProvider({ children }: FormsManagerProps) {\n const { config } = useConfig()\n const {\n routes: { api },\n } = config\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const { getDocumentSlots, getFormState } = useServerFunctions()\n const { getUploadHandler } = useUploadHandlers()\n\n const [documentSlots, setDocumentSlots] = React.useState<DocumentSlots>({})\n const [hasSubmitted, setHasSubmitted] = React.useState(false)\n const [docPermissions, setDocPermissions] = React.useState<SanitizedDocumentPermissions>()\n const [hasSavePermission, setHasSavePermission] = React.useState(false)\n const [hasPublishPermission, setHasPublishPermission] = React.useState(false)\n const [hasInitializedState, setHasInitializedState] = React.useState(false)\n const [hasInitializedDocPermissions, setHasInitializedDocPermissions] = React.useState(false)\n const [isInitializing, setIsInitializing] = React.useState(false)\n const [state, dispatch] = React.useReducer(formsManagementReducer, initialState)\n const { activeIndex, forms, totalErrorCount } = state\n\n const formsRef = React.useRef(forms)\n formsRef.current = forms\n\n const { toggleLoadingOverlay } = useLoadingOverlay()\n const { closeModal } = useModal()\n const {\n collectionSlug,\n drawerSlug,\n initialFiles,\n initialForms,\n onSuccess,\n setInitialFiles,\n setInitialForms,\n setSuccessfullyUploaded,\n } = useBulkUpload()\n\n const [isUploading, setIsUploading] = React.useState(false)\n const [loadingText, setLoadingText] = React.useState('')\n\n const hasInitializedWithFiles = React.useRef(false)\n const initialStateRef = React.useRef<FormState>(null)\n const getFormDataRef = React.useRef<() => Data>(() => ({}))\n\n const baseAPIPath = formatAdminURL({\n apiRoute: api,\n path: '',\n })\n\n const actionURL = `${baseAPIPath}/${collectionSlug}`\n\n const initializeSharedDocPermissions = React.useCallback(async () => {\n const params = {\n locale: code || undefined,\n }\n\n const docAccessURL = `/${collectionSlug}/access`\n const res = await fetch(`${baseAPIPath}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: SanitizedDocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${baseAPIPath}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n isEditing: false,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update)\n setHasInitializedDocPermissions(true)\n }, [baseAPIPath, code, collectionSlug, i18n.language])\n\n const initializeSharedFormState = React.useCallback(\n async (abortController?: AbortController) => {\n if (abortController?.signal) {\n abortController.abort('aborting previous fetch for initial form state without files')\n }\n\n // FETCH AND SET THE DOCUMENT SLOTS HERE!\n const documentSlots = await getDocumentSlots({ collectionSlug })\n setDocumentSlots(documentSlots)\n\n try {\n const { state: formStateWithoutFiles } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences: { fields: {} },\n locale: code,\n operation: 'create',\n renderAllFields: true,\n schemaPath: collectionSlug,\n skipValidation: true,\n })\n initialStateRef.current = formStateWithoutFiles\n setHasInitializedState(true)\n } catch (_err) {\n // swallow error\n }\n },\n [getDocumentSlots, collectionSlug, getFormState, docPermissions, code],\n )\n\n const setActiveIndex: FormsManagerContext['setActiveIndex'] = React.useCallback(\n (index: number) => {\n const currentFormsData = getFormDataRef.current()\n dispatch({\n type: 'REPLACE',\n state: {\n activeIndex: index,\n forms: forms.map((form, i) => {\n if (i === activeIndex) {\n return {\n errorCount: form.errorCount,\n formID: form.formID,\n formState: currentFormsData,\n uploadEdits: form.uploadEdits,\n }\n }\n return form\n }),\n },\n })\n },\n [forms, activeIndex],\n )\n\n const addFiles = React.useCallback(\n async (files: FileList) => {\n if (forms.length) {\n // save the state of the current form before adding new files\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[activeIndex].errorCount,\n formState: getFormDataRef.current(),\n index: activeIndex,\n })\n }\n\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n dispatch({\n type: 'ADD_FORMS',\n forms: Array.from(files).map((file) => ({\n file,\n initialState: initialStateRef.current,\n })),\n })\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n },\n [initializeSharedFormState, hasInitializedState, toggleLoadingOverlay, activeIndex, forms],\n )\n\n const addFilesEffectEvent = useEffectEvent(addFiles)\n\n const addInitialForms = useEffectEvent(async (initialForms: InitialForms) => {\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n\n dispatch({\n type: 'ADD_FORMS',\n forms: initialForms.map((form) => ({\n ...form,\n initialState: form?.initialState || initialStateRef.current,\n })),\n })\n\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n })\n\n const removeFile: FormsManagerContext['removeFile'] = React.useCallback((index) => {\n dispatch({ type: 'REMOVE_FORM', index })\n }, [])\n\n const setFormTotalErrorCount: FormsManagerContext['setFormTotalErrorCount'] = React.useCallback(\n ({ errorCount, index }) => {\n dispatch({\n type: 'UPDATE_ERROR_COUNT',\n count: errorCount,\n index,\n })\n },\n [],\n )\n\n const saveAllDocs: FormsManagerContext['saveAllDocs'] = React.useCallback(\n async ({ overrides } = {}) => {\n const currentFormsData = getFormDataRef.current()\n const currentForms = [...forms]\n currentForms[activeIndex] = {\n errorCount: currentForms[activeIndex].errorCount,\n formID: currentForms[activeIndex].formID,\n formState: currentFormsData,\n uploadEdits: currentForms[activeIndex].uploadEdits,\n }\n const newDocs: Array<{\n collectionSlug: CollectionSlug\n doc: JsonObject\n /**\n * ID of the form that created this document\n */\n formID: string\n }> = []\n\n setIsUploading(true)\n\n for (let i = 0; i < currentForms.length; i++) {\n try {\n const form = currentForms[i]\n const fileValue = form.formState?.file?.value\n\n // Skip upload if file is missing a filename\n if (\n fileValue &&\n typeof fileValue === 'object' &&\n 'name' in fileValue &&\n (!fileValue.name || fileValue.name === '')\n ) {\n currentForms[i] = {\n ...currentForms[i],\n errorCount: 1,\n }\n continue\n }\n\n setLoadingText(t('general:uploadingBulk', { current: i + 1, total: currentForms.length }))\n\n const actionURLWithParams = `${actionURL}${qs.stringify(\n {\n locale: code,\n uploadEdits: form?.uploadEdits || undefined,\n },\n {\n addQueryPrefix: true,\n },\n )}`\n\n const req = await fetch(actionURLWithParams, {\n body: await createFormData(\n form.formState,\n overrides,\n collectionSlug,\n getUploadHandler({ collectionSlug }),\n ),\n credentials: 'include',\n method: 'POST',\n })\n\n const json = await req.json()\n\n if (req.status === 201 && json?.doc) {\n newDocs.push({\n collectionSlug,\n doc: json.doc,\n formID: form.formID,\n })\n }\n\n // should expose some sort of helper for this\n const [fieldErrors, nonFieldErrors] = (json?.errors || []).reduce(\n ([fieldErrs, nonFieldErrs], err) => {\n const newFieldErrs: any[] = []\n const newNonFieldErrs: any[] = []\n\n if (err?.message) {\n newNonFieldErrs.push(err)\n }\n\n if (Array.isArray(err?.data?.errors)) {\n err.data?.errors.forEach((dataError) => {\n if (dataError?.path) {\n newFieldErrs.push(dataError)\n } else {\n newNonFieldErrs.push(dataError)\n }\n })\n }\n\n return [\n [...fieldErrs, ...newFieldErrs],\n [...nonFieldErrs, ...newNonFieldErrs],\n ]\n },\n [[], []],\n )\n\n currentForms[i] = {\n errorCount: fieldErrors.length,\n formID: currentForms[i].formID,\n formState: fieldReducer(currentForms[i].formState, {\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n }),\n }\n\n if (req.status === 413 || req.status === 400) {\n // file too large\n currentForms[i] = {\n ...currentForms[i],\n errorCount: currentForms[i].errorCount + 1,\n }\n\n toast.error(nonFieldErrors[0]?.message)\n }\n } catch (_) {\n // swallow\n }\n }\n\n setHasSubmitted(true)\n setLoadingText('')\n setIsUploading(false)\n\n const remainingForms = []\n\n currentForms.forEach(({ errorCount }, i) => {\n if (errorCount) {\n remainingForms.push(currentForms[i])\n }\n })\n\n const successCount = Math.max(0, currentForms.length - remainingForms.length)\n const errorCount = currentForms.length - successCount\n\n if (successCount) {\n toast.success(`Successfully saved ${successCount} files`)\n setSuccessfullyUploaded(true)\n\n if (typeof onSuccess === 'function') {\n onSuccess(newDocs, errorCount)\n }\n }\n\n if (errorCount) {\n toast.error(`Failed to save ${errorCount} files`)\n } else {\n closeModal(drawerSlug)\n }\n\n dispatch({\n type: 'REPLACE',\n state: {\n activeIndex: 0,\n forms: remainingForms,\n totalErrorCount: remainingForms.reduce((acc, { errorCount }) => acc + errorCount, 0),\n },\n })\n\n if (remainingForms.length === 0) {\n setInitialFiles(undefined)\n setInitialForms(undefined)\n }\n },\n [\n forms,\n activeIndex,\n t,\n actionURL,\n code,\n collectionSlug,\n getUploadHandler,\n onSuccess,\n closeModal,\n setSuccessfullyUploaded,\n drawerSlug,\n setInitialFiles,\n setInitialForms,\n ],\n )\n\n const bulkUpdateForm = React.useCallback(\n async (updatedFields: Record<string, unknown>, afterStateUpdate?: () => void) => {\n for (let i = 0; i < forms.length; i++) {\n Object.entries(updatedFields).forEach(([path, value]) => {\n if (forms[i].formState[path]) {\n forms[i].formState[path].value = value\n\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[i].errorCount,\n formState: forms[i].formState,\n index: i,\n })\n }\n })\n\n if (typeof afterStateUpdate === 'function') {\n afterStateUpdate()\n }\n\n if (hasSubmitted) {\n const { state } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences: null,\n formState: forms[i].formState,\n operation: 'create',\n schemaPath: collectionSlug,\n })\n\n const newFormErrorCount = Object.values(state).reduce(\n (acc, value) => (value?.valid === false ? acc + 1 : acc),\n 0,\n )\n\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: newFormErrorCount,\n formState: state,\n index: i,\n })\n }\n }\n },\n [collectionSlug, docPermissions, forms, getFormState, hasSubmitted],\n )\n\n const updateUploadEdits = React.useCallback<FormsManagerContext['updateUploadEdits']>(\n (uploadEdits) => {\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[activeIndex].errorCount,\n formState: forms[activeIndex].formState,\n index: activeIndex,\n uploadEdits,\n })\n },\n [activeIndex, forms],\n )\n\n const resetUploadEdits = React.useCallback<FormsManagerContext['resetUploadEdits']>(() => {\n dispatch({\n type: 'REPLACE',\n state: {\n forms: forms.map((form) => ({\n ...form,\n uploadEdits: {},\n })),\n },\n })\n }, [forms])\n\n React.useEffect(() => {\n if (!collectionSlug) {\n return\n }\n if (!hasInitializedState) {\n void initializeSharedFormState()\n }\n\n if (!hasInitializedDocPermissions) {\n void initializeSharedDocPermissions()\n }\n\n if (initialFiles || initialForms) {\n if (!hasInitializedState || !hasInitializedDocPermissions) {\n setIsInitializing(true)\n } else {\n setIsInitializing(false)\n }\n }\n\n if (\n hasInitializedState &&\n (initialForms?.length || initialFiles?.length) &&\n !hasInitializedWithFiles.current\n ) {\n if (initialForms?.length) {\n void addInitialForms(initialForms)\n }\n if (initialFiles?.length) {\n void addFilesEffectEvent(initialFiles)\n }\n hasInitializedWithFiles.current = true\n }\n return\n }, [\n initialFiles,\n initializeSharedFormState,\n initializeSharedDocPermissions,\n collectionSlug,\n hasInitializedState,\n hasInitializedDocPermissions,\n initialForms,\n ])\n\n return (\n <Context\n value={{\n activeIndex: state.activeIndex,\n addFiles,\n bulkUpdateForm,\n collectionSlug,\n docPermissions,\n documentSlots,\n forms,\n getFormDataRef,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n isInitializing,\n removeFile,\n resetUploadEdits,\n saveAllDocs,\n setActiveIndex,\n setFormTotalErrorCount,\n totalErrorCount,\n updateUploadEdits,\n }}\n >\n {isUploading && (\n <LoadingOverlay\n animationDuration=\"250ms\"\n loadingText={loadingText}\n overlayType=\"fullscreen\"\n show\n />\n )}\n {children}\n </Context>\n )\n}\n\nexport function useFormsManager() {\n return React.use(Context)\n}\n"],"names":["useModal","formatAdminURL","qs","React","toast","fieldReducer","useEffectEvent","useConfig","useLocale","useServerFunctions","useTranslation","useUploadHandlers","hasSavePermission","getHasSavePermission","LoadingOverlay","useLoadingOverlay","useBulkUpload","createFormData","formsManagementReducer","Context","createContext","activeIndex","addFiles","Promise","resolve","bulkUpdateForm","collectionSlug","docPermissions","undefined","documentSlots","forms","getFormDataRef","current","hasPublishPermission","hasSubmitted","isInitializing","removeFile","saveAllDocs","setActiveIndex","setFormTotalErrorCount","totalErrorCount","updateUploadEdits","initialState","FormsManagerProvider","children","config","routes","api","code","i18n","t","getDocumentSlots","getFormState","getUploadHandler","setDocumentSlots","useState","setHasSubmitted","setDocPermissions","setHasSavePermission","setHasPublishPermission","hasInitializedState","setHasInitializedState","hasInitializedDocPermissions","setHasInitializedDocPermissions","setIsInitializing","state","dispatch","useReducer","formsRef","useRef","toggleLoadingOverlay","closeModal","drawerSlug","initialFiles","initialForms","onSuccess","setInitialFiles","setInitialForms","setSuccessfullyUploaded","isUploading","setIsUploading","loadingText","setLoadingText","hasInitializedWithFiles","initialStateRef","baseAPIPath","apiRoute","path","actionURL","initializeSharedDocPermissions","useCallback","params","locale","docAccessURL","res","fetch","stringify","credentials","headers","language","method","json","publishedAccessJSON","body","JSON","_status","then","isEditing","update","initializeSharedFormState","abortController","signal","abort","formStateWithoutFiles","docPreferences","fields","operation","renderAllFields","schemaPath","skipValidation","_err","index","currentFormsData","type","map","form","i","errorCount","formID","formState","uploadEdits","files","length","isLoading","key","Array","from","file","addFilesEffectEvent","addInitialForms","count","overrides","currentForms","newDocs","fileValue","value","name","total","actionURLWithParams","addQueryPrefix","req","status","doc","push","fieldErrors","nonFieldErrors","errors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","isArray","data","forEach","dataError","error","_","remainingForms","successCount","Math","max","success","acc","updatedFields","afterStateUpdate","Object","entries","newFormErrorCount","values","valid","resetUploadEdits","useEffect","animationDuration","overlayType","show","useFormsManager","use"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["useModal","formatAdminURL","qs","React","toast","fieldReducer","useEffectEvent","useConfig","useLocale","useServerFunctions","useTranslation","useUploadHandlers","hasSavePermission","getHasSavePermission","LoadingOverlay","useLoadingOverlay","useBulkUpload","createFormData","formsManagementReducer","Context","createContext","activeIndex","addFiles","Promise","resolve","bulkUpdateForm","collectionSlug","docPermissions","undefined","documentSlots","forms","getFormDataRef","current","hasPublishPermission","hasSubmitted","isInitializing","removeFile","saveAllDocs","setActiveIndex","setFormTotalErrorCount","totalErrorCount","updateUploadEdits","initialState","FormsManagerProvider","children","config","routes","api","code","i18n","t","getDocumentSlots","getFormState","getUploadHandler","setDocumentSlots","useState","setHasSubmitted","setDocPermissions","setHasSavePermission","setHasPublishPermission","hasInitializedState","setHasInitializedState","hasInitializedDocPermissions","setHasInitializedDocPermissions","setIsInitializing","state","dispatch","useReducer","formsRef","useRef","toggleLoadingOverlay","closeModal","drawerSlug","initialFiles","initialForms","onSuccess","setInitialFiles","setInitialForms","setSuccessfullyUploaded","isUploading","setIsUploading","loadingText","setLoadingText","hasInitializedWithFiles","initialStateRef","baseAPIPath","apiRoute","path","actionURL","initializeSharedDocPermissions","useCallback","params","locale","docAccessURL","res","fetch","stringify","credentials","headers","language","method","json","publishedAccessJSON","body","JSON","_status","then","isEditing","update","initializeSharedFormState","abortController","signal","abort","formStateWithoutFiles","docPreferences","fields","operation","renderAllFields","schemaPath","skipValidation","_err","index","currentFormsData","type","map","form","i","errorCount","formID","formState","uploadEdits","files","length","isLoading","key","Array","from","file","addFilesEffectEvent","addInitialForms","count","overrides","currentForms","newDocs","fileValue","value","name","total","actionURLWithParams","addQueryPrefix","req","status","doc","push","fieldErrors","nonFieldErrors","errors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","isArray","data","forEach","dataError","error","_","remainingForms","successCount","Math","max","success","acc","updatedFields","afterStateUpdate","Object","entries","newFormErrorCount","values","valid","resetUploadEdits","useEffect","_jsxs","_jsx","animationDuration","overlayType","show","useFormsManager","use"],"sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"sourcesContent":["'use client'\n\nimport type {\n CollectionSlug,\n Data,\n DocumentSlots,\n FormState,\n JsonObject,\n SanitizedDocumentPermissions,\n UploadEdits,\n} from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport type { State } from './reducer.js'\n\nimport { fieldReducer } from '../../../forms/Form/fieldReducer.js'\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useUploadHandlers } from '../../../providers/UploadHandlers/index.js'\nimport { hasSavePermission as getHasSavePermission } from '../../../utilities/hasSavePermission.js'\nimport { LoadingOverlay } from '../../Loading/index.js'\nimport { useLoadingOverlay } from '../../LoadingOverlay/index.js'\nimport { useBulkUpload } from '../index.js'\nimport { createFormData } from './createFormData.js'\nimport { formsManagementReducer } from './reducer.js'\n\ntype FormsManagerContext = {\n readonly activeIndex: State['activeIndex']\n readonly addFiles: (filelist: FileList) => Promise<void>\n readonly bulkUpdateForm: (\n updatedFields: Record<string, unknown>,\n afterStateUpdate?: () => void,\n ) => Promise<void>\n readonly collectionSlug: string\n readonly docPermissions?: SanitizedDocumentPermissions\n readonly documentSlots: DocumentSlots\n readonly forms: State['forms']\n getFormDataRef: React.RefObject<() => Data>\n readonly hasPublishPermission: boolean\n readonly hasSavePermission: boolean\n readonly hasSubmitted: boolean\n readonly isInitializing: boolean\n readonly removeFile: (index: number) => void\n readonly resetUploadEdits?: () => void\n readonly saveAllDocs: ({ overrides }?: { overrides?: Record<string, unknown> }) => Promise<void>\n readonly setActiveIndex: (index: number) => void\n readonly setFormTotalErrorCount: ({\n errorCount,\n index,\n }: {\n errorCount: number\n index: number\n }) => void\n readonly totalErrorCount?: number\n readonly updateUploadEdits: (args: UploadEdits) => void\n}\n\nconst Context = React.createContext<FormsManagerContext>({\n activeIndex: 0,\n addFiles: () => Promise.resolve(),\n bulkUpdateForm: () => null,\n collectionSlug: '',\n docPermissions: undefined,\n documentSlots: {},\n forms: [],\n getFormDataRef: { current: () => ({}) },\n hasPublishPermission: false,\n hasSavePermission: false,\n hasSubmitted: false,\n isInitializing: false,\n removeFile: () => {},\n saveAllDocs: () => Promise.resolve(),\n setActiveIndex: () => 0,\n setFormTotalErrorCount: () => {},\n totalErrorCount: 0,\n updateUploadEdits: () => {},\n})\n\nconst initialState: State = {\n activeIndex: 0,\n forms: [],\n totalErrorCount: 0,\n}\n\nexport type InitialForms = Array<{\n file: File\n formID?: string\n initialState?: FormState | null\n}>\n\ntype FormsManagerProps = {\n readonly children: React.ReactNode\n}\n\nexport function FormsManagerProvider({ children }: FormsManagerProps) {\n const { config } = useConfig()\n const {\n routes: { api },\n } = config\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const { getDocumentSlots, getFormState } = useServerFunctions()\n const { getUploadHandler } = useUploadHandlers()\n\n const [documentSlots, setDocumentSlots] = React.useState<DocumentSlots>({})\n const [hasSubmitted, setHasSubmitted] = React.useState(false)\n const [docPermissions, setDocPermissions] = React.useState<SanitizedDocumentPermissions>()\n const [hasSavePermission, setHasSavePermission] = React.useState(false)\n const [hasPublishPermission, setHasPublishPermission] = React.useState(false)\n const [hasInitializedState, setHasInitializedState] = React.useState(false)\n const [hasInitializedDocPermissions, setHasInitializedDocPermissions] = React.useState(false)\n const [isInitializing, setIsInitializing] = React.useState(false)\n const [state, dispatch] = React.useReducer(formsManagementReducer, initialState)\n const { activeIndex, forms, totalErrorCount } = state\n\n const formsRef = React.useRef(forms)\n formsRef.current = forms\n\n const { toggleLoadingOverlay } = useLoadingOverlay()\n const { closeModal } = useModal()\n const {\n collectionSlug,\n drawerSlug,\n initialFiles,\n initialForms,\n onSuccess,\n setInitialFiles,\n setInitialForms,\n setSuccessfullyUploaded,\n } = useBulkUpload()\n\n const [isUploading, setIsUploading] = React.useState(false)\n const [loadingText, setLoadingText] = React.useState('')\n\n const hasInitializedWithFiles = React.useRef(false)\n const initialStateRef = React.useRef<FormState>(null)\n const getFormDataRef = React.useRef<() => Data>(() => ({}))\n\n const baseAPIPath = formatAdminURL({\n apiRoute: api,\n path: '',\n })\n\n const actionURL = `${baseAPIPath}/${collectionSlug}`\n\n const initializeSharedDocPermissions = React.useCallback(async () => {\n const params = {\n locale: code || undefined,\n }\n\n const docAccessURL = `/${collectionSlug}/access`\n const res = await fetch(`${baseAPIPath}${docAccessURL}?${qs.stringify(params)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: SanitizedDocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${baseAPIPath}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n isEditing: false,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update)\n setHasInitializedDocPermissions(true)\n }, [baseAPIPath, code, collectionSlug, i18n.language])\n\n const initializeSharedFormState = React.useCallback(\n async (abortController?: AbortController) => {\n if (abortController?.signal) {\n abortController.abort('aborting previous fetch for initial form state without files')\n }\n\n // FETCH AND SET THE DOCUMENT SLOTS HERE!\n const documentSlots = await getDocumentSlots({ collectionSlug })\n setDocumentSlots(documentSlots)\n\n try {\n const { state: formStateWithoutFiles } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences: { fields: {} },\n locale: code,\n operation: 'create',\n renderAllFields: true,\n schemaPath: collectionSlug,\n skipValidation: true,\n })\n initialStateRef.current = formStateWithoutFiles\n setHasInitializedState(true)\n } catch (_err) {\n // swallow error\n }\n },\n [getDocumentSlots, collectionSlug, getFormState, docPermissions, code],\n )\n\n const setActiveIndex: FormsManagerContext['setActiveIndex'] = React.useCallback(\n (index: number) => {\n const currentFormsData = getFormDataRef.current()\n dispatch({\n type: 'REPLACE',\n state: {\n activeIndex: index,\n forms: forms.map((form, i) => {\n if (i === activeIndex) {\n return {\n errorCount: form.errorCount,\n formID: form.formID,\n formState: currentFormsData,\n uploadEdits: form.uploadEdits,\n }\n }\n return form\n }),\n },\n })\n },\n [forms, activeIndex],\n )\n\n const addFiles = React.useCallback(\n async (files: FileList) => {\n if (forms.length) {\n // save the state of the current form before adding new files\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[activeIndex].errorCount,\n formState: getFormDataRef.current(),\n index: activeIndex,\n })\n }\n\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n dispatch({\n type: 'ADD_FORMS',\n forms: Array.from(files).map((file) => ({\n file,\n initialState: initialStateRef.current,\n })),\n })\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n },\n [initializeSharedFormState, hasInitializedState, toggleLoadingOverlay, activeIndex, forms],\n )\n\n const addFilesEffectEvent = useEffectEvent(addFiles)\n\n const addInitialForms = useEffectEvent(async (initialForms: InitialForms) => {\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n\n dispatch({\n type: 'ADD_FORMS',\n forms: initialForms.map((form) => ({\n ...form,\n initialState: form?.initialState || initialStateRef.current,\n })),\n })\n\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n })\n\n const removeFile: FormsManagerContext['removeFile'] = React.useCallback((index) => {\n dispatch({ type: 'REMOVE_FORM', index })\n }, [])\n\n const setFormTotalErrorCount: FormsManagerContext['setFormTotalErrorCount'] = React.useCallback(\n ({ errorCount, index }) => {\n dispatch({\n type: 'UPDATE_ERROR_COUNT',\n count: errorCount,\n index,\n })\n },\n [],\n )\n\n const saveAllDocs: FormsManagerContext['saveAllDocs'] = React.useCallback(\n async ({ overrides } = {}) => {\n const currentFormsData = getFormDataRef.current()\n const currentForms = [...forms]\n currentForms[activeIndex] = {\n errorCount: currentForms[activeIndex].errorCount,\n formID: currentForms[activeIndex].formID,\n formState: currentFormsData,\n uploadEdits: currentForms[activeIndex].uploadEdits,\n }\n const newDocs: Array<{\n collectionSlug: CollectionSlug\n doc: JsonObject\n /**\n * ID of the form that created this document\n */\n formID: string\n }> = []\n\n setIsUploading(true)\n\n for (let i = 0; i < currentForms.length; i++) {\n try {\n const form = currentForms[i]\n const fileValue = form.formState?.file?.value\n\n // Skip upload if file is missing a filename\n if (\n fileValue &&\n typeof fileValue === 'object' &&\n 'name' in fileValue &&\n (!fileValue.name || fileValue.name === '')\n ) {\n currentForms[i] = {\n ...currentForms[i],\n errorCount: 1,\n }\n continue\n }\n\n setLoadingText(t('general:uploadingBulk', { current: i + 1, total: currentForms.length }))\n\n const actionURLWithParams = `${actionURL}${qs.stringify(\n {\n locale: code,\n uploadEdits: form?.uploadEdits || undefined,\n },\n {\n addQueryPrefix: true,\n },\n )}`\n\n const req = await fetch(actionURLWithParams, {\n body: await createFormData(\n form.formState,\n overrides,\n collectionSlug,\n getUploadHandler({ collectionSlug }),\n ),\n credentials: 'include',\n method: 'POST',\n })\n\n const json = await req.json()\n\n if (req.status === 201 && json?.doc) {\n newDocs.push({\n collectionSlug,\n doc: json.doc,\n formID: form.formID,\n })\n }\n\n // should expose some sort of helper for this\n const [fieldErrors, nonFieldErrors] = (json?.errors || []).reduce(\n ([fieldErrs, nonFieldErrs], err) => {\n const newFieldErrs: any[] = []\n const newNonFieldErrs: any[] = []\n\n if (err?.message) {\n newNonFieldErrs.push(err)\n }\n\n if (Array.isArray(err?.data?.errors)) {\n err.data?.errors.forEach((dataError) => {\n if (dataError?.path) {\n newFieldErrs.push(dataError)\n } else {\n newNonFieldErrs.push(dataError)\n }\n })\n }\n\n return [\n [...fieldErrs, ...newFieldErrs],\n [...nonFieldErrs, ...newNonFieldErrs],\n ]\n },\n [[], []],\n )\n\n currentForms[i] = {\n errorCount: fieldErrors.length,\n formID: currentForms[i].formID,\n formState: fieldReducer(currentForms[i].formState, {\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n }),\n }\n\n if (req.status === 413 || req.status === 400) {\n // file too large\n currentForms[i] = {\n ...currentForms[i],\n errorCount: currentForms[i].errorCount + 1,\n }\n\n toast.error(nonFieldErrors[0]?.message)\n }\n } catch (_) {\n // swallow\n }\n }\n\n setHasSubmitted(true)\n setLoadingText('')\n setIsUploading(false)\n\n const remainingForms = []\n\n currentForms.forEach(({ errorCount }, i) => {\n if (errorCount) {\n remainingForms.push(currentForms[i])\n }\n })\n\n const successCount = Math.max(0, currentForms.length - remainingForms.length)\n const errorCount = currentForms.length - successCount\n\n if (successCount) {\n toast.success(`Successfully saved ${successCount} files`)\n setSuccessfullyUploaded(true)\n\n if (typeof onSuccess === 'function') {\n onSuccess(newDocs, errorCount)\n }\n }\n\n if (errorCount) {\n toast.error(`Failed to save ${errorCount} files`)\n } else {\n closeModal(drawerSlug)\n }\n\n dispatch({\n type: 'REPLACE',\n state: {\n activeIndex: 0,\n forms: remainingForms,\n totalErrorCount: remainingForms.reduce((acc, { errorCount }) => acc + errorCount, 0),\n },\n })\n\n if (remainingForms.length === 0) {\n setInitialFiles(undefined)\n setInitialForms(undefined)\n }\n },\n [\n forms,\n activeIndex,\n t,\n actionURL,\n code,\n collectionSlug,\n getUploadHandler,\n onSuccess,\n closeModal,\n setSuccessfullyUploaded,\n drawerSlug,\n setInitialFiles,\n setInitialForms,\n ],\n )\n\n const bulkUpdateForm = React.useCallback(\n async (updatedFields: Record<string, unknown>, afterStateUpdate?: () => void) => {\n for (let i = 0; i < forms.length; i++) {\n Object.entries(updatedFields).forEach(([path, value]) => {\n if (forms[i].formState[path]) {\n forms[i].formState[path].value = value\n\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[i].errorCount,\n formState: forms[i].formState,\n index: i,\n })\n }\n })\n\n if (typeof afterStateUpdate === 'function') {\n afterStateUpdate()\n }\n\n if (hasSubmitted) {\n const { state } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences: null,\n formState: forms[i].formState,\n operation: 'create',\n schemaPath: collectionSlug,\n })\n\n const newFormErrorCount = Object.values(state).reduce(\n (acc, value) => (value?.valid === false ? acc + 1 : acc),\n 0,\n )\n\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: newFormErrorCount,\n formState: state,\n index: i,\n })\n }\n }\n },\n [collectionSlug, docPermissions, forms, getFormState, hasSubmitted],\n )\n\n const updateUploadEdits = React.useCallback<FormsManagerContext['updateUploadEdits']>(\n (uploadEdits) => {\n dispatch({\n type: 'UPDATE_FORM',\n errorCount: forms[activeIndex].errorCount,\n formState: forms[activeIndex].formState,\n index: activeIndex,\n uploadEdits,\n })\n },\n [activeIndex, forms],\n )\n\n const resetUploadEdits = React.useCallback<FormsManagerContext['resetUploadEdits']>(() => {\n dispatch({\n type: 'REPLACE',\n state: {\n forms: forms.map((form) => ({\n ...form,\n uploadEdits: {},\n })),\n },\n })\n }, [forms])\n\n React.useEffect(() => {\n if (!collectionSlug) {\n return\n }\n if (!hasInitializedState) {\n void initializeSharedFormState()\n }\n\n if (!hasInitializedDocPermissions) {\n void initializeSharedDocPermissions()\n }\n\n if (initialFiles || initialForms) {\n if (!hasInitializedState || !hasInitializedDocPermissions) {\n setIsInitializing(true)\n } else {\n setIsInitializing(false)\n }\n }\n\n if (\n hasInitializedState &&\n (initialForms?.length || initialFiles?.length) &&\n !hasInitializedWithFiles.current\n ) {\n if (initialForms?.length) {\n void addInitialForms(initialForms)\n }\n if (initialFiles?.length) {\n void addFilesEffectEvent(initialFiles)\n }\n hasInitializedWithFiles.current = true\n }\n return\n }, [\n initialFiles,\n initializeSharedFormState,\n initializeSharedDocPermissions,\n collectionSlug,\n hasInitializedState,\n hasInitializedDocPermissions,\n initialForms,\n ])\n\n return (\n <Context\n value={{\n activeIndex: state.activeIndex,\n addFiles,\n bulkUpdateForm,\n collectionSlug,\n docPermissions,\n documentSlots,\n forms,\n getFormDataRef,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n isInitializing,\n removeFile,\n resetUploadEdits,\n saveAllDocs,\n setActiveIndex,\n setFormTotalErrorCount,\n totalErrorCount,\n updateUploadEdits,\n }}\n >\n {isUploading && (\n <LoadingOverlay\n animationDuration=\"250ms\"\n loadingText={loadingText}\n overlayType=\"fullscreen\"\n show\n />\n )}\n {children}\n </Context>\n )\n}\n\nexport function useFormsManager() {\n return React.use(Context)\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,104 +1,94 @@
1
1
  import { v4 as uuidv4 } from 'uuid';
2
2
  export function formsManagementReducer(state, action) {
3
- switch(action.type){
4
- case 'ADD_FORMS':
5
- {
6
- const newForms = [];
7
- for(let i = 0; i < action.forms.length; i++){
8
- newForms[i] = {
9
- errorCount: 0,
10
- formID: action.forms[i].formID ?? (crypto.randomUUID ? crypto.randomUUID() : uuidv4()),
11
- formState: {
12
- ...action.forms[i].initialState || {},
13
- file: {
14
- initialValue: action.forms[i].file,
15
- valid: true,
16
- value: action.forms[i].file
17
- }
18
- },
19
- uploadEdits: {}
20
- };
21
- }
22
- return {
23
- ...state,
24
- activeIndex: 0,
25
- forms: [
26
- ...newForms,
27
- ...state.forms
28
- ]
29
- };
30
- }
31
- case 'REMOVE_FORM':
32
- {
33
- const remainingFormStates = [
34
- ...state.forms
35
- ];
36
- const [removedForm] = remainingFormStates.splice(action.index, 1);
37
- const affectedByShift = state.activeIndex >= action.index;
38
- const nextIndex = state.activeIndex === action.index ? action.index : affectedByShift ? state.activeIndex - 1 : state.activeIndex;
39
- const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex);
40
- return {
41
- ...state,
42
- activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,
43
- forms: remainingFormStates,
44
- totalErrorCount: state.totalErrorCount - removedForm.errorCount
45
- };
46
- }
47
- case 'REPLACE':
48
- {
49
- return {
50
- ...state,
51
- ...action.state
52
- };
53
- }
54
- case 'SET_ACTIVE_INDEX':
55
- {
56
- return {
57
- ...state,
58
- activeIndex: action.index
59
- };
60
- }
61
- case 'UPDATE_ERROR_COUNT':
62
- {
63
- const forms = [
64
- ...state.forms
65
- ];
66
- forms[action.index].errorCount = action.count;
67
- return {
68
- ...state,
69
- forms,
70
- totalErrorCount: state.forms.reduce((acc, form)=>acc + form.errorCount, 0)
71
- };
72
- }
73
- case 'UPDATE_FORM':
74
- {
75
- const updatedForms = [
76
- ...state.forms
77
- ];
78
- updatedForms[action.index].errorCount = action.errorCount;
79
- // Merge the existing formState with the new formState
80
- updatedForms[action.index] = {
81
- ...updatedForms[action.index],
82
- formState: {
83
- ...updatedForms[action.index].formState,
84
- ...action.formState
85
- },
86
- uploadEdits: {
87
- ...updatedForms[action.index].uploadEdits,
88
- ...action.uploadEdits
89
- }
90
- };
91
- return {
92
- ...state,
93
- forms: updatedForms,
94
- totalErrorCount: state.forms.reduce((acc, form)=>acc + form.errorCount, 0)
95
- };
96
- }
97
- default:
98
- {
99
- return state;
100
- }
101
- }
3
+ switch (action.type) {
4
+ case 'ADD_FORMS':
5
+ {
6
+ const newForms = [];
7
+ for (let i = 0; i < action.forms.length; i++) {
8
+ newForms[i] = {
9
+ errorCount: 0,
10
+ formID: action.forms[i].formID ?? (crypto.randomUUID ? crypto.randomUUID() : uuidv4()),
11
+ formState: {
12
+ ...(action.forms[i].initialState || {}),
13
+ file: {
14
+ initialValue: action.forms[i].file,
15
+ valid: true,
16
+ value: action.forms[i].file
17
+ }
18
+ },
19
+ uploadEdits: {}
20
+ };
21
+ }
22
+ return {
23
+ ...state,
24
+ activeIndex: 0,
25
+ forms: [...newForms, ...state.forms]
26
+ };
27
+ }
28
+ case 'REMOVE_FORM':
29
+ {
30
+ const remainingFormStates = [...state.forms];
31
+ const [removedForm] = remainingFormStates.splice(action.index, 1);
32
+ const affectedByShift = state.activeIndex >= action.index;
33
+ const nextIndex = state.activeIndex === action.index ? action.index : affectedByShift ? state.activeIndex - 1 : state.activeIndex;
34
+ const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex);
35
+ return {
36
+ ...state,
37
+ activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,
38
+ forms: remainingFormStates,
39
+ totalErrorCount: state.totalErrorCount - removedForm.errorCount
40
+ };
41
+ }
42
+ case 'REPLACE':
43
+ {
44
+ return {
45
+ ...state,
46
+ ...action.state
47
+ };
48
+ }
49
+ case 'SET_ACTIVE_INDEX':
50
+ {
51
+ return {
52
+ ...state,
53
+ activeIndex: action.index
54
+ };
55
+ }
56
+ case 'UPDATE_ERROR_COUNT':
57
+ {
58
+ const forms = [...state.forms];
59
+ forms[action.index].errorCount = action.count;
60
+ return {
61
+ ...state,
62
+ forms,
63
+ totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0)
64
+ };
65
+ }
66
+ case 'UPDATE_FORM':
67
+ {
68
+ const updatedForms = [...state.forms];
69
+ updatedForms[action.index].errorCount = action.errorCount;
70
+ // Merge the existing formState with the new formState
71
+ updatedForms[action.index] = {
72
+ ...updatedForms[action.index],
73
+ formState: {
74
+ ...updatedForms[action.index].formState,
75
+ ...action.formState
76
+ },
77
+ uploadEdits: {
78
+ ...updatedForms[action.index].uploadEdits,
79
+ ...action.uploadEdits
80
+ }
81
+ };
82
+ return {
83
+ ...state,
84
+ forms: updatedForms,
85
+ totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0)
86
+ };
87
+ }
88
+ default:
89
+ {
90
+ return state;
91
+ }
92
+ }
102
93
  }
103
-
104
94
  //# sourceMappingURL=reducer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/BulkUpload/FormsManager/reducer.ts"],"sourcesContent":["import type { FormState, UploadEdits } from 'payload'\n\nimport { v4 as uuidv4 } from 'uuid'\n\nimport type { InitialForms } from './index.js'\n\nexport type State = {\n activeIndex: number\n forms: {\n errorCount: number\n formID: string\n formState: FormState\n uploadEdits?: UploadEdits\n }[]\n totalErrorCount: number\n}\n\ntype Action =\n | {\n count: number\n index: number\n type: 'UPDATE_ERROR_COUNT'\n }\n | {\n errorCount: number\n formState: FormState\n index: number\n type: 'UPDATE_FORM'\n updatedFields?: Record<string, unknown>\n uploadEdits?: UploadEdits\n }\n | {\n forms: InitialForms\n type: 'ADD_FORMS'\n }\n | {\n index: number\n type: 'REMOVE_FORM'\n }\n | {\n index: number\n type: 'SET_ACTIVE_INDEX'\n }\n | {\n state: Partial<State>\n type: 'REPLACE'\n }\n\nexport function formsManagementReducer(state: State, action: Action): State {\n switch (action.type) {\n case 'ADD_FORMS': {\n const newForms: State['forms'] = []\n for (let i = 0; i < action.forms.length; i++) {\n newForms[i] = {\n errorCount: 0,\n formID: action.forms[i].formID ?? (crypto.randomUUID ? crypto.randomUUID() : uuidv4()),\n formState: {\n ...(action.forms[i].initialState || {}),\n file: {\n initialValue: action.forms[i].file,\n valid: true,\n value: action.forms[i].file,\n },\n },\n uploadEdits: {},\n }\n }\n\n return {\n ...state,\n activeIndex: 0,\n forms: [...newForms, ...state.forms],\n }\n }\n case 'REMOVE_FORM': {\n const remainingFormStates = [...state.forms]\n const [removedForm] = remainingFormStates.splice(action.index, 1)\n\n const affectedByShift = state.activeIndex >= action.index\n const nextIndex =\n state.activeIndex === action.index\n ? action.index\n : affectedByShift\n ? state.activeIndex - 1\n : state.activeIndex\n const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex)\n\n return {\n ...state,\n activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,\n forms: remainingFormStates,\n totalErrorCount: state.totalErrorCount - removedForm.errorCount,\n }\n }\n case 'REPLACE': {\n return {\n ...state,\n ...action.state,\n }\n }\n case 'SET_ACTIVE_INDEX': {\n return {\n ...state,\n activeIndex: action.index,\n }\n }\n case 'UPDATE_ERROR_COUNT': {\n const forms = [...state.forms]\n forms[action.index].errorCount = action.count\n\n return {\n ...state,\n forms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n case 'UPDATE_FORM': {\n const updatedForms = [...state.forms]\n updatedForms[action.index].errorCount = action.errorCount\n\n // Merge the existing formState with the new formState\n updatedForms[action.index] = {\n ...updatedForms[action.index],\n formState: {\n ...updatedForms[action.index].formState,\n ...action.formState,\n },\n uploadEdits: {\n ...updatedForms[action.index].uploadEdits,\n ...action.uploadEdits,\n },\n }\n\n return {\n ...state,\n forms: updatedForms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n default: {\n return state\n }\n }\n}\n"],"names":["v4","uuidv4","formsManagementReducer","state","action","type","newForms","i","forms","length","errorCount","formID","crypto","randomUUID","formState","initialState","file","initialValue","valid","value","uploadEdits","activeIndex","remainingFormStates","removedForm","splice","index","affectedByShift","nextIndex","boundedActiveIndex","Math","min","totalErrorCount","count","reduce","acc","form","updatedForms"],"mappings":"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"}
1
+ {"version":3,"file":"reducer.js","names":["v4","uuidv4","formsManagementReducer","state","action","type","newForms","i","forms","length","errorCount","formID","crypto","randomUUID","formState","initialState","file","initialValue","valid","value","uploadEdits","activeIndex","remainingFormStates","removedForm","splice","index","affectedByShift","nextIndex","boundedActiveIndex","Math","min","totalErrorCount","count","reduce","acc","form","updatedForms"],"sources":["../../../../src/elements/BulkUpload/FormsManager/reducer.ts"],"sourcesContent":["import type { FormState, UploadEdits } from 'payload'\n\nimport { v4 as uuidv4 } from 'uuid'\n\nimport type { InitialForms } from './index.js'\n\nexport type State = {\n activeIndex: number\n forms: {\n errorCount: number\n formID: string\n formState: FormState\n uploadEdits?: UploadEdits\n }[]\n totalErrorCount: number\n}\n\ntype Action =\n | {\n count: number\n index: number\n type: 'UPDATE_ERROR_COUNT'\n }\n | {\n errorCount: number\n formState: FormState\n index: number\n type: 'UPDATE_FORM'\n updatedFields?: Record<string, unknown>\n uploadEdits?: UploadEdits\n }\n | {\n forms: InitialForms\n type: 'ADD_FORMS'\n }\n | {\n index: number\n type: 'REMOVE_FORM'\n }\n | {\n index: number\n type: 'SET_ACTIVE_INDEX'\n }\n | {\n state: Partial<State>\n type: 'REPLACE'\n }\n\nexport function formsManagementReducer(state: State, action: Action): State {\n switch (action.type) {\n case 'ADD_FORMS': {\n const newForms: State['forms'] = []\n for (let i = 0; i < action.forms.length; i++) {\n newForms[i] = {\n errorCount: 0,\n formID: action.forms[i].formID ?? (crypto.randomUUID ? crypto.randomUUID() : uuidv4()),\n formState: {\n ...(action.forms[i].initialState || {}),\n file: {\n initialValue: action.forms[i].file,\n valid: true,\n value: action.forms[i].file,\n },\n },\n uploadEdits: {},\n }\n }\n\n return {\n ...state,\n activeIndex: 0,\n forms: [...newForms, ...state.forms],\n }\n }\n case 'REMOVE_FORM': {\n const remainingFormStates = [...state.forms]\n const [removedForm] = remainingFormStates.splice(action.index, 1)\n\n const affectedByShift = state.activeIndex >= action.index\n const nextIndex =\n state.activeIndex === action.index\n ? action.index\n : affectedByShift\n ? state.activeIndex - 1\n : state.activeIndex\n const boundedActiveIndex = Math.min(remainingFormStates.length - 1, nextIndex)\n\n return {\n ...state,\n activeIndex: affectedByShift ? boundedActiveIndex : state.activeIndex,\n forms: remainingFormStates,\n totalErrorCount: state.totalErrorCount - removedForm.errorCount,\n }\n }\n case 'REPLACE': {\n return {\n ...state,\n ...action.state,\n }\n }\n case 'SET_ACTIVE_INDEX': {\n return {\n ...state,\n activeIndex: action.index,\n }\n }\n case 'UPDATE_ERROR_COUNT': {\n const forms = [...state.forms]\n forms[action.index].errorCount = action.count\n\n return {\n ...state,\n forms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n case 'UPDATE_FORM': {\n const updatedForms = [...state.forms]\n updatedForms[action.index].errorCount = action.errorCount\n\n // Merge the existing formState with the new formState\n updatedForms[action.index] = {\n ...updatedForms[action.index],\n formState: {\n ...updatedForms[action.index].formState,\n ...action.formState,\n },\n uploadEdits: {\n ...updatedForms[action.index].uploadEdits,\n ...action.uploadEdits,\n },\n }\n\n return {\n ...state,\n forms: updatedForms,\n totalErrorCount: state.forms.reduce((acc, form) => acc + form.errorCount, 0),\n }\n }\n default: {\n return state\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,34 +1,22 @@
1
1
  'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
+
3
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
4
  import React from 'react';
4
5
  import { DrawerCloseButton } from '../DrawerCloseButton/index.js';
5
6
  import './index.scss';
6
7
  const baseClass = 'bulk-upload--drawer-header';
7
- export function DrawerHeader({ onClose, title }) {
8
- return /*#__PURE__*/ _jsxDEV("div", {
9
- className: baseClass,
10
- children: [
11
- /*#__PURE__*/ _jsxDEV("h2", {
12
- title: title,
13
- children: title
14
- }, void 0, false, {
15
- fileName: "src/elements/BulkUpload/Header/index.tsx",
16
- lineNumber: 17,
17
- columnNumber: 7
18
- }, this),
19
- /*#__PURE__*/ _jsxDEV(DrawerCloseButton, {
20
- onClick: onClose
21
- }, void 0, false, {
22
- fileName: "src/elements/BulkUpload/Header/index.tsx",
23
- lineNumber: 18,
24
- columnNumber: 7
25
- }, this)
26
- ]
27
- }, void 0, true, {
28
- fileName: "src/elements/BulkUpload/Header/index.tsx",
29
- lineNumber: 16,
30
- columnNumber: 5
31
- }, this);
8
+ export function DrawerHeader({
9
+ onClose,
10
+ title
11
+ }) {
12
+ return /*#__PURE__*/_jsxs("div", {
13
+ className: baseClass,
14
+ children: [/*#__PURE__*/_jsx("h2", {
15
+ title: title,
16
+ children: title
17
+ }), /*#__PURE__*/_jsx(DrawerCloseButton, {
18
+ onClick: onClose
19
+ })]
20
+ });
32
21
  }
33
-
34
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/BulkUpload/Header/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { DrawerCloseButton } from '../DrawerCloseButton/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--drawer-header'\n\ntype Props = {\n readonly onClose: () => void\n readonly title: string\n}\nexport function DrawerHeader({ onClose, title }: Props) {\n return (\n <div className={baseClass}>\n <h2 title={title}>{title}</h2>\n <DrawerCloseButton onClick={onClose} />\n </div>\n )\n}\n"],"names":["React","DrawerCloseButton","baseClass","DrawerHeader","onClose","title","div","className","h2","onClick"],"mappings":"AAAA;;AAEA,OAAOA,WAAW,QAAO;AAEzB,SAASC,iBAAiB,QAAQ,gCAA+B;AACjE,OAAO,eAAc;AAErB,MAAMC,YAAY;AAMlB,OAAO,SAASC,aAAa,EAAEC,OAAO,EAAEC,KAAK,EAAS;IACpD,qBACE,QAACC;QAAIC,WAAWL;;0BACd,QAACM;gBAAGH,OAAOA;0BAAQA;;;;;;0BACnB,QAACJ;gBAAkBQ,SAASL;;;;;;;;;;;;AAGlC"}
1
+ {"version":3,"file":"index.js","names":["React","DrawerCloseButton","baseClass","DrawerHeader","onClose","title","_jsxs","className","_jsx","onClick"],"sources":["../../../../src/elements/BulkUpload/Header/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { DrawerCloseButton } from '../DrawerCloseButton/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--drawer-header'\n\ntype Props = {\n readonly onClose: () => void\n readonly title: string\n}\nexport function DrawerHeader({ onClose, title }: Props) {\n return (\n <div className={baseClass}>\n <h2 title={title}>{title}</h2>\n <DrawerCloseButton onClick={onClose} />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,iBAAiB,QAAQ;AAClC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAMlB,OAAO,SAASC,aAAa;EAAEC,OAAO;EAAEC;AAAK,CAAS;EACpD,oBACEC,KAAA,CAAC;IAAIC,SAAA,EAAWL,SAAA;4BACdM,IAAA,CAAC;MAAGH,KAAA,EAAOA,KAAA;gBAAQA;qBACnBG,IAAA,CAACP,iBAAA;MAAkBQ,OAAA,EAASL;;;AAGlC","ignoreList":[]}