@payloadcms/ui 3.0.0-canary.ee0375f → 3.0.0-canary.ef0a8d0

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 (623) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js.map +1 -1
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/ArrayAction/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.js.map +1 -1
  6. package/dist/elements/Banner/index.js.map +1 -1
  7. package/dist/elements/Banner/index.scss +4 -4
  8. package/dist/elements/Button/index.js.map +1 -1
  9. package/dist/elements/Button/types.js.map +1 -1
  10. package/dist/elements/Card/index.js.map +1 -1
  11. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  12. package/dist/elements/CodeEditor/index.js.map +1 -1
  13. package/dist/elements/CodeEditor/types.d.ts +2 -2
  14. package/dist/elements/CodeEditor/types.d.ts.map +1 -1
  15. package/dist/elements/CodeEditor/types.js.map +1 -1
  16. package/dist/elements/Collapsible/index.js.map +1 -1
  17. package/dist/elements/Collapsible/index.scss +13 -47
  18. package/dist/elements/Collapsible/provider.js.map +1 -1
  19. package/dist/elements/ColumnSelector/index.js.map +1 -1
  20. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  21. package/dist/elements/DatePicker/DatePicker.d.ts +2 -2
  22. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  23. package/dist/elements/DatePicker/DatePicker.js +2 -2
  24. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  25. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  26. package/dist/elements/DatePicker/index.js.map +1 -1
  27. package/dist/elements/DatePicker/types.d.ts +2 -2
  28. package/dist/elements/DatePicker/types.d.ts.map +1 -1
  29. package/dist/elements/DatePicker/types.js.map +1 -1
  30. package/dist/elements/DeleteDocument/index.js.map +1 -1
  31. package/dist/elements/DeleteDocument/index.scss +1 -0
  32. package/dist/elements/DeleteMany/index.js.map +1 -1
  33. package/dist/elements/DeleteMany/index.scss +1 -0
  34. package/dist/elements/DocumentControls/index.js.map +1 -1
  35. package/dist/elements/DocumentDrawer/DrawerContent.js +2 -2
  36. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  37. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  38. package/dist/elements/DocumentDrawer/types.d.ts +4 -4
  39. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  40. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  41. package/dist/elements/DocumentFields/index.js.map +1 -1
  42. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts +2 -2
  43. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  44. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  45. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +4 -4
  46. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  47. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  48. package/dist/elements/DraggableSortable/index.js.map +1 -1
  49. package/dist/elements/DraggableSortable/types.js.map +1 -1
  50. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  51. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  52. package/dist/elements/Drawer/index.js.map +1 -1
  53. package/dist/elements/Drawer/types.d.ts +2 -2
  54. package/dist/elements/Drawer/types.d.ts.map +1 -1
  55. package/dist/elements/Drawer/types.js.map +1 -1
  56. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  57. package/dist/elements/Dropzone/index.d.ts +1 -0
  58. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  59. package/dist/elements/Dropzone/index.js +8 -1
  60. package/dist/elements/Dropzone/index.js.map +1 -1
  61. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  62. package/dist/elements/EditMany/index.js.map +1 -1
  63. package/dist/elements/EditUpload/index.js.map +1 -1
  64. package/dist/elements/ErrorPill/index.js.map +1 -1
  65. package/dist/elements/ErrorPill/index.scss +2 -14
  66. package/dist/elements/FieldSelect/index.d.ts +7 -2
  67. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  68. package/dist/elements/FieldSelect/index.js +1 -1
  69. package/dist/elements/FieldSelect/index.js.map +1 -1
  70. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  71. package/dist/elements/FileDetails/index.d.ts +4 -3
  72. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  73. package/dist/elements/FileDetails/index.js +6 -5
  74. package/dist/elements/FileDetails/index.js.map +1 -1
  75. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  76. package/dist/elements/GenerateConfirmation/index.scss +1 -0
  77. package/dist/elements/Gutter/index.js.map +1 -1
  78. package/dist/elements/Hamburger/index.js.map +1 -1
  79. package/dist/elements/HydrateClientUser/index.d.ts +2 -2
  80. package/dist/elements/HydrateClientUser/index.d.ts.map +1 -1
  81. package/dist/elements/HydrateClientUser/index.js.map +1 -1
  82. package/dist/elements/IDLabel/index.js.map +1 -1
  83. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  84. package/dist/elements/ListControls/index.d.ts.map +1 -1
  85. package/dist/elements/ListControls/index.js +2 -1
  86. package/dist/elements/ListControls/index.js.map +1 -1
  87. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  88. package/dist/elements/ListDrawer/index.js.map +1 -1
  89. package/dist/elements/ListDrawer/types.d.ts +2 -2
  90. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  91. package/dist/elements/ListDrawer/types.js.map +1 -1
  92. package/dist/elements/ListSelection/index.js.map +1 -1
  93. package/dist/elements/Loading/index.js.map +1 -1
  94. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  95. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  96. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  97. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  98. package/dist/elements/Localizer/index.js.map +1 -1
  99. package/dist/elements/Logout/index.js.map +1 -1
  100. package/dist/elements/Modal/index.js.map +1 -1
  101. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  102. package/dist/elements/Nav/context.js.map +1 -1
  103. package/dist/elements/NavGroup/index.js.map +1 -1
  104. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  105. package/dist/elements/Pagination/Page/index.js.map +1 -1
  106. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  107. package/dist/elements/Pagination/index.js.map +1 -1
  108. package/dist/elements/PerPage/index.js.map +1 -1
  109. package/dist/elements/Pill/index.d.ts +2 -2
  110. package/dist/elements/Pill/index.d.ts.map +1 -1
  111. package/dist/elements/Pill/index.js.map +1 -1
  112. package/dist/elements/Pill/index.scss +9 -21
  113. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  114. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  115. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  116. package/dist/elements/Popup/index.js.map +1 -1
  117. package/dist/elements/PreviewButton/index.js.map +1 -1
  118. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  119. package/dist/elements/PreviewSizes/index.d.ts +4 -4
  120. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  121. package/dist/elements/PreviewSizes/index.js.map +1 -1
  122. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  123. package/dist/elements/PublishButton/index.js +16 -0
  124. package/dist/elements/PublishButton/index.js.map +1 -1
  125. package/dist/elements/PublishMany/index.js.map +1 -1
  126. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  127. package/dist/elements/ReactSelect/Control/index.js +0 -1
  128. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  129. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +2 -2
  130. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  131. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  132. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  133. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  134. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  135. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts +2 -2
  136. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  137. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  138. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  139. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  140. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  141. package/dist/elements/ReactSelect/index.js +0 -1
  142. package/dist/elements/ReactSelect/index.js.map +1 -1
  143. package/dist/elements/ReactSelect/index.scss +9 -2
  144. package/dist/elements/ReactSelect/types.d.ts +1 -1
  145. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  146. package/dist/elements/ReactSelect/types.js.map +1 -1
  147. package/dist/elements/RenderCustomClientComponent/index.js.map +1 -1
  148. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  149. package/dist/elements/RenderTitle/index.js.map +1 -1
  150. package/dist/elements/SaveButton/index.js.map +1 -1
  151. package/dist/elements/SaveDraftButton/index.d.ts +1 -0
  152. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  153. package/dist/elements/SaveDraftButton/index.js +1 -1
  154. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  155. package/dist/elements/SearchFilter/index.js.map +1 -1
  156. package/dist/elements/SelectAll/index.js.map +1 -1
  157. package/dist/elements/SelectRow/index.js.map +1 -1
  158. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  159. package/dist/elements/SortColumn/index.js.map +1 -1
  160. package/dist/elements/SortComplex/index.js +2 -2
  161. package/dist/elements/SortComplex/index.js.map +1 -1
  162. package/dist/elements/Status/index.js.map +1 -1
  163. package/dist/elements/Status/index.scss +1 -0
  164. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  165. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  166. package/dist/elements/StepNav/context.js.map +1 -1
  167. package/dist/elements/StepNav/index.js.map +1 -1
  168. package/dist/elements/StepNav/types.js.map +1 -1
  169. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  170. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  171. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  172. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  173. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  174. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  175. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  176. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  177. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +0 -1
  178. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  179. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  180. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  181. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  182. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  183. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  184. package/dist/elements/Table/RelationshipProvider/index.js +11 -10
  185. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  186. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  187. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  188. package/dist/elements/Table/index.js.map +1 -1
  189. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  190. package/dist/elements/TableColumns/buildColumnState.js +0 -1
  191. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  192. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  193. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  194. package/dist/elements/TableColumns/index.js.map +1 -1
  195. package/dist/elements/Thumbnail/index.js.map +1 -1
  196. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  197. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  198. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  199. package/dist/elements/Tooltip/index.js.map +1 -1
  200. package/dist/elements/Translation/index.js.map +1 -1
  201. package/dist/elements/UnpublishMany/index.js.map +1 -1
  202. package/dist/elements/Upload/index.d.ts +9 -5
  203. package/dist/elements/Upload/index.d.ts.map +1 -1
  204. package/dist/elements/Upload/index.js +144 -45
  205. package/dist/elements/Upload/index.js.map +1 -1
  206. package/dist/elements/Upload/index.scss +6 -3
  207. package/dist/elements/ViewDescription/index.js.map +1 -1
  208. package/dist/elements/ViewDescription/types.js.map +1 -1
  209. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  210. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  211. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  212. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  213. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  214. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +8 -8
  215. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  216. package/dist/elements/WhereBuilder/Condition/Relationship/index.scss +2 -2
  217. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  218. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  219. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  220. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  221. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  222. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  223. package/dist/elements/WhereBuilder/Condition/index.js +1 -1
  224. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  225. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  226. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  227. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  228. package/dist/elements/WhereBuilder/index.js +12 -6
  229. package/dist/elements/WhereBuilder/index.js.map +1 -1
  230. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +13 -2
  231. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +1 -1
  232. package/dist/elements/WhereBuilder/reduceFieldMap.js +80 -16
  233. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +1 -1
  234. package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -1
  235. package/dist/elements/WhereBuilder/types.d.ts +2 -0
  236. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  237. package/dist/elements/WhereBuilder/types.js.map +1 -1
  238. package/dist/elements/WhereBuilder/validateWhereQuery.js +0 -1
  239. package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -1
  240. package/dist/elements/WindowInfo/index.js.map +1 -1
  241. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  242. package/dist/elements/withMergedProps/index.js.map +1 -1
  243. package/dist/exports/client/{CodeEditor-UTZFZWZG.js → CodeEditor-OI35YO7H.js} +1 -1
  244. package/dist/exports/client/{CodeEditor-UTZFZWZG.js.map → CodeEditor-OI35YO7H.js.map} +1 -1
  245. package/dist/exports/client/DatePicker-5IFHNQHA.js +14 -0
  246. package/dist/exports/client/DatePicker-5IFHNQHA.js.map +8 -0
  247. package/dist/exports/client/chunk-WDFUZ6GL.js +30 -0
  248. package/dist/exports/client/chunk-WDFUZ6GL.js.map +8 -0
  249. package/dist/exports/client/index.d.ts +6 -3
  250. package/dist/exports/client/index.d.ts.map +1 -1
  251. package/dist/exports/client/index.js +19 -33
  252. package/dist/exports/client/index.js.map +4 -4
  253. package/dist/exports/shared/index.d.ts +0 -1
  254. package/dist/exports/shared/index.d.ts.map +1 -1
  255. package/dist/exports/shared/index.js +2 -12
  256. package/dist/exports/shared/index.js.map +4 -4
  257. package/dist/fields/Array/ArrayRow.d.ts +2 -2
  258. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  259. package/dist/fields/Array/ArrayRow.js.map +1 -1
  260. package/dist/fields/Array/index.d.ts +2 -2
  261. package/dist/fields/Array/index.d.ts.map +1 -1
  262. package/dist/fields/Array/index.js.map +1 -1
  263. package/dist/fields/Blocks/BlockRow.d.ts +2 -2
  264. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  265. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  266. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  267. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  268. package/dist/fields/Blocks/RowActions.js.map +1 -1
  269. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  270. package/dist/fields/Blocks/index.d.ts +2 -2
  271. package/dist/fields/Blocks/index.d.ts.map +1 -1
  272. package/dist/fields/Blocks/index.js.map +1 -1
  273. package/dist/fields/Checkbox/Input.js.map +1 -1
  274. package/dist/fields/Checkbox/index.js +2 -1
  275. package/dist/fields/Checkbox/index.js.map +1 -1
  276. package/dist/fields/Checkbox/index.scss +2 -1
  277. package/dist/fields/Checkbox/types.d.ts +2 -2
  278. package/dist/fields/Checkbox/types.d.ts.map +1 -1
  279. package/dist/fields/Checkbox/types.js.map +1 -1
  280. package/dist/fields/Code/index.d.ts +2 -2
  281. package/dist/fields/Code/index.d.ts.map +1 -1
  282. package/dist/fields/Code/index.js +1 -1
  283. package/dist/fields/Code/index.js.map +1 -1
  284. package/dist/fields/Code/index.scss +3 -21
  285. package/dist/fields/Collapsible/index.d.ts +2 -2
  286. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  287. package/dist/fields/Collapsible/index.js.map +1 -1
  288. package/dist/fields/Collapsible/index.scss +0 -4
  289. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  290. package/dist/fields/DateTime/index.d.ts +2 -2
  291. package/dist/fields/DateTime/index.d.ts.map +1 -1
  292. package/dist/fields/DateTime/index.js +1 -1
  293. package/dist/fields/DateTime/index.js.map +1 -1
  294. package/dist/fields/Email/index.d.ts +2 -2
  295. package/dist/fields/Email/index.d.ts.map +1 -1
  296. package/dist/fields/Email/index.js.map +1 -1
  297. package/dist/fields/FieldDescription/index.js.map +1 -1
  298. package/dist/fields/FieldError/index.js.map +1 -1
  299. package/dist/fields/FieldError/index.scss +6 -5
  300. package/dist/fields/FieldLabel/index.js.map +1 -1
  301. package/dist/fields/Group/index.d.ts +2 -2
  302. package/dist/fields/Group/index.d.ts.map +1 -1
  303. package/dist/fields/Group/index.js.map +1 -1
  304. package/dist/fields/Group/provider.js.map +1 -1
  305. package/dist/fields/Hidden/index.d.ts +2 -2
  306. package/dist/fields/Hidden/index.d.ts.map +1 -1
  307. package/dist/fields/Hidden/index.js.map +1 -1
  308. package/dist/fields/JSON/index.d.ts +2 -2
  309. package/dist/fields/JSON/index.d.ts.map +1 -1
  310. package/dist/fields/JSON/index.js +0 -5
  311. package/dist/fields/JSON/index.js.map +1 -1
  312. package/dist/fields/JSON/index.scss +6 -25
  313. package/dist/fields/Number/index.d.ts +2 -2
  314. package/dist/fields/Number/index.d.ts.map +1 -1
  315. package/dist/fields/Number/index.js +1 -3
  316. package/dist/fields/Number/index.js.map +1 -1
  317. package/dist/fields/Password/index.d.ts +2 -2
  318. package/dist/fields/Password/index.d.ts.map +1 -1
  319. package/dist/fields/Password/index.js.map +1 -1
  320. package/dist/fields/Point/index.d.ts +2 -2
  321. package/dist/fields/Point/index.d.ts.map +1 -1
  322. package/dist/fields/Point/index.js +6 -6
  323. package/dist/fields/Point/index.js.map +1 -1
  324. package/dist/fields/Point/index.scss +4 -0
  325. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  326. package/dist/fields/RadioGroup/index.d.ts +2 -2
  327. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  328. package/dist/fields/RadioGroup/index.js +7 -6
  329. package/dist/fields/RadioGroup/index.js.map +1 -1
  330. package/dist/fields/RadioGroup/index.scss +7 -0
  331. package/dist/fields/Relationship/AddNew/index.js.map +1 -1
  332. package/dist/fields/Relationship/AddNew/types.js.map +1 -1
  333. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  334. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  335. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  336. package/dist/fields/Relationship/index.js +1 -1
  337. package/dist/fields/Relationship/index.js.map +1 -1
  338. package/dist/fields/Relationship/index.scss +2 -2
  339. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  340. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  341. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  342. package/dist/fields/Relationship/types.d.ts +2 -2
  343. package/dist/fields/Relationship/types.d.ts.map +1 -1
  344. package/dist/fields/Relationship/types.js.map +1 -1
  345. package/dist/fields/RichText/index.d.ts +2 -2
  346. package/dist/fields/RichText/index.d.ts.map +1 -1
  347. package/dist/fields/RichText/index.js.map +1 -1
  348. package/dist/fields/Row/index.js.map +1 -1
  349. package/dist/fields/Row/provider.js.map +1 -1
  350. package/dist/fields/Row/types.d.ts +2 -2
  351. package/dist/fields/Row/types.d.ts.map +1 -1
  352. package/dist/fields/Row/types.js.map +1 -1
  353. package/dist/fields/Select/Input.d.ts +2 -2
  354. package/dist/fields/Select/Input.d.ts.map +1 -1
  355. package/dist/fields/Select/Input.js +0 -5
  356. package/dist/fields/Select/Input.js.map +1 -1
  357. package/dist/fields/Select/index.d.ts +2 -2
  358. package/dist/fields/Select/index.d.ts.map +1 -1
  359. package/dist/fields/Select/index.js +1 -1
  360. package/dist/fields/Select/index.js.map +1 -1
  361. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  362. package/dist/fields/Tabs/index.d.ts +2 -2
  363. package/dist/fields/Tabs/index.d.ts.map +1 -1
  364. package/dist/fields/Tabs/index.js.map +1 -1
  365. package/dist/fields/Tabs/provider.js.map +1 -1
  366. package/dist/fields/Text/Input.js.map +1 -1
  367. package/dist/fields/Text/index.js.map +1 -1
  368. package/dist/fields/Text/types.d.ts +4 -4
  369. package/dist/fields/Text/types.d.ts.map +1 -1
  370. package/dist/fields/Text/types.js.map +1 -1
  371. package/dist/fields/Textarea/Input.js.map +1 -1
  372. package/dist/fields/Textarea/index.d.ts.map +1 -1
  373. package/dist/fields/Textarea/index.js +1 -1
  374. package/dist/fields/Textarea/index.js.map +1 -1
  375. package/dist/fields/Textarea/types.d.ts +4 -4
  376. package/dist/fields/Textarea/types.d.ts.map +1 -1
  377. package/dist/fields/Textarea/types.js.map +1 -1
  378. package/dist/fields/UI/index.js.map +1 -1
  379. package/dist/fields/Upload/Input.d.ts +3 -2
  380. package/dist/fields/Upload/Input.d.ts.map +1 -1
  381. package/dist/fields/Upload/Input.js +2 -1
  382. package/dist/fields/Upload/Input.js.map +1 -1
  383. package/dist/fields/Upload/index.js.map +1 -1
  384. package/dist/fields/Upload/types.d.ts +2 -2
  385. package/dist/fields/Upload/types.d.ts.map +1 -1
  386. package/dist/fields/Upload/types.js.map +1 -1
  387. package/dist/fields/index.js.map +1 -1
  388. package/dist/fields/shared/index.js.map +1 -1
  389. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  390. package/dist/forms/Form/context.js.map +1 -1
  391. package/dist/forms/Form/createNestedFieldPath.js.map +1 -1
  392. package/dist/forms/Form/errorMessages.js.map +1 -1
  393. package/dist/forms/Form/fieldReducer.js +2 -2
  394. package/dist/forms/Form/fieldReducer.js.map +1 -1
  395. package/dist/forms/Form/index.d.ts.map +1 -1
  396. package/dist/forms/Form/index.js +8 -11
  397. package/dist/forms/Form/index.js.map +1 -1
  398. package/dist/forms/Form/initContextState.js.map +1 -1
  399. package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
  400. package/dist/forms/Form/mergeServerFormState.js +2 -2
  401. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  402. package/dist/forms/Form/rows.js.map +1 -1
  403. package/dist/forms/Form/types.d.ts +7 -7
  404. package/dist/forms/Form/types.d.ts.map +1 -1
  405. package/dist/forms/Form/types.js.map +1 -1
  406. package/dist/forms/NullifyField/index.js.map +1 -1
  407. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  408. package/dist/forms/RenderFields/index.js.map +1 -1
  409. package/dist/forms/RenderFields/index.scss +7 -4
  410. package/dist/forms/RenderFields/types.js.map +1 -1
  411. package/dist/forms/RowLabel/Context/index.d.ts +2 -2
  412. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  413. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  414. package/dist/forms/RowLabel/index.js.map +1 -1
  415. package/dist/forms/RowLabel/types.js.map +1 -1
  416. package/dist/forms/Submit/index.js.map +1 -1
  417. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  418. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js.map +1 -1
  419. package/dist/forms/WatchChildErrors/getNestedFieldState.js.map +1 -1
  420. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  421. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +2 -2
  422. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  423. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +1 -1
  424. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  425. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js +1 -1
  426. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js.map +1 -1
  427. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  428. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  429. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  430. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.d.ts +2 -2
  431. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.d.ts.map +1 -1
  432. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js.map +1 -1
  433. package/dist/forms/buildStateFromSchema/index.d.ts +4 -3
  434. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  435. package/dist/forms/buildStateFromSchema/index.js +1 -0
  436. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  437. package/dist/forms/buildStateFromSchema/iterateFields.d.ts +2 -2
  438. package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  439. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  440. package/dist/forms/useField/index.js.map +1 -1
  441. package/dist/forms/useField/types.js.map +1 -1
  442. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  443. package/dist/forms/withCondition/index.js.map +1 -1
  444. package/dist/graphics/Account/Default/index.js.map +1 -1
  445. package/dist/graphics/Account/Gravatar/index.d.ts.map +1 -1
  446. package/dist/graphics/Account/Gravatar/index.js +4 -4
  447. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  448. package/dist/graphics/Account/index.js.map +1 -1
  449. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  450. package/dist/graphics/ExternalLink/index.js.map +1 -1
  451. package/dist/graphics/File/index.js.map +1 -1
  452. package/dist/graphics/Icon/index.js.map +1 -1
  453. package/dist/graphics/Logo/index.js.map +1 -1
  454. package/dist/hooks/useDebounce.js.map +1 -1
  455. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  456. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  457. package/dist/hooks/useDelay.js.map +1 -1
  458. package/dist/hooks/useDelayedRender.js.map +1 -1
  459. package/dist/hooks/useHotkey.js +1 -1
  460. package/dist/hooks/useHotkey.js.map +1 -1
  461. package/dist/hooks/useIntersect.js +1 -1
  462. package/dist/hooks/useIntersect.js.map +1 -1
  463. package/dist/hooks/usePayloadAPI.js +2 -2
  464. package/dist/hooks/usePayloadAPI.js.map +1 -1
  465. package/dist/hooks/useResize.js.map +1 -1
  466. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  467. package/dist/hooks/useThrottledEffect.js +1 -1
  468. package/dist/hooks/useThrottledEffect.js.map +1 -1
  469. package/dist/hooks/useUseAsTitle.js.map +1 -1
  470. package/dist/icons/Calendar/index.js.map +1 -1
  471. package/dist/icons/Check/index.js.map +1 -1
  472. package/dist/icons/Chevron/index.js.map +1 -1
  473. package/dist/icons/CloseMenu/index.js.map +1 -1
  474. package/dist/icons/CodeBlock/index.js.map +1 -1
  475. package/dist/icons/Copy/index.js.map +1 -1
  476. package/dist/icons/DragHandle/index.js.map +1 -1
  477. package/dist/icons/Edit/index.js.map +1 -1
  478. package/dist/icons/Line/index.js.map +1 -1
  479. package/dist/icons/Link/index.js.map +1 -1
  480. package/dist/icons/LogOut/index.js.map +1 -1
  481. package/dist/icons/Menu/index.js.map +1 -1
  482. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  483. package/dist/icons/More/index.js.map +1 -1
  484. package/dist/icons/Plus/index.js.map +1 -1
  485. package/dist/icons/Search/index.js.map +1 -1
  486. package/dist/icons/Swap/index.js.map +1 -1
  487. package/dist/icons/X/index.js.map +1 -1
  488. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  489. package/dist/providers/Actions/index.js.map +1 -1
  490. package/dist/providers/Auth/index.d.ts +2 -0
  491. package/dist/providers/Auth/index.d.ts.map +1 -1
  492. package/dist/providers/Auth/index.js +8 -2
  493. package/dist/providers/Auth/index.js.map +1 -1
  494. package/dist/providers/ClientFunction/index.js.map +1 -1
  495. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
  496. package/dist/providers/ComponentMap/buildComponentMap/actions.js +3 -3
  497. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  498. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  499. package/dist/providers/ComponentMap/buildComponentMap/collections.js +17 -12
  500. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  501. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  502. package/dist/providers/ComponentMap/buildComponentMap/fields.js +1 -0
  503. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  504. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
  505. package/dist/providers/ComponentMap/buildComponentMap/globals.js +1 -0
  506. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  507. package/dist/providers/ComponentMap/buildComponentMap/index.js +2 -2
  508. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  509. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +3 -2
  510. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  511. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  512. package/dist/providers/ComponentMap/index.js.map +1 -1
  513. package/dist/providers/Config/index.js.map +1 -1
  514. package/dist/providers/DocumentEvents/index.js.map +1 -1
  515. package/dist/providers/DocumentInfo/index.d.ts +2 -2
  516. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  517. package/dist/providers/DocumentInfo/index.js +2 -2
  518. package/dist/providers/DocumentInfo/index.js.map +1 -1
  519. package/dist/providers/DocumentInfo/types.d.ts +6 -6
  520. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  521. package/dist/providers/DocumentInfo/types.js.map +1 -1
  522. package/dist/providers/EditDepth/index.js.map +1 -1
  523. package/dist/providers/EntityVisibility/index.js.map +1 -1
  524. package/dist/providers/FieldComponents/index.js.map +1 -1
  525. package/dist/providers/FormQueryParams/index.js.map +1 -1
  526. package/dist/providers/FormQueryParams/types.js.map +1 -1
  527. package/dist/providers/ListInfo/index.d.ts +2 -2
  528. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  529. package/dist/providers/ListInfo/index.js.map +1 -1
  530. package/dist/providers/ListQuery/index.d.ts +2 -2
  531. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  532. package/dist/providers/ListQuery/index.js +1 -1
  533. package/dist/providers/ListQuery/index.js.map +1 -1
  534. package/dist/providers/Locale/index.js.map +1 -1
  535. package/dist/providers/Operation/index.js.map +1 -1
  536. package/dist/providers/Params/index.js.map +1 -1
  537. package/dist/providers/Preferences/index.js +3 -3
  538. package/dist/providers/Preferences/index.js.map +1 -1
  539. package/dist/providers/Root/index.js.map +1 -1
  540. package/dist/providers/RouteCache/index.js.map +1 -1
  541. package/dist/providers/ScrollInfo/index.js.map +1 -1
  542. package/dist/providers/SearchParams/index.d.ts +1 -1
  543. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  544. package/dist/providers/SearchParams/index.js +1 -1
  545. package/dist/providers/SearchParams/index.js.map +1 -1
  546. package/dist/providers/Selection/index.js +2 -2
  547. package/dist/providers/Selection/index.js.map +1 -1
  548. package/dist/providers/Theme/index.js.map +1 -1
  549. package/dist/providers/ToastContainer/icons/Error.js +2 -2
  550. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  551. package/dist/providers/ToastContainer/icons/Info.js +2 -2
  552. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  553. package/dist/providers/ToastContainer/icons/Success.js +2 -2
  554. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  555. package/dist/providers/ToastContainer/icons/Warning.js +2 -2
  556. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  557. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  558. package/dist/providers/ToastContainer/index.js +3 -1
  559. package/dist/providers/ToastContainer/index.js.map +1 -1
  560. package/dist/providers/Translation/index.js.map +1 -1
  561. package/dist/providers/WindowInfo/index.js.map +1 -1
  562. package/dist/scss/app.scss +2 -2
  563. package/dist/scss/colors.scss +76 -76
  564. package/dist/scss/toasts.scss +67 -44
  565. package/dist/styles.css +1 -1
  566. package/dist/utilities/api.d.ts +2 -2
  567. package/dist/utilities/api.d.ts.map +1 -1
  568. package/dist/utilities/api.js +1 -1
  569. package/dist/utilities/api.js.map +1 -1
  570. package/dist/utilities/arraysHaveSameStrings.js.map +1 -1
  571. package/dist/utilities/buildComponentMap.js.map +1 -1
  572. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  573. package/dist/utilities/buildFieldSchemaMap/index.js +2 -5
  574. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  575. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +1 -2
  576. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  577. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +7 -11
  578. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  579. package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -1
  580. package/dist/utilities/buildFormState.d.ts +4 -4
  581. package/dist/utilities/buildFormState.d.ts.map +1 -1
  582. package/dist/utilities/buildFormState.js +1 -3
  583. package/dist/utilities/buildFormState.js.map +1 -1
  584. package/dist/utilities/canUseDOM.js.map +1 -1
  585. package/dist/utilities/dateLocales.js.map +1 -1
  586. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  587. package/dist/utilities/flattenFieldMap.js.map +1 -1
  588. package/dist/utilities/formatDate.js.map +1 -1
  589. package/dist/utilities/formatDocTitle.js.map +1 -1
  590. package/dist/utilities/formatFields.js.map +1 -1
  591. package/dist/utilities/generateFieldID.js.map +1 -1
  592. package/dist/utilities/getFormState.js.map +1 -1
  593. package/dist/utilities/getOffsetTop.js.map +1 -1
  594. package/dist/utilities/getRequestLanguage.js.map +1 -1
  595. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  596. package/dist/utilities/groupNavItems.js.map +1 -1
  597. package/dist/utilities/hasSavePermission.js.map +1 -1
  598. package/dist/utilities/isEditing.js.map +1 -1
  599. package/dist/utilities/reduceFieldsToValuesWithValidation.js +1 -1
  600. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  601. package/dist/utilities/scrollToID.js.map +1 -1
  602. package/dist/utilities/setsAreEqual.js.map +1 -1
  603. package/package.json +18 -27
  604. package/dist/exports/client/DatePicker-CBQPW5J5.js +0 -30
  605. package/dist/exports/client/DatePicker-CBQPW5J5.js.map +0 -8
  606. package/dist/exports/client/chunk-DODCWLCH.js +0 -14
  607. package/dist/exports/client/chunk-DODCWLCH.js.map +0 -8
  608. package/dist/forms/Form/getDataByPath.d.ts +0 -3
  609. package/dist/forms/Form/getDataByPath.d.ts.map +0 -1
  610. package/dist/forms/Form/getDataByPath.js +0 -18
  611. package/dist/forms/Form/getDataByPath.js.map +0 -1
  612. package/dist/forms/Form/getSiblingData.d.ts +0 -3
  613. package/dist/forms/Form/getSiblingData.d.ts.map +0 -1
  614. package/dist/forms/Form/getSiblingData.js +0 -33
  615. package/dist/forms/Form/getSiblingData.js.map +0 -1
  616. package/dist/utilities/reduceFieldsToValues.d.ts +0 -10
  617. package/dist/utilities/reduceFieldsToValues.d.ts.map +0 -1
  618. package/dist/utilities/reduceFieldsToValues.js +0 -22
  619. package/dist/utilities/reduceFieldsToValues.js.map +0 -1
  620. package/dist/utilities/unflatten.d.ts +0 -9
  621. package/dist/utilities/unflatten.d.ts.map +0 -1
  622. package/dist/utilities/unflatten.js +0 -58
  623. package/dist/utilities/unflatten.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Textarea/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAQxE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAA;AAuFhE,eAAO,MAAM,aAAa,8BAAgC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Textarea/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAQxE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,CAAA;AAuFhE,eAAO,MAAM,aAAa,8BAAgC,CAAA"}
