@payloadcms/ui 3.0.0-beta.95 → 3.0.0-beta.97

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 (412) hide show
  1. package/dist/elements/AddNewRelation/index.js +1 -1
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AppHeader/index.js +5 -5
  4. package/dist/elements/AppHeader/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +6 -2
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/Banner/index.d.ts.map +1 -1
  9. package/dist/elements/Banner/index.js +6 -2
  10. package/dist/elements/Banner/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  12. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/ActionsBar/index.scss +4 -4
  14. package/dist/elements/BulkUpload/AddFilesView/index.js +1 -0
  15. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/AddFilesView/index.scss +1 -1
  17. package/dist/elements/BulkUpload/AddingFilesView/index.js +1 -1
  18. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/EditForm/index.js +8 -4
  20. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/FileSidebar/index.js +1 -1
  22. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  23. package/dist/elements/BulkUpload/FileSidebar/index.scss +8 -10
  24. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  25. package/dist/elements/BulkUpload/FormsManager/index.js +3 -1
  26. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  27. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  28. package/dist/elements/BulkUpload/index.js +1 -1
  29. package/dist/elements/BulkUpload/index.js.map +1 -1
  30. package/dist/elements/Button/index.d.ts.map +1 -1
  31. package/dist/elements/Button/index.js +39 -31
  32. package/dist/elements/Button/index.js.map +1 -1
  33. package/dist/elements/Button/types.d.ts +2 -2
  34. package/dist/elements/Button/types.d.ts.map +1 -1
  35. package/dist/elements/Button/types.js.map +1 -1
  36. package/dist/elements/Card/index.d.ts +1 -1
  37. package/dist/elements/Card/index.d.ts.map +1 -1
  38. package/dist/elements/Card/index.js +2 -2
  39. package/dist/elements/Card/index.js.map +1 -1
  40. package/dist/elements/CodeEditor/index.js +1 -1
  41. package/dist/elements/CodeEditor/index.js.map +1 -1
  42. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  43. package/dist/elements/Collapsible/index.js.map +1 -1
  44. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  45. package/dist/elements/ColumnSelector/index.js +2 -2
  46. package/dist/elements/ColumnSelector/index.js.map +1 -1
  47. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  48. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  49. package/dist/elements/DatePicker/index.js +1 -1
  50. package/dist/elements/DatePicker/index.js.map +1 -1
  51. package/dist/elements/DeleteMany/index.js +1 -1
  52. package/dist/elements/DeleteMany/index.js.map +1 -1
  53. package/dist/elements/DocumentControls/index.d.ts +1 -1
  54. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  55. package/dist/elements/DocumentControls/index.js.map +1 -1
  56. package/dist/elements/DocumentDrawer/DrawerContent.js +3 -3
  57. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  58. package/dist/elements/DocumentDrawer/index.js +1 -1
  59. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  60. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  61. package/dist/elements/DraggableSortable/index.js +1 -1
  62. package/dist/elements/DraggableSortable/index.js.map +1 -1
  63. package/dist/elements/Drawer/index.d.ts.map +1 -1
  64. package/dist/elements/Drawer/index.js +1 -1
  65. package/dist/elements/Drawer/index.js.map +1 -1
  66. package/dist/elements/Drawer/types.d.ts +1 -1
  67. package/dist/elements/Drawer/types.d.ts.map +1 -1
  68. package/dist/elements/Drawer/types.js.map +1 -1
  69. package/dist/elements/Dropzone/index.scss +1 -1
  70. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  71. package/dist/elements/EditUpload/index.js +23 -11
  72. package/dist/elements/EditUpload/index.js.map +1 -1
  73. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  74. package/dist/elements/ErrorPill/index.js +3 -1
  75. package/dist/elements/ErrorPill/index.js.map +1 -1
  76. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  77. package/dist/elements/FieldSelect/index.js +3 -1
  78. package/dist/elements/FieldSelect/index.js.map +1 -1
  79. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  80. package/dist/elements/ListDrawer/DrawerContent.js +41 -41
  81. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  82. package/dist/elements/ListDrawer/index.js +1 -1
  83. package/dist/elements/ListDrawer/index.js.map +1 -1
  84. package/dist/elements/ListDrawer/index.scss +1 -1
  85. package/dist/elements/Localizer/index.d.ts.map +1 -1
  86. package/dist/elements/Localizer/index.js +1 -1
  87. package/dist/elements/Localizer/index.js.map +1 -1
  88. package/dist/elements/Logout/index.js +1 -1
  89. package/dist/elements/Logout/index.js.map +1 -1
  90. package/dist/elements/Pagination/index.d.ts.map +1 -1
  91. package/dist/elements/Pagination/index.js +20 -10
  92. package/dist/elements/Pagination/index.js.map +1 -1
  93. package/dist/elements/PerPage/index.d.ts.map +1 -1
  94. package/dist/elements/PerPage/index.js.map +1 -1
  95. package/dist/elements/Pill/index.d.ts.map +1 -1
  96. package/dist/elements/Pill/index.js +11 -5
  97. package/dist/elements/Pill/index.js.map +1 -1
  98. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  99. package/dist/elements/Popup/PopupTrigger/index.js +3 -1
  100. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  101. package/dist/elements/Popup/index.d.ts.map +1 -1
  102. package/dist/elements/Popup/index.js +4 -2
  103. package/dist/elements/Popup/index.js.map +1 -1
  104. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  105. package/dist/elements/PreviewButton/usePreviewURL.js +18 -6
  106. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  107. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  108. package/dist/elements/PreviewSizes/index.js +15 -5
  109. package/dist/elements/PreviewSizes/index.js.map +1 -1
  110. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  111. package/dist/elements/PublishButton/index.js +6 -4
  112. package/dist/elements/PublishButton/index.js.map +1 -1
  113. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  114. package/dist/elements/ReactSelect/DropdownIndicator/index.js +3 -1
  115. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  116. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  117. package/dist/elements/ReactSelect/index.js +5 -3
  118. package/dist/elements/ReactSelect/index.js.map +1 -1
  119. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  120. package/dist/elements/SaveButton/index.js +5 -3
  121. package/dist/elements/SaveButton/index.js.map +1 -1
  122. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  123. package/dist/elements/SaveDraftButton/index.js +12 -6
  124. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  125. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  126. package/dist/elements/SearchFilter/index.js +3 -1
  127. package/dist/elements/SearchFilter/index.js.map +1 -1
  128. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  129. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  130. package/dist/elements/SortColumn/index.d.ts +4 -4
  131. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  132. package/dist/elements/SortColumn/index.js +20 -34
  133. package/dist/elements/SortColumn/index.js.map +1 -1
  134. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  135. package/dist/elements/SortComplex/index.js.map +1 -1
  136. package/dist/elements/StepNav/index.d.ts +1 -1
  137. package/dist/elements/StepNav/index.d.ts.map +1 -1
  138. package/dist/elements/StepNav/index.js +2 -2
  139. package/dist/elements/StepNav/index.js.map +1 -1
  140. package/dist/elements/Table/DefaultCell/fields/File/index.scss +5 -5
  141. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  142. package/dist/elements/Table/DefaultCell/fields/index.js +1 -1
  143. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  144. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  145. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  146. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  147. package/dist/elements/Table/index.d.ts +2 -2
  148. package/dist/elements/Table/index.d.ts.map +1 -1
  149. package/dist/elements/Table/index.js +21 -16
  150. package/dist/elements/Table/index.js.map +1 -1
  151. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  152. package/dist/elements/TableColumns/buildColumnState.js +16 -12
  153. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  154. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  155. package/dist/elements/TableColumns/index.js +11 -33
  156. package/dist/elements/TableColumns/index.js.map +1 -1
  157. package/dist/elements/Thumbnail/index.d.ts +1 -1
  158. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  159. package/dist/elements/Thumbnail/index.js +1 -1
  160. package/dist/elements/Thumbnail/index.js.map +1 -1
  161. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  162. package/dist/elements/Tooltip/index.js.map +1 -1
  163. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  164. package/dist/elements/UnpublishMany/index.js +1 -1
  165. package/dist/elements/UnpublishMany/index.js.map +1 -1
  166. package/dist/elements/Upload/index.d.ts.map +1 -1
  167. package/dist/elements/Upload/index.js +37 -32
  168. package/dist/elements/Upload/index.js.map +1 -1
  169. package/dist/elements/Upload/index.scss +27 -1
  170. package/dist/elements/ViewDescription/index.d.ts +1 -1
  171. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  172. package/dist/elements/ViewDescription/index.js.map +1 -1
  173. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  174. package/dist/elements/WhereBuilder/Condition/index.js +1 -1
  175. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  176. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
  177. package/dist/elements/WhereBuilder/reduceClientFields.js +3 -1
  178. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  179. package/dist/elements/WhereBuilder/types.d.ts +1 -1
  180. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  181. package/dist/elements/WhereBuilder/types.js.map +1 -1
  182. package/dist/elements/WindowInfo/index.d.ts +2 -2
  183. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  184. package/dist/elements/WindowInfo/index.js +2 -2
  185. package/dist/elements/WindowInfo/index.js.map +1 -1
  186. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  187. package/dist/exports/client/{CodeEditor-P66JEENA.js → CodeEditor-CHKRX3U2.js} +4 -4
  188. package/dist/exports/client/{CodeEditor-P66JEENA.js.map → CodeEditor-CHKRX3U2.js.map} +4 -4
  189. package/dist/exports/client/{DatePicker-E6IJFDN2.js → DatePicker-OLRZVTAD.js} +2 -2
  190. package/dist/exports/client/{chunk-XKP472RX.js → chunk-BGA6EPOL.js} +1 -1
  191. package/dist/exports/client/{chunk-XKP472RX.js.map → chunk-BGA6EPOL.js.map} +2 -2
  192. package/dist/exports/client/{chunk-OBXEO4WP.js → chunk-JINNHJP7.js} +1 -1
  193. package/dist/exports/client/{chunk-OBXEO4WP.js.map → chunk-JINNHJP7.js.map} +2 -2
  194. package/dist/exports/client/index.d.ts +2 -2
  195. package/dist/exports/client/index.d.ts.map +1 -1
  196. package/dist/exports/client/index.js +19 -19
  197. package/dist/exports/client/index.js.map +4 -4
  198. package/dist/exports/shared/index.d.ts +2 -2
  199. package/dist/exports/shared/index.d.ts.map +1 -1
  200. package/dist/exports/shared/index.js +2 -2
  201. package/dist/exports/shared/index.js.map +4 -4
  202. package/dist/fields/Array/ArrayRow.d.ts +1 -1
  203. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  204. package/dist/fields/Array/ArrayRow.js +6 -6
  205. package/dist/fields/Array/ArrayRow.js.map +1 -1
  206. package/dist/fields/Array/index.d.ts.map +1 -1
  207. package/dist/fields/Array/index.js +2 -2
  208. package/dist/fields/Array/index.js.map +1 -1
  209. package/dist/fields/Blocks/BlockRow.js +4 -4
  210. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  211. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  212. package/dist/fields/Blocks/BlocksDrawer/index.js +3 -1
  213. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  214. package/dist/fields/Blocks/RowActions.d.ts +1 -1
  215. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  216. package/dist/fields/Blocks/RowActions.js +1 -1
  217. package/dist/fields/Blocks/RowActions.js.map +1 -1
  218. package/dist/fields/Blocks/index.js +1 -1
  219. package/dist/fields/Blocks/index.js.map +1 -1
  220. package/dist/fields/Checkbox/Input.d.ts +1 -1
  221. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  222. package/dist/fields/Checkbox/Input.js +2 -2
  223. package/dist/fields/Checkbox/Input.js.map +1 -1
  224. package/dist/fields/Checkbox/index.d.ts +1 -1
  225. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  226. package/dist/fields/Checkbox/index.js +2 -2
  227. package/dist/fields/Checkbox/index.js.map +1 -1
  228. package/dist/fields/Code/index.js +1 -1
  229. package/dist/fields/Code/index.js.map +1 -1
  230. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  231. package/dist/fields/Collapsible/index.js +1 -1
  232. package/dist/fields/Collapsible/index.js.map +1 -1
  233. package/dist/fields/DateTime/index.d.ts.map +1 -1
  234. package/dist/fields/DateTime/index.js +1 -1
  235. package/dist/fields/DateTime/index.js.map +1 -1
  236. package/dist/fields/Email/index.js +1 -1
  237. package/dist/fields/Email/index.js.map +1 -1
  238. package/dist/fields/Group/index.js +1 -1
  239. package/dist/fields/Group/index.js.map +1 -1
  240. package/dist/fields/JSON/index.d.ts.map +1 -1
  241. package/dist/fields/JSON/index.js +17 -9
  242. package/dist/fields/JSON/index.js.map +1 -1
  243. package/dist/fields/Number/index.js +1 -1
  244. package/dist/fields/Number/index.js.map +1 -1
  245. package/dist/fields/Password/index.js +3 -3
  246. package/dist/fields/Password/index.js.map +1 -1
  247. package/dist/fields/Password/input.js +7 -7
  248. package/dist/fields/Password/input.js.map +1 -1
  249. package/dist/fields/Password/types.d.ts +3 -3
  250. package/dist/fields/Password/types.d.ts.map +1 -1
  251. package/dist/fields/Password/types.js.map +1 -1
  252. package/dist/fields/Point/index.js +1 -1
  253. package/dist/fields/Point/index.js.map +1 -1
  254. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  255. package/dist/fields/RadioGroup/index.js +2 -2
  256. package/dist/fields/RadioGroup/index.js.map +1 -1
  257. package/dist/fields/Relationship/createRelationMap.d.ts +1 -1
  258. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  259. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  260. package/dist/fields/Relationship/index.d.ts.map +1 -1
  261. package/dist/fields/Relationship/index.js +10 -4
  262. package/dist/fields/Relationship/index.js.map +1 -1
  263. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  264. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  265. package/dist/fields/Relationship/types.d.ts +1 -1
  266. package/dist/fields/Relationship/types.d.ts.map +1 -1
  267. package/dist/fields/Relationship/types.js.map +1 -1
  268. package/dist/fields/Select/Input.d.ts +3 -3
  269. package/dist/fields/Select/Input.d.ts.map +1 -1
  270. package/dist/fields/Select/Input.js +7 -7
  271. package/dist/fields/Select/Input.js.map +1 -1
  272. package/dist/fields/Select/index.d.ts.map +1 -1
  273. package/dist/fields/Select/index.js +11 -9
  274. package/dist/fields/Select/index.js.map +1 -1
  275. package/dist/fields/Tabs/index.d.ts.map +1 -1
  276. package/dist/fields/Tabs/index.js +1 -1
  277. package/dist/fields/Tabs/index.js.map +1 -1
  278. package/dist/fields/Text/Input.js +7 -7
  279. package/dist/fields/Text/Input.js.map +1 -1
  280. package/dist/fields/Text/index.d.ts +1 -1
  281. package/dist/fields/Text/index.d.ts.map +1 -1
  282. package/dist/fields/Text/index.js +4 -4
  283. package/dist/fields/Text/index.js.map +1 -1
  284. package/dist/fields/Text/types.d.ts +3 -3
  285. package/dist/fields/Text/types.d.ts.map +1 -1
  286. package/dist/fields/Text/types.js.map +1 -1
  287. package/dist/fields/Textarea/Input.js +7 -7
  288. package/dist/fields/Textarea/Input.js.map +1 -1
  289. package/dist/fields/Textarea/index.d.ts +2 -2
  290. package/dist/fields/Textarea/index.d.ts.map +1 -1
  291. package/dist/fields/Textarea/index.js +4 -4
  292. package/dist/fields/Textarea/index.js.map +1 -1
  293. package/dist/fields/Textarea/types.d.ts +3 -3
  294. package/dist/fields/Textarea/types.d.ts.map +1 -1
  295. package/dist/fields/Textarea/types.js.map +1 -1
  296. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
  297. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  298. package/dist/fields/Upload/HasOne/index.scss +0 -1
  299. package/dist/fields/Upload/Input.d.ts +3 -3
  300. package/dist/fields/Upload/Input.d.ts.map +1 -1
  301. package/dist/fields/Upload/Input.js +578 -271
  302. package/dist/fields/Upload/Input.js.map +1 -1
  303. package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -1
  304. package/dist/fields/Upload/RelationshipContent/index.js +13 -8
  305. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  306. package/dist/fields/Upload/RelationshipContent/index.scss +6 -3
  307. package/dist/fields/Upload/UploadCard/index.scss +3 -3
  308. package/dist/fields/Upload/index.d.ts.map +1 -1
  309. package/dist/fields/Upload/index.js +35 -31
  310. package/dist/fields/Upload/index.js.map +1 -1
  311. package/dist/fields/Upload/index.scss +8 -6
  312. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  313. package/dist/forms/Form/fieldReducer.js +6 -2
  314. package/dist/forms/Form/fieldReducer.js.map +1 -1
  315. package/dist/forms/Form/index.d.ts.map +1 -1
  316. package/dist/forms/Form/index.js +20 -8
  317. package/dist/forms/Form/index.js.map +1 -1
  318. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  319. package/dist/forms/Form/mergeServerFormState.js +3 -1
  320. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  321. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  322. package/dist/forms/Form/rowHelpers.js +9 -3
  323. package/dist/forms/Form/rowHelpers.js.map +1 -1
  324. package/dist/forms/Form/rows.d.ts.map +1 -1
  325. package/dist/forms/Form/rows.js +3 -1
  326. package/dist/forms/Form/rows.js.map +1 -1
  327. package/dist/forms/Form/types.d.ts +1 -1
  328. package/dist/forms/Form/types.d.ts.map +1 -1
  329. package/dist/forms/Form/types.js.map +1 -1
  330. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  331. package/dist/forms/NullifyField/index.js.map +1 -1
  332. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  333. package/dist/forms/RenderFields/RenderField.js +4 -2
  334. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  335. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  336. package/dist/forms/RenderFields/index.js +1 -1
  337. package/dist/forms/RenderFields/index.js.map +1 -1
  338. package/dist/forms/RowLabel/index.js +1 -1
  339. package/dist/forms/RowLabel/index.js.map +1 -1
  340. package/dist/forms/RowLabel/types.d.ts +1 -1
  341. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  342. package/dist/forms/RowLabel/types.js.map +1 -1
  343. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  344. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +6 -2
  345. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  346. package/dist/graphics/Account/index.d.ts.map +1 -1
  347. package/dist/graphics/Account/index.js +1 -1
  348. package/dist/graphics/Account/index.js.map +1 -1
  349. package/dist/hooks/useHotkey.d.ts.map +1 -1
  350. package/dist/hooks/useHotkey.js.map +1 -1
  351. package/dist/hooks/useIntersect.d.ts.map +1 -1
  352. package/dist/hooks/useIntersect.js.map +1 -1
  353. package/dist/providers/Auth/index.d.ts +1 -1
  354. package/dist/providers/Auth/index.d.ts.map +1 -1
  355. package/dist/providers/Auth/index.js +6 -2
  356. package/dist/providers/Auth/index.js.map +1 -1
  357. package/dist/providers/Config/RenderComponent.d.ts +1 -1
  358. package/dist/providers/Config/RenderComponent.d.ts.map +1 -1
  359. package/dist/providers/Config/RenderComponent.js +2 -2
  360. package/dist/providers/Config/RenderComponent.js.map +1 -1
  361. package/dist/providers/Config/createClientConfig/collections.d.ts +6 -6
  362. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  363. package/dist/providers/Config/createClientConfig/collections.js +9 -7
  364. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  365. package/dist/providers/Config/createClientConfig/getComponent.d.ts +1 -1
  366. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -1
  367. package/dist/providers/Config/createClientConfig/getComponent.js +2 -2
  368. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  369. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
  370. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +3 -1
  371. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  372. package/dist/providers/Config/createClientConfig/globals.d.ts +4 -4
  373. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
  374. package/dist/providers/Config/createClientConfig/globals.js +3 -3
  375. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  376. package/dist/providers/Config/createClientConfig/index.d.ts +3 -3
  377. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -1
  378. package/dist/providers/Config/createClientConfig/index.js +5 -5
  379. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  380. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  381. package/dist/providers/DocumentInfo/index.js +12 -4
  382. package/dist/providers/DocumentInfo/index.js.map +1 -1
  383. package/dist/providers/DocumentInfo/types.d.ts +2 -2
  384. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  385. package/dist/providers/DocumentInfo/types.js.map +1 -1
  386. package/dist/providers/ListInfo/index.d.ts +2 -2
  387. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  388. package/dist/providers/ListInfo/index.js.map +1 -1
  389. package/dist/providers/ListQuery/index.d.ts +6 -6
  390. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  391. package/dist/providers/ListQuery/index.js +6 -2
  392. package/dist/providers/ListQuery/index.js.map +1 -1
  393. package/dist/providers/Locale/index.d.ts.map +1 -1
  394. package/dist/providers/Locale/index.js.map +1 -1
  395. package/dist/providers/Preferences/index.d.ts.map +1 -1
  396. package/dist/providers/Preferences/index.js +3 -1
  397. package/dist/providers/Preferences/index.js.map +1 -1
  398. package/dist/providers/Root/index.d.ts +1 -1
  399. package/dist/providers/Root/index.js.map +1 -1
  400. package/dist/providers/WindowInfo/index.d.ts +1 -1
  401. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  402. package/dist/providers/WindowInfo/index.js +1 -1
  403. package/dist/providers/WindowInfo/index.js.map +1 -1
  404. package/dist/styles.css +1 -1
  405. package/dist/utilities/buildFormState.d.ts.map +1 -1
  406. package/dist/utilities/buildFormState.js +6 -2
  407. package/dist/utilities/buildFormState.js.map +1 -1
  408. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  409. package/dist/utilities/reduceFieldsToValuesWithValidation.js +6 -2
  410. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  411. package/package.json +8 -8
  412. /package/dist/exports/client/{DatePicker-E6IJFDN2.js.map → DatePicker-OLRZVTAD.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","Form","useForm","WatchChildErrors","RenderComponent","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useUploadEdits","formatAdminURL","getFormState","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","AfterDocument","AfterFields","BeforeDocument","BeforeFields","action","collectionSlug","docSlug","docPermissions","getDocPreferences","getVersions","hasSavePermission","initialState","isEditing","isInitializing","onSave","onSaveFromContext","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","collectionConfig","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","docPreferences","newFormState","body","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","Fragment","components","edit","mappedComponent","uploadConfig","upload","fields","readOnly","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","useEffect","current","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","useRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, DocumentPermissions } from 'payload'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { RenderComponent } from '../../../providers/Config/RenderComponent.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { getFormState } from '../../../utilities/getFormState.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n getVersions,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug }) as ClientCollectionConfig\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n void getVersions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n getVersions,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n const newFormState = await getFormState({\n apiRoute,\n body: {\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n },\n serverURL,\n })\n\n return newFormState\n },\n [apiRoute, collectionSlug, schemaPath, getDocPreferences, serverURL],\n )\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n {BeforeDocument}\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <React.Fragment>\n {collectionConfig?.admin?.components?.edit?.Upload ? (\n <RenderComponent\n mappedComponent={collectionConfig.admin.components.edit.Upload}\n />\n ) : (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n )\n }\n docPermissions={docPermissions || ({} as DocumentPermissions)}\n fields={collectionConfig.fields}\n readOnly={!hasSavePermission}\n schemaPath={schemaPath}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n {AfterDocument}\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) return\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) return null\n\n return <WatchChildErrors fields={docConfig.fields} path=\"\" setErrorCount={reportFormErrorCount} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","Form","useForm","WatchChildErrors","useConfig","RenderComponent","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useUploadEdits","formatAdminURL","getFormState","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","AfterDocument","AfterFields","BeforeDocument","BeforeFields","collectionSlug","docSlug","docPermissions","getDocPreferences","getVersions","hasSavePermission","initialState","isEditing","isInitializing","onSave","onSaveFromContext","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","collectionConfig","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","docPreferences","newFormState","body","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","Fragment","components","edit","mappedComponent","uploadConfig","upload","fields","readOnly","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","useEffect","current","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","useRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, DocumentPermissions } from 'payload'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { RenderComponent } from '../../../providers/Config/RenderComponent.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { getFormState } from '../../../utilities/getFormState.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n getVersions,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug }) as ClientCollectionConfig\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n void getVersions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n getVersions,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n const newFormState = await getFormState({\n apiRoute,\n body: {\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n },\n serverURL,\n })\n\n return newFormState\n },\n [apiRoute, collectionSlug, schemaPath, getDocPreferences, serverURL],\n )\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n {BeforeDocument}\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <React.Fragment>\n {collectionConfig?.admin?.components?.edit?.Upload ? (\n <RenderComponent\n mappedComponent={collectionConfig.admin.components.edit.Upload}\n />\n ) : (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n )\n }\n docPermissions={docPermissions || ({} as DocumentPermissions)}\n fields={collectionConfig.fields}\n readOnly={!hasSavePermission}\n schemaPath={schemaPath}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n {AfterDocument}\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return <WatchChildErrors fields={docConfig.fields} path=\"\" setErrorCount={reportFormErrorCount} />\n}\n"],"mappings":"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","ignoreList":[]}