@@ -1,4 +1,4 @@
1
- /* eslint-disable react/destructuring-assignment */ 'use client';
1
+ 'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import React, { useCallback } from 'react';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Textarea/index.tsx"],"sourcesContent":["/* eslint-disable react/destructuring-assignment */\n'use client'\nimport type { ClientValidate } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport type { TextAreaInputProps, TextareaFieldProps } from './types.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { isFieldRTL } from '../shared/index.js'\nimport { TextareaInput } from './Input.js'\nimport './index.scss'\n\nexport { TextAreaInputProps, TextareaFieldProps, TextareaInput }\n\nconst _TextareaField: React.FC<TextareaFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n locale,\n localized,\n maxLength,\n minLength,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n rows,\n rtl,\n style,\n validate,\n width,\n } = props\n\n const { i18n } = useTranslation()\n\n const { localization } = useConfig()\n\n const isRTL = isFieldRTL({\n fieldLocalized: localized,\n fieldRTL: rtl,\n locale,\n localizationConfig: localization || undefined,\n })\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, maxLength, minLength, required })\n },\n [validate, required, maxLength, minLength],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n return (\n <TextareaInput\n AfterInput={AfterInput}\n BeforeInput={BeforeInput}\n CustomDescription={CustomDescription}\n CustomError={CustomError}\n CustomLabel={CustomLabel}\n className={className}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n label={label}\n labelProps={labelProps}\n onChange={(e) => {\n setValue(e.target.value)\n }}\n path={path}\n placeholder={getTranslation(placeholder, i18n)}\n readOnly={disabled}\n required={required}\n rows={rows}\n rtl={isRTL}\n showError={showError}\n style={style}\n value={value}\n width={width}\n />\n )\n}\n\nexport const TextareaField = withCondition(_TextareaField)\n"],"names":["getTranslation","React","useCallback","useFieldProps","useField","withCondition","useConfig","useTranslation","isFieldRTL","TextareaInput","_TextareaField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","locale","localized","maxLength","minLength","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","rows","rtl","style","validate","width","i18n","localization","isRTL","fieldLocalized","fieldRTL","localizationConfig","undefined","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","disabled","onChange","e","target","TextareaField"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,iDAAiD,GACjD;;AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,SAASC,WAAW,QAAQ,QAAO;AAI1C,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,UAAU,QAAQ,qBAAoB;AAC/C,SAASC,aAAa,QAAQ,aAAY;AAC1C,OAAO,eAAc;AAErB,SAAiDA,aAAa,GAAE;AAEhE,MAAMC,iBAA+C,CAACC;IACpD,MAAM,EACJC,IAAI,EACJC,UAAU,EACVC,WAAW,EACXC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXC,SAAS,EACTC,gBAAgB,EAChBC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAM,EACNC,SAAS,EACTC,SAAS,EACTC,SAAS,EACTC,MAAMC,aAAa,EACnBC,WAAW,EACXC,UAAUC,iBAAiB,EAC3BC,QAAQ,EACRC,IAAI,EACJC,GAAG,EACHC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAG1B;IAEJ,MAAM,EAAE2B,IAAI,EAAE,GAAG/B;IAEjB,MAAM,EAAEgC,YAAY,EAAE,GAAGjC;IAEzB,MAAMkC,QAAQhC,WAAW;QACvBiC,gBAAgBjB;QAChBkB,UAAUR;QACVX;QACAoB,oBAAoBJ,gBAAgBK;IACtC;IAEA,MAAMC,mBAAmC3C,YACvC,CAAC4C,OAAOC;QACN,IAAI,OAAOX,aAAa,YACtB,OAAOA,SAASU,OAAO;YAAE,GAAGC,OAAO;YAAEtB;YAAWC;YAAWM;QAAS;IACxE,GACA;QAACI;QAAUJ;QAAUP;QAAWC;KAAU;IAG5C,MAAM,EAAEC,MAAMqB,eAAe,EAAElB,UAAUmB,mBAAmB,EAAE,GAAG9C;IAEjE,MAAM,EAAE+C,gBAAgB,EAAEC,cAAc,EAAExB,IAAI,EAAEyB,QAAQ,EAAEC,SAAS,EAAEP,KAAK,EAAE,GAAG1C,SAAiB;QAC9FuB,MAAMqB,mBAAmBpB,iBAAiBhB;QAC1CwB,UAAUS;IACZ;IAEA,MAAMS,WAAWvB,qBAAqBkB,uBAAuBE,kBAAkBD;IAE/E,qBACE,KAACzC;QACCI,YAAYA;QACZC,aAAaA;QACbC,mBAAmBA;QACnBC,aAAaA;QACbC,aAAaA;QACbC,WAAWA;QACXC,kBAAkBA;QAClBC,YAAYA;QACZC,OAAOA;QACPC,YAAYA;QACZiC,UAAU,CAACC;YACTJ,SAASI,EAAEC,MAAM,CAACX,KAAK;QACzB;QACAnB,MAAMA;QACNE,aAAa7B,eAAe6B,aAAaS;QACzCR,UAAUwB;QACVtB,UAAUA;QACVC,MAAMA;QACNC,KAAKM;QACLa,WAAWA;QACXlB,OAAOA;QACPW,OAAOA;QACPT,OAAOA;;AAGb;AAEA,OAAO,MAAMqB,gBAAgBrD,cAAcK,gBAAe"}
1
+ {"version":3,"sources":["../../../src/fields/Textarea/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientValidate } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback } from 'react'\n\nimport type { TextAreaInputProps, TextareaFieldProps } from './types.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { isFieldRTL } from '../shared/index.js'\nimport { TextareaInput } from './Input.js'\nimport './index.scss'\n\nexport { TextAreaInputProps, TextareaFieldProps, TextareaInput }\n\nconst _TextareaField: React.FC<TextareaFieldProps> = (props) => {\n const {\n name,\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n locale,\n localized,\n maxLength,\n minLength,\n path: pathFromProps,\n placeholder,\n readOnly: readOnlyFromProps,\n required,\n rows,\n rtl,\n style,\n validate,\n width,\n } = props\n\n const { i18n } = useTranslation()\n\n const { localization } = useConfig()\n\n const isRTL = isFieldRTL({\n fieldLocalized: localized,\n fieldRTL: rtl,\n locale,\n localizationConfig: localization || undefined,\n })\n\n const memoizedValidate: ClientValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function')\n return validate(value, { ...options, maxLength, minLength, required })\n },\n [validate, required, maxLength, minLength],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { formInitializing, formProcessing, path, setValue, showError, value } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n return (\n <TextareaInput\n AfterInput={AfterInput}\n BeforeInput={BeforeInput}\n CustomDescription={CustomDescription}\n CustomError={CustomError}\n CustomLabel={CustomLabel}\n className={className}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n label={label}\n labelProps={labelProps}\n onChange={(e) => {\n setValue(e.target.value)\n }}\n path={path}\n placeholder={getTranslation(placeholder, i18n)}\n readOnly={disabled}\n required={required}\n rows={rows}\n rtl={isRTL}\n showError={showError}\n style={style}\n value={value}\n width={width}\n />\n )\n}\n\nexport const TextareaField = withCondition(_TextareaField)\n"],"names":["getTranslation","React","useCallback","useFieldProps","useField","withCondition","useConfig","useTranslation","isFieldRTL","TextareaInput","_TextareaField","props","name","AfterInput","BeforeInput","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","locale","localized","maxLength","minLength","path","pathFromProps","placeholder","readOnly","readOnlyFromProps","required","rows","rtl","style","validate","width","i18n","localization","isRTL","fieldLocalized","fieldRTL","localizationConfig","undefined","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","disabled","onChange","e","target","TextareaField"],"mappings":"AAAA;;AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,SAASC,WAAW,QAAQ,QAAO;AAI1C,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,UAAU,QAAQ,qBAAoB;AAC/C,SAASC,aAAa,QAAQ,aAAY;AAC1C,OAAO,eAAc;AAErB,SAAiDA,aAAa,GAAE;AAEhE,MAAMC,iBAA+C,CAACC;IACpD,MAAM,EACJC,IAAI,EACJC,UAAU,EACVC,WAAW,EACXC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXC,SAAS,EACTC,gBAAgB,EAChBC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAM,EACNC,SAAS,EACTC,SAAS,EACTC,SAAS,EACTC,MAAMC,aAAa,EACnBC,WAAW,EACXC,UAAUC,iBAAiB,EAC3BC,QAAQ,EACRC,IAAI,EACJC,GAAG,EACHC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAG1B;IAEJ,MAAM,EAAE2B,IAAI,EAAE,GAAG/B;IAEjB,MAAM,EAAEgC,YAAY,EAAE,GAAGjC;IAEzB,MAAMkC,QAAQhC,WAAW;QACvBiC,gBAAgBjB;QAChBkB,UAAUR;QACVX;QACAoB,oBAAoBJ,gBAAgBK;IACtC;IAEA,MAAMC,mBAAmC3C,YACvC,CAAC4C,OAAOC;QACN,IAAI,OAAOX,aAAa,YACtB,OAAOA,SAASU,OAAO;YAAE,GAAGC,OAAO;YAAEtB;YAAWC;YAAWM;QAAS;IACxE,GACA;QAACI;QAAUJ;QAAUP;QAAWC;KAAU;IAG5C,MAAM,EAAEC,MAAMqB,eAAe,EAAElB,UAAUmB,mBAAmB,EAAE,GAAG9C;IAEjE,MAAM,EAAE+C,gBAAgB,EAAEC,cAAc,EAAExB,IAAI,EAAEyB,QAAQ,EAAEC,SAAS,EAAEP,KAAK,EAAE,GAAG1C,SAAiB;QAC9FuB,MAAMqB,mBAAmBpB,iBAAiBhB;QAC1CwB,UAAUS;IACZ;IAEA,MAAMS,WAAWvB,qBAAqBkB,uBAAuBE,kBAAkBD;IAE/E,qBACE,KAACzC;QACCI,YAAYA;QACZC,aAAaA;QACbC,mBAAmBA;QACnBC,aAAaA;QACbC,aAAaA;QACbC,WAAWA;QACXC,kBAAkBA;QAClBC,YAAYA;QACZC,OAAOA;QACPC,YAAYA;QACZiC,UAAU,CAACC;YACTJ,SAASI,EAAEC,MAAM,CAACX,KAAK;QACzB;QACAnB,MAAMA;QACNE,aAAa7B,eAAe6B,aAAaS;QACzCR,UAAUwB;QACVtB,UAAUA;QACVC,MAAMA;QACNC,KAAKM;QACLa,WAAWA;QACXlB,OAAOA;QACPW,OAAOA;QACPT,OAAOA;;AAGb;AAEA,OAAO,MAAMqB,gBAAgBrD,cAAcK,gBAAe"}
@@ -1,7 +1,7 @@
1
1
  import type { TextareaField as TextareaFieldType } from 'payload';
2
2
  import { type ChangeEvent } from 'react';
3
3
  import type { FormFieldBase } from '../shared/index.js';
4
- export type TextareaFieldProps = FormFieldBase & {
4
+ export type TextareaFieldProps = {
5
5
  maxLength?: number;
6
6
  minLength?: number;
7
7
  name?: string;
@@ -9,11 +9,11 @@ export type TextareaFieldProps = FormFieldBase & {
9
9
  placeholder?: TextareaFieldType['admin']['placeholder'];
10
10
  rows?: number;
11
11
  width?: string;
12
- };
13
- export type TextAreaInputProps = TextareaFieldProps & {
12
+ } & FormFieldBase;
13
+ export type TextAreaInputProps = {
14
14
  onChange?: (e: ChangeEvent<HTMLTextAreaElement>) => void;
15
15
  rows?: number;
16
16
  showError?: boolean;
17
17
  value?: string;
18
- };
18
+ } & TextareaFieldProps;
19
19
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/Textarea/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEjE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,OAAO,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG;IACpD,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IACxD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/Textarea/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEjE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,OAAO,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAA;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA;AAEjB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,mBAAmB,CAAC,KAAK,IAAI,CAAA;IACxD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,kBAAkB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Textarea/types.ts"],"sourcesContent":["import type { TextareaField as TextareaFieldType } from 'payload'\n\nimport { type ChangeEvent } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nexport type TextareaFieldProps = FormFieldBase & {\n maxLength?: number\n minLength?: number\n name?: string\n path?: string\n placeholder?: TextareaFieldType['admin']['placeholder']\n rows?: number\n width?: string\n}\n\nexport type TextAreaInputProps = TextareaFieldProps & {\n onChange?: (e: ChangeEvent<HTMLTextAreaElement>) => void\n rows?: number\n showError?: boolean\n value?: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAgBA,WAKC"}
1
+ {"version":3,"sources":["../../../src/fields/Textarea/types.ts"],"sourcesContent":["import type { TextareaField as TextareaFieldType } from 'payload'\n\nimport { type ChangeEvent } from 'react'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nexport type TextareaFieldProps = {\n maxLength?: number\n minLength?: number\n name?: string\n path?: string\n placeholder?: TextareaFieldType['admin']['placeholder']\n rows?: number\n width?: string\n} & FormFieldBase\n\nexport type TextAreaInputProps = {\n onChange?: (e: ChangeEvent<HTMLTextAreaElement>) => void\n rows?: number\n showError?: boolean\n value?: string\n} & TextareaFieldProps\n"],"names":[],"mappings":"AAgBA,WAKsB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/UI/index.tsx"],"sourcesContent":["import type React from 'react'\n\nexport const UIField: React.FC = () => {\n return null\n}\n"],"names":["UIField"],"rangeMappings":";;","mappings":"AAEA,OAAO,MAAMA,UAAoB;IAC/B,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/fields/UI/index.tsx"],"sourcesContent":["import type React from 'react'\n\nexport const UIField: React.FC = () => {\n return null\n}\n"],"names":["UIField"],"mappings":"AAEA,OAAO,MAAMA,UAAoB;IAC/B,OAAO;AACT,EAAC"}
@@ -2,15 +2,16 @@ import type { ClientCollectionConfig, FilterOptionsResult, UploadField } from 'p
2
2
  import React from 'react';
3
3
  import type { UploadFieldProps } from './types.js';
4
4
  import './index.scss';
5
- export type UploadInputProps = Omit<UploadFieldProps, 'filterOptions'> & {
5
+ export type UploadInputProps = {
6
6
  api?: string;
7
7
  collection?: ClientCollectionConfig;
8
+ customUploadActions?: React.ReactNode[];
8
9
  filterOptions?: FilterOptionsResult;
9
10
  onChange?: (e: any) => void;
10
11
  relationTo?: UploadField['relationTo'];
11
12
  serverURL?: string;
12
13
  showError?: boolean;
13
14
  value?: string;
14
- };
15
+ } & Omit<UploadFieldProps, 'filterOptions'>;
15
16
  export declare const UploadInput: React.FC<UploadInputProps>;
16
17
  //# sourceMappingURL=Input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/Input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAGvF,OAAO,KAA2C,MAAM,OAAO,CAAA;AAI/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAWlD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,GAAG;IACvE,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,sBAAsB,CAAA;IACnC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA8JlD,CAAA"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/Input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAGvF,OAAO,KAA2C,MAAM,OAAO,CAAA;AAI/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAWlD,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,sBAAsB,CAAA;IACnC,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IACvC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAA;IACtB,UAAU,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,CAAA;AAE3C,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAgKlD,CAAA"}