@@ -188,8 +188,8 @@ export function FileSidebar() {
188
188
  direction: showFiles ? "down" : "up"
189
189
  })
190
190
  }), _jsx(Drawer, {
191
- Header: null,
192
191
  gutter: false,
192
+ Header: null,
193
193
  slug: addMoreFilesDrawerSlug,
194
194
  children: _jsx(AddFilesView, {
195
195
  onCancel: t7,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","useWindowInfo","React","AnimateHeightImport","ChevronIcon","XIcon","useTranslation","Button","Drawer","ErrorPill","Pill","ShimmerEffect","Actions","AddFilesView","useFormsManager","useBulkUpload","AnimateHeight","default","addMoreFilesDrawerSlug","baseClass","FileSidebar","$","activeIndex","addFiles","forms","isInitializing","removeFile","setActiveIndex","totalErrorCount","initialFiles","maxFiles","i18n","t","closeModal","openModal","showFiles","setShowFiles","useState","breakpoints","t0","indexToRemove","handleRemoveFile","t1","filelist","handleAddFiles","getFileSize","_temp","totalFileCount","length","t2","t3","filter","Boolean","t4","join","t5","m","t6","Symbol","for","prev","t7","t8","t9","index_0","errorCount","formState","currentFile","file","value","_jsxs","className","index","children","onClick","type","_jsx","alt","name","src","URL","createObjectURL","title","count","withMessage","buttonStyle","direction","Header","gutter","slug","onCancel","onDrop","duration","height","Array","from","map","_temp2","file_0","animationDelay","size","i","Math","floor","log","decimals","formattedSize","pow","toFixed"],"sources":["../../../../src/elements/BulkUpload/FileSidebar/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { Drawer } from '../../Drawer/index.js'\nimport { ErrorPill } from '../../ErrorPill/index.js'\nimport { Pill } from '../../Pill/index.js'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Actions } from '../ActionsBar/index.js'\nimport { AddFilesView } from '../AddFilesView/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { useBulkUpload } from '../index.js'\nimport './index.scss'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nconst addMoreFilesDrawerSlug = 'bulk-upload-drawer--add-more-files'\n\nconst baseClass = 'file-selections'\n\nexport function FileSidebar() {\n const {\n activeIndex,\n addFiles,\n forms,\n isInitializing,\n removeFile,\n setActiveIndex,\n totalErrorCount,\n } = useFormsManager()\n const { initialFiles, maxFiles } = useBulkUpload()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const [showFiles, setShowFiles] = React.useState(false)\n const { breakpoints } = useWindowInfo()\n\n const handleRemoveFile = React.useCallback(\n (indexToRemove: number) => {\n removeFile(indexToRemove)\n },\n [removeFile],\n )\n\n const handleAddFiles = React.useCallback(\n (filelist: FileList) => {\n void addFiles(filelist)\n closeModal(addMoreFilesDrawerSlug)\n },\n [addFiles, closeModal],\n )\n\n const getFileSize = React.useCallback((file: File) => {\n const size = file.size\n const i = size === 0 ? 0 : Math.floor(Math.log(size) / Math.log(1024))\n const decimals = i > 1 ? 1 : 0\n const formattedSize =\n (size / Math.pow(1024, i)).toFixed(decimals) + ' ' + ['B', 'kB', 'MB', 'GB', 'TB'][i]\n return formattedSize\n }, [])\n\n const totalFileCount = isInitializing ? initialFiles.length : forms.length\n\n return (\n <div\n className={[baseClass, showFiles && `${baseClass}__showingFiles`].filter(Boolean).join(' ')}\n >\n {breakpoints.m && showFiles ? <div className={`${baseClass}__mobileBlur`} /> : null}\n <div className={`${baseClass}__header`}>\n <div className={`${baseClass}__headerTopRow`}>\n <div className={`${baseClass}__header__text`}>\n <ErrorPill count={totalErrorCount} i18n={i18n} withMessage />\n <p>\n <strong\n title={`${totalFileCount} ${t(totalFileCount > 1 ? 'upload:filesToUpload' : 'upload:fileToUpload')}`}\n >\n {totalFileCount}{' '}\n {t(totalFileCount > 1 ? 'upload:filesToUpload' : 'upload:fileToUpload')}\n </strong>\n </p>\n </div>\n\n <div className={`${baseClass}__header__actions`}>\n {typeof maxFiles === 'number' && totalFileCount < maxFiles ? (\n <Pill onClick={() => openModal(addMoreFilesDrawerSlug)}>{t('upload:addFile')}</Pill>\n ) : null}\n <Button\n buttonStyle=\"transparent\"\n className={`${baseClass}__toggler`}\n onClick={() => setShowFiles((prev) => !prev)}\n >\n <ChevronIcon direction={showFiles ? 'down' : 'up'} />\n </Button>\n\n <Drawer Header={null} gutter={false} slug={addMoreFilesDrawerSlug}>\n <AddFilesView\n onCancel={() => closeModal(addMoreFilesDrawerSlug)}\n onDrop={handleAddFiles}\n />\n </Drawer>\n </div>\n </div>\n\n <div className={`${baseClass}__header__mobileDocActions`}>\n <Actions />\n </div>\n </div>\n\n <div className={`${baseClass}__animateWrapper`}>\n <AnimateHeight duration={200} height={!breakpoints.m || showFiles ? 'auto' : 0}>\n <div className={`${baseClass}__filesContainer`}>\n {isInitializing && forms.length === 0 && initialFiles.length > 0\n ? Array.from(initialFiles).map((file, index) => (\n <ShimmerEffect\n animationDelay={`calc(${index} * ${60}ms)`}\n height=\"35px\"\n key={index}\n />\n ))\n : null}\n {forms.map(({ errorCount, formState }, index) => {\n const currentFile = formState.file.value as File\n\n return (\n <div\n className={[\n `${baseClass}__fileRowContainer`,\n index === activeIndex && `${baseClass}__fileRowContainer--active`,\n errorCount && errorCount > 0 && `${baseClass}__fileRowContainer--error`,\n ]\n .filter(Boolean)\n .join(' ')}\n key={index}\n >\n <button\n className={`${baseClass}__fileRow`}\n onClick={() => setActiveIndex(index)}\n type=\"button\"\n >\n <img alt={currentFile.name} src={URL.createObjectURL(currentFile)} />\n <div className={`${baseClass}__fileDetails`}>\n <p className={`${baseClass}__fileName`} title={currentFile.name}>\n {currentFile.name}\n </p>\n </div>\n <p className={`${baseClass}__fileSize`}>{getFileSize(currentFile)}</p>\n <div className={`${baseClass}__remove ${baseClass}__remove--underlay`}>\n <XIcon />\n </div>\n\n {errorCount ? (\n <ErrorPill\n className={`${baseClass}__errorCount`}\n count={errorCount}\n i18n={i18n}\n />\n ) : null}\n </button>\n\n <button\n aria-label={t('general:remove')}\n className={`${baseClass}__remove ${baseClass}__remove--overlay`}\n onClick={() => handleRemoveFile(index)}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n )\n })}\n </div>\n </AnimateHeight>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","useWindowInfo","React","AnimateHeightImport","ChevronIcon","XIcon","useTranslation","Button","Drawer","ErrorPill","Pill","ShimmerEffect","Actions","AddFilesView","useFormsManager","useBulkUpload","AnimateHeight","default","addMoreFilesDrawerSlug","baseClass","FileSidebar","$","activeIndex","addFiles","forms","isInitializing","removeFile","setActiveIndex","totalErrorCount","initialFiles","maxFiles","i18n","t","closeModal","openModal","showFiles","setShowFiles","useState","breakpoints","t0","indexToRemove","handleRemoveFile","t1","filelist","handleAddFiles","getFileSize","_temp","totalFileCount","length","t2","t3","filter","Boolean","t4","join","t5","m","t6","Symbol","for","prev","t7","t8","t9","index_0","errorCount","formState","currentFile","file","value","_jsxs","className","index","children","onClick","type","_jsx","alt","name","src","URL","createObjectURL","title","count","withMessage","buttonStyle","direction","gutter","Header","slug","onCancel","onDrop","duration","height","Array","from","map","_temp2","file_0","animationDelay","size","i","Math","floor","log","decimals","formattedSize","pow","toFixed"],"sources":["../../../../src/elements/BulkUpload/FileSidebar/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { Drawer } from '../../Drawer/index.js'\nimport { ErrorPill } from '../../ErrorPill/index.js'\nimport { Pill } from '../../Pill/index.js'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Actions } from '../ActionsBar/index.js'\nimport { AddFilesView } from '../AddFilesView/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { useBulkUpload } from '../index.js'\nimport './index.scss'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nconst addMoreFilesDrawerSlug = 'bulk-upload-drawer--add-more-files'\n\nconst baseClass = 'file-selections'\n\nexport function FileSidebar() {\n const {\n activeIndex,\n addFiles,\n forms,\n isInitializing,\n removeFile,\n setActiveIndex,\n totalErrorCount,\n } = useFormsManager()\n const { initialFiles, maxFiles } = useBulkUpload()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const [showFiles, setShowFiles] = React.useState(false)\n const { breakpoints } = useWindowInfo()\n\n const handleRemoveFile = React.useCallback(\n (indexToRemove: number) => {\n removeFile(indexToRemove)\n },\n [removeFile],\n )\n\n const handleAddFiles = React.useCallback(\n (filelist: FileList) => {\n void addFiles(filelist)\n closeModal(addMoreFilesDrawerSlug)\n },\n [addFiles, closeModal],\n )\n\n const getFileSize = React.useCallback((file: File) => {\n const size = file.size\n const i = size === 0 ? 0 : Math.floor(Math.log(size) / Math.log(1024))\n const decimals = i > 1 ? 1 : 0\n const formattedSize =\n (size / Math.pow(1024, i)).toFixed(decimals) + ' ' + ['B', 'kB', 'MB', 'GB', 'TB'][i]\n return formattedSize\n }, [])\n\n const totalFileCount = isInitializing ? initialFiles.length : forms.length\n\n return (\n <div\n className={[baseClass, showFiles && `${baseClass}__showingFiles`].filter(Boolean).join(' ')}\n >\n {breakpoints.m && showFiles ? <div className={`${baseClass}__mobileBlur`} /> : null}\n <div className={`${baseClass}__header`}>\n <div className={`${baseClass}__headerTopRow`}>\n <div className={`${baseClass}__header__text`}>\n <ErrorPill count={totalErrorCount} i18n={i18n} withMessage />\n <p>\n <strong\n title={`${totalFileCount} ${t(totalFileCount > 1 ? 'upload:filesToUpload' : 'upload:fileToUpload')}`}\n >\n {totalFileCount}{' '}\n {t(totalFileCount > 1 ? 'upload:filesToUpload' : 'upload:fileToUpload')}\n </strong>\n </p>\n </div>\n\n <div className={`${baseClass}__header__actions`}>\n {typeof maxFiles === 'number' && totalFileCount < maxFiles ? (\n <Pill onClick={() => openModal(addMoreFilesDrawerSlug)}>{t('upload:addFile')}</Pill>\n ) : null}\n <Button\n buttonStyle=\"transparent\"\n className={`${baseClass}__toggler`}\n onClick={() => setShowFiles((prev) => !prev)}\n >\n <ChevronIcon direction={showFiles ? 'down' : 'up'} />\n </Button>\n\n <Drawer gutter={false} Header={null} slug={addMoreFilesDrawerSlug}>\n <AddFilesView\n onCancel={() => closeModal(addMoreFilesDrawerSlug)}\n onDrop={handleAddFiles}\n />\n </Drawer>\n </div>\n </div>\n\n <div className={`${baseClass}__header__mobileDocActions`}>\n <Actions />\n </div>\n </div>\n\n <div className={`${baseClass}__animateWrapper`}>\n <AnimateHeight duration={200} height={!breakpoints.m || showFiles ? 'auto' : 0}>\n <div className={`${baseClass}__filesContainer`}>\n {isInitializing && forms.length === 0 && initialFiles.length > 0\n ? Array.from(initialFiles).map((file, index) => (\n <ShimmerEffect\n animationDelay={`calc(${index} * ${60}ms)`}\n height=\"35px\"\n key={index}\n />\n ))\n : null}\n {forms.map(({ errorCount, formState }, index) => {\n const currentFile = formState.file.value as File\n\n return (\n <div\n className={[\n `${baseClass}__fileRowContainer`,\n index === activeIndex && `${baseClass}__fileRowContainer--active`,\n errorCount && errorCount > 0 && `${baseClass}__fileRowContainer--error`,\n ]\n .filter(Boolean)\n .join(' ')}\n key={index}\n >\n <button\n className={`${baseClass}__fileRow`}\n onClick={() => setActiveIndex(index)}\n type=\"button\"\n >\n <img alt={currentFile.name} src={URL.createObjectURL(currentFile)} />\n <div className={`${baseClass}__fileDetails`}>\n <p className={`${baseClass}__fileName`} title={currentFile.name}>\n {currentFile.name}\n </p>\n </div>\n <p className={`${baseClass}__fileSize`}>{getFileSize(currentFile)}</p>\n <div className={`${baseClass}__remove ${baseClass}__remove--underlay`}>\n <XIcon />\n </div>\n\n {errorCount ? (\n <ErrorPill\n className={`${baseClass}__errorCount`}\n count={errorCount}\n i18n={i18n}\n />\n ) : null}\n </button>\n\n <button\n aria-label={t('general:remove')}\n className={`${baseClass}__remove ${baseClass}__remove--overlay`}\n onClick={() => handleRemoveFile(index)}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n )\n })}\n </div>\n </AnimateHeight>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -58,7 +58,7 @@
58
58
  border-radius: var(--style-radius-m);
59
59
  }
60
60
  }
61
-
61
+
62
62
  &__fileRowContainer {
63
63
  --rowPadding: calc(var(--base) / 4);
64
64
  position: relative;
@@ -210,9 +210,8 @@
210
210
  height: 100%;
211
211
  opacity: 0;
212
212
  transition: opacity 100ms cubic-bezier(0, 0.2, 0.2, 1);
213
-
214
213
  }
215
-
214
+
216
215
  &__showingFiles {
217
216
  .file-selections__mobileBlur {
218
217
  opacity: 1;
@@ -230,11 +229,11 @@
230
229
  &__showingFiles {
231
230
  z-index: 2;
232
231
  }
233
-
232
+
234
233
  &__filesContainer {
235
234
  @include blur-bg;
236
235
  }
237
-
236
+
238
237
  &__fileRowContainer {
239
238
  z-index: 1;
240
239
  }
@@ -242,7 +241,7 @@
242
241
  &__header {
243
242
  margin-top: 0;
244
243
  }
245
-
244
+
246
245
  &__headerTopRow {
247
246
  border-top: 1px solid var(--theme-border-color);
248
247
  padding-block: calc(var(--base) * 0.8);
@@ -255,17 +254,17 @@
255
254
  padding-block: calc(var(--base) * 0.8);
256
255
  padding-inline: var(--file-gutter-h);
257
256
  border-top: 1px solid var(--theme-border-color);
258
-
257
+
259
258
  > div {
260
259
  display: flex;
261
260
  justify-content: flex-end;
262
261
  width: 100%;
263
262
  button {
264
- flex: .5;
263
+ flex: 0.5;
265
264
  }
266
265
  }
267
266
  }
268
-
267
+
269
268
  &__toggler {
270
269
  padding-right: 0;
271
270
  display: block;
@@ -275,5 +274,4 @@
275
274
  margin: 0;
276
275
  }
277
276
  }
278
-
279
277
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAa,MAAM,SAAS,CAAA;AAInE,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAazC,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;IAC1C,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9B,cAAc,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAA;IAC3C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChG,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,QAAQ,CAAC,sBAAsB,EAAE,CAAC,EAChC,UAAU,EACV,KAAK,GACN,EAAE;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC,CAAA;AA0BD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,CAAA;AACD,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,qBAuTnE;AAED,wBAAgB,eAAe,wBAE9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,mBAAmB,EAAa,MAAM,SAAS,CAAA;AAInE,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAazC,KAAK,mBAAmB,GAAG;IACzB,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAA;IAC1C,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACxD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IAC7C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IAC9B,cAAc,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,CAAA;IAC3C,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAA;IACnC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAChG,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,QAAQ,CAAC,sBAAsB,EAAE,CAAC,EAChC,UAAU,EACV,KAAK,GACN,EAAE;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAClC,CAAA;AA0BD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,CAAA;AACD,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,qBAyTnE;AAED,wBAAgB,eAAe,wBAE9B"}
@@ -287,7 +287,9 @@ export function FormsManagerProvider({
287
287
  });
288
288
  }, [actionURL, activeIndex, forms, onSuccess, t, toggleLoadingOverlay, closeModal, drawerSlug]);
289
289
  React.useEffect(() => {
290
- if (!collectionSlug) return;
290
+ if (!collectionSlug) {
291
+ return;
292
+ }
291
293
  if (!hasInitializedState) {
292
294
  void initializeSharedFormState();
293
295
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","qs","React","toast","fieldReducer","useConfig","useLocale","useTranslation","getFormState","hasSavePermission","getHasSavePermission","useLoadingOverlay","useBulkUpload","createFormData","formsManagementReducer","Context","createContext","activeIndex","addFiles","Promise","resolve","collectionSlug","docPermissions","undefined","forms","getFormDataRef","current","hasPublishPermission","hasSubmitted","isInitializing","removeFile","saveAllDocs","setActiveIndex","setFormTotalErrorCount","totalErrorCount","initialState","FormsManagerProvider","children","config","routes","api","serverURL","code","i18n","t","setHasSubmitted","useState","setDocPermissions","setHasSavePermission","setHasPublishPermission","hasInitializedState","setHasInitializedState","hasInitializedDocPermissions","setHasInitializedDocPermissions","setIsInitializing","state","dispatch","useReducer","toggleLoadingOverlay","closeModal","drawerSlug","initialFiles","onSuccess","hasInitializedWithFiles","useRef","initialStateRef","actionURL","initilizeSharedDocPermissions","useCallback","params","locale","docAccessURL","res","fetch","stringify","credentials","headers","language","method","json","publishedAccessJSON","body","JSON","_status","then","isEditing","update","permission","initializeSharedFormState","abortController","signal","abort","formStateWithoutFiles","apiRoute","operation","schemaPath","error","index","currentFormsData","type","map","form","i","errorCount","formState","files","isLoading","key","count","overrides","currentForms","newDocs","promises","loadingText","req","status","doc","push","errors","length","fieldErrors","nonFieldErrors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","Array","isArray","data","forEach","dataError","field","all","remainingForms","filter","successCount","Math","max","success","acc","useEffect","_jsx","Provider","value","useFormsManager","useContext"],"sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Data, DocumentPermissions, FormState } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\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 { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { getFormState } from '../../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../../utilities/hasSavePermission.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 collectionSlug: string\n readonly docPermissions?: DocumentPermissions\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 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}\n\nconst Context = React.createContext<FormsManagerContext>({\n activeIndex: 0,\n addFiles: () => Promise.resolve(),\n collectionSlug: '',\n docPermissions: undefined,\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})\n\nconst initialState: State = {\n activeIndex: 0,\n forms: [],\n totalErrorCount: 0,\n}\n\ntype FormsManagerProps = {\n readonly children: React.ReactNode\n}\nexport function FormsManagerProvider({ children }: FormsManagerProps) {\n const { config } = useConfig()\n const {\n routes: { api },\n serverURL,\n } = config\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [hasSubmitted, setHasSubmitted] = React.useState(false)\n const [docPermissions, setDocPermissions] = React.useState<DocumentPermissions>()\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 { toggleLoadingOverlay } = useLoadingOverlay()\n const { closeModal } = useModal()\n const { collectionSlug, drawerSlug, initialFiles, onSuccess } = useBulkUpload()\n\n const hasInitializedWithFiles = React.useRef(false)\n const initialStateRef = React.useRef<FormState>(null)\n const getFormDataRef = React.useRef<() => Data>(() => ({}))\n\n const actionURL = `${api}/${collectionSlug}`\n\n const initilizeSharedDocPermissions = React.useCallback(async () => {\n const params = {\n locale: code || undefined,\n }\n\n const docAccessURL = `/${collectionSlug}/access`\n const res = await fetch(`${serverURL}${api}${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: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${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?.permission)\n setHasInitializedDocPermissions(true)\n }, [api, code, collectionSlug, i18n.language, serverURL])\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 try {\n const formStateWithoutFiles = await getFormState({\n apiRoute: config.routes.api,\n body: {\n collectionSlug,\n locale: code,\n operation: 'create',\n schemaPath: collectionSlug,\n },\n // onError: onLoadError,\n serverURL: config.serverURL,\n signal: abortController?.signal,\n })\n initialStateRef.current = formStateWithoutFiles\n setHasInitializedState(true)\n } catch (error) {\n // swallow error\n }\n },\n [code, collectionSlug, config.routes.api, config.serverURL],\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 formState: currentFormsData,\n }\n }\n return form\n }),\n },\n })\n },\n [forms, activeIndex],\n )\n\n const addFiles = React.useCallback(\n async (files: FileList) => {\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n dispatch({ type: 'ADD_FORMS', files, initialState: initialStateRef.current })\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n },\n [initializeSharedFormState, hasInitializedState, toggleLoadingOverlay],\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 formState: currentFormsData,\n }\n const newDocs = []\n const promises = currentForms.map(async (form, i) => {\n try {\n toggleLoadingOverlay({\n isLoading: true,\n key: 'saveAllDocs',\n loadingText: t('general:uploading'),\n })\n const req = await fetch(actionURL, {\n body: createFormData(form.formState, overrides),\n method: 'POST',\n })\n\n const json = await req.json()\n\n if (req.status === 201 && json?.doc) {\n newDocs.push(json.doc)\n }\n\n // should expose some sort of helper for this\n if (json?.errors?.length) {\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?.field) {\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 formState: fieldReducer(currentForms[i].formState, {\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n }),\n }\n }\n } catch (error) {\n // swallow error\n } finally {\n setHasSubmitted(true)\n toggleLoadingOverlay({ isLoading: false, key: 'saveAllDocs' })\n }\n })\n\n await Promise.all(promises)\n\n const remainingForms = currentForms.filter(({ errorCount }) => errorCount > 0)\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\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 [actionURL, activeIndex, forms, onSuccess, t, toggleLoadingOverlay, closeModal, drawerSlug],\n )\n\n React.useEffect(() => {\n if (!collectionSlug) return\n if (!hasInitializedState) {\n void initializeSharedFormState()\n }\n\n if (!hasInitializedDocPermissions) {\n void initilizeSharedDocPermissions()\n }\n\n if (initialFiles) {\n if (!hasInitializedState || !hasInitializedDocPermissions) {\n setIsInitializing(true)\n } else {\n setIsInitializing(false)\n }\n }\n\n if (hasInitializedState && initialFiles && !hasInitializedWithFiles.current) {\n void addFiles(initialFiles)\n hasInitializedWithFiles.current = true\n }\n return\n }, [\n addFiles,\n initialFiles,\n initializeSharedFormState,\n initilizeSharedDocPermissions,\n collectionSlug,\n hasInitializedState,\n hasInitializedDocPermissions,\n ])\n\n return (\n <Context.Provider\n value={{\n activeIndex: state.activeIndex,\n addFiles,\n collectionSlug,\n docPermissions,\n forms,\n getFormDataRef,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n isInitializing,\n removeFile,\n saveAllDocs,\n setActiveIndex,\n setFormTotalErrorCount,\n totalErrorCount,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport function useFormsManager() {\n return React.useContext(Context)\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","qs","React","toast","fieldReducer","useConfig","useLocale","useTranslation","getFormState","hasSavePermission","getHasSavePermission","useLoadingOverlay","useBulkUpload","createFormData","formsManagementReducer","Context","createContext","activeIndex","addFiles","Promise","resolve","collectionSlug","docPermissions","undefined","forms","getFormDataRef","current","hasPublishPermission","hasSubmitted","isInitializing","removeFile","saveAllDocs","setActiveIndex","setFormTotalErrorCount","totalErrorCount","initialState","FormsManagerProvider","children","config","routes","api","serverURL","code","i18n","t","setHasSubmitted","useState","setDocPermissions","setHasSavePermission","setHasPublishPermission","hasInitializedState","setHasInitializedState","hasInitializedDocPermissions","setHasInitializedDocPermissions","setIsInitializing","state","dispatch","useReducer","toggleLoadingOverlay","closeModal","drawerSlug","initialFiles","onSuccess","hasInitializedWithFiles","useRef","initialStateRef","actionURL","initilizeSharedDocPermissions","useCallback","params","locale","docAccessURL","res","fetch","stringify","credentials","headers","language","method","json","publishedAccessJSON","body","JSON","_status","then","isEditing","update","permission","initializeSharedFormState","abortController","signal","abort","formStateWithoutFiles","apiRoute","operation","schemaPath","error","index","currentFormsData","type","map","form","i","errorCount","formState","files","isLoading","key","count","overrides","currentForms","newDocs","promises","loadingText","req","status","doc","push","errors","length","fieldErrors","nonFieldErrors","reduce","fieldErrs","nonFieldErrs","err","newFieldErrs","newNonFieldErrs","message","Array","isArray","data","forEach","dataError","field","all","remainingForms","filter","successCount","Math","max","success","acc","useEffect","_jsx","Provider","value","useFormsManager","useContext"],"sources":["../../../../src/elements/BulkUpload/FormsManager/index.tsx"],"sourcesContent":["'use client'\n\nimport type { Data, DocumentPermissions, FormState } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\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 { useConfig } from '../../../providers/Config/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { getFormState } from '../../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../../utilities/hasSavePermission.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 collectionSlug: string\n readonly docPermissions?: DocumentPermissions\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 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}\n\nconst Context = React.createContext<FormsManagerContext>({\n activeIndex: 0,\n addFiles: () => Promise.resolve(),\n collectionSlug: '',\n docPermissions: undefined,\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})\n\nconst initialState: State = {\n activeIndex: 0,\n forms: [],\n totalErrorCount: 0,\n}\n\ntype FormsManagerProps = {\n readonly children: React.ReactNode\n}\nexport function FormsManagerProvider({ children }: FormsManagerProps) {\n const { config } = useConfig()\n const {\n routes: { api },\n serverURL,\n } = config\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [hasSubmitted, setHasSubmitted] = React.useState(false)\n const [docPermissions, setDocPermissions] = React.useState<DocumentPermissions>()\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 { toggleLoadingOverlay } = useLoadingOverlay()\n const { closeModal } = useModal()\n const { collectionSlug, drawerSlug, initialFiles, onSuccess } = useBulkUpload()\n\n const hasInitializedWithFiles = React.useRef(false)\n const initialStateRef = React.useRef<FormState>(null)\n const getFormDataRef = React.useRef<() => Data>(() => ({}))\n\n const actionURL = `${api}/${collectionSlug}`\n\n const initilizeSharedDocPermissions = React.useCallback(async () => {\n const params = {\n locale: code || undefined,\n }\n\n const docAccessURL = `/${collectionSlug}/access`\n const res = await fetch(`${serverURL}${api}${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: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${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?.permission)\n setHasInitializedDocPermissions(true)\n }, [api, code, collectionSlug, i18n.language, serverURL])\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 try {\n const formStateWithoutFiles = await getFormState({\n apiRoute: config.routes.api,\n body: {\n collectionSlug,\n locale: code,\n operation: 'create',\n schemaPath: collectionSlug,\n },\n // onError: onLoadError,\n serverURL: config.serverURL,\n signal: abortController?.signal,\n })\n initialStateRef.current = formStateWithoutFiles\n setHasInitializedState(true)\n } catch (error) {\n // swallow error\n }\n },\n [code, collectionSlug, config.routes.api, config.serverURL],\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 formState: currentFormsData,\n }\n }\n return form\n }),\n },\n })\n },\n [forms, activeIndex],\n )\n\n const addFiles = React.useCallback(\n async (files: FileList) => {\n toggleLoadingOverlay({ isLoading: true, key: 'addingDocs' })\n if (!hasInitializedState) {\n await initializeSharedFormState()\n }\n dispatch({ type: 'ADD_FORMS', files, initialState: initialStateRef.current })\n toggleLoadingOverlay({ isLoading: false, key: 'addingDocs' })\n },\n [initializeSharedFormState, hasInitializedState, toggleLoadingOverlay],\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 formState: currentFormsData,\n }\n const newDocs = []\n const promises = currentForms.map(async (form, i) => {\n try {\n toggleLoadingOverlay({\n isLoading: true,\n key: 'saveAllDocs',\n loadingText: t('general:uploading'),\n })\n const req = await fetch(actionURL, {\n body: createFormData(form.formState, overrides),\n method: 'POST',\n })\n\n const json = await req.json()\n\n if (req.status === 201 && json?.doc) {\n newDocs.push(json.doc)\n }\n\n // should expose some sort of helper for this\n if (json?.errors?.length) {\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?.field) {\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 formState: fieldReducer(currentForms[i].formState, {\n type: 'ADD_SERVER_ERRORS',\n errors: fieldErrors,\n }),\n }\n }\n } catch (error) {\n // swallow error\n } finally {\n setHasSubmitted(true)\n toggleLoadingOverlay({ isLoading: false, key: 'saveAllDocs' })\n }\n })\n\n await Promise.all(promises)\n\n const remainingForms = currentForms.filter(({ errorCount }) => errorCount > 0)\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\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 [actionURL, activeIndex, forms, onSuccess, t, toggleLoadingOverlay, closeModal, drawerSlug],\n )\n\n React.useEffect(() => {\n if (!collectionSlug) {\n return\n }\n if (!hasInitializedState) {\n void initializeSharedFormState()\n }\n\n if (!hasInitializedDocPermissions) {\n void initilizeSharedDocPermissions()\n }\n\n if (initialFiles) {\n if (!hasInitializedState || !hasInitializedDocPermissions) {\n setIsInitializing(true)\n } else {\n setIsInitializing(false)\n }\n }\n\n if (hasInitializedState && initialFiles && !hasInitializedWithFiles.current) {\n void addFiles(initialFiles)\n hasInitializedWithFiles.current = true\n }\n return\n }, [\n addFiles,\n initialFiles,\n initializeSharedFormState,\n initilizeSharedDocPermissions,\n collectionSlug,\n hasInitializedState,\n hasInitializedDocPermissions,\n ])\n\n return (\n <Context.Provider\n value={{\n activeIndex: state.activeIndex,\n addFiles,\n collectionSlug,\n docPermissions,\n forms,\n getFormDataRef,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n isInitializing,\n removeFile,\n saveAllDocs,\n setActiveIndex,\n setFormTotalErrorCount,\n totalErrorCount,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport function useFormsManager() {\n return React.useContext(Context)\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,QAAQ,QAAQ;AACzB,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,MAAW;AAClB,SAASC,KAAK,QAAQ;AAItB,SAASC,YAAY,QAAQ;AAC7B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,YAAY,QAAQ;AAC7B,SAASC,iBAAA,IAAqBC,oBAAoB,QAAQ;AAC1D,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,cAAc,QAAQ;AAC/B,SAASC,sBAAsB,QAAQ;AA0BvC,MAAMC,OAAA,gBAAUb,KAAA,CAAMc,aAAa,CAAsB;EACvDC,WAAA,EAAa;EACbC,QAAA,EAAUA,CAAA,KAAMC,OAAA,CAAQC,OAAO;EAC/BC,cAAA,EAAgB;EAChBC,cAAA,EAAgBC,SAAA;EAChBC,KAAA,EAAO,EAAE;EACTC,cAAA,EAAgB;IAAEC,OAAA,EAASA,CAAA,MAAO,CAAC;EAAG;EACtCC,oBAAA,EAAsB;EACtBlB,iBAAA,EAAmB;EACnBmB,YAAA,EAAc;EACdC,cAAA,EAAgB;EAChBC,UAAA,EAAYA,CAAA,MAAO;EACnBC,WAAA,EAAaA,CAAA,KAAMZ,OAAA,CAAQC,OAAO;EAClCY,cAAA,EAAgBA,CAAA,KAAM;EACtBC,sBAAA,EAAwBA,CAAA,MAAO;EAC/BC,eAAA,EAAiB;AACnB;AAEA,MAAMC,YAAA,GAAsB;EAC1BlB,WAAA,EAAa;EACbO,KAAA,EAAO,EAAE;EACTU,eAAA,EAAiB;AACnB;AAKA,OAAO,SAASE,qBAAqB;EAAEC;AAAQ,CAAqB;EAClE,MAAM;IAAEC;EAAM,CAAE,GAAGjC,SAAA;EACnB,MAAM;IACJkC,MAAA,EAAQ;MAAEC;IAAG,CAAE;IACfC;EAAS,CACV,GAAGH,MAAA;EACJ,MAAM;IAAEI;EAAI,CAAE,GAAGpC,SAAA;EACjB,MAAM;IAAEqC,IAAI;IAAEC;EAAC,CAAE,GAAGrC,cAAA;EAEpB,MAAM,CAACqB,YAAA,EAAciB,eAAA,CAAgB,GAAG3C,KAAA,CAAM4C,QAAQ,CAAC;EACvD,MAAM,CAACxB,cAAA,EAAgByB,iBAAA,CAAkB,GAAG7C,KAAA,CAAM4C,QAAQ;EAC1D,MAAM,CAACrC,iBAAA,EAAmBuC,oBAAA,CAAqB,GAAG9C,KAAA,CAAM4C,QAAQ,CAAC;EACjE,MAAM,CAACnB,oBAAA,EAAsBsB,uBAAA,CAAwB,GAAG/C,KAAA,CAAM4C,QAAQ,CAAC;EACvE,MAAM,CAACI,mBAAA,EAAqBC,sBAAA,CAAuB,GAAGjD,KAAA,CAAM4C,QAAQ,CAAC;EACrE,MAAM,CAACM,4BAAA,EAA8BC,+BAAA,CAAgC,GAAGnD,KAAA,CAAM4C,QAAQ,CAAC;EACvF,MAAM,CAACjB,cAAA,EAAgByB,iBAAA,CAAkB,GAAGpD,KAAA,CAAM4C,QAAQ,CAAC;EAC3D,MAAM,CAACS,KAAA,EAAOC,QAAA,CAAS,GAAGtD,KAAA,CAAMuD,UAAU,CAAC3C,sBAAA,EAAwBqB,YAAA;EACnE,MAAM;IAAElB,WAAW;IAAEO,KAAK;IAAEU;EAAe,CAAE,GAAGqB,KAAA;EAEhD,MAAM;IAAEG;EAAoB,CAAE,GAAG/C,iBAAA;EACjC,MAAM;IAAEgD;EAAU,CAAE,GAAG3D,QAAA;EACvB,MAAM;IAAEqB,cAAc;IAAEuC,UAAU;IAAEC,YAAY;IAAEC;EAAS,CAAE,GAAGlD,aAAA;EAEhE,MAAMmD,uBAAA,GAA0B7D,KAAA,CAAM8D,MAAM,CAAC;EAC7C,MAAMC,eAAA,GAAkB/D,KAAA,CAAM8D,MAAM,CAAY;EAChD,MAAMvC,cAAA,GAAiBvB,KAAA,CAAM8D,MAAM,CAAa,OAAO,CAAC;EAExD,MAAME,SAAA,GAAY,GAAG1B,GAAA,IAAOnB,cAAA,EAAgB;EAE5C,MAAM8C,6BAAA,GAAgCjE,KAAA,CAAMkE,WAAW,CAAC;IACtD,MAAMC,MAAA,GAAS;MACbC,MAAA,EAAQ5B,IAAA,IAAQnB;IAClB;IAEA,MAAMgD,YAAA,GAAe,IAAIlD,cAAA,SAAuB;IAChD,MAAMmD,GAAA,GAAM,MAAMC,KAAA,CAAM,GAAGhC,SAAA,GAAYD,GAAA,GAAM+B,YAAA,IAAgBtE,EAAA,CAAGyE,SAAS,CAACL,MAAA,GAAS,EAAE;MACnFM,WAAA,EAAa;MACbC,OAAA,EAAS;QACP,mBAAmBjC,IAAA,CAAKkC,QAAQ;QAChC,gBAAgB;MAClB;MACAC,MAAA,EAAQ;IACV;IAEA,MAAMC,IAAA,GAA4B,MAAMP,GAAA,CAAIO,IAAI;IAChD,MAAMC,mBAAA,GAAsB,MAAMP,KAAA,CAChC,GAAGhC,SAAA,GAAYD,GAAA,GAAM+B,YAAA,IAAgBtE,EAAA,CAAGyE,SAAS,CAACL,MAAA,GAAS,EAC3D;MACEY,IAAA,EAAMC,IAAA,CAAKR,SAAS,CAAC;QACnBS,OAAA,EAAS;MACX;MACAR,WAAA,EAAa;MACbC,OAAA,EAAS;QACP,mBAAmBjC,IAAA,CAAKkC,QAAQ;QAChC,gBAAgB;MAClB;MACAC,MAAA,EAAQ;IACV,GACAM,IAAI,CAAEZ,KAAA,IAAQA,KAAA,CAAIO,IAAI;IAExBhC,iBAAA,CAAkBgC,IAAA;IAElB/B,oBAAA,CACEtC,oBAAA,CAAqB;MACnBW,cAAA;MACAC,cAAA,EAAgByD,IAAA;MAChBM,SAAA,EAAW;IACb;IAGFpC,uBAAA,CAAwB+B,mBAAA,EAAqBM,MAAA,EAAQC,UAAA;IACrDlC,+BAAA,CAAgC;EAClC,GAAG,CAACb,GAAA,EAAKE,IAAA,EAAMrB,cAAA,EAAgBsB,IAAA,CAAKkC,QAAQ,EAAEpC,SAAA,CAAU;EAExD,MAAM+C,yBAAA,GAA4BtF,KAAA,CAAMkE,WAAW,CACjD,MAAOqB,eAAA;IACL,IAAIA,eAAA,EAAiBC,MAAA,EAAQ;MAC3BD,eAAA,CAAgBE,KAAK,CAAC;IACxB;IAEA,IAAI;MACF,MAAMC,qBAAA,GAAwB,MAAMpF,YAAA,CAAa;QAC/CqF,QAAA,EAAUvD,MAAA,CAAOC,MAAM,CAACC,GAAG;QAC3ByC,IAAA,EAAM;UACJ5D,cAAA;UACAiD,MAAA,EAAQ5B,IAAA;UACRoD,SAAA,EAAW;UACXC,UAAA,EAAY1E;QACd;QACA;QACAoB,SAAA,EAAWH,MAAA,CAAOG,SAAS;QAC3BiD,MAAA,EAAQD,eAAA,EAAiBC;MAC3B;MACAzB,eAAA,CAAgBvC,OAAO,GAAGkE,qBAAA;MAC1BzC,sBAAA,CAAuB;IACzB,EAAE,OAAO6C,KAAA,EAAO;MACd;IAAA;EAEJ,GACA,CAACtD,IAAA,EAAMrB,cAAA,EAAgBiB,MAAA,CAAOC,MAAM,CAACC,GAAG,EAAEF,MAAA,CAAOG,SAAS,CAAC;EAG7D,MAAMT,cAAA,GAAwD9B,KAAA,CAAMkE,WAAW,CAC5E6B,KAAA;IACC,MAAMC,gBAAA,GAAmBzE,cAAA,CAAeC,OAAO;IAC/C8B,QAAA,CAAS;MACP2C,IAAA,EAAM;MACN5C,KAAA,EAAO;QACLtC,WAAA,EAAagF,KAAA;QACbzE,KAAA,EAAOA,KAAA,CAAM4E,GAAG,CAAC,CAACC,IAAA,EAAMC,CAAA;UACtB,IAAIA,CAAA,KAAMrF,WAAA,EAAa;YACrB,OAAO;cACLsF,UAAA,EAAYF,IAAA,CAAKE,UAAU;cAC3BC,SAAA,EAAWN;YACb;UACF;UACA,OAAOG,IAAA;QACT;MACF;IACF;EACF,GACA,CAAC7E,KAAA,EAAOP,WAAA,CAAY;EAGtB,MAAMC,QAAA,GAAWhB,KAAA,CAAMkE,WAAW,CAChC,MAAOqC,KAAA;IACL/C,oBAAA,CAAqB;MAAEgD,SAAA,EAAW;MAAMC,GAAA,EAAK;IAAa;IAC1D,IAAI,CAACzD,mBAAA,EAAqB;MACxB,MAAMsC,yBAAA;IACR;IACAhC,QAAA,CAAS;MAAE2C,IAAA,EAAM;MAAaM,KAAA;MAAOtE,YAAA,EAAc8B,eAAA,CAAgBvC;IAAQ;IAC3EgC,oBAAA,CAAqB;MAAEgD,SAAA,EAAW;MAAOC,GAAA,EAAK;IAAa;EAC7D,GACA,CAACnB,yBAAA,EAA2BtC,mBAAA,EAAqBQ,oBAAA,CAAqB;EAGxE,MAAM5B,UAAA,GAAgD5B,KAAA,CAAMkE,WAAW,CAAE6B,OAAA;IACvEzC,QAAA,CAAS;MAAE2C,IAAA,EAAM;MAAeF,KAAA,EAAAA;IAAM;EACxC,GAAG,EAAE;EAEL,MAAMhE,sBAAA,GAAwE/B,KAAA,CAAMkE,WAAW,CAC7F,CAAC;IAAEmC,UAAU;IAAEN,KAAK,EAALA;EAAK,CAAE;IACpBzC,QAAA,CAAS;MACP2C,IAAA,EAAM;MACNS,KAAA,EAAOL,UAAA;MACPN,KAAA,EAAAA;IACF;EACF,GACA,EAAE;EAGJ,MAAMlE,WAAA,GAAkD7B,KAAA,CAAMkE,WAAW,CACvE,OAAO;IAAEyC;EAAS,CAAE,GAAG,CAAC,CAAC;IACvB,MAAMX,kBAAA,GAAmBzE,cAAA,CAAeC,OAAO;IAC/C,MAAMoF,YAAA,GAAe,C,GAAItF,KAAA,CAAM;IAC/BsF,YAAY,CAAC7F,WAAA,CAAY,GAAG;MAC1BsF,UAAA,EAAYO,YAAY,CAAC7F,WAAA,CAAY,CAACsF,UAAU;MAChDC,SAAA,EAAWN;IACb;IACA,MAAMa,OAAA,GAAU,EAAE;IAClB,MAAMC,QAAA,GAAWF,YAAA,CAAaV,GAAG,CAAC,OAAOC,MAAA,EAAMC,GAAA;MAC7C,IAAI;QACF5C,oBAAA,CAAqB;UACnBgD,SAAA,EAAW;UACXC,GAAA,EAAK;UACLM,WAAA,EAAarE,CAAA,CAAE;QACjB;QACA,MAAMsE,GAAA,GAAM,MAAMzC,KAAA,CAAMP,SAAA,EAAW;UACjCe,IAAA,EAAMpE,cAAA,CAAewF,MAAA,CAAKG,SAAS,EAAEK,SAAA;UACrC/B,MAAA,EAAQ;QACV;QAEA,MAAMC,MAAA,GAAO,MAAMmC,GAAA,CAAInC,IAAI;QAE3B,IAAImC,GAAA,CAAIC,MAAM,KAAK,OAAOpC,MAAA,EAAMqC,GAAA,EAAK;UACnCL,OAAA,CAAQM,IAAI,CAACtC,MAAA,CAAKqC,GAAG;QACvB;QAEA;QACA,IAAIrC,MAAA,EAAMuC,MAAA,EAAQC,MAAA,EAAQ;UACxB,MAAM,CAACC,WAAA,EAAaC,cAAA,CAAe,GAAG1C,MAAA,CAAKuC,MAAM,CAACI,MAAM,CACtD,CAAC,CAACC,SAAA,EAAWC,YAAA,CAAa,EAAEC,GAAA;YAC1B,MAAMC,YAAA,GAAsB,EAAE;YAC9B,MAAMC,eAAA,GAAyB,EAAE;YAEjC,IAAIF,GAAA,EAAKG,OAAA,EAAS;cAChBD,eAAA,CAAgBV,IAAI,CAACQ,GAAA;YACvB;YAEA,IAAII,KAAA,CAAMC,OAAO,CAACL,GAAA,EAAKM,IAAA,EAAMb,MAAA,GAAS;cACpCO,GAAA,CAAIM,IAAI,EAAEb,MAAA,CAAOc,OAAA,CAASC,SAAA;gBACxB,IAAIA,SAAA,EAAWC,KAAA,EAAO;kBACpBR,YAAA,CAAaT,IAAI,CAACgB,SAAA;gBACpB,OAAO;kBACLN,eAAA,CAAgBV,IAAI,CAACgB,SAAA;gBACvB;cACF;YACF;YAEA,OAAO,CACL,C,GAAIV,SAAA,E,GAAcG,YAAA,CAAa,EAC/B,C,GAAIF,YAAA,E,GAAiBG,eAAA,CAAgB,CACtC;UACH,GACA,CAAC,EAAE,EAAE,EAAE,CAAC;UAGVjB,YAAY,CAACR,GAAA,CAAE,GAAG;YAChBC,UAAA,EAAYiB,WAAA,CAAYD,MAAM;YAC9Bf,SAAA,EAAWpG,YAAA,CAAa0G,YAAY,CAACR,GAAA,CAAE,CAACE,SAAS,EAAE;cACjDL,IAAA,EAAM;cACNmB,MAAA,EAAQE;YACV;UACF;QACF;MACF,EAAE,OAAOxB,OAAA,EAAO;QACd;MAAA,CACF,SAAU;QACRnD,eAAA,CAAgB;QAChBa,oBAAA,CAAqB;UAAEgD,SAAA,EAAW;UAAOC,GAAA,EAAK;QAAc;MAC9D;IACF;IAEA,MAAMxF,OAAA,CAAQoH,GAAG,CAACvB,QAAA;IAElB,MAAMwB,cAAA,GAAiB1B,YAAA,CAAa2B,MAAM,CAAC,CAAC;MAAElC,UAAU,EAAVA;IAAU,CAAE,KAAKA,YAAA,GAAa;IAC5E,MAAMmC,YAAA,GAAeC,IAAA,CAAKC,GAAG,CAAC,GAAG9B,YAAA,CAAaS,MAAM,GAAGiB,cAAA,CAAejB,MAAM;IAC5E,MAAMhB,YAAA,GAAaO,YAAA,CAAaS,MAAM,GAAGmB,YAAA;IAEzC,IAAIA,YAAA,EAAc;MAChBvI,KAAA,CAAM0I,OAAO,CAAC,sBAAsBH,YAAA,QAAoB;MAExD,IAAI,OAAO5E,SAAA,KAAc,YAAY;QACnCA,SAAA,CAAUiD,OAAA,EAASR,YAAA;MACrB;IACF;IAEA,IAAIA,YAAA,EAAY;MACdpG,KAAA,CAAM6F,KAAK,CAAC,kBAAkBO,YAAA,QAAkB;IAClD,OAAO;MACL5C,UAAA,CAAWC,UAAA;IACb;IAEAJ,QAAA,CAAS;MACP2C,IAAA,EAAM;MACN5C,KAAA,EAAO;QACLtC,WAAA,EAAa;QACbO,KAAA,EAAOgH,cAAA;QACPtG,eAAA,EAAiBsG,cAAA,CAAed,MAAM,CAAC,CAACoB,GAAA,EAAK;UAAEvC,UAAU,EAAVA;QAAU,CAAE,KAAKuC,GAAA,GAAMvC,YAAA,EAAY;MACpF;IACF;EACF,GACA,CAACrC,SAAA,EAAWjD,WAAA,EAAaO,KAAA,EAAOsC,SAAA,EAAWlB,CAAA,EAAGc,oBAAA,EAAsBC,UAAA,EAAYC,UAAA,CAAW;EAG7F1D,KAAA,CAAM6I,SAAS,CAAC;IACd,IAAI,CAAC1H,cAAA,EAAgB;MACnB;IACF;IACA,IAAI,CAAC6B,mBAAA,EAAqB;MACxB,KAAKsC,yBAAA;IACP;IAEA,IAAI,CAACpC,4BAAA,EAA8B;MACjC,KAAKe,6BAAA;IACP;IAEA,IAAIN,YAAA,EAAc;MAChB,IAAI,CAACX,mBAAA,IAAuB,CAACE,4BAAA,EAA8B;QACzDE,iBAAA,CAAkB;MACpB,OAAO;QACLA,iBAAA,CAAkB;MACpB;IACF;IAEA,IAAIJ,mBAAA,IAAuBW,YAAA,IAAgB,CAACE,uBAAA,CAAwBrC,OAAO,EAAE;MAC3E,KAAKR,QAAA,CAAS2C,YAAA;MACdE,uBAAA,CAAwBrC,OAAO,GAAG;IACpC;IACA;EACF,GAAG,CACDR,QAAA,EACA2C,YAAA,EACA2B,yBAAA,EACArB,6BAAA,EACA9C,cAAA,EACA6B,mBAAA,EACAE,4BAAA,CACD;EAED,oBACE4F,IAAA,CAACjI,OAAA,CAAQkI,QAAQ;IACfC,KAAA,EAAO;MACLjI,WAAA,EAAasC,KAAA,CAAMtC,WAAW;MAC9BC,QAAA;MACAG,cAAA;MACAC,cAAA;MACAE,KAAA;MACAC,cAAA;MACAE,oBAAA;MACAlB,iBAAA;MACAmB,YAAA;MACAC,cAAA;MACAC,UAAA;MACAC,WAAA;MACAC,cAAA;MACAC,sBAAA;MACAC;IACF;cAECG;;AAGP;AAEA,OAAO,SAAA8G,gBAAA;EAAA,OACEjJ,KAAA,CAAAkJ,UAAA,CAAArI,OAAiB;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/BulkUpload/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzC,OAAO,KAAK,MAAM,OAAO,CAAA;AA+BzB,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,CAAA;AAED,wBAAgB,gBAAgB,sBAa/B;AAED,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,QAAQ,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9D,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,eAAe,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC1C,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,WAAW,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IAC9D,YAAY,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;CAClE,CAAA;AAeD,wBAAgB,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,qBA8CtF;AAED,eAAO,MAAM,aAAa,yBAAkC,CAAA;AAE5D,wBAAgB,uBAAuB,WAItC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/BulkUpload/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzC,OAAO,KAAK,MAAM,OAAO,CAAA;AAiCzB,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,CAAA;AAED,wBAAgB,gBAAgB,sBAa/B;AAED,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,QAAQ,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,SAAS,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9D,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,eAAe,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAA;IAC1C,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACvC,WAAW,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IAC9D,YAAY,EAAE,CAAC,SAAS,EAAE,iBAAiB,CAAC,WAAW,CAAC,KAAK,IAAI,CAAA;CAClE,CAAA;AAeD,wBAAgB,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,qBA8CtF;AAED,eAAO,MAAM,aAAa,yBAAkC,CAAA;AAE5D,wBAAgB,uBAAuB,WAItC"}
@@ -84,8 +84,8 @@ export function BulkUploadDrawer() {
84
84
  t1 = _jsx(EditDepthProvider, {
85
85
  depth: t0,
86
86
  children: _jsx(Drawer, {
87
- Header: null,
88
87
  gutter: false,
88
+ Header: null,
89
89
  slug: drawerSlug,
90
90
  children: _jsx(FormsManagerProvider, {
91
91
  children: _jsx(DrawerContent, {})
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","React","EditDepthProvider","useEditDepth","Drawer","AddFilesView","AddingFilesView","FormsManagerProvider","useFormsManager","drawerSlug","DrawerContent","$","addFiles","forms","isInitializing","closeModal","collectionSlug","useBulkUpload","t0","acceptedFiles","onDrop","length","t1","t2","_jsx","onCancel","BulkUploadDrawer","currentDepth","depth","children","Header","gutter","slug","Context","createContext","initialFiles","undefined","maxFiles","onSuccess","setCollectionSlug","setInitialFiles","setMaxFiles","setOnCancel","setOnSuccess","BulkUploadProvider","collection","setCollection","useState","onSuccessFunction","setOnSuccessFunction","onCancelFunction","setOnCancelFunction","useBulkUploadDrawerSlug","Symbol","for","t3","t4","docIDs","errorCount","t5","Provider","value","_jsxs","Fragment","useContext"],"sources":["../../../src/elements/BulkUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { JsonObject } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React from 'react'\n\nimport { EditDepthProvider, useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer } from '../Drawer/index.js'\nimport { AddFilesView } from './AddFilesView/index.js'\nimport { AddingFilesView } from './AddingFilesView/index.js'\nimport { FormsManagerProvider, useFormsManager } from './FormsManager/index.js'\n\nconst drawerSlug = 'bulk-upload-drawer-slug'\n\nfunction DrawerContent() {\n const { addFiles, forms, isInitializing } = useFormsManager()\n const { closeModal } = useModal()\n const { collectionSlug, drawerSlug } = useBulkUpload()\n\n const onDrop = React.useCallback(\n (acceptedFiles: FileList) => {\n void addFiles(acceptedFiles)\n },\n [addFiles],\n )\n\n if (!collectionSlug) return null\n\n if (!forms.length && !isInitializing) {\n return <AddFilesView onCancel={() => closeModal(drawerSlug)} onDrop={onDrop} />\n } else {\n return <AddingFilesView />\n }\n}\n\nexport type BulkUploadProps = {\n readonly children: React.ReactNode\n}\n\nexport function BulkUploadDrawer() {\n const currentDepth = useEditDepth()\n const { drawerSlug } = useBulkUpload()\n\n return (\n <EditDepthProvider depth={currentDepth || 1}>\n <Drawer Header={null} gutter={false} slug={drawerSlug}>\n <FormsManagerProvider>\n <DrawerContent />\n </FormsManagerProvider>\n </Drawer>\n </EditDepthProvider>\n )\n}\n\ntype BulkUploadContext = {\n collectionSlug: string\n drawerSlug: string\n initialFiles: FileList\n maxFiles: number\n onCancel: () => void\n onSuccess: (newDocs: JsonObject[], errorCount: number) => void\n setCollectionSlug: (slug: string) => void\n setInitialFiles: (files: FileList) => void\n setMaxFiles: (maxFiles: number) => void\n setOnCancel: (onCancel: BulkUploadContext['onCancel']) => void\n setOnSuccess: (onSuccess: BulkUploadContext['onSuccess']) => void\n}\n\nconst Context = React.createContext<BulkUploadContext>({\n collectionSlug: '',\n drawerSlug: '',\n initialFiles: undefined,\n maxFiles: undefined,\n onCancel: () => null,\n onSuccess: () => null,\n setCollectionSlug: () => null,\n setInitialFiles: () => null,\n setMaxFiles: () => null,\n setOnCancel: () => null,\n setOnSuccess: () => null,\n})\nexport function BulkUploadProvider({ children }: { readonly children: React.ReactNode }) {\n const [collection, setCollection] = React.useState<string>()\n const [onSuccessFunction, setOnSuccessFunction] = React.useState<BulkUploadContext['onSuccess']>()\n const [onCancelFunction, setOnCancelFunction] = React.useState<BulkUploadContext['onCancel']>()\n const [initialFiles, setInitialFiles] = React.useState<FileList>(undefined)\n const [maxFiles, setMaxFiles] = React.useState<number>(undefined)\n const drawerSlug = useBulkUploadDrawerSlug()\n\n const setCollectionSlug: BulkUploadContext['setCollectionSlug'] = (slug) => {\n setCollection(slug)\n }\n\n const setOnSuccess: BulkUploadContext['setOnSuccess'] = (onSuccess) => {\n setOnSuccessFunction(() => onSuccess)\n }\n\n return (\n <Context.Provider\n value={{\n collectionSlug: collection,\n drawerSlug,\n initialFiles,\n maxFiles,\n onCancel: () => {\n if (typeof onCancelFunction === 'function') {\n onCancelFunction()\n }\n },\n onSuccess: (docIDs, errorCount) => {\n if (typeof onSuccessFunction === 'function') {\n onSuccessFunction(docIDs, errorCount)\n }\n },\n setCollectionSlug,\n setInitialFiles,\n setMaxFiles,\n setOnCancel: setOnCancelFunction,\n setOnSuccess,\n }}\n >\n <React.Fragment>\n {children}\n <BulkUploadDrawer />\n </React.Fragment>\n </Context.Provider>\n )\n}\n\nexport const useBulkUpload = () => React.useContext(Context)\n\nexport function useBulkUploadDrawerSlug() {\n const depth = useEditDepth()\n\n return `${drawerSlug}-${depth || 1}`\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","React","EditDepthProvider","useEditDepth","Drawer","AddFilesView","AddingFilesView","FormsManagerProvider","useFormsManager","drawerSlug","DrawerContent","$","addFiles","forms","isInitializing","closeModal","collectionSlug","useBulkUpload","t0","acceptedFiles","onDrop","length","t1","t2","_jsx","onCancel","BulkUploadDrawer","currentDepth","depth","children","gutter","Header","slug","Context","createContext","initialFiles","undefined","maxFiles","onSuccess","setCollectionSlug","setInitialFiles","setMaxFiles","setOnCancel","setOnSuccess","BulkUploadProvider","collection","setCollection","useState","onSuccessFunction","setOnSuccessFunction","onCancelFunction","setOnCancelFunction","useBulkUploadDrawerSlug","Symbol","for","t3","t4","docIDs","errorCount","t5","Provider","value","_jsxs","Fragment","useContext"],"sources":["../../../src/elements/BulkUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { JsonObject } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React from 'react'\n\nimport { EditDepthProvider, useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer } from '../Drawer/index.js'\nimport { AddFilesView } from './AddFilesView/index.js'\nimport { AddingFilesView } from './AddingFilesView/index.js'\nimport { FormsManagerProvider, useFormsManager } from './FormsManager/index.js'\n\nconst drawerSlug = 'bulk-upload-drawer-slug'\n\nfunction DrawerContent() {\n const { addFiles, forms, isInitializing } = useFormsManager()\n const { closeModal } = useModal()\n const { collectionSlug, drawerSlug } = useBulkUpload()\n\n const onDrop = React.useCallback(\n (acceptedFiles: FileList) => {\n void addFiles(acceptedFiles)\n },\n [addFiles],\n )\n\n if (!collectionSlug) {\n return null\n }\n\n if (!forms.length && !isInitializing) {\n return <AddFilesView onCancel={() => closeModal(drawerSlug)} onDrop={onDrop} />\n } else {\n return <AddingFilesView />\n }\n}\n\nexport type BulkUploadProps = {\n readonly children: React.ReactNode\n}\n\nexport function BulkUploadDrawer() {\n const currentDepth = useEditDepth()\n const { drawerSlug } = useBulkUpload()\n\n return (\n <EditDepthProvider depth={currentDepth || 1}>\n <Drawer gutter={false} Header={null} slug={drawerSlug}>\n <FormsManagerProvider>\n <DrawerContent />\n </FormsManagerProvider>\n </Drawer>\n </EditDepthProvider>\n )\n}\n\ntype BulkUploadContext = {\n collectionSlug: string\n drawerSlug: string\n initialFiles: FileList\n maxFiles: number\n onCancel: () => void\n onSuccess: (newDocs: JsonObject[], errorCount: number) => void\n setCollectionSlug: (slug: string) => void\n setInitialFiles: (files: FileList) => void\n setMaxFiles: (maxFiles: number) => void\n setOnCancel: (onCancel: BulkUploadContext['onCancel']) => void\n setOnSuccess: (onSuccess: BulkUploadContext['onSuccess']) => void\n}\n\nconst Context = React.createContext<BulkUploadContext>({\n collectionSlug: '',\n drawerSlug: '',\n initialFiles: undefined,\n maxFiles: undefined,\n onCancel: () => null,\n onSuccess: () => null,\n setCollectionSlug: () => null,\n setInitialFiles: () => null,\n setMaxFiles: () => null,\n setOnCancel: () => null,\n setOnSuccess: () => null,\n})\nexport function BulkUploadProvider({ children }: { readonly children: React.ReactNode }) {\n const [collection, setCollection] = React.useState<string>()\n const [onSuccessFunction, setOnSuccessFunction] = React.useState<BulkUploadContext['onSuccess']>()\n const [onCancelFunction, setOnCancelFunction] = React.useState<BulkUploadContext['onCancel']>()\n const [initialFiles, setInitialFiles] = React.useState<FileList>(undefined)\n const [maxFiles, setMaxFiles] = React.useState<number>(undefined)\n const drawerSlug = useBulkUploadDrawerSlug()\n\n const setCollectionSlug: BulkUploadContext['setCollectionSlug'] = (slug) => {\n setCollection(slug)\n }\n\n const setOnSuccess: BulkUploadContext['setOnSuccess'] = (onSuccess) => {\n setOnSuccessFunction(() => onSuccess)\n }\n\n return (\n <Context.Provider\n value={{\n collectionSlug: collection,\n drawerSlug,\n initialFiles,\n maxFiles,\n onCancel: () => {\n if (typeof onCancelFunction === 'function') {\n onCancelFunction()\n }\n },\n onSuccess: (docIDs, errorCount) => {\n if (typeof onSuccessFunction === 'function') {\n onSuccessFunction(docIDs, errorCount)\n }\n },\n setCollectionSlug,\n setInitialFiles,\n setMaxFiles,\n setOnCancel: setOnCancelFunction,\n setOnSuccess,\n }}\n >\n <React.Fragment>\n {children}\n <BulkUploadDrawer />\n </React.Fragment>\n </Context.Provider>\n )\n}\n\nexport const useBulkUpload = () => React.useContext(Context)\n\nexport function useBulkUploadDrawerSlug() {\n const depth = useEditDepth()\n\n return `${drawerSlug}-${depth || 1}`\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+C,MAAM,OAAO,CAAA;AAEnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAUvC,OAAO,cAAc,CAAA;AAarB,eAAO,MAAM,cAAc;;;;;uBAqB1B,CAAA;AAED,eAAO,MAAM,MAAM,qGAuIjB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+C,MAAM,OAAO,CAAA;AAEnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAUvC,OAAO,cAAc,CAAA;AAarB,eAAO,MAAM,cAAc;;;;;uBAqB1B,CAAA;AAED,eAAO,MAAM,MAAM,qGA8IjB,CAAA"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
- import React, { Fragment, forwardRef, isValidElement } from 'react';
4
+ import React, { forwardRef, Fragment, isValidElement } from 'react';
5
5
  import { ChevronIcon } from '../../icons/Chevron/index.js';
6
6
  import { EditIcon } from '../../icons/Edit/index.js';
7
7
  import { LinkIcon } from '../../icons/Link/index.js';
@@ -48,8 +48,6 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
48
48
  const {
49
49
  id,
50
50
  type = 'button',
51
- Link,
52
- SubMenuPopupContent,
53
51
  'aria-label': ariaLabel,
54
52
  buttonStyle = 'primary',
55
53
  children,
@@ -59,10 +57,12 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
59
57
  icon,
60
58
  iconPosition = 'right',
61
59
  iconStyle = 'without-border',
60
+ Link,
62
61
  newTab,
63
62
  onClick,
64
63
  round,
65
64
  size = 'medium',
65
+ SubMenuPopupContent,
66
66
  to,
67
67
  tooltip,
68
68
  url
@@ -71,8 +71,12 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
71
71
  const classes = [baseClass, className && className, icon && `${baseClass}--icon`, iconStyle && `${baseClass}--icon-style-${iconStyle}`, icon && !children && `${baseClass}--icon-only`, size && `${baseClass}--size-${size}`, icon && iconPosition && `${baseClass}--icon-position-${iconPosition}`, tooltip && `${baseClass}--has-tooltip`, !SubMenuPopupContent && `${baseClass}--withoutPopup`].filter(Boolean).join(' ');
72
72
  function handleClick(event) {
73
73
  setShowTooltip(false);
74
- if (type !== 'submit' && onClick) event.preventDefault();
75
- if (onClick) onClick(event);
74
+ if (type !== 'submit' && onClick) {
75
+ event.preventDefault();
76
+ }
77
+ if (onClick) {
78
+ onClick(event);
79
+ }
76
80
  }
77
81
  const styleClasses = [buttonStyle && `${baseClass}--style-${buttonStyle}`, disabled && `${baseClass}--disabled`, round && `${baseClass}--round`, SubMenuPopupContent ? `${baseClass}--withPopup` : `${baseClass}--withoutPopup`].filter(Boolean).join(' ');
78
82
  const buttonProps = {
@@ -90,6 +94,19 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
90
94
  };
91
95
  let buttonElement;
92
96
  switch (el) {
97
+ case 'anchor':
98
+ buttonElement = /*#__PURE__*/_jsx("a", {
99
+ ...buttonProps,
100
+ href: !disabled ? url : undefined,
101
+ ref: ref,
102
+ children: /*#__PURE__*/_jsx(ButtonContents, {
103
+ icon: icon,
104
+ showTooltip: showTooltip,
105
+ tooltip: tooltip,
106
+ children: children
107
+ })
108
+ });
109
+ break;
93
110
  case 'link':
94
111
  if (!Link) {
95
112
  console.error('Link is required when using el="link"', children);
@@ -97,7 +114,9 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
97
114
  }
98
115
  let LinkTag = Link // eslint-disable-line no-case-declarations
99
116
  ;
100
- if (disabled) LinkTag = 'div';
117
+ if (disabled) {
118
+ LinkTag = 'div';
119
+ }
101
120
  buttonElement = /*#__PURE__*/_jsx(LinkTag, {
102
121
  ...buttonProps,
103
122
  href: to || url,
@@ -110,19 +129,6 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
110
129
  })
111
130
  });
112
131
  break;
113
- case 'anchor':
114
- buttonElement = /*#__PURE__*/_jsx("a", {
115
- ...buttonProps,
116
- href: !disabled ? url : undefined,
117
- ref: ref,
118
- children: /*#__PURE__*/_jsx(ButtonContents, {
119
- icon: icon,
120
- showTooltip: showTooltip,
121
- tooltip: tooltip,
122
- children: children
123
- })
124
- });
125
- break;
126
132
  default:
127
133
  const Tag = el // eslint-disable-line no-case-declarations
128
134
  ;
@@ -139,18 +145,20 @@ export const Button = /*#__PURE__*/forwardRef((props, ref) => {
139
145
  });
140
146
  break;
141
147
  }
142
- if (SubMenuPopupContent) return /*#__PURE__*/_jsxs("div", {
143
- className: styleClasses,
144
- children: [buttonElement, /*#__PURE__*/_jsx(Popup, {
145
- button: /*#__PURE__*/_jsx(ChevronIcon, {}),
146
- className: disabled ? `${baseClass}--popup-disabled` : '',
147
- horizontalAlign: "right",
148
- noBackground: true,
149
- size: "large",
150
- verticalAlign: "bottom",
151
- children: SubMenuPopupContent
152
- })]
153
- });
148
+ if (SubMenuPopupContent) {
149
+ return /*#__PURE__*/_jsxs("div", {
150
+ className: styleClasses,
151
+ children: [buttonElement, /*#__PURE__*/_jsx(Popup, {
152
+ button: /*#__PURE__*/_jsx(ChevronIcon, {}),
153
+ className: disabled ? `${baseClass}--popup-disabled` : '',
154
+ horizontalAlign: "right",
155
+ noBackground: true,
156
+ size: "large",
157
+ verticalAlign: "bottom",
158
+ children: SubMenuPopupContent
159
+ })]
160
+ });
161
+ }
154
162
  return buttonElement;
155
163
  });
156
164
  //# sourceMappingURL=index.js.map