@@ -14,7 +14,7 @@ import { fieldBaseClass } from '../shared/index.js';
14
14
  import './index.scss';
15
15
  const baseClass = 'upload';
16
16
  export const UploadInput = (props)=>{
17
- const { CustomDescription, CustomError, CustomLabel, api = '/api', className, collection, descriptionProps, errorProps, filterOptions, label, labelProps, onChange, readOnly, relationTo, required, serverURL, showError, style, value, width } = props;
17
+ const { CustomDescription, CustomError, CustomLabel, api = '/api', className, collection, customUploadActions, descriptionProps, errorProps, filterOptions, label, labelProps, onChange, readOnly, relationTo, required, serverURL, showError, style, value, width } = props;
18
18
  const { i18n, t } = useTranslation();
19
19
  const [fileDoc, setFileDoc] = useState(undefined);
20
20
  const [missingFile, setMissingFile] = useState(false);
@@ -105,6 +105,7 @@ export const UploadInput = (props)=>{
105
105
  children: [
106
106
  fileDoc && !missingFile && /*#__PURE__*/ _jsx(FileDetails, {
107
107
  collectionSlug: relationTo,
108
+ customUploadActions: customUploadActions,
108
109
  doc: fileDoc,
109
110
  handleRemove: readOnly ? undefined : ()=>{
110
111
  onChange(null);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Upload/Input.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, FilterOptionsResult, UploadField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../../elements/DocumentDrawer/types.js'\nimport type { ListDrawerProps } from '../../elements/ListDrawer/types.js'\nimport type { UploadFieldProps } from './types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { FileDetails } from '../../elements/FileDetails/index.js'\nimport { useListDrawer } from '../../elements/ListDrawer/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'upload'\n\nexport type UploadInputProps = Omit<UploadFieldProps, 'filterOptions'> & {\n api?: string\n collection?: ClientCollectionConfig\n filterOptions?: FilterOptionsResult\n onChange?: (e) => void\n relationTo?: UploadField['relationTo']\n serverURL?: string\n showError?: boolean\n value?: string\n}\n\nexport const UploadInput: React.FC<UploadInputProps> = (props) => {\n const {\n CustomDescription,\n CustomError,\n CustomLabel,\n api = '/api',\n className,\n collection,\n descriptionProps,\n errorProps,\n filterOptions,\n label,\n labelProps,\n onChange,\n readOnly,\n relationTo,\n required,\n serverURL,\n showError,\n style,\n value,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const [fileDoc, setFileDoc] = useState(undefined)\n const [missingFile, setMissingFile] = useState(false)\n const [collectionSlugs] = useState([collection?.slug])\n\n const [DocumentDrawer, DocumentDrawerToggler, { closeDrawer }] = useDocumentDrawer({\n collectionSlug: collectionSlugs[0],\n })\n\n const [ListDrawer, ListDrawerToggler, { closeDrawer: closeListDrawer }] = useListDrawer({\n collectionSlugs,\n filterOptions,\n })\n\n useEffect(() => {\n if (value !== null && typeof value !== 'undefined' && value !== '') {\n const fetchFile = async () => {\n const response = await fetch(`${serverURL}${api}/${relationTo}/${value}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n if (response.ok) {\n const json = await response.json()\n setFileDoc(json)\n } else {\n setMissingFile(true)\n setFileDoc(undefined)\n }\n }\n\n void fetchFile()\n } else {\n setFileDoc(undefined)\n }\n }, [value, relationTo, api, serverURL, i18n])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n setMissingFile(false)\n onChange(args.doc)\n closeDrawer()\n },\n [onChange, closeDrawer],\n )\n\n const onSelect = useCallback<ListDrawerProps['onSelect']>(\n (args) => {\n setMissingFile(false)\n onChange({\n id: args.docID,\n })\n closeListDrawer()\n },\n [onChange, closeListDrawer],\n )\n\n if (collection.upload) {\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} {...(errorProps || {})} />\n\n {collection?.upload && (\n <React.Fragment>\n {fileDoc && !missingFile && (\n <FileDetails\n collectionSlug={relationTo}\n doc={fileDoc}\n handleRemove={\n readOnly\n ? undefined\n : () => {\n onChange(null)\n }\n }\n uploadConfig={collection.upload}\n />\n )}\n {(!fileDoc || missingFile) && (\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__buttons`}>\n <DocumentDrawerToggler className={`${baseClass}__toggler`} disabled={readOnly}>\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:uploadNewLabel', {\n label: getTranslation(collection.labels.singular, i18n),\n })}\n </Button>\n </DocumentDrawerToggler>\n <ListDrawerToggler className={`${baseClass}__toggler`} disabled={readOnly}>\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:chooseFromExisting')}\n </Button>\n </ListDrawerToggler>\n </div>\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </React.Fragment>\n )}\n {!readOnly && <DocumentDrawer onSave={onSave} />}\n {!readOnly && <ListDrawer onSelect={onSelect} />}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"names":["getTranslation","React","useCallback","useEffect","useState","Button","useDocumentDrawer","FileDetails","useListDrawer","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","baseClass","UploadInput","props","CustomDescription","CustomError","CustomLabel","api","className","collection","descriptionProps","errorProps","filterOptions","label","labelProps","onChange","readOnly","relationTo","required","serverURL","showError","style","value","width","i18n","t","fileDoc","setFileDoc","undefined","missingFile","setMissingFile","collectionSlugs","slug","DocumentDrawer","DocumentDrawerToggler","closeDrawer","collectionSlug","ListDrawer","ListDrawerToggler","closeListDrawer","fetchFile","response","fetch","credentials","headers","language","ok","json","onSave","args","doc","onSelect","id","docID","upload","div","filter","Boolean","join","Fragment","handleRemove","uploadConfig","disabled","buttonStyle","el","labels","singular"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/Upload/Input.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, FilterOptionsResult, UploadField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../../elements/DocumentDrawer/types.js'\nimport type { ListDrawerProps } from '../../elements/ListDrawer/types.js'\nimport type { UploadFieldProps } from './types.js'\n\nimport { Button } from '../../elements/Button/index.js'\nimport { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js'\nimport { FileDetails } from '../../elements/FileDetails/index.js'\nimport { useListDrawer } from '../../elements/ListDrawer/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nconst baseClass = 'upload'\n\nexport type UploadInputProps = {\n api?: string\n collection?: ClientCollectionConfig\n customUploadActions?: React.ReactNode[]\n filterOptions?: FilterOptionsResult\n onChange?: (e) => void\n relationTo?: UploadField['relationTo']\n serverURL?: string\n showError?: boolean\n value?: string\n} & Omit<UploadFieldProps, 'filterOptions'>\n\nexport const UploadInput: React.FC<UploadInputProps> = (props) => {\n const {\n CustomDescription,\n CustomError,\n CustomLabel,\n api = '/api',\n className,\n collection,\n customUploadActions,\n descriptionProps,\n errorProps,\n filterOptions,\n label,\n labelProps,\n onChange,\n readOnly,\n relationTo,\n required,\n serverURL,\n showError,\n style,\n value,\n width,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const [fileDoc, setFileDoc] = useState(undefined)\n const [missingFile, setMissingFile] = useState(false)\n const [collectionSlugs] = useState([collection?.slug])\n\n const [DocumentDrawer, DocumentDrawerToggler, { closeDrawer }] = useDocumentDrawer({\n collectionSlug: collectionSlugs[0],\n })\n\n const [ListDrawer, ListDrawerToggler, { closeDrawer: closeListDrawer }] = useListDrawer({\n collectionSlugs,\n filterOptions,\n })\n\n useEffect(() => {\n if (value !== null && typeof value !== 'undefined' && value !== '') {\n const fetchFile = async () => {\n const response = await fetch(`${serverURL}${api}/${relationTo}/${value}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n if (response.ok) {\n const json = await response.json()\n setFileDoc(json)\n } else {\n setMissingFile(true)\n setFileDoc(undefined)\n }\n }\n\n void fetchFile()\n } else {\n setFileDoc(undefined)\n }\n }, [value, relationTo, api, serverURL, i18n])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n setMissingFile(false)\n onChange(args.doc)\n closeDrawer()\n },\n [onChange, closeDrawer],\n )\n\n const onSelect = useCallback<ListDrawerProps['onSelect']>(\n (args) => {\n setMissingFile(false)\n onChange({\n id: args.docID,\n })\n closeListDrawer()\n },\n [onChange, closeListDrawer],\n )\n\n if (collection.upload) {\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} {...(errorProps || {})} />\n\n {collection?.upload && (\n <React.Fragment>\n {fileDoc && !missingFile && (\n <FileDetails\n collectionSlug={relationTo}\n customUploadActions={customUploadActions}\n doc={fileDoc}\n handleRemove={\n readOnly\n ? undefined\n : () => {\n onChange(null)\n }\n }\n uploadConfig={collection.upload}\n />\n )}\n {(!fileDoc || missingFile) && (\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__buttons`}>\n <DocumentDrawerToggler className={`${baseClass}__toggler`} disabled={readOnly}>\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:uploadNewLabel', {\n label: getTranslation(collection.labels.singular, i18n),\n })}\n </Button>\n </DocumentDrawerToggler>\n <ListDrawerToggler className={`${baseClass}__toggler`} disabled={readOnly}>\n <Button buttonStyle=\"secondary\" disabled={readOnly} el=\"div\">\n {t('fields:chooseFromExisting')}\n </Button>\n </ListDrawerToggler>\n </div>\n </div>\n )}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </React.Fragment>\n )}\n {!readOnly && <DocumentDrawer onSave={onSave} />}\n {!readOnly && <ListDrawer onSelect={onSelect} />}\n </div>\n </div>\n )\n }\n\n return null\n}\n"],"names":["getTranslation","React","useCallback","useEffect","useState","Button","useDocumentDrawer","FileDetails","useListDrawer","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","baseClass","UploadInput","props","CustomDescription","CustomError","CustomLabel","api","className","collection","customUploadActions","descriptionProps","errorProps","filterOptions","label","labelProps","onChange","readOnly","relationTo","required","serverURL","showError","style","value","width","i18n","t","fileDoc","setFileDoc","undefined","missingFile","setMissingFile","collectionSlugs","slug","DocumentDrawer","DocumentDrawerToggler","closeDrawer","collectionSlug","ListDrawer","ListDrawerToggler","closeListDrawer","fetchFile","response","fetch","credentials","headers","language","ok","json","onSave","args","doc","onSelect","id","docID","upload","div","filter","Boolean","join","Fragment","handleRemove","uploadConfig","disabled","buttonStyle","el","labels","singular"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Upload/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback } from 'react'\n\nimport type { UploadInputProps } from './Input.js'\nimport type { UploadFieldProps } from './types.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { UploadInput } from './Input.js'\nimport './index.scss'\n\nexport { UploadFieldProps, UploadInput }\nexport type { UploadInputProps }\n\nconst _Upload: React.FC<UploadFieldProps> = (props) => {\n const {\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n relationTo,\n required,\n style,\n validate,\n width,\n } = props\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const collection = collections.find((coll) => coll.slug === relationTo)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { filterOptions, formInitializing, formProcessing, path, setValue, showError, value } =\n useField<string>({\n path: pathFromContext ?? pathFromProps,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const onChange = useCallback(\n (incomingValue) => {\n const incomingID = incomingValue?.id || incomingValue\n setValue(incomingID)\n },\n [setValue],\n )\n\n if (collection.upload) {\n return (\n <UploadInput\n CustomDescription={CustomDescription}\n CustomError={CustomError}\n CustomLabel={CustomLabel}\n api={api}\n className={className}\n collection={collection}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n filterOptions={filterOptions}\n label={label}\n labelProps={labelProps}\n onChange={onChange}\n path={path}\n readOnly={disabled}\n relationTo={relationTo}\n required={required}\n serverURL={serverURL}\n showError={showError}\n style={style}\n value={value}\n width={width}\n />\n )\n }\n\n return null\n}\n\nexport const UploadField = withCondition(_Upload)\n"],"names":["React","useCallback","useFieldProps","useField","withCondition","useConfig","UploadInput","_Upload","props","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","relationTo","required","style","validate","width","collections","routes","api","serverURL","collection","find","coll","slug","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","filterOptions","formInitializing","formProcessing","setValue","showError","disabled","onChange","incomingValue","incomingID","id","upload","UploadField"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAEA,OAAOA,SAASC,WAAW,QAAQ,QAAO;AAK1C,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,WAAW,QAAQ,aAAY;AACxC,OAAO,eAAc;AAErB,SAA2BA,WAAW,GAAE;AAGxC,MAAMC,UAAsC,CAACC;IAC3C,MAAM,EACJC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXC,SAAS,EACTC,gBAAgB,EAChBC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,UAAUC,iBAAiB,EAC3BC,UAAU,EACVC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGjB;IAEJ,MAAM,EACJkB,WAAW,EACXC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGxB;IAEJ,MAAMyB,aAAaJ,YAAYK,IAAI,CAAC,CAACC,OAASA,KAAKC,IAAI,KAAKZ;IAE5D,MAAMa,mBAAmBjC,YACvB,CAACkC,OAAOC;QACN,IAAI,OAAOZ,aAAa,YAAY;YAClC,OAAOA,SAASW,OAAO;gBAAE,GAAGC,OAAO;gBAAEd;YAAS;QAChD;IACF,GACA;QAACE;QAAUF;KAAS;IAGtB,MAAM,EAAEL,MAAMoB,eAAe,EAAElB,UAAUmB,mBAAmB,EAAE,GAAGpC;IAEjE,MAAM,EAAEqC,aAAa,EAAEC,gBAAgB,EAAEC,cAAc,EAAExB,IAAI,EAAEyB,QAAQ,EAAEC,SAAS,EAAER,KAAK,EAAE,GACzFhC,SAAiB;QACfc,MAAMoB,mBAAmBnB;QACzBM,UAAUU;IACZ;IAEF,MAAMU,WAAWxB,qBAAqBkB,uBAAuBG,kBAAkBD;IAE/E,MAAMK,WAAW5C,YACf,CAAC6C;QACC,MAAMC,aAAaD,eAAeE,MAAMF;QACxCJ,SAASK;IACX,GACA;QAACL;KAAS;IAGZ,IAAIZ,WAAWmB,MAAM,EAAE;QACrB,qBACE,KAAC3C;YACCG,mBAAmBA;YACnBC,aAAaA;YACbC,aAAaA;YACbiB,KAAKA;YACLhB,WAAWA;YACXkB,YAAYA;YACZjB,kBAAkBA;YAClBC,YAAYA;YACZyB,eAAeA;YACfxB,OAAOA;YACPC,YAAYA;YACZ6B,UAAUA;YACV5B,MAAMA;YACNE,UAAUyB;YACVvB,YAAYA;YACZC,UAAUA;YACVO,WAAWA;YACXc,WAAWA;YACXpB,OAAOA;YACPY,OAAOA;YACPV,OAAOA;;IAGb;IAEA,OAAO;AACT;AAEA,OAAO,MAAMyB,cAAc9C,cAAcG,SAAQ"}
1
+ {"version":3,"sources":["../../../src/fields/Upload/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback } from 'react'\n\nimport type { UploadInputProps } from './Input.js'\nimport type { UploadFieldProps } from './types.js'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { UploadInput } from './Input.js'\nimport './index.scss'\n\nexport { UploadFieldProps, UploadInput }\nexport type { UploadInputProps }\n\nconst _Upload: React.FC<UploadFieldProps> = (props) => {\n const {\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n relationTo,\n required,\n style,\n validate,\n width,\n } = props\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const collection = collections.find((coll) => coll.slug === relationTo)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n if (typeof validate === 'function') {\n return validate(value, { ...options, required })\n }\n },\n [validate, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const { filterOptions, formInitializing, formProcessing, path, setValue, showError, value } =\n useField<string>({\n path: pathFromContext ?? pathFromProps,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const onChange = useCallback(\n (incomingValue) => {\n const incomingID = incomingValue?.id || incomingValue\n setValue(incomingID)\n },\n [setValue],\n )\n\n if (collection.upload) {\n return (\n <UploadInput\n CustomDescription={CustomDescription}\n CustomError={CustomError}\n CustomLabel={CustomLabel}\n api={api}\n className={className}\n collection={collection}\n descriptionProps={descriptionProps}\n errorProps={errorProps}\n filterOptions={filterOptions}\n label={label}\n labelProps={labelProps}\n onChange={onChange}\n path={path}\n readOnly={disabled}\n relationTo={relationTo}\n required={required}\n serverURL={serverURL}\n showError={showError}\n style={style}\n value={value}\n width={width}\n />\n )\n }\n\n return null\n}\n\nexport const UploadField = withCondition(_Upload)\n"],"names":["React","useCallback","useFieldProps","useField","withCondition","useConfig","UploadInput","_Upload","props","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","relationTo","required","style","validate","width","collections","routes","api","serverURL","collection","find","coll","slug","memoizedValidate","value","options","pathFromContext","readOnlyFromContext","filterOptions","formInitializing","formProcessing","setValue","showError","disabled","onChange","incomingValue","incomingID","id","upload","UploadField"],"mappings":"AAAA;;AAEA,OAAOA,SAASC,WAAW,QAAQ,QAAO;AAK1C,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,WAAW,QAAQ,aAAY;AACxC,OAAO,eAAc;AAErB,SAA2BA,WAAW,GAAE;AAGxC,MAAMC,UAAsC,CAACC;IAC3C,MAAM,EACJC,iBAAiB,EACjBC,WAAW,EACXC,WAAW,EACXC,SAAS,EACTC,gBAAgB,EAChBC,UAAU,EACVC,KAAK,EACLC,UAAU,EACVC,MAAMC,aAAa,EACnBC,UAAUC,iBAAiB,EAC3BC,UAAU,EACVC,QAAQ,EACRC,KAAK,EACLC,QAAQ,EACRC,KAAK,EACN,GAAGjB;IAEJ,MAAM,EACJkB,WAAW,EACXC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGxB;IAEJ,MAAMyB,aAAaJ,YAAYK,IAAI,CAAC,CAACC,OAASA,KAAKC,IAAI,KAAKZ;IAE5D,MAAMa,mBAAmBjC,YACvB,CAACkC,OAAOC;QACN,IAAI,OAAOZ,aAAa,YAAY;YAClC,OAAOA,SAASW,OAAO;gBAAE,GAAGC,OAAO;gBAAEd;YAAS;QAChD;IACF,GACA;QAACE;QAAUF;KAAS;IAGtB,MAAM,EAAEL,MAAMoB,eAAe,EAAElB,UAAUmB,mBAAmB,EAAE,GAAGpC;IAEjE,MAAM,EAAEqC,aAAa,EAAEC,gBAAgB,EAAEC,cAAc,EAAExB,IAAI,EAAEyB,QAAQ,EAAEC,SAAS,EAAER,KAAK,EAAE,GACzFhC,SAAiB;QACfc,MAAMoB,mBAAmBnB;QACzBM,UAAUU;IACZ;IAEF,MAAMU,WAAWxB,qBAAqBkB,uBAAuBG,kBAAkBD;IAE/E,MAAMK,WAAW5C,YACf,CAAC6C;QACC,MAAMC,aAAaD,eAAeE,MAAMF;QACxCJ,SAASK;IACX,GACA;QAACL;KAAS;IAGZ,IAAIZ,WAAWmB,MAAM,EAAE;QACrB,qBACE,KAAC3C;YACCG,mBAAmBA;YACnBC,aAAaA;YACbC,aAAaA;YACbiB,KAAKA;YACLhB,WAAWA;YACXkB,YAAYA;YACZjB,kBAAkBA;YAClBC,YAAYA;YACZyB,eAAeA;YACfxB,OAAOA;YACPC,YAAYA;YACZ6B,UAAUA;YACV5B,MAAMA;YACNE,UAAUyB;YACVvB,YAAYA;YACZC,UAAUA;YACVO,WAAWA;YACXc,WAAWA;YACXpB,OAAOA;YACPY,OAAOA;YACPV,OAAOA;;IAGb;IAEA,OAAO;AACT;AAEA,OAAO,MAAMyB,cAAc9C,cAAcG,SAAQ"}
@@ -1,10 +1,10 @@
1
1
  import type { UploadField } from 'payload';
2
2
  import type { FormFieldBase } from '../shared/index.js';
3
- export type UploadFieldProps = FormFieldBase & {
3
+ export type UploadFieldProps = {
4
4
  filterOptions?: UploadField['filterOptions'];
5
5
  name?: string;
6
6
  path?: string;
7
7
  relationTo?: UploadField['relationTo'];
8
8
  width?: string;
9
- };
9
+ } & FormFieldBase;
10
10
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,aAAa,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/fields/Upload/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAE1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAEvD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,aAAa,CAAC,EAAE,WAAW,CAAC,eAAe,CAAC,CAAA;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,GAAG,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Upload/types.ts"],"sourcesContent":["import type { UploadField } from 'payload'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nexport type UploadFieldProps = FormFieldBase & {\n filterOptions?: UploadField['filterOptions']\n name?: string\n path?: string\n relationTo?: UploadField['relationTo']\n width?: string\n}\n"],"names":[],"rangeMappings":"","mappings":"AAIA,WAMC"}
1
+ {"version":3,"sources":["../../../src/fields/Upload/types.ts"],"sourcesContent":["import type { UploadField } from 'payload'\n\nimport type { FormFieldBase } from '../shared/index.js'\n\nexport type UploadFieldProps = {\n filterOptions?: UploadField['filterOptions']\n name?: string\n path?: string\n relationTo?: UploadField['relationTo']\n width?: string\n} & FormFieldBase\n"],"names":[],"mappings":"AAIA,WAMiB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/fields/index.tsx"],"sourcesContent":["import type { FieldTypes } from 'payload'\n\nimport { ArrayField } from './Array/index.js'\nimport { BlocksField } from './Blocks/index.js'\nimport { CheckboxField } from './Checkbox/index.js'\nimport { CodeField } from './Code/index.js'\nimport { CollapsibleField } from './Collapsible/index.js'\nimport { ConfirmPasswordField } from './ConfirmPassword/index.js'\nimport { DateTimeField } from './DateTime/index.js'\nimport { EmailField } from './Email/index.js'\nimport { GroupField } from './Group/index.js'\nimport { HiddenField } from './Hidden/index.js'\nimport { JSONField } from './JSON/index.js'\nimport { NumberField } from './Number/index.js'\nimport { PasswordField } from './Password/index.js'\nimport { PointField } from './Point/index.js'\nimport { RadioGroupField } from './RadioGroup/index.js'\nimport { RelationshipField } from './Relationship/index.js'\nimport { RichTextField } from './RichText/index.js'\nimport { RowField } from './Row/index.js'\nimport { SelectField } from './Select/index.js'\nimport { TabsField } from './Tabs/index.js'\nimport { TextField } from './Text/index.js'\nimport { TextareaField } from './Textarea/index.js'\nimport { UIField } from './UI/index.js'\nimport { UploadField } from './Upload/index.js'\n\nexport * from './shared/index.js'\n\nexport const fieldComponents: FieldTypes = {\n array: ArrayField,\n blocks: BlocksField,\n checkbox: CheckboxField,\n code: CodeField,\n collapsible: CollapsibleField,\n confirmPassword: ConfirmPasswordField,\n date: DateTimeField,\n email: EmailField,\n group: GroupField,\n hidden: HiddenField,\n json: JSONField,\n number: NumberField,\n password: PasswordField,\n point: PointField,\n radio: RadioGroupField,\n relationship: RelationshipField,\n richText: RichTextField,\n row: RowField,\n select: SelectField,\n tabs: TabsField,\n text: TextField,\n textarea: TextareaField,\n ui: UIField,\n upload: UploadField,\n}\n"],"names":["ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","ConfirmPasswordField","DateTimeField","EmailField","GroupField","HiddenField","JSONField","NumberField","PasswordField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","fieldComponents","array","blocks","checkbox","code","collapsible","confirmPassword","date","email","group","hidden","json","number","password","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,gBAAgB,QAAQ,yBAAwB;AACzD,SAASC,oBAAoB,QAAQ,6BAA4B;AACjE,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,iBAAiB,QAAQ,0BAAyB;AAC3D,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,QAAQ,QAAQ,iBAAgB;AACzC,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,OAAO,QAAQ,gBAAe;AACvC,SAASC,WAAW,QAAQ,oBAAmB;AAE/C,cAAc,oBAAmB;AAEjC,OAAO,MAAMC,kBAA8B;IACzCC,OAAOzB;IACP0B,QAAQzB;IACR0B,UAAUzB;IACV0B,MAAMzB;IACN0B,aAAazB;IACb0B,iBAAiBzB;IACjB0B,MAAMzB;IACN0B,OAAOzB;IACP0B,OAAOzB;IACP0B,QAAQzB;IACR0B,MAAMzB;IACN0B,QAAQzB;IACR0B,UAAUzB;IACV0B,OAAOzB;IACP0B,OAAOzB;IACP0B,cAAczB;IACd0B,UAAUzB;IACV0B,KAAKzB;IACL0B,QAAQzB;IACR0B,MAAMzB;IACN0B,MAAMzB;IACN0B,UAAUzB;IACV0B,IAAIzB;IACJ0B,QAAQzB;AACV,EAAC"}
1
+ {"version":3,"sources":["../../src/fields/index.tsx"],"sourcesContent":["import type { FieldTypes } from 'payload'\n\nimport { ArrayField } from './Array/index.js'\nimport { BlocksField } from './Blocks/index.js'\nimport { CheckboxField } from './Checkbox/index.js'\nimport { CodeField } from './Code/index.js'\nimport { CollapsibleField } from './Collapsible/index.js'\nimport { ConfirmPasswordField } from './ConfirmPassword/index.js'\nimport { DateTimeField } from './DateTime/index.js'\nimport { EmailField } from './Email/index.js'\nimport { GroupField } from './Group/index.js'\nimport { HiddenField } from './Hidden/index.js'\nimport { JSONField } from './JSON/index.js'\nimport { NumberField } from './Number/index.js'\nimport { PasswordField } from './Password/index.js'\nimport { PointField } from './Point/index.js'\nimport { RadioGroupField } from './RadioGroup/index.js'\nimport { RelationshipField } from './Relationship/index.js'\nimport { RichTextField } from './RichText/index.js'\nimport { RowField } from './Row/index.js'\nimport { SelectField } from './Select/index.js'\nimport { TabsField } from './Tabs/index.js'\nimport { TextField } from './Text/index.js'\nimport { TextareaField } from './Textarea/index.js'\nimport { UIField } from './UI/index.js'\nimport { UploadField } from './Upload/index.js'\n\nexport * from './shared/index.js'\n\nexport const fieldComponents: FieldTypes = {\n array: ArrayField,\n blocks: BlocksField,\n checkbox: CheckboxField,\n code: CodeField,\n collapsible: CollapsibleField,\n confirmPassword: ConfirmPasswordField,\n date: DateTimeField,\n email: EmailField,\n group: GroupField,\n hidden: HiddenField,\n json: JSONField,\n number: NumberField,\n password: PasswordField,\n point: PointField,\n radio: RadioGroupField,\n relationship: RelationshipField,\n richText: RichTextField,\n row: RowField,\n select: SelectField,\n tabs: TabsField,\n text: TextField,\n textarea: TextareaField,\n ui: UIField,\n upload: UploadField,\n}\n"],"names":["ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","ConfirmPasswordField","DateTimeField","EmailField","GroupField","HiddenField","JSONField","NumberField","PasswordField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","fieldComponents","array","blocks","checkbox","code","collapsible","confirmPassword","date","email","group","hidden","json","number","password","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload"],"mappings":"AAEA,SAASA,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,gBAAgB,QAAQ,yBAAwB;AACzD,SAASC,oBAAoB,QAAQ,6BAA4B;AACjE,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,iBAAiB,QAAQ,0BAAyB;AAC3D,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,QAAQ,QAAQ,iBAAgB;AACzC,SAASC,WAAW,QAAQ,oBAAmB;AAC/C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,SAAS,QAAQ,kBAAiB;AAC3C,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,OAAO,QAAQ,gBAAe;AACvC,SAASC,WAAW,QAAQ,oBAAmB;AAE/C,cAAc,oBAAmB;AAEjC,OAAO,MAAMC,kBAA8B;IACzCC,OAAOzB;IACP0B,QAAQzB;IACR0B,UAAUzB;IACV0B,MAAMzB;IACN0B,aAAazB;IACb0B,iBAAiBzB;IACjB0B,MAAMzB;IACN0B,OAAOzB;IACP0B,OAAOzB;IACP0B,QAAQzB;IACR0B,MAAMzB;IACN0B,QAAQzB;IACR0B,UAAUzB;IACV0B,OAAOzB;IACP0B,OAAOzB;IACP0B,cAAczB;IACd0B,UAAUzB;IACV0B,KAAKzB;IACL0B,QAAQzB;IACR0B,MAAMzB;IACN0B,MAAMzB;IACN0B,UAAUzB;IACV0B,IAAIzB;IACJ0B,QAAQzB;AACV,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/shared/index.tsx"],"sourcesContent":["import type {\n DocumentPreferences,\n ErrorProps,\n FieldDescriptionProps,\n LabelProps,\n Locale,\n SanitizedLabelProps,\n SanitizedLocalizationConfig,\n User,\n Validate,\n} from 'payload'\n\nexport const fieldBaseClass = 'field-type'\n\nexport type FormFieldBase = {\n AfterInput?: React.ReactNode\n BeforeInput?: React.ReactNode\n CustomDescription?: React.ReactNode\n CustomError?: React.ReactNode\n CustomLabel?: React.ReactNode\n className?: string\n custom?: Record<string, any>\n descriptionProps?: FieldDescriptionProps\n disabled?: boolean\n docPreferences?: DocumentPreferences\n errorProps?: ErrorProps\n label?: LabelProps['label']\n labelProps?: SanitizedLabelProps\n locale?: Locale\n localized?: boolean\n path?: string\n readOnly?: boolean\n required?: boolean\n rtl?: boolean\n style?: React.CSSProperties\n user?: User\n validate?: Validate\n}\n\n/**\n * Determines whether a field should be displayed as right-to-left (RTL) based on its configuration, payload's localization configuration and the adming user's currently enabled locale.\n\n * @returns Whether the field should be displayed as RTL.\n */\nexport function isFieldRTL({\n fieldLocalized,\n fieldRTL,\n locale,\n localizationConfig,\n}: {\n fieldLocalized: boolean\n fieldRTL: boolean\n locale: Locale\n localizationConfig?: SanitizedLocalizationConfig\n}) {\n const hasMultipleLocales =\n locale &&\n localizationConfig &&\n localizationConfig.locales &&\n localizationConfig.locales.length > 1\n\n const isCurrentLocaleDefaultLocale = locale?.code === localizationConfig?.defaultLocale\n\n return (\n (fieldRTL !== false &&\n locale?.rtl === true &&\n (fieldLocalized ||\n (!fieldLocalized && !hasMultipleLocales) || // If there is only one locale which is also rtl, that field is rtl too\n (!fieldLocalized && isCurrentLocaleDefaultLocale))) || // If the current locale is the default locale, but the field is not localized, that field is rtl too\n fieldRTL === true\n ) // If fieldRTL is true. This should be useful for when no localization is set at all in the payload config, but you still want fields to be rtl.\n}\n"],"names":["fieldBaseClass","isFieldRTL","fieldLocalized","fieldRTL","locale","localizationConfig","hasMultipleLocales","locales","length","isCurrentLocaleDefaultLocale","code","defaultLocale","rtl"],"rangeMappings":";;;;;;;;;;;;","mappings":"AAYA,OAAO,MAAMA,iBAAiB,aAAY;AA2B1C;;;;CAIC,GACD,OAAO,SAASC,WAAW,EACzBC,cAAc,EACdC,QAAQ,EACRC,MAAM,EACNC,kBAAkB,EAMnB;IACC,MAAMC,qBACJF,UACAC,sBACAA,mBAAmBE,OAAO,IAC1BF,mBAAmBE,OAAO,CAACC,MAAM,GAAG;IAEtC,MAAMC,+BAA+BL,QAAQM,SAASL,oBAAoBM;IAE1E,OACE,AAACR,aAAa,SACZC,QAAQQ,QAAQ,QACfV,CAAAA,kBACE,CAACA,kBAAkB,CAACI,sBAAuB,uEAAuE;IAClH,CAACJ,kBAAkBO,4BAA4B,KAAO,qGAAqG;IAChKN,aAAa,KACb,gJAAgJ;;AACpJ"}
1
+ {"version":3,"sources":["../../../src/fields/shared/index.tsx"],"sourcesContent":["import type {\n DocumentPreferences,\n ErrorProps,\n FieldDescriptionProps,\n LabelProps,\n Locale,\n SanitizedLabelProps,\n SanitizedLocalizationConfig,\n User,\n Validate,\n} from 'payload'\n\nexport const fieldBaseClass = 'field-type'\n\nexport type FormFieldBase = {\n AfterInput?: React.ReactNode\n BeforeInput?: React.ReactNode\n CustomDescription?: React.ReactNode\n CustomError?: React.ReactNode\n CustomLabel?: React.ReactNode\n className?: string\n custom?: Record<string, any>\n descriptionProps?: FieldDescriptionProps\n disabled?: boolean\n docPreferences?: DocumentPreferences\n errorProps?: ErrorProps\n label?: LabelProps['label']\n labelProps?: SanitizedLabelProps\n locale?: Locale\n localized?: boolean\n path?: string\n readOnly?: boolean\n required?: boolean\n rtl?: boolean\n style?: React.CSSProperties\n user?: User\n validate?: Validate\n}\n\n/**\n * Determines whether a field should be displayed as right-to-left (RTL) based on its configuration, payload's localization configuration and the adming user's currently enabled locale.\n\n * @returns Whether the field should be displayed as RTL.\n */\nexport function isFieldRTL({\n fieldLocalized,\n fieldRTL,\n locale,\n localizationConfig,\n}: {\n fieldLocalized: boolean\n fieldRTL: boolean\n locale: Locale\n localizationConfig?: SanitizedLocalizationConfig\n}) {\n const hasMultipleLocales =\n locale &&\n localizationConfig &&\n localizationConfig.locales &&\n localizationConfig.locales.length > 1\n\n const isCurrentLocaleDefaultLocale = locale?.code === localizationConfig?.defaultLocale\n\n return (\n (fieldRTL !== false &&\n locale?.rtl === true &&\n (fieldLocalized ||\n (!fieldLocalized && !hasMultipleLocales) || // If there is only one locale which is also rtl, that field is rtl too\n (!fieldLocalized && isCurrentLocaleDefaultLocale))) || // If the current locale is the default locale, but the field is not localized, that field is rtl too\n fieldRTL === true\n ) // If fieldRTL is true. This should be useful for when no localization is set at all in the payload config, but you still want fields to be rtl.\n}\n"],"names":["fieldBaseClass","isFieldRTL","fieldLocalized","fieldRTL","locale","localizationConfig","hasMultipleLocales","locales","length","isCurrentLocaleDefaultLocale","code","defaultLocale","rtl"],"mappings":"AAYA,OAAO,MAAMA,iBAAiB,aAAY;AA2B1C;;;;CAIC,GACD,OAAO,SAASC,WAAW,EACzBC,cAAc,EACdC,QAAQ,EACRC,MAAM,EACNC,kBAAkB,EAMnB;IACC,MAAMC,qBACJF,UACAC,sBACAA,mBAAmBE,OAAO,IAC1BF,mBAAmBE,OAAO,CAACC,MAAM,GAAG;IAEtC,MAAMC,+BAA+BL,QAAQM,SAASL,oBAAoBM;IAE1E,OACE,AAACR,aAAa,SACZC,QAAQQ,QAAQ,QACfV,CAAAA,kBACE,CAACA,kBAAkB,CAACI,sBAAuB,uEAAuE;IAClH,CAACJ,kBAAkBO,4BAA4B,KAAO,qGAAqG;IAChKN,aAAa,KACb,gJAAgJ;;AACpJ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/FieldPropsProvider/index.tsx"],"sourcesContent":["'use client'\nimport type { FieldPermissions, FieldTypes } from 'payload'\n\nimport React from 'react'\n\nexport type FieldPropsContextType = {\n custom?: Record<any, string>\n indexPath?: string\n path: string\n permissions?: FieldPermissions\n readOnly: boolean\n schemaPath: string\n siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n type: keyof FieldTypes\n}\n\nconst FieldPropsContext = React.createContext<FieldPropsContextType>({\n type: undefined as keyof FieldTypes,\n custom: {},\n indexPath: undefined,\n path: undefined,\n permissions: {} as FieldPermissions,\n readOnly: false,\n schemaPath: undefined,\n siblingPermissions: {},\n})\n\nexport type Props = {\n children: React.ReactNode\n custom?: Record<any, string>\n indexPath?: string\n isForceRendered?: boolean\n path: string\n permissions?: FieldPermissions\n readOnly: boolean\n schemaPath: string\n siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n type: keyof FieldTypes\n}\n\nexport const FieldPropsProvider: React.FC<Props> = ({\n type,\n children,\n custom,\n indexPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n siblingPermissions,\n}) => {\n return (\n <FieldPropsContext.Provider\n value={{\n type,\n custom,\n indexPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n siblingPermissions,\n }}\n >\n {children}\n </FieldPropsContext.Provider>\n )\n}\n\nexport const useFieldProps = () => {\n const props = React.useContext(FieldPropsContext)\n return props\n}\n"],"names":["React","FieldPropsContext","createContext","type","undefined","custom","indexPath","path","permissions","readOnly","schemaPath","siblingPermissions","FieldPropsProvider","children","Provider","value","useFieldProps","props","useContext"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAezB,MAAMC,kCAAoBD,MAAME,aAAa,CAAwB;IACnEC,MAAMC;IACNC,QAAQ,CAAC;IACTC,WAAWF;IACXG,MAAMH;IACNI,aAAa,CAAC;IACdC,UAAU;IACVC,YAAYN;IACZO,oBAAoB,CAAC;AACvB;AAiBA,OAAO,MAAMC,qBAAsC,CAAC,EAClDT,IAAI,EACJU,QAAQ,EACRR,MAAM,EACNC,SAAS,EACTC,IAAI,EACJC,WAAW,EACXC,QAAQ,EACRC,UAAU,EACVC,kBAAkB,EACnB;IACC,qBACE,KAACV,kBAAkBa,QAAQ;QACzBC,OAAO;YACLZ;YACAE;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;QACF;kBAECE;;AAGP,EAAC;AAED,OAAO,MAAMG,gBAAgB;IAC3B,MAAMC,QAAQjB,MAAMkB,UAAU,CAACjB;IAC/B,OAAOgB;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/FieldPropsProvider/index.tsx"],"sourcesContent":["'use client'\nimport type { FieldPermissions, FieldTypes } from 'payload'\n\nimport React from 'react'\n\nexport type FieldPropsContextType = {\n custom?: Record<any, string>\n indexPath?: string\n path: string\n permissions?: FieldPermissions\n readOnly: boolean\n schemaPath: string\n siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n type: keyof FieldTypes\n}\n\nconst FieldPropsContext = React.createContext<FieldPropsContextType>({\n type: undefined as keyof FieldTypes,\n custom: {},\n indexPath: undefined,\n path: undefined,\n permissions: {} as FieldPermissions,\n readOnly: false,\n schemaPath: undefined,\n siblingPermissions: {},\n})\n\nexport type Props = {\n children: React.ReactNode\n custom?: Record<any, string>\n indexPath?: string\n isForceRendered?: boolean\n path: string\n permissions?: FieldPermissions\n readOnly: boolean\n schemaPath: string\n siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n type: keyof FieldTypes\n}\n\nexport const FieldPropsProvider: React.FC<Props> = ({\n type,\n children,\n custom,\n indexPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n siblingPermissions,\n}) => {\n return (\n <FieldPropsContext.Provider\n value={{\n type,\n custom,\n indexPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n siblingPermissions,\n }}\n >\n {children}\n </FieldPropsContext.Provider>\n )\n}\n\nexport const useFieldProps = () => {\n const props = React.useContext(FieldPropsContext)\n return props\n}\n"],"names":["React","FieldPropsContext","createContext","type","undefined","custom","indexPath","path","permissions","readOnly","schemaPath","siblingPermissions","FieldPropsProvider","children","Provider","value","useFieldProps","props","useContext"],"mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAezB,MAAMC,kCAAoBD,MAAME,aAAa,CAAwB;IACnEC,MAAMC;IACNC,QAAQ,CAAC;IACTC,WAAWF;IACXG,MAAMH;IACNI,aAAa,CAAC;IACdC,UAAU;IACVC,YAAYN;IACZO,oBAAoB,CAAC;AACvB;AAiBA,OAAO,MAAMC,qBAAsC,CAAC,EAClDT,IAAI,EACJU,QAAQ,EACRR,MAAM,EACNC,SAAS,EACTC,IAAI,EACJC,WAAW,EACXC,QAAQ,EACRC,UAAU,EACVC,kBAAkB,EACnB;IACC,qBACE,KAACV,kBAAkBa,QAAQ;QACzBC,OAAO;YACLZ;YACAE;YACAC;YACAC;YACAC;YACAC;YACAC;YACAC;QACF;kBAECE;;AAGP,EAAC;AAED,OAAO,MAAMG,gBAAgB;IAC3B,MAAMC,QAAQjB,MAAMkB,UAAU,CAACjB;IAC/B,OAAOgB;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/Form/context.ts"],"sourcesContent":["'use client'\nimport { createContext, useContext } from 'react'\nimport {\n createContext as createSelectorContext,\n useContextSelector,\n useContext as useFullContext,\n} from 'use-context-selector'\n\nimport type { Context, FormFieldsContext as FormFieldsContextType } from './types.js'\n\nconst FormContext = createContext({} as Context)\nconst FormWatchContext = createContext({} as Context)\nconst SubmittedContext = createContext(false)\nconst ProcessingContext = createContext(false)\nconst ModifiedContext = createContext(false)\nconst InitializingContext = createContext(false)\nconst FormFieldsContext = createSelectorContext<FormFieldsContextType>([{}, () => null])\n\n/**\n * Get the state of the form, can be used to submit & validate the form.\n *\n * @see https://payloadcms.com/docs/admin/hooks#useform\n */\nconst useForm = (): Context => useContext(FormContext)\nconst useWatchForm = (): Context => useContext(FormWatchContext)\nconst useFormSubmitted = (): boolean => useContext(SubmittedContext)\nconst useFormProcessing = (): boolean => useContext(ProcessingContext)\nconst useFormModified = (): boolean => useContext(ModifiedContext)\nconst useFormInitializing = (): boolean => useContext(InitializingContext)\n\n/**\n * Get and set the value of a form field based on a selector\n *\n * @see https://payloadcms.com/docs/admin/hooks#useformfields\n */\nconst useFormFields = <Value = unknown>(\n selector: (context: FormFieldsContextType) => Value,\n): Value => useContextSelector(FormFieldsContext, selector)\n\n/**\n * Get the state of all form fields.\n *\n * @see https://payloadcms.com/docs/admin/hooks#useallformfields\n */\nconst useAllFormFields = (): FormFieldsContextType => useFullContext(FormFieldsContext)\n\nexport {\n FormContext,\n FormFieldsContext,\n FormWatchContext,\n InitializingContext,\n ModifiedContext,\n ProcessingContext,\n SubmittedContext,\n useAllFormFields,\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n useWatchForm,\n}\n"],"names":["createContext","useContext","createSelectorContext","useContextSelector","useFullContext","FormContext","FormWatchContext","SubmittedContext","ProcessingContext","ModifiedContext","InitializingContext","FormFieldsContext","useForm","useWatchForm","useFormSubmitted","useFormProcessing","useFormModified","useFormInitializing","useFormFields","selector","useAllFormFields"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AACA,SAASA,aAAa,EAAEC,UAAU,QAAQ,QAAO;AACjD,SACED,iBAAiBE,qBAAqB,EACtCC,kBAAkB,EAClBF,cAAcG,cAAc,QACvB,uBAAsB;AAI7B,MAAMC,cAAcL,cAAc,CAAC;AACnC,MAAMM,mBAAmBN,cAAc,CAAC;AACxC,MAAMO,mBAAmBP,cAAc;AACvC,MAAMQ,oBAAoBR,cAAc;AACxC,MAAMS,kBAAkBT,cAAc;AACtC,MAAMU,sBAAsBV,cAAc;AAC1C,MAAMW,oBAAoBT,sBAA6C;IAAC,CAAC;IAAG,IAAM;CAAK;AAEvF;;;;CAIC,GACD,MAAMU,UAAU,IAAeX,WAAWI;AAC1C,MAAMQ,eAAe,IAAeZ,WAAWK;AAC/C,MAAMQ,mBAAmB,IAAeb,WAAWM;AACnD,MAAMQ,oBAAoB,IAAed,WAAWO;AACpD,MAAMQ,kBAAkB,IAAef,WAAWQ;AAClD,MAAMQ,sBAAsB,IAAehB,WAAWS;AAEtD;;;;CAIC,GACD,MAAMQ,gBAAgB,CACpBC,WACUhB,mBAAmBQ,mBAAmBQ;AAElD;;;;CAIC,GACD,MAAMC,mBAAmB,IAA6BhB,eAAeO;AAErE,SACEN,WAAW,EACXM,iBAAiB,EACjBL,gBAAgB,EAChBI,mBAAmB,EACnBD,eAAe,EACfD,iBAAiB,EACjBD,gBAAgB,EAChBa,gBAAgB,EAChBR,OAAO,EACPM,aAAa,EACbD,mBAAmB,EACnBD,eAAe,EACfD,iBAAiB,EACjBD,gBAAgB,EAChBD,YAAY,KACb"}
1
+ {"version":3,"sources":["../../../src/forms/Form/context.ts"],"sourcesContent":["'use client'\nimport { createContext, useContext } from 'react'\nimport {\n createContext as createSelectorContext,\n useContextSelector,\n useContext as useFullContext,\n} from 'use-context-selector'\n\nimport type { Context, FormFieldsContext as FormFieldsContextType } from './types.js'\n\nconst FormContext = createContext({} as Context)\nconst FormWatchContext = createContext({} as Context)\nconst SubmittedContext = createContext(false)\nconst ProcessingContext = createContext(false)\nconst ModifiedContext = createContext(false)\nconst InitializingContext = createContext(false)\nconst FormFieldsContext = createSelectorContext<FormFieldsContextType>([{}, () => null])\n\n/**\n * Get the state of the form, can be used to submit & validate the form.\n *\n * @see https://payloadcms.com/docs/admin/hooks#useform\n */\nconst useForm = (): Context => useContext(FormContext)\nconst useWatchForm = (): Context => useContext(FormWatchContext)\nconst useFormSubmitted = (): boolean => useContext(SubmittedContext)\nconst useFormProcessing = (): boolean => useContext(ProcessingContext)\nconst useFormModified = (): boolean => useContext(ModifiedContext)\nconst useFormInitializing = (): boolean => useContext(InitializingContext)\n\n/**\n * Get and set the value of a form field based on a selector\n *\n * @see https://payloadcms.com/docs/admin/hooks#useformfields\n */\nconst useFormFields = <Value = unknown>(\n selector: (context: FormFieldsContextType) => Value,\n): Value => useContextSelector(FormFieldsContext, selector)\n\n/**\n * Get the state of all form fields.\n *\n * @see https://payloadcms.com/docs/admin/hooks#useallformfields\n */\nconst useAllFormFields = (): FormFieldsContextType => useFullContext(FormFieldsContext)\n\nexport {\n FormContext,\n FormFieldsContext,\n FormWatchContext,\n InitializingContext,\n ModifiedContext,\n ProcessingContext,\n SubmittedContext,\n useAllFormFields,\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n useWatchForm,\n}\n"],"names":["createContext","useContext","createSelectorContext","useContextSelector","useFullContext","FormContext","FormWatchContext","SubmittedContext","ProcessingContext","ModifiedContext","InitializingContext","FormFieldsContext","useForm","useWatchForm","useFormSubmitted","useFormProcessing","useFormModified","useFormInitializing","useFormFields","selector","useAllFormFields"],"mappings":"AAAA;AACA,SAASA,aAAa,EAAEC,UAAU,QAAQ,QAAO;AACjD,SACED,iBAAiBE,qBAAqB,EACtCC,kBAAkB,EAClBF,cAAcG,cAAc,QACvB,uBAAsB;AAI7B,MAAMC,cAAcL,cAAc,CAAC;AACnC,MAAMM,mBAAmBN,cAAc,CAAC;AACxC,MAAMO,mBAAmBP,cAAc;AACvC,MAAMQ,oBAAoBR,cAAc;AACxC,MAAMS,kBAAkBT,cAAc;AACtC,MAAMU,sBAAsBV,cAAc;AAC1C,MAAMW,oBAAoBT,sBAA6C;IAAC,CAAC;IAAG,IAAM;CAAK;AAEvF;;;;CAIC,GACD,MAAMU,UAAU,IAAeX,WAAWI;AAC1C,MAAMQ,eAAe,IAAeZ,WAAWK;AAC/C,MAAMQ,mBAAmB,IAAeb,WAAWM;AACnD,MAAMQ,oBAAoB,IAAed,WAAWO;AACpD,MAAMQ,kBAAkB,IAAef,WAAWQ;AAClD,MAAMQ,sBAAsB,IAAehB,WAAWS;AAEtD;;;;CAIC,GACD,MAAMQ,gBAAgB,CACpBC,WACUhB,mBAAmBQ,mBAAmBQ;AAElD;;;;CAIC,GACD,MAAMC,mBAAmB,IAA6BhB,eAAeO;AAErE,SACEN,WAAW,EACXM,iBAAiB,EACjBL,gBAAgB,EAChBI,mBAAmB,EACnBD,eAAe,EACfD,iBAAiB,EACjBD,gBAAgB,EAChBa,gBAAgB,EAChBR,OAAO,EACPM,aAAa,EACbD,mBAAmB,EACnBD,eAAe,EACfD,iBAAiB,EACjBD,gBAAgB,EAChBD,YAAY,KACb"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/Form/createNestedFieldPath.ts"],"sourcesContent":["import type { Field } from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\n\nimport type { MappedField } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nexport const createNestedFieldPath = (parentPath: string, field: Field): string => {\n if (parentPath) {\n if (fieldAffectsData(field)) {\n return `${parentPath}.${field.name}`\n }\n\n return parentPath\n }\n\n if (fieldAffectsData(field)) {\n return field.name\n }\n\n return ''\n}\n\nexport const createNestedClientFieldPath = (parentPath: string, field: MappedField): string => {\n if (parentPath) {\n if (field.isFieldAffectingData) {\n return `${parentPath}.${field.name}`\n }\n }\n\n if (field.isFieldAffectingData) {\n return field.name\n }\n\n return field.name\n}\n"],"names":["fieldAffectsData","createNestedFieldPath","parentPath","field","name","createNestedClientFieldPath","isFieldAffectingData"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,gBAAgB,QAAQ,iBAAgB;AAIjD,OAAO,MAAMC,wBAAwB,CAACC,YAAoBC;IACxD,IAAID,YAAY;QACd,IAAIF,iBAAiBG,QAAQ;YAC3B,OAAO,CAAC,EAAED,WAAW,CAAC,EAAEC,MAAMC,IAAI,CAAC,CAAC;QACtC;QAEA,OAAOF;IACT;IAEA,IAAIF,iBAAiBG,QAAQ;QAC3B,OAAOA,MAAMC,IAAI;IACnB;IAEA,OAAO;AACT,EAAC;AAED,OAAO,MAAMC,8BAA8B,CAACH,YAAoBC;IAC9D,IAAID,YAAY;QACd,IAAIC,MAAMG,oBAAoB,EAAE;YAC9B,OAAO,CAAC,EAAEJ,WAAW,CAAC,EAAEC,MAAMC,IAAI,CAAC,CAAC;QACtC;IACF;IAEA,IAAID,MAAMG,oBAAoB,EAAE;QAC9B,OAAOH,MAAMC,IAAI;IACnB;IAEA,OAAOD,MAAMC,IAAI;AACnB,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/Form/createNestedFieldPath.ts"],"sourcesContent":["import type { Field } from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\n\nimport type { MappedField } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nexport const createNestedFieldPath = (parentPath: string, field: Field): string => {\n if (parentPath) {\n if (fieldAffectsData(field)) {\n return `${parentPath}.${field.name}`\n }\n\n return parentPath\n }\n\n if (fieldAffectsData(field)) {\n return field.name\n }\n\n return ''\n}\n\nexport const createNestedClientFieldPath = (parentPath: string, field: MappedField): string => {\n if (parentPath) {\n if (field.isFieldAffectingData) {\n return `${parentPath}.${field.name}`\n }\n }\n\n if (field.isFieldAffectingData) {\n return field.name\n }\n\n return field.name\n}\n"],"names":["fieldAffectsData","createNestedFieldPath","parentPath","field","name","createNestedClientFieldPath","isFieldAffectingData"],"mappings":"AAEA,SAASA,gBAAgB,QAAQ,iBAAgB;AAIjD,OAAO,MAAMC,wBAAwB,CAACC,YAAoBC;IACxD,IAAID,YAAY;QACd,IAAIF,iBAAiBG,QAAQ;YAC3B,OAAO,CAAC,EAAED,WAAW,CAAC,EAAEC,MAAMC,IAAI,CAAC,CAAC;QACtC;QAEA,OAAOF;IACT;IAEA,IAAIF,iBAAiBG,QAAQ;QAC3B,OAAOA,MAAMC,IAAI;IACnB;IAEA,OAAO;AACT,EAAC;AAED,OAAO,MAAMC,8BAA8B,CAACH,YAAoBC;IAC9D,IAAID,YAAY;QACd,IAAIC,MAAMG,oBAAoB,EAAE;YAC9B,OAAO,CAAC,EAAEJ,WAAW,CAAC,EAAEC,MAAMC,IAAI,CAAC,CAAC;QACtC;IACF;IAEA,IAAID,MAAMG,oBAAoB,EAAE;QAC9B,OAAOH,MAAMC,IAAI;IACnB;IAEA,OAAOD,MAAMC,IAAI;AACnB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/Form/errorMessages.ts"],"sourcesContent":["export const errorMessages = {\n 413: 'Your request was too large to submit successfully.',\n}\n"],"names":["errorMessages"],"rangeMappings":";;","mappings":"AAAA,OAAO,MAAMA,gBAAgB;IAC3B,KAAK;AACP,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/Form/errorMessages.ts"],"sourcesContent":["export const errorMessages = {\n 413: 'Your request was too large to submit successfully.',\n}\n"],"names":["errorMessages"],"mappings":"AAAA,OAAO,MAAMA,gBAAgB;IAC3B,KAAK;AACP,EAAC"}
@@ -1,5 +1,5 @@
1
1
  import ObjectIdImport from 'bson-objectid';
2
- import equal from 'deep-equal';
2
+ import { dequal } from 'dequal/lite'; // lite: no need for Map and Set support
3
3
  import { deepCopyObject } from 'payload/shared';
4
4
  import { flattenRows, separateRows } from './rows.js';
5
5
  const ObjectId = ObjectIdImport.default || ObjectIdImport;
@@ -19,7 +19,7 @@ const ObjectId = ObjectIdImport.default || ObjectIdImport;
19
19
  Object.entries(action.state).forEach(([path, field])=>{
20
20
  const oldField = state[path];
21
21
  const newField = field;
22
- if (!equal(oldField, newField)) {
22
+ if (!dequal(oldField, newField)) {
23
23
  newState[path] = newField;
24
24
  } else if (oldField) {
25
25
  newState[path] = oldField;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/Form/fieldReducer.ts"],"sourcesContent":["import type { FormField, FormState, Row } from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport equal from 'deep-equal'\nimport { deepCopyObject } from 'payload/shared'\n\nimport type { FieldAction } from './types.js'\n\nimport { flattenRows, separateRows } from './rows.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\n/**\n * Reducer which modifies the form field state (all the current data of the fields in the form). When called using dispatch, it will return a new state object.\n */\nexport function fieldReducer(state: FormState, action: FieldAction): FormState {\n switch (action.type) {\n case 'REPLACE_STATE': {\n if (action.optimize !== false) {\n // Only update fields that have changed\n // by comparing old value / initialValue to new\n // ..\n // This is a performance enhancement for saving\n // large documents with hundreds of fields\n const newState = {}\n\n Object.entries(action.state).forEach(([path, field]) => {\n const oldField = state[path]\n const newField = field\n\n if (!equal(oldField, newField)) {\n newState[path] = newField\n } else if (oldField) {\n newState[path] = oldField\n }\n })\n return newState\n }\n // If we're not optimizing, just set the state to the new state\n return action.state\n }\n\n case 'REMOVE': {\n const newState = { ...state }\n if (newState[action.path]) delete newState[action.path]\n return newState\n }\n\n case 'ADD_SERVER_ERRORS': {\n let newState = { ...state }\n\n const errorPaths: { fieldErrorPath: string; parentPath: string }[] = []\n\n action.errors.forEach(({ field, message }) => {\n newState[field] = {\n ...(newState[field] || {\n initialValue: null,\n value: null,\n }),\n errorMessage: message,\n valid: false,\n }\n\n const segments = field.split('.')\n if (segments.length > 1) {\n errorPaths.push({\n fieldErrorPath: field,\n parentPath: segments.slice(0, segments.length - 1).join('.'),\n })\n }\n })\n\n newState = Object.entries(newState).reduce((acc, [path, fieldState]) => {\n const fieldErrorPaths = errorPaths.reduce((errorACC, { fieldErrorPath, parentPath }) => {\n if (parentPath.startsWith(path)) {\n errorACC.push(fieldErrorPath)\n }\n return errorACC\n }, [])\n\n let changed = false\n\n if (fieldErrorPaths.length > 0) {\n const newErrorPaths = Array.isArray(fieldState.errorPaths) ? fieldState.errorPaths : []\n\n fieldErrorPaths.forEach((fieldErrorPath) => {\n if (!newErrorPaths.includes(fieldErrorPath)) {\n newErrorPaths.push(fieldErrorPath)\n changed = true\n }\n })\n\n if (changed) {\n acc[path] = {\n ...fieldState,\n errorPaths: newErrorPaths,\n }\n }\n }\n\n if (!changed) {\n acc[path] = fieldState\n }\n\n return acc\n }, {})\n\n return newState\n }\n\n case 'UPDATE': {\n const newField = Object.entries(action).reduce(\n (field, [key, value]) => {\n if (\n [\n 'disableFormData',\n 'errorMessage',\n 'initialValue',\n 'rows',\n 'valid',\n 'validate',\n 'value',\n ].includes(key)\n ) {\n return {\n ...field,\n [key]: value,\n }\n }\n\n return field\n },\n state[action.path] || ({} as FormField),\n )\n\n const newState = {\n ...state,\n [action.path]: newField,\n }\n\n return newState\n }\n\n case 'REMOVE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path]?.rows || [])]\n\n rows.splice(rowIndex, 1)\n rowsMetadata.splice(rowIndex, 1)\n\n const newState: FormState = {\n ...remainingFields,\n [path]: {\n ...state[path],\n disableFormData: rows.length > 0,\n rows: rowsMetadata,\n value: rows.length,\n },\n ...flattenRows(path, rows),\n }\n\n return newState\n }\n\n case 'ADD_ROW': {\n const { blockType, path, rowIndex: rowIndexFromArgs, subFieldState = {} } = action\n\n const rowIndex =\n typeof rowIndexFromArgs === 'number' ? rowIndexFromArgs : state[path]?.rows?.length || 0\n\n const withNewRow = [...(state[path]?.rows || [])]\n\n const newRow: Row = {\n id: (subFieldState?.id?.value as string) || new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n withNewRow.splice(rowIndex, 0, newRow)\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // add new row to array _field state_\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n siblingRows.splice(rowIndex, 0, subFieldState)\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: withNewRow,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'REPLACE_ROW': {\n const { blockType, path, rowIndex: rowIndexArg, subFieldState = {} } = action\n\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n const rowIndex = Math.max(0, Math.min(rowIndexArg, siblingRows?.length - 1 || 0))\n\n const rowsMetadata = [...(state[path]?.rows || [])]\n rowsMetadata[rowIndex] = {\n id: new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // replace form _field state_\n siblingRows[rowIndex] = subFieldState\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'DUPLICATE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path].rows || [])]\n\n const duplicateRowMetadata = deepCopyObject(rowsMetadata[rowIndex])\n if (duplicateRowMetadata.id) duplicateRowMetadata.id = new ObjectId().toHexString()\n\n const duplicateRowState = deepCopyObject(rows[rowIndex])\n if (duplicateRowState.id) duplicateRowState.id = new ObjectId().toHexString()\n\n // If there are subfields\n if (Object.keys(duplicateRowState).length > 0) {\n // Add new object containing subfield names to unflattenedRows array\n rows.splice(rowIndex + 1, 0, duplicateRowState)\n rowsMetadata.splice(rowIndex + 1, 0, duplicateRowMetadata)\n }\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: rows.length,\n },\n }\n\n return newState\n }\n\n case 'MOVE_ROW': {\n const { moveFromIndex, moveToIndex, path } = action\n const { remainingFields, rows } = separateRows(path, state)\n\n // copy the row to move\n const copyOfMovingRow = rows[moveFromIndex]\n // delete the row by index\n rows.splice(moveFromIndex, 1)\n // insert row copyOfMovingRow back in\n rows.splice(moveToIndex, 0, copyOfMovingRow)\n\n // modify array/block internal row state (i.e. collapsed, blockType)\n const rowStateCopy = [...(state[path]?.rows || [])]\n const movingRowState = { ...rowStateCopy[moveFromIndex] }\n rowStateCopy.splice(moveFromIndex, 1)\n rowStateCopy.splice(moveToIndex, 0, movingRowState)\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n rows: rowStateCopy,\n },\n }\n\n return newState\n }\n\n case 'SET_ROW_COLLAPSED': {\n const { collapsed, path, rowID, setDocFieldPreferences } = action\n\n const arrayState = state[path]\n\n const { collapsedRowIDs, matchedIndex } = state[path].rows.reduce(\n (acc, row, index) => {\n const isMatchingRow = row.id === rowID\n if (isMatchingRow) acc.matchedIndex = index\n\n if (!isMatchingRow && row.collapsed) acc.collapsedRowIDs.push(row.id)\n else if (isMatchingRow && collapsed) acc.collapsedRowIDs.push(row.id)\n\n return acc\n },\n {\n collapsedRowIDs: [],\n matchedIndex: undefined,\n },\n )\n\n if (matchedIndex > -1) {\n arrayState.rows[matchedIndex].collapsed = collapsed\n setDocFieldPreferences(path, { collapsed: collapsedRowIDs })\n }\n\n const newState = {\n ...state,\n [path]: {\n ...arrayState,\n },\n }\n\n return newState\n }\n\n case 'SET_ALL_ROWS_COLLAPSED': {\n const { collapsed, path, setDocFieldPreferences } = action\n\n const { collapsedRowIDs, rows } = state[path].rows.reduce(\n (acc, row) => {\n if (collapsed) acc.collapsedRowIDs.push(row.id)\n\n acc.rows.push({\n ...row,\n collapsed,\n })\n\n return acc\n },\n {\n collapsedRowIDs: [],\n rows: [],\n },\n )\n\n setDocFieldPreferences(path, { collapsed: collapsedRowIDs })\n\n return {\n ...state,\n [path]: {\n ...state[path],\n rows,\n },\n }\n }\n\n default: {\n return state\n }\n }\n}\n"],"names":["ObjectIdImport","equal","deepCopyObject","flattenRows","separateRows","ObjectId","default","fieldReducer","state","action","type","optimize","newState","Object","entries","forEach","path","field","oldField","newField","errorPaths","errors","message","initialValue","value","errorMessage","valid","segments","split","length","push","fieldErrorPath","parentPath","slice","join","reduce","acc","fieldState","fieldErrorPaths","errorACC","startsWith","changed","newErrorPaths","Array","isArray","includes","key","rowIndex","remainingFields","rows","rowsMetadata","splice","disableFormData","blockType","rowIndexFromArgs","subFieldState","withNewRow","newRow","id","toHexString","undefined","collapsed","siblingRows","rowIndexArg","Math","max","min","duplicateRowMetadata","duplicateRowState","keys","moveFromIndex","moveToIndex","copyOfMovingRow","rowStateCopy","movingRowState","rowID","setDocFieldPreferences","arrayState","collapsedRowIDs","matchedIndex","row","index","isMatchingRow"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/forms/Form/fieldReducer.ts"],"sourcesContent":["import type { FormField, FormState, Row } from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\nimport { deepCopyObject } from 'payload/shared'\n\nimport type { FieldAction } from './types.js'\n\nimport { flattenRows, separateRows } from './rows.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\n/**\n * Reducer which modifies the form field state (all the current data of the fields in the form). When called using dispatch, it will return a new state object.\n */\nexport function fieldReducer(state: FormState, action: FieldAction): FormState {\n switch (action.type) {\n case 'REPLACE_STATE': {\n if (action.optimize !== false) {\n // Only update fields that have changed\n // by comparing old value / initialValue to new\n // ..\n // This is a performance enhancement for saving\n // large documents with hundreds of fields\n const newState = {}\n\n Object.entries(action.state).forEach(([path, field]) => {\n const oldField = state[path]\n const newField = field\n\n if (!dequal(oldField, newField)) {\n newState[path] = newField\n } else if (oldField) {\n newState[path] = oldField\n }\n })\n return newState\n }\n // If we're not optimizing, just set the state to the new state\n return action.state\n }\n\n case 'REMOVE': {\n const newState = { ...state }\n if (newState[action.path]) delete newState[action.path]\n return newState\n }\n\n case 'ADD_SERVER_ERRORS': {\n let newState = { ...state }\n\n const errorPaths: { fieldErrorPath: string; parentPath: string }[] = []\n\n action.errors.forEach(({ field, message }) => {\n newState[field] = {\n ...(newState[field] || {\n initialValue: null,\n value: null,\n }),\n errorMessage: message,\n valid: false,\n }\n\n const segments = field.split('.')\n if (segments.length > 1) {\n errorPaths.push({\n fieldErrorPath: field,\n parentPath: segments.slice(0, segments.length - 1).join('.'),\n })\n }\n })\n\n newState = Object.entries(newState).reduce((acc, [path, fieldState]) => {\n const fieldErrorPaths = errorPaths.reduce((errorACC, { fieldErrorPath, parentPath }) => {\n if (parentPath.startsWith(path)) {\n errorACC.push(fieldErrorPath)\n }\n return errorACC\n }, [])\n\n let changed = false\n\n if (fieldErrorPaths.length > 0) {\n const newErrorPaths = Array.isArray(fieldState.errorPaths) ? fieldState.errorPaths : []\n\n fieldErrorPaths.forEach((fieldErrorPath) => {\n if (!newErrorPaths.includes(fieldErrorPath)) {\n newErrorPaths.push(fieldErrorPath)\n changed = true\n }\n })\n\n if (changed) {\n acc[path] = {\n ...fieldState,\n errorPaths: newErrorPaths,\n }\n }\n }\n\n if (!changed) {\n acc[path] = fieldState\n }\n\n return acc\n }, {})\n\n return newState\n }\n\n case 'UPDATE': {\n const newField = Object.entries(action).reduce(\n (field, [key, value]) => {\n if (\n [\n 'disableFormData',\n 'errorMessage',\n 'initialValue',\n 'rows',\n 'valid',\n 'validate',\n 'value',\n ].includes(key)\n ) {\n return {\n ...field,\n [key]: value,\n }\n }\n\n return field\n },\n state[action.path] || ({} as FormField),\n )\n\n const newState = {\n ...state,\n [action.path]: newField,\n }\n\n return newState\n }\n\n case 'REMOVE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path]?.rows || [])]\n\n rows.splice(rowIndex, 1)\n rowsMetadata.splice(rowIndex, 1)\n\n const newState: FormState = {\n ...remainingFields,\n [path]: {\n ...state[path],\n disableFormData: rows.length > 0,\n rows: rowsMetadata,\n value: rows.length,\n },\n ...flattenRows(path, rows),\n }\n\n return newState\n }\n\n case 'ADD_ROW': {\n const { blockType, path, rowIndex: rowIndexFromArgs, subFieldState = {} } = action\n\n const rowIndex =\n typeof rowIndexFromArgs === 'number' ? rowIndexFromArgs : state[path]?.rows?.length || 0\n\n const withNewRow = [...(state[path]?.rows || [])]\n\n const newRow: Row = {\n id: (subFieldState?.id?.value as string) || new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n withNewRow.splice(rowIndex, 0, newRow)\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // add new row to array _field state_\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n siblingRows.splice(rowIndex, 0, subFieldState)\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: withNewRow,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'REPLACE_ROW': {\n const { blockType, path, rowIndex: rowIndexArg, subFieldState = {} } = action\n\n const { remainingFields, rows: siblingRows } = separateRows(path, state)\n const rowIndex = Math.max(0, Math.min(rowIndexArg, siblingRows?.length - 1 || 0))\n\n const rowsMetadata = [...(state[path]?.rows || [])]\n rowsMetadata[rowIndex] = {\n id: new ObjectId().toHexString(),\n blockType: blockType || undefined,\n collapsed: false,\n }\n\n if (blockType) {\n subFieldState.blockType = {\n initialValue: blockType,\n valid: true,\n value: blockType,\n }\n }\n\n // replace form _field state_\n siblingRows[rowIndex] = subFieldState\n\n const newState: FormState = {\n ...remainingFields,\n ...flattenRows(path, siblingRows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: siblingRows.length,\n },\n }\n\n return newState\n }\n\n case 'DUPLICATE_ROW': {\n const { path, rowIndex } = action\n const { remainingFields, rows } = separateRows(path, state)\n const rowsMetadata = [...(state[path].rows || [])]\n\n const duplicateRowMetadata = deepCopyObject(rowsMetadata[rowIndex])\n if (duplicateRowMetadata.id) duplicateRowMetadata.id = new ObjectId().toHexString()\n\n const duplicateRowState = deepCopyObject(rows[rowIndex])\n if (duplicateRowState.id) duplicateRowState.id = new ObjectId().toHexString()\n\n // If there are subfields\n if (Object.keys(duplicateRowState).length > 0) {\n // Add new object containing subfield names to unflattenedRows array\n rows.splice(rowIndex + 1, 0, duplicateRowState)\n rowsMetadata.splice(rowIndex + 1, 0, duplicateRowMetadata)\n }\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n disableFormData: true,\n rows: rowsMetadata,\n value: rows.length,\n },\n }\n\n return newState\n }\n\n case 'MOVE_ROW': {\n const { moveFromIndex, moveToIndex, path } = action\n const { remainingFields, rows } = separateRows(path, state)\n\n // copy the row to move\n const copyOfMovingRow = rows[moveFromIndex]\n // delete the row by index\n rows.splice(moveFromIndex, 1)\n // insert row copyOfMovingRow back in\n rows.splice(moveToIndex, 0, copyOfMovingRow)\n\n // modify array/block internal row state (i.e. collapsed, blockType)\n const rowStateCopy = [...(state[path]?.rows || [])]\n const movingRowState = { ...rowStateCopy[moveFromIndex] }\n rowStateCopy.splice(moveFromIndex, 1)\n rowStateCopy.splice(moveToIndex, 0, movingRowState)\n\n const newState = {\n ...remainingFields,\n ...flattenRows(path, rows),\n [path]: {\n ...state[path],\n rows: rowStateCopy,\n },\n }\n\n return newState\n }\n\n case 'SET_ROW_COLLAPSED': {\n const { collapsed, path, rowID, setDocFieldPreferences } = action\n\n const arrayState = state[path]\n\n const { collapsedRowIDs, matchedIndex } = state[path].rows.reduce(\n (acc, row, index) => {\n const isMatchingRow = row.id === rowID\n if (isMatchingRow) acc.matchedIndex = index\n\n if (!isMatchingRow && row.collapsed) acc.collapsedRowIDs.push(row.id)\n else if (isMatchingRow && collapsed) acc.collapsedRowIDs.push(row.id)\n\n return acc\n },\n {\n collapsedRowIDs: [],\n matchedIndex: undefined,\n },\n )\n\n if (matchedIndex > -1) {\n arrayState.rows[matchedIndex].collapsed = collapsed\n setDocFieldPreferences(path, { collapsed: collapsedRowIDs })\n }\n\n const newState = {\n ...state,\n [path]: {\n ...arrayState,\n },\n }\n\n return newState\n }\n\n case 'SET_ALL_ROWS_COLLAPSED': {\n const { collapsed, path, setDocFieldPreferences } = action\n\n const { collapsedRowIDs, rows } = state[path].rows.reduce(\n (acc, row) => {\n if (collapsed) acc.collapsedRowIDs.push(row.id)\n\n acc.rows.push({\n ...row,\n collapsed,\n })\n\n return acc\n },\n {\n collapsedRowIDs: [],\n rows: [],\n },\n )\n\n setDocFieldPreferences(path, { collapsed: collapsedRowIDs })\n\n return {\n ...state,\n [path]: {\n ...state[path],\n rows,\n },\n }\n }\n\n default: {\n return state\n }\n }\n}\n"],"names":["ObjectIdImport","dequal","deepCopyObject","flattenRows","separateRows","ObjectId","default","fieldReducer","state","action","type","optimize","newState","Object","entries","forEach","path","field","oldField","newField","errorPaths","errors","message","initialValue","value","errorMessage","valid","segments","split","length","push","fieldErrorPath","parentPath","slice","join","reduce","acc","fieldState","fieldErrorPaths","errorACC","startsWith","changed","newErrorPaths","Array","isArray","includes","key","rowIndex","remainingFields","rows","rowsMetadata","splice","disableFormData","blockType","rowIndexFromArgs","subFieldState","withNewRow","newRow","id","toHexString","undefined","collapsed","siblingRows","rowIndexArg","Math","max","min","duplicateRowMetadata","duplicateRowState","keys","moveFromIndex","moveToIndex","copyOfMovingRow","rowStateCopy","movingRowState","rowID","setDocFieldPreferences","arrayState","collapsedRowIDs","matchedIndex","row","index","isMatchingRow"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AASA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAEV,SAAS,EAGV,MAAM,YAAY,CAAA;AAgCnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAwmBpC,CAAA;AAED,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AAaA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAEV,SAAS,EAGV,MAAM,YAAY,CAAA;AA6BnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAwmBpC,CAAA;AAED,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -1,10 +1,10 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */ import isDeepEqual from 'deep-equal';
3
+ import { dequal } from 'dequal/lite'; // lite: no need for Map and Set support
4
4
  import { useRouter } from 'next/navigation.js';
5
5
  import { serialize } from 'object-to-formdata';
6
- import { wait } from 'payload/shared';
7
- import QueryString from 'qs';
6
+ import { getDataByPath as getDataByPathFunc, getSiblingData as getSiblingDataFunc, reduceFieldsToValues, wait } from 'payload/shared';
7
+ import * as qs from 'qs-esm';
8
8
  import React, { useCallback, useEffect, useReducer, useRef, useState } from 'react';
9
9
  import { toast } from 'sonner';
10
10
  import { useDebouncedEffect } from '../../hooks/useDebouncedEffect.js';
@@ -18,12 +18,9 @@ import { useOperation } from '../../providers/Operation/index.js';
18
18
  import { useTranslation } from '../../providers/Translation/index.js';
19
19
  import { requests } from '../../utilities/api.js';
20
20
  import { getFormState } from '../../utilities/getFormState.js';
21
- import { reduceFieldsToValues } from '../../utilities/reduceFieldsToValues.js';
22
21
  import { FormContext, FormFieldsContext, FormWatchContext, InitializingContext, ModifiedContext, ProcessingContext, SubmittedContext } from './context.js';
23
22
  import { errorMessages } from './errorMessages.js';
24
23
  import { fieldReducer } from './fieldReducer.js';
25
- import { getDataByPath as getDataByPathFunc } from './getDataByPath.js';
26
- import { getSiblingData as getSiblingDataFunc } from './getSiblingData.js';
27
24
  import { initContextState } from './initContextState.js';
28
25
  import { mergeServerFormState } from './mergeServerFormState.js';
29
26
  const baseClass = 'form';
@@ -92,7 +89,7 @@ export const Form = (props)=>{
92
89
  validatedFieldState[path] = validatedField;
93
90
  });
94
91
  await Promise.all(validationPromises);
95
- if (!isDeepEqual(contextRef.current.fields, validatedFieldState)) {
92
+ if (!dequal(contextRef.current.fields, validatedFieldState)) {
96
93
  dispatchFields({
97
94
  type: 'REPLACE_STATE',
98
95
  state: validatedFieldState
@@ -194,7 +191,7 @@ export const Form = (props)=>{
194
191
  const formData = contextRef.current.createFormData(overrides);
195
192
  try {
196
193
  let res;
197
- const actionEndpoint = actionArg || (typeof action === 'string' ? `${action}${QueryString.stringify(formQueryParams, {
194
+ const actionEndpoint = actionArg || (typeof action === 'string' ? `${action}${qs.stringify(formQueryParams, {
198
195
  addQueryPrefix: true
199
196
  })}` : null);
200
197
  if (actionEndpoint) {
@@ -245,8 +242,8 @@ export const Form = (props)=>{
245
242
  if (err?.message) {
246
243
  newNonFieldErrs.push(err);
247
244
  }
248
- if (Array.isArray(err?.data)) {
249
- err.data.forEach((dataError)=>{
245
+ if (Array.isArray(err?.data?.errors)) {
246
+ err.data?.errors.forEach((dataError)=>{
250
247
  if (dataError?.field) {
251
248
  newFieldErrs.push(dataError);
252
249
  } else {
@@ -537,7 +534,7 @@ export const Form = (props)=>{
537
534
  onChange,
538
535
  modified
539
536
  ]);
540
- const actionString = typeof action === 'string' ? `${action}${QueryString.stringify(formQueryParams, {
537
+ const actionString = typeof action === 'string' ? `${action}${qs.stringify(formQueryParams, {
541
538
  addQueryPrefix: true
542
539
  })}` : '';
543
540
  return /*#__PURE__*/ _jsx("form", {