@payloadcms/ui 3.0.0-canary.013af1b → 3.0.0-canary.0374de4

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 (655) hide show
  1. package/dist/elements/AddNewRelation/index.js +1 -1
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AppHeader/index.js +5 -5
  4. package/dist/elements/AppHeader/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +6 -2
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/Banner/index.d.ts.map +1 -1
  9. package/dist/elements/Banner/index.js +6 -2
  10. package/dist/elements/Banner/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  12. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/ActionsBar/index.scss +4 -4
  14. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  15. package/dist/elements/BulkUpload/AddFilesView/index.js +45 -30
  16. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.scss +13 -0
  18. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  19. package/dist/elements/BulkUpload/AddingFilesView/index.js +7 -7
  20. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -1
  22. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +14 -17
  23. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +1 -2
  25. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -1
  26. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +5 -8
  27. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  29. package/dist/elements/BulkUpload/EditForm/index.js +42 -33
  30. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  31. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  32. package/dist/elements/BulkUpload/FileSidebar/index.js +71 -59
  33. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  34. package/dist/elements/BulkUpload/FileSidebar/index.scss +16 -14
  35. package/dist/elements/BulkUpload/FormsManager/index.d.ts +4 -7
  36. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/FormsManager/index.js +67 -37
  38. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  39. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -1
  40. package/dist/elements/BulkUpload/Header/index.js +1 -3
  41. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  42. package/dist/elements/BulkUpload/index.d.ts +21 -5
  43. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  44. package/dist/elements/BulkUpload/index.js +149 -52
  45. package/dist/elements/BulkUpload/index.js.map +1 -1
  46. package/dist/elements/Button/index.d.ts.map +1 -1
  47. package/dist/elements/Button/index.js +39 -31
  48. package/dist/elements/Button/index.js.map +1 -1
  49. package/dist/elements/Button/types.d.ts +8 -2
  50. package/dist/elements/Button/types.d.ts.map +1 -1
  51. package/dist/elements/Button/types.js.map +1 -1
  52. package/dist/elements/Card/index.d.ts +1 -1
  53. package/dist/elements/Card/index.d.ts.map +1 -1
  54. package/dist/elements/Card/index.js +2 -2
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CodeEditor/index.js +1 -1
  57. package/dist/elements/CodeEditor/index.js.map +1 -1
  58. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  59. package/dist/elements/Collapsible/index.js.map +1 -1
  60. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  61. package/dist/elements/ColumnSelector/index.js +15 -3
  62. package/dist/elements/ColumnSelector/index.js.map +1 -1
  63. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  64. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  65. package/dist/elements/DatePicker/index.js +1 -1
  66. package/dist/elements/DatePicker/index.js.map +1 -1
  67. package/dist/elements/DeleteDocument/index.d.ts +9 -6
  68. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  69. package/dist/elements/DeleteDocument/index.js +65 -28
  70. package/dist/elements/DeleteDocument/index.js.map +1 -1
  71. package/dist/elements/DeleteDocument/index.scss +24 -11
  72. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  73. package/dist/elements/DeleteMany/index.js +26 -18
  74. package/dist/elements/DeleteMany/index.js.map +1 -1
  75. package/dist/elements/DeleteMany/index.scss +24 -5
  76. package/dist/elements/DocumentControls/index.d.ts +13 -2
  77. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  78. package/dist/elements/DocumentControls/index.js +66 -12
  79. package/dist/elements/DocumentControls/index.js.map +1 -1
  80. package/dist/elements/DocumentControls/index.scss +8 -0
  81. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  82. package/dist/elements/DocumentDrawer/DrawerContent.js +108 -37
  83. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  84. package/dist/elements/DocumentDrawer/index.js +1 -1
  85. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  86. package/dist/elements/DocumentDrawer/types.d.ts +10 -1
  87. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  88. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  89. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  90. package/dist/elements/DraggableSortable/index.js +2 -1
  91. package/dist/elements/DraggableSortable/index.js.map +1 -1
  92. package/dist/elements/Drawer/index.d.ts +1 -0
  93. package/dist/elements/Drawer/index.d.ts.map +1 -1
  94. package/dist/elements/Drawer/index.js +3 -3
  95. package/dist/elements/Drawer/index.js.map +1 -1
  96. package/dist/elements/Drawer/types.d.ts +1 -1
  97. package/dist/elements/Drawer/types.d.ts.map +1 -1
  98. package/dist/elements/Drawer/types.js.map +1 -1
  99. package/dist/elements/Dropzone/index.d.ts +3 -3
  100. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  101. package/dist/elements/Dropzone/index.js +23 -50
  102. package/dist/elements/Dropzone/index.js.map +1 -1
  103. package/dist/elements/Dropzone/index.scss +6 -23
  104. package/dist/elements/DuplicateDocument/index.d.ts +6 -3
  105. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  106. package/dist/elements/DuplicateDocument/index.js +95 -137
  107. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  108. package/dist/elements/DuplicateDocument/index.scss +25 -5
  109. package/dist/elements/EditMany/index.d.ts.map +1 -1
  110. package/dist/elements/EditMany/index.js +19 -12
  111. package/dist/elements/EditMany/index.js.map +1 -1
  112. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  113. package/dist/elements/EditUpload/index.js +23 -11
  114. package/dist/elements/EditUpload/index.js.map +1 -1
  115. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  116. package/dist/elements/ErrorPill/index.js +3 -1
  117. package/dist/elements/ErrorPill/index.js.map +1 -1
  118. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  119. package/dist/elements/FieldSelect/index.js +3 -1
  120. package/dist/elements/FieldSelect/index.js.map +1 -1
  121. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  122. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  123. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  124. package/dist/elements/FileDetails/StaticFileDetails/index.js +0 -1
  125. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  126. package/dist/elements/FileDetails/StaticFileDetails/index.scss +1 -0
  127. package/dist/elements/GenerateConfirmation/index.d.ts.map +1 -1
  128. package/dist/elements/GenerateConfirmation/index.js +31 -24
  129. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  130. package/dist/elements/GenerateConfirmation/index.scss +24 -5
  131. package/dist/elements/Hamburger/index.scss +4 -0
  132. package/dist/elements/ListControls/index.d.ts.map +1 -1
  133. package/dist/elements/ListControls/index.js +22 -23
  134. package/dist/elements/ListControls/index.js.map +1 -1
  135. package/dist/elements/ListControls/index.scss +0 -6
  136. package/dist/elements/ListDrawer/DrawerContent.d.ts +2 -0
  137. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  138. package/dist/elements/ListDrawer/DrawerContent.js +312 -234
  139. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  140. package/dist/elements/ListDrawer/index.js +1 -1
  141. package/dist/elements/ListDrawer/index.js.map +1 -1
  142. package/dist/elements/ListDrawer/index.scss +7 -0
  143. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  144. package/dist/elements/Localizer/LocalizerLabel/index.js +9 -5
  145. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  146. package/dist/elements/Localizer/LocalizerLabel/index.scss +7 -3
  147. package/dist/elements/Localizer/index.d.ts.map +1 -1
  148. package/dist/elements/Localizer/index.js +1 -1
  149. package/dist/elements/Localizer/index.js.map +1 -1
  150. package/dist/elements/Locked/index.d.ts +8 -0
  151. package/dist/elements/Locked/index.d.ts.map +1 -0
  152. package/dist/elements/Locked/index.js +72 -0
  153. package/dist/elements/Locked/index.js.map +1 -0
  154. package/dist/elements/Locked/index.scss +14 -0
  155. package/dist/elements/Logout/index.js +1 -1
  156. package/dist/elements/Logout/index.js.map +1 -1
  157. package/dist/elements/Pagination/index.d.ts.map +1 -1
  158. package/dist/elements/Pagination/index.js +20 -10
  159. package/dist/elements/Pagination/index.js.map +1 -1
  160. package/dist/elements/PerPage/index.d.ts +5 -5
  161. package/dist/elements/PerPage/index.d.ts.map +1 -1
  162. package/dist/elements/PerPage/index.js +2 -1
  163. package/dist/elements/PerPage/index.js.map +1 -1
  164. package/dist/elements/Pill/index.d.ts.map +1 -1
  165. package/dist/elements/Pill/index.js +11 -5
  166. package/dist/elements/Pill/index.js.map +1 -1
  167. package/dist/elements/Pill/index.scss +3 -1
  168. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  169. package/dist/elements/Popup/PopupTrigger/index.js +3 -1
  170. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  171. package/dist/elements/Popup/index.d.ts.map +1 -1
  172. package/dist/elements/Popup/index.js +4 -2
  173. package/dist/elements/Popup/index.js.map +1 -1
  174. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  175. package/dist/elements/PreviewButton/usePreviewURL.js +19 -6
  176. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  177. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  178. package/dist/elements/PreviewSizes/index.js +15 -5
  179. package/dist/elements/PreviewSizes/index.js.map +1 -1
  180. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  181. package/dist/elements/PublishButton/index.js +164 -48
  182. package/dist/elements/PublishButton/index.js.map +1 -1
  183. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  184. package/dist/elements/PublishMany/index.js +25 -17
  185. package/dist/elements/PublishMany/index.js.map +1 -1
  186. package/dist/elements/PublishMany/index.scss +23 -4
  187. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  188. package/dist/elements/ReactSelect/DropdownIndicator/index.js +3 -1
  189. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  190. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  191. package/dist/elements/ReactSelect/index.js +5 -3
  192. package/dist/elements/ReactSelect/index.js.map +1 -1
  193. package/dist/elements/ReactSelect/index.scss +4 -0
  194. package/dist/elements/ReactSelect/types.d.ts +9 -2
  195. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  196. package/dist/elements/ReactSelect/types.js.map +1 -1
  197. package/dist/elements/RelationshipTable/TableWrapper.d.ts +8 -0
  198. package/dist/elements/RelationshipTable/TableWrapper.d.ts.map +1 -0
  199. package/dist/elements/RelationshipTable/TableWrapper.js +69 -0
  200. package/dist/elements/RelationshipTable/TableWrapper.js.map +1 -0
  201. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts +8 -0
  202. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts.map +1 -0
  203. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +82 -0
  204. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -0
  205. package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +4 -0
  206. package/dist/elements/RelationshipTable/index.d.ts +13 -0
  207. package/dist/elements/RelationshipTable/index.d.ts.map +1 -0
  208. package/dist/elements/RelationshipTable/index.js +365 -0
  209. package/dist/elements/RelationshipTable/index.js.map +1 -0
  210. package/dist/elements/RelationshipTable/index.scss +26 -0
  211. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  212. package/dist/elements/SaveButton/index.js +5 -3
  213. package/dist/elements/SaveButton/index.js.map +1 -1
  214. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  215. package/dist/elements/SaveDraftButton/index.js +12 -6
  216. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  217. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  218. package/dist/elements/SearchFilter/index.js +33 -13
  219. package/dist/elements/SearchFilter/index.js.map +1 -1
  220. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  221. package/dist/elements/SelectRow/index.js +60 -24
  222. package/dist/elements/SelectRow/index.js.map +1 -1
  223. package/dist/elements/ShimmerEffect/index.d.ts +3 -3
  224. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  225. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  226. package/dist/elements/SortColumn/index.d.ts +5 -4
  227. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  228. package/dist/elements/SortColumn/index.js +26 -31
  229. package/dist/elements/SortColumn/index.js.map +1 -1
  230. package/dist/elements/SortColumn/index.scss +10 -1
  231. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  232. package/dist/elements/SortComplex/index.js.map +1 -1
  233. package/dist/elements/Status/index.d.ts.map +1 -1
  234. package/dist/elements/Status/index.js +43 -27
  235. package/dist/elements/Status/index.js.map +1 -1
  236. package/dist/elements/Status/index.scss +26 -7
  237. package/dist/elements/StepNav/index.d.ts +1 -1
  238. package/dist/elements/StepNav/index.d.ts.map +1 -1
  239. package/dist/elements/StepNav/index.js +2 -2
  240. package/dist/elements/StepNav/index.js.map +1 -1
  241. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -2
  242. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  243. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  244. package/dist/elements/Table/DefaultCell/fields/Code/index.js +1 -1
  245. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  246. package/dist/elements/Table/DefaultCell/fields/File/index.scss +5 -5
  247. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -3
  248. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  249. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +43 -40
  250. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  251. package/dist/elements/Table/DefaultCell/fields/Relationship/index.scss +0 -3
  252. package/dist/elements/Table/DefaultCell/fields/index.d.ts +2 -1
  253. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  254. package/dist/elements/Table/DefaultCell/fields/index.js +2 -1
  255. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  256. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  257. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  258. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  259. package/dist/elements/Table/RenderCell.d.ts +11 -0
  260. package/dist/elements/Table/RenderCell.d.ts.map +1 -0
  261. package/dist/elements/Table/RenderCell.js +30 -0
  262. package/dist/elements/Table/RenderCell.js.map +1 -0
  263. package/dist/elements/Table/index.d.ts +4 -7
  264. package/dist/elements/Table/index.d.ts.map +1 -1
  265. package/dist/elements/Table/index.js +40 -30
  266. package/dist/elements/Table/index.js.map +1 -1
  267. package/dist/elements/Table/index.scss +49 -0
  268. package/dist/elements/TableColumns/buildColumnState.d.ts +5 -2
  269. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  270. package/dist/elements/TableColumns/buildColumnState.js +47 -31
  271. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  272. package/dist/elements/TableColumns/index.d.ts +4 -0
  273. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  274. package/dist/elements/TableColumns/index.js +90 -101
  275. package/dist/elements/TableColumns/index.js.map +1 -1
  276. package/dist/elements/Thumbnail/index.d.ts +10 -6
  277. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  278. package/dist/elements/Thumbnail/index.js +84 -9
  279. package/dist/elements/Thumbnail/index.js.map +1 -1
  280. package/dist/elements/Tooltip/index.d.ts +1 -0
  281. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  282. package/dist/elements/Tooltip/index.js +15 -13
  283. package/dist/elements/Tooltip/index.js.map +1 -1
  284. package/dist/elements/Tooltip/index.scss +2 -2
  285. package/dist/elements/Translation/index.d.ts.map +1 -1
  286. package/dist/elements/Translation/index.js +0 -2
  287. package/dist/elements/Translation/index.js.map +1 -1
  288. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  289. package/dist/elements/UnpublishMany/index.js +26 -18
  290. package/dist/elements/UnpublishMany/index.js.map +1 -1
  291. package/dist/elements/UnpublishMany/index.scss +23 -4
  292. package/dist/elements/Upload/index.d.ts.map +1 -1
  293. package/dist/elements/Upload/index.js +64 -33
  294. package/dist/elements/Upload/index.js.map +1 -1
  295. package/dist/elements/Upload/index.scss +38 -0
  296. package/dist/elements/ViewDescription/index.d.ts +1 -1
  297. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  298. package/dist/elements/ViewDescription/index.js.map +1 -1
  299. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  300. package/dist/elements/WhereBuilder/Condition/index.js +2 -1
  301. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  302. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  303. package/dist/elements/WhereBuilder/index.js +5 -8
  304. package/dist/elements/WhereBuilder/index.js.map +1 -1
  305. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
  306. package/dist/elements/WhereBuilder/reduceClientFields.js +3 -1
  307. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  308. package/dist/elements/WhereBuilder/types.d.ts +1 -1
  309. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  310. package/dist/elements/WhereBuilder/types.js.map +1 -1
  311. package/dist/elements/WindowInfo/index.d.ts +2 -2
  312. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  313. package/dist/elements/WindowInfo/index.js +2 -2
  314. package/dist/elements/WindowInfo/index.js.map +1 -1
  315. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  316. package/dist/exports/client/{CodeEditor-MTP455NO.js → CodeEditor-CHKRX3U2.js} +4 -4
  317. package/dist/exports/client/{CodeEditor-MTP455NO.js.map → CodeEditor-CHKRX3U2.js.map} +4 -4
  318. package/dist/exports/client/{DatePicker-E6IJFDN2.js → DatePicker-OLRZVTAD.js} +2 -2
  319. package/dist/exports/client/{chunk-NJHSEGFB.js → chunk-BGA6EPOL.js} +1 -1
  320. package/dist/exports/client/{chunk-NJHSEGFB.js.map → chunk-BGA6EPOL.js.map} +2 -2
  321. package/dist/exports/client/{chunk-OBXEO4WP.js → chunk-JINNHJP7.js} +1 -1
  322. package/dist/exports/client/{chunk-OBXEO4WP.js.map → chunk-JINNHJP7.js.map} +2 -2
  323. package/dist/exports/client/index.d.ts +6 -4
  324. package/dist/exports/client/index.d.ts.map +1 -1
  325. package/dist/exports/client/index.js +19 -19
  326. package/dist/exports/client/index.js.map +4 -4
  327. package/dist/exports/shared/index.d.ts +3 -2
  328. package/dist/exports/shared/index.d.ts.map +1 -1
  329. package/dist/exports/shared/index.js +2 -2
  330. package/dist/exports/shared/index.js.map +4 -4
  331. package/dist/fields/Array/ArrayRow.d.ts +1 -1
  332. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  333. package/dist/fields/Array/ArrayRow.js +6 -6
  334. package/dist/fields/Array/ArrayRow.js.map +1 -1
  335. package/dist/fields/Array/index.d.ts +11 -3
  336. package/dist/fields/Array/index.d.ts.map +1 -1
  337. package/dist/fields/Array/index.js +8 -5
  338. package/dist/fields/Array/index.js.map +1 -1
  339. package/dist/fields/Blocks/BlockRow.d.ts +2 -2
  340. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  341. package/dist/fields/Blocks/BlockRow.js +4 -4
  342. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  343. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  344. package/dist/fields/Blocks/BlocksDrawer/index.js +3 -1
  345. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  346. package/dist/fields/Blocks/RowActions.d.ts +1 -1
  347. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  348. package/dist/fields/Blocks/RowActions.js +1 -1
  349. package/dist/fields/Blocks/RowActions.js.map +1 -1
  350. package/dist/fields/Blocks/index.d.ts +8 -2
  351. package/dist/fields/Blocks/index.d.ts.map +1 -1
  352. package/dist/fields/Blocks/index.js +2 -5
  353. package/dist/fields/Blocks/index.js.map +1 -1
  354. package/dist/fields/Checkbox/Input.d.ts +1 -1
  355. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  356. package/dist/fields/Checkbox/Input.js +3 -3
  357. package/dist/fields/Checkbox/Input.js.map +1 -1
  358. package/dist/fields/Checkbox/index.d.ts +16 -4
  359. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  360. package/dist/fields/Checkbox/index.js +2 -2
  361. package/dist/fields/Checkbox/index.js.map +1 -1
  362. package/dist/fields/Checkbox/index.scss +13 -0
  363. package/dist/fields/Code/index.d.ts +9 -2
  364. package/dist/fields/Code/index.d.ts.map +1 -1
  365. package/dist/fields/Code/index.js +32 -37
  366. package/dist/fields/Code/index.js.map +1 -1
  367. package/dist/fields/Collapsible/index.d.ts +6 -2
  368. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  369. package/dist/fields/Collapsible/index.js +49 -42
  370. package/dist/fields/Collapsible/index.js.map +1 -1
  371. package/dist/fields/DateTime/index.d.ts +9 -2
  372. package/dist/fields/DateTime/index.d.ts.map +1 -1
  373. package/dist/fields/DateTime/index.js +33 -38
  374. package/dist/fields/DateTime/index.js.map +1 -1
  375. package/dist/fields/Email/index.d.ts +10 -2
  376. package/dist/fields/Email/index.d.ts.map +1 -1
  377. package/dist/fields/Email/index.js +29 -33
  378. package/dist/fields/Email/index.js.map +1 -1
  379. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  380. package/dist/fields/FieldLabel/index.js +7 -1
  381. package/dist/fields/FieldLabel/index.js.map +1 -1
  382. package/dist/fields/Group/index.d.ts +8 -3
  383. package/dist/fields/Group/index.d.ts.map +1 -1
  384. package/dist/fields/Group/index.js +1 -1
  385. package/dist/fields/Group/index.js.map +1 -1
  386. package/dist/fields/JSON/index.d.ts +8 -2
  387. package/dist/fields/JSON/index.d.ts.map +1 -1
  388. package/dist/fields/JSON/index.js +17 -11
  389. package/dist/fields/JSON/index.js.map +1 -1
  390. package/dist/fields/Join/index.d.ts +9 -0
  391. package/dist/fields/Join/index.d.ts.map +1 -0
  392. package/dist/fields/Join/index.js +70 -0
  393. package/dist/fields/Join/index.js.map +1 -0
  394. package/dist/fields/Number/index.d.ts +9 -2
  395. package/dist/fields/Number/index.d.ts.map +1 -1
  396. package/dist/fields/Number/index.js +36 -41
  397. package/dist/fields/Number/index.js.map +1 -1
  398. package/dist/fields/Password/index.js +3 -3
  399. package/dist/fields/Password/index.js.map +1 -1
  400. package/dist/fields/Password/input.js +7 -7
  401. package/dist/fields/Password/input.js.map +1 -1
  402. package/dist/fields/Password/types.d.ts +5 -5
  403. package/dist/fields/Password/types.d.ts.map +1 -1
  404. package/dist/fields/Password/types.js.map +1 -1
  405. package/dist/fields/Point/index.d.ts +10 -3
  406. package/dist/fields/Point/index.d.ts.map +1 -1
  407. package/dist/fields/Point/index.js +2 -1
  408. package/dist/fields/Point/index.js.map +1 -1
  409. package/dist/fields/RadioGroup/Radio/index.d.ts +2 -2
  410. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  411. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  412. package/dist/fields/RadioGroup/index.d.ts +10 -2
  413. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  414. package/dist/fields/RadioGroup/index.js +36 -41
  415. package/dist/fields/RadioGroup/index.js.map +1 -1
  416. package/dist/fields/Relationship/createRelationMap.d.ts +1 -1
  417. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  418. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  419. package/dist/fields/Relationship/index.d.ts +8 -2
  420. package/dist/fields/Relationship/index.d.ts.map +1 -1
  421. package/dist/fields/Relationship/index.js +133 -44
  422. package/dist/fields/Relationship/index.js.map +1 -1
  423. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  424. package/dist/fields/Relationship/optionsReducer.js +31 -1
  425. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  426. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts +6 -1
  427. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  428. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +45 -82
  429. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  430. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
  431. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts +6 -1
  432. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  433. package/dist/fields/Relationship/select-components/SingleValue/index.js +49 -101
  434. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  435. package/dist/fields/Relationship/select-components/SingleValue/index.scss +4 -0
  436. package/dist/fields/Relationship/types.d.ts +14 -5
  437. package/dist/fields/Relationship/types.d.ts.map +1 -1
  438. package/dist/fields/Relationship/types.js.map +1 -1
  439. package/dist/fields/RichText/index.d.ts +2 -2
  440. package/dist/fields/RichText/index.d.ts.map +1 -1
  441. package/dist/fields/RichText/index.js.map +1 -1
  442. package/dist/fields/Row/index.d.ts +9 -2
  443. package/dist/fields/Row/index.d.ts.map +1 -1
  444. package/dist/fields/Row/index.js.map +1 -1
  445. package/dist/fields/Row/index.scss +12 -2
  446. package/dist/fields/Select/Input.d.ts +5 -5
  447. package/dist/fields/Select/Input.d.ts.map +1 -1
  448. package/dist/fields/Select/Input.js +7 -7
  449. package/dist/fields/Select/Input.js.map +1 -1
  450. package/dist/fields/Select/index.d.ts +10 -2
  451. package/dist/fields/Select/index.d.ts.map +1 -1
  452. package/dist/fields/Select/index.js +11 -11
  453. package/dist/fields/Select/index.js.map +1 -1
  454. package/dist/fields/Tabs/index.d.ts +6 -2
  455. package/dist/fields/Tabs/index.d.ts.map +1 -1
  456. package/dist/fields/Tabs/index.js +1 -1
  457. package/dist/fields/Tabs/index.js.map +1 -1
  458. package/dist/fields/Text/Input.js +7 -7
  459. package/dist/fields/Text/Input.js.map +1 -1
  460. package/dist/fields/Text/index.d.ts +11 -3
  461. package/dist/fields/Text/index.d.ts.map +1 -1
  462. package/dist/fields/Text/index.js +4 -6
  463. package/dist/fields/Text/index.js.map +1 -1
  464. package/dist/fields/Text/types.d.ts +5 -5
  465. package/dist/fields/Text/types.d.ts.map +1 -1
  466. package/dist/fields/Text/types.js.map +1 -1
  467. package/dist/fields/Textarea/Input.js +7 -7
  468. package/dist/fields/Textarea/Input.js.map +1 -1
  469. package/dist/fields/Textarea/index.d.ts +13 -4
  470. package/dist/fields/Textarea/index.d.ts.map +1 -1
  471. package/dist/fields/Textarea/index.js +4 -6
  472. package/dist/fields/Textarea/index.js.map +1 -1
  473. package/dist/fields/Textarea/types.d.ts +5 -5
  474. package/dist/fields/Textarea/types.d.ts.map +1 -1
  475. package/dist/fields/Textarea/types.js.map +1 -1
  476. package/dist/fields/Upload/HasMany/index.d.ts +16 -2
  477. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
  478. package/dist/fields/Upload/HasMany/index.js +154 -223
  479. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  480. package/dist/fields/Upload/HasMany/index.scss +12 -56
  481. package/dist/fields/Upload/HasOne/index.d.ts +13 -9
  482. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -1
  483. package/dist/fields/Upload/HasOne/index.js +36 -120
  484. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  485. package/dist/fields/Upload/HasOne/index.scss +0 -69
  486. package/dist/fields/Upload/{HasOne/Input.d.ts → Input.d.ts} +14 -9
  487. package/dist/fields/Upload/Input.d.ts.map +1 -0
  488. package/dist/fields/Upload/Input.js +672 -0
  489. package/dist/fields/Upload/Input.js.map +1 -0
  490. package/dist/fields/Upload/RelationshipContent/index.d.ts +21 -0
  491. package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -0
  492. package/dist/fields/Upload/RelationshipContent/index.js +140 -0
  493. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -0
  494. package/dist/fields/Upload/RelationshipContent/index.scss +54 -0
  495. package/dist/fields/Upload/UploadCard/index.d.ts +10 -0
  496. package/dist/fields/Upload/UploadCard/index.d.ts.map +1 -0
  497. package/dist/fields/Upload/UploadCard/index.js +15 -0
  498. package/dist/fields/Upload/UploadCard/index.js.map +1 -0
  499. package/dist/fields/Upload/UploadCard/index.scss +26 -0
  500. package/dist/fields/Upload/index.d.ts +6 -6
  501. package/dist/fields/Upload/index.d.ts.map +1 -1
  502. package/dist/fields/Upload/index.js +85 -90
  503. package/dist/fields/Upload/index.js.map +1 -1
  504. package/dist/fields/Upload/index.scss +62 -0
  505. package/dist/fields/index.d.ts.map +1 -1
  506. package/dist/fields/index.js +2 -0
  507. package/dist/fields/index.js.map +1 -1
  508. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  509. package/dist/forms/Form/fieldReducer.js +6 -2
  510. package/dist/forms/Form/fieldReducer.js.map +1 -1
  511. package/dist/forms/Form/index.d.ts.map +1 -1
  512. package/dist/forms/Form/index.js +26 -10
  513. package/dist/forms/Form/index.js.map +1 -1
  514. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  515. package/dist/forms/Form/mergeServerFormState.js +3 -1
  516. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  517. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  518. package/dist/forms/Form/rowHelpers.js +9 -3
  519. package/dist/forms/Form/rowHelpers.js.map +1 -1
  520. package/dist/forms/Form/rows.d.ts.map +1 -1
  521. package/dist/forms/Form/rows.js +3 -1
  522. package/dist/forms/Form/rows.js.map +1 -1
  523. package/dist/forms/Form/types.d.ts +1 -1
  524. package/dist/forms/Form/types.d.ts.map +1 -1
  525. package/dist/forms/Form/types.js.map +1 -1
  526. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  527. package/dist/forms/NullifyField/index.js.map +1 -1
  528. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  529. package/dist/forms/RenderFields/RenderField.js +6 -2
  530. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  531. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  532. package/dist/forms/RenderFields/index.js +19 -16
  533. package/dist/forms/RenderFields/index.js.map +1 -1
  534. package/dist/forms/RowLabel/index.js +1 -1
  535. package/dist/forms/RowLabel/index.js.map +1 -1
  536. package/dist/forms/RowLabel/types.d.ts +1 -1
  537. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  538. package/dist/forms/RowLabel/types.js.map +1 -1
  539. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  540. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  541. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  542. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +6 -2
  543. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  544. package/dist/forms/buildStateFromSchema/index.d.ts +2 -0
  545. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  546. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  547. package/dist/graphics/Account/index.d.ts.map +1 -1
  548. package/dist/graphics/Account/index.js +1 -1
  549. package/dist/graphics/Account/index.js.map +1 -1
  550. package/dist/hooks/useHotkey.d.ts.map +1 -1
  551. package/dist/hooks/useHotkey.js.map +1 -1
  552. package/dist/hooks/useIgnoredEffect.d.ts +17 -0
  553. package/dist/hooks/useIgnoredEffect.d.ts.map +1 -0
  554. package/dist/hooks/useIgnoredEffect.js +28 -0
  555. package/dist/hooks/useIgnoredEffect.js.map +1 -0
  556. package/dist/hooks/useIntersect.d.ts.map +1 -1
  557. package/dist/hooks/useIntersect.js.map +1 -1
  558. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  559. package/dist/hooks/usePayloadAPI.js.map +1 -1
  560. package/dist/hooks/useThrottledEffect.d.ts +7 -0
  561. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  562. package/dist/hooks/useThrottledEffect.js +7 -0
  563. package/dist/hooks/useThrottledEffect.js.map +1 -1
  564. package/dist/icons/Chevron/index.d.ts +3 -3
  565. package/dist/icons/Chevron/index.d.ts.map +1 -1
  566. package/dist/icons/Chevron/index.js +4 -4
  567. package/dist/icons/Chevron/index.js.map +1 -1
  568. package/dist/icons/Chevron/index.scss +9 -1
  569. package/dist/icons/Lock/index.d.ts +6 -0
  570. package/dist/icons/Lock/index.d.ts.map +1 -0
  571. package/dist/icons/Lock/index.js +27 -0
  572. package/dist/icons/Lock/index.js.map +1 -0
  573. package/dist/icons/Lock/index.scss +8 -0
  574. package/dist/providers/Auth/index.d.ts +1 -1
  575. package/dist/providers/Auth/index.d.ts.map +1 -1
  576. package/dist/providers/Auth/index.js +6 -2
  577. package/dist/providers/Auth/index.js.map +1 -1
  578. package/dist/providers/Config/RenderComponent.d.ts +1 -1
  579. package/dist/providers/Config/RenderComponent.d.ts.map +1 -1
  580. package/dist/providers/Config/RenderComponent.js +2 -2
  581. package/dist/providers/Config/RenderComponent.js.map +1 -1
  582. package/dist/providers/Config/createClientConfig/collections.d.ts +6 -6
  583. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  584. package/dist/providers/Config/createClientConfig/collections.js +17 -13
  585. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  586. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  587. package/dist/providers/Config/createClientConfig/fields.js +34 -11
  588. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  589. package/dist/providers/Config/createClientConfig/getComponent.d.ts +1 -1
  590. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -1
  591. package/dist/providers/Config/createClientConfig/getComponent.js +2 -2
  592. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  593. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
  594. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +3 -1
  595. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  596. package/dist/providers/Config/createClientConfig/globals.d.ts +4 -4
  597. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
  598. package/dist/providers/Config/createClientConfig/globals.js +3 -3
  599. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  600. package/dist/providers/Config/createClientConfig/index.d.ts +3 -3
  601. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -1
  602. package/dist/providers/Config/createClientConfig/index.js +20 -5
  603. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  604. package/dist/providers/DocumentEvents/index.js.map +1 -1
  605. package/dist/providers/DocumentInfo/index.d.ts +1 -1
  606. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  607. package/dist/providers/DocumentInfo/index.js +124 -12
  608. package/dist/providers/DocumentInfo/index.js.map +1 -1
  609. package/dist/providers/DocumentInfo/types.d.ts +43 -20
  610. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  611. package/dist/providers/DocumentInfo/types.js.map +1 -1
  612. package/dist/providers/ListInfo/index.d.ts +2 -2
  613. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  614. package/dist/providers/ListInfo/index.js.map +1 -1
  615. package/dist/providers/ListQuery/index.d.ts +17 -11
  616. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  617. package/dist/providers/ListQuery/index.js +32 -20
  618. package/dist/providers/ListQuery/index.js.map +1 -1
  619. package/dist/providers/Locale/index.d.ts.map +1 -1
  620. package/dist/providers/Locale/index.js.map +1 -1
  621. package/dist/providers/Preferences/index.d.ts.map +1 -1
  622. package/dist/providers/Preferences/index.js +3 -1
  623. package/dist/providers/Preferences/index.js.map +1 -1
  624. package/dist/providers/Root/index.d.ts +12 -12
  625. package/dist/providers/Root/index.d.ts.map +1 -1
  626. package/dist/providers/Root/index.js.map +1 -1
  627. package/dist/providers/Selection/index.d.ts +1 -1
  628. package/dist/providers/Selection/index.d.ts.map +1 -1
  629. package/dist/providers/Selection/index.js +59 -30
  630. package/dist/providers/Selection/index.js.map +1 -1
  631. package/dist/providers/WindowInfo/index.d.ts +1 -1
  632. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  633. package/dist/providers/WindowInfo/index.js +1 -1
  634. package/dist/providers/WindowInfo/index.js.map +1 -1
  635. package/dist/styles.css +1 -1
  636. package/dist/utilities/buildFormState.d.ts +9 -3
  637. package/dist/utilities/buildFormState.d.ts.map +1 -1
  638. package/dist/utilities/buildFormState.js +94 -6
  639. package/dist/utilities/buildFormState.js.map +1 -1
  640. package/dist/utilities/deepMerge.d.ts +12 -0
  641. package/dist/utilities/deepMerge.d.ts.map +1 -0
  642. package/dist/utilities/deepMerge.js +25 -0
  643. package/dist/utilities/deepMerge.js.map +1 -0
  644. package/dist/utilities/getFormState.d.ts +8 -2
  645. package/dist/utilities/getFormState.d.ts.map +1 -1
  646. package/dist/utilities/getFormState.js +3 -1
  647. package/dist/utilities/getFormState.js.map +1 -1
  648. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  649. package/dist/utilities/reduceFieldsToValuesWithValidation.js +6 -2
  650. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  651. package/package.json +8 -8
  652. package/dist/fields/Upload/HasOne/Input.d.ts.map +0 -1
  653. package/dist/fields/Upload/HasOne/Input.js +0 -324
  654. package/dist/fields/Upload/HasOne/Input.js.map +0 -1
  655. /package/dist/exports/client/{DatePicker-E6IJFDN2.js.map → DatePicker-OLRZVTAD.js.map} +0 -0
@@ -1,7 +1,13 @@
1
- import type { FormState, PayloadRequest } from 'payload';
1
+ import type { ClientUser, FormState, PayloadRequest } from 'payload';
2
2
  import type { FieldSchemaMap } from './buildFieldSchemaMap/types.js';
3
3
  export declare const getFieldSchemaMap: (req: PayloadRequest) => FieldSchemaMap;
4
- export declare const buildFormState: ({ req }: {
4
+ export declare const buildFormState: ({ req, }: {
5
5
  req: PayloadRequest;
6
- }) => Promise<FormState>;
6
+ }) => Promise<{
7
+ lockedState?: {
8
+ isLocked: boolean;
9
+ user: ClientUser | number | string;
10
+ };
11
+ state: FormState;
12
+ }>;
7
13
  //# sourceMappingURL=buildFormState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/buildFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA8B,SAAS,EAAE,cAAc,EAAc,MAAM,SAAS,CAAA;AAKhG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAWpE,eAAO,MAAM,iBAAiB,QAAS,cAAc,KAAG,cAWvD,CAAA;AAED,eAAO,MAAM,cAAc,YAAmB;IAAE,GAAG,EAAE,cAAc,CAAA;CAAE,KAAG,OAAO,CAAC,SAAS,CAiLxF,CAAA"}
1
+ {"version":3,"file":"buildFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/buildFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAGV,SAAS,EACT,cAAc,EAEf,MAAM,SAAS,CAAA;AAKhB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAWpE,eAAO,MAAM,iBAAiB,QAAS,cAAc,KAAG,cAWvD,CAAA;AAED,eAAO,MAAM,cAAc,aAExB;IACD,GAAG,EAAE,cAAc,CAAA;CACpB,KAAG,OAAO,CAAC;IACV,WAAW,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACvE,KAAK,EAAE,SAAS,CAAA;CACjB,CA2QA,CAAA"}
@@ -25,7 +25,9 @@ export const buildFormState = async ({
25
25
  globalSlug,
26
26
  locale,
27
27
  operation,
28
- schemaPath
28
+ returnLockStatus,
29
+ schemaPath,
30
+ updateLastEdited
29
31
  } = reqData;
30
32
  const incomingUserSlug = req.user?.collection;
31
33
  const adminUserSlug = req.payload.config.admin.user;
@@ -60,7 +62,7 @@ export const buildFormState = async ({
60
62
  const id = collectionSlug ? reqData.id : undefined;
61
63
  const schemaPathSegments = schemaPath && schemaPath.split('.');
62
64
  let fieldSchema;
63
- if (schemaPathSegments.length === 1) {
65
+ if (schemaPathSegments && schemaPathSegments.length === 1) {
64
66
  if (req.payload.collections[schemaPath]) {
65
67
  fieldSchema = req.payload.collections[schemaPath].config.fields;
66
68
  } else {
@@ -109,14 +111,18 @@ export const buildFormState = async ({
109
111
  }]
110
112
  }
111
113
  });
112
- if (preferencesResult?.docs?.[0]?.value) docPreferences = preferencesResult.docs[0].value;
114
+ if (preferencesResult?.docs?.[0]?.value) {
115
+ docPreferences = preferencesResult.docs[0].value;
116
+ }
113
117
  };
114
118
  promises.preferences = fetchPreferences();
115
119
  }
116
120
  }
117
121
  // If there is a form state,
118
122
  // then we can deduce data from that form state
119
- if (formState) data = reduceFieldsToValues(formState, true);
123
+ if (formState) {
124
+ data = reduceFieldsToValues(formState, true);
125
+ }
120
126
  // If we do not have data at this point,
121
127
  // we can fetch it. This is useful for DocumentInfoProvider
122
128
  // to reduce the amount of fetches required
@@ -150,7 +156,7 @@ export const buildFormState = async ({
150
156
  };
151
157
  promises.data = fetchData();
152
158
  }
153
- if (Object.keys(promises).length > 0) {
159
+ if (Object.keys(promises) && Object.keys(promises).length > 0) {
154
160
  await Promise.all(Object.values(promises));
155
161
  }
156
162
  const result = await buildStateFromSchema({
@@ -170,6 +176,88 @@ export const buildFormState = async ({
170
176
  result.file = formState.file;
171
177
  }
172
178
  }
173
- return result;
179
+ if (returnLockStatus && req.user && (id || globalSlug)) {
180
+ let lockedDocumentQuery;
181
+ if (collectionSlug) {
182
+ lockedDocumentQuery = {
183
+ and: [{
184
+ 'document.relationTo': {
185
+ equals: collectionSlug
186
+ }
187
+ }, {
188
+ 'document.value': {
189
+ in: id
190
+ }
191
+ }]
192
+ };
193
+ } else if (globalSlug) {
194
+ lockedDocumentQuery = {
195
+ globalSlug: {
196
+ equals: globalSlug
197
+ }
198
+ };
199
+ }
200
+ if (lockedDocumentQuery) {
201
+ const lockedDocument = await req.payload.find({
202
+ collection: 'payload-locked-documents',
203
+ depth: 1,
204
+ limit: 1,
205
+ pagination: false,
206
+ where: lockedDocumentQuery
207
+ });
208
+ if (lockedDocument.docs && lockedDocument.docs.length > 0) {
209
+ const lockedState = {
210
+ isLocked: true,
211
+ user: lockedDocument.docs[0]?._lastEdited?.user?.value
212
+ };
213
+ if (updateLastEdited) {
214
+ await req.payload.update({
215
+ id: lockedDocument.docs[0].id,
216
+ collection: 'payload-locked-documents',
217
+ data: {
218
+ _lastEdited: {
219
+ editedAt: new Date().toISOString()
220
+ }
221
+ }
222
+ });
223
+ }
224
+ return {
225
+ lockedState,
226
+ state: result
227
+ };
228
+ } else {
229
+ // If no lock document exists, create it
230
+ await req.payload.create({
231
+ collection: 'payload-locked-documents',
232
+ data: {
233
+ _lastEdited: {
234
+ editedAt: new Date().toISOString(),
235
+ user: {
236
+ relationTo: [req.user.collection],
237
+ value: req.user.id
238
+ }
239
+ },
240
+ document: collectionSlug ? {
241
+ relationTo: [collectionSlug],
242
+ value: id
243
+ } : undefined,
244
+ globalSlug: globalSlug ? globalSlug : undefined,
245
+ isLocked: true
246
+ }
247
+ });
248
+ const lockedState = {
249
+ isLocked: true,
250
+ user: req.user
251
+ };
252
+ return {
253
+ lockedState,
254
+ state: result
255
+ };
256
+ }
257
+ }
258
+ }
259
+ return {
260
+ state: result
261
+ };
174
262
  };
175
263
  //# sourceMappingURL=buildFormState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildFormState.js","names":["reduceFieldsToValues","buildStateFromSchema","buildFieldSchemaMap","cached","global","_payload_fieldSchemaMap","getFieldSchemaMap","req","process","env","NODE_ENV","config","payload","i18n","buildFormState","reqData","data","collectionSlug","formState","globalSlug","locale","operation","schemaPath","incomingUserSlug","user","collection","adminUserSlug","admin","adminAccessFunction","collections","access","canAccessAdmin","Error","hasUsers","find","depth","limit","pagination","docs","length","fieldSchemaMap","id","undefined","schemaPathSegments","split","fieldSchema","fields","globals","global1","slug","has","get","docPreferences","promises","preferencesKey","fetchPreferences","preferencesResult","where","and","key","equals","value","preferences","fetchData","resolvedData","findByID","draft","fallbackLocale","overrideAccess","findGlobal","Object","keys","Promise","all","values","result","upload","file"],"sources":["../../src/utilities/buildFormState.ts"],"sourcesContent":["import type { DocumentPreferences, Field, FormState, PayloadRequest, TypeWithID } from 'payload'\n\nimport { reduceFieldsToValues } from 'payload/shared'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\nimport type { FieldSchemaMap } from './buildFieldSchemaMap/types.js'\n\nimport { buildStateFromSchema } from '../forms/buildStateFromSchema/index.js'\nimport { buildFieldSchemaMap } from './buildFieldSchemaMap/index.js'\n\nlet cached = global._payload_fieldSchemaMap\n\nif (!cached) {\n cached = global._payload_fieldSchemaMap = null\n}\n\nexport const getFieldSchemaMap = (req: PayloadRequest): FieldSchemaMap => {\n if (cached && process.env.NODE_ENV !== 'development') {\n return cached\n }\n\n cached = buildFieldSchemaMap({\n config: req.payload.config,\n i18n: req.i18n,\n })\n\n return cached\n}\n\nexport const buildFormState = async ({ req }: { req: PayloadRequest }): Promise<FormState> => {\n const reqData: BuildFormStateArgs = (req.data || {}) as BuildFormStateArgs\n const { collectionSlug, formState, globalSlug, locale, operation, schemaPath } = reqData\n\n const incomingUserSlug = req.user?.collection\n const adminUserSlug = req.payload.config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = req.payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n } else {\n const hasUsers = await req.payload.find({\n collection: adminUserSlug,\n depth: 0,\n limit: 1,\n pagination: false,\n })\n // If there are users, we should not allow access because of /create-first-user\n if (hasUsers.docs.length) {\n throw new Error('Unauthorized')\n }\n }\n\n const fieldSchemaMap = getFieldSchemaMap(req)\n\n const id = collectionSlug ? reqData.id : undefined\n const schemaPathSegments = schemaPath && schemaPath.split('.')\n\n let fieldSchema: Field[]\n\n if (schemaPathSegments.length === 1) {\n if (req.payload.collections[schemaPath]) {\n fieldSchema = req.payload.collections[schemaPath].config.fields\n } else {\n fieldSchema = req.payload.config.globals.find((global) => global.slug === schemaPath)?.fields\n }\n } else if (fieldSchemaMap.has(schemaPath)) {\n fieldSchema = fieldSchemaMap.get(schemaPath)\n }\n\n if (!fieldSchema) {\n throw new Error(`Could not find field schema for given path \"${schemaPath}\"`)\n }\n\n let docPreferences = reqData.docPreferences\n let data = reqData.data\n\n const promises: {\n data?: Promise<void>\n preferences?: Promise<void>\n } = {}\n\n // If the request does not include doc preferences,\n // we should fetch them. This is useful for DocumentInfoProvider\n // as it reduces the amount of client-side fetches necessary\n // when we fetch data for the Edit View\n if (!docPreferences) {\n let preferencesKey\n\n if (collectionSlug && id) {\n preferencesKey = `collection-${collectionSlug}-${id}`\n }\n\n if (globalSlug) {\n preferencesKey = `global-${globalSlug}`\n }\n\n if (preferencesKey) {\n const fetchPreferences = async () => {\n const preferencesResult = (await req.payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: req.user.collection,\n },\n },\n {\n 'user.value': {\n equals: req.user.id,\n },\n },\n ],\n },\n })) as unknown as { docs: { value: DocumentPreferences }[] }\n\n if (preferencesResult?.docs?.[0]?.value) docPreferences = preferencesResult.docs[0].value\n }\n\n promises.preferences = fetchPreferences()\n }\n }\n\n // If there is a form state,\n // then we can deduce data from that form state\n if (formState) data = reduceFieldsToValues(formState, true)\n\n // If we do not have data at this point,\n // we can fetch it. This is useful for DocumentInfoProvider\n // to reduce the amount of fetches required\n if (!data) {\n const fetchData = async () => {\n let resolvedData: Record<string, unknown> | TypeWithID\n\n if (collectionSlug && id) {\n resolvedData = await req.payload.findByID({\n id,\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale,\n overrideAccess: false,\n user: req.user,\n })\n }\n\n if (globalSlug && schemaPath === globalSlug) {\n resolvedData = await req.payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale,\n overrideAccess: false,\n user: req.user,\n })\n }\n\n data = resolvedData\n }\n\n promises.data = fetchData()\n }\n\n if (Object.keys(promises).length > 0) {\n await Promise.all(Object.values(promises))\n }\n\n const result = await buildStateFromSchema({\n id,\n collectionSlug,\n data,\n fieldSchema,\n operation,\n preferences: docPreferences || { fields: {} },\n req,\n })\n\n // Maintain form state of auth / upload fields\n if (collectionSlug && formState) {\n if (req.payload.collections[collectionSlug]?.config?.upload && formState.file) {\n result.file = formState.file\n }\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"buildFormState.js","names":["reduceFieldsToValues","buildStateFromSchema","buildFieldSchemaMap","cached","global","_payload_fieldSchemaMap","getFieldSchemaMap","req","process","env","NODE_ENV","config","payload","i18n","buildFormState","reqData","data","collectionSlug","formState","globalSlug","locale","operation","returnLockStatus","schemaPath","updateLastEdited","incomingUserSlug","user","collection","adminUserSlug","admin","adminAccessFunction","collections","access","canAccessAdmin","Error","hasUsers","find","depth","limit","pagination","docs","length","fieldSchemaMap","id","undefined","schemaPathSegments","split","fieldSchema","fields","globals","global1","slug","has","get","docPreferences","promises","preferencesKey","fetchPreferences","preferencesResult","where","and","key","equals","value","preferences","fetchData","resolvedData","findByID","draft","fallbackLocale","overrideAccess","findGlobal","Object","keys","Promise","all","values","result","upload","file","lockedDocumentQuery","in","lockedDocument","lockedState","isLocked","_lastEdited","update","editedAt","Date","toISOString","state","create","relationTo","document"],"sources":["../../src/utilities/buildFormState.ts"],"sourcesContent":["import type {\n ClientUser,\n DocumentPreferences,\n Field,\n FormState,\n PayloadRequest,\n TypeWithID,\n} from 'payload'\n\nimport { reduceFieldsToValues } from 'payload/shared'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\nimport type { FieldSchemaMap } from './buildFieldSchemaMap/types.js'\n\nimport { buildStateFromSchema } from '../forms/buildStateFromSchema/index.js'\nimport { buildFieldSchemaMap } from './buildFieldSchemaMap/index.js'\n\nlet cached = global._payload_fieldSchemaMap\n\nif (!cached) {\n cached = global._payload_fieldSchemaMap = null\n}\n\nexport const getFieldSchemaMap = (req: PayloadRequest): FieldSchemaMap => {\n if (cached && process.env.NODE_ENV !== 'development') {\n return cached\n }\n\n cached = buildFieldSchemaMap({\n config: req.payload.config,\n i18n: req.i18n,\n })\n\n return cached\n}\n\nexport const buildFormState = async ({\n req,\n}: {\n req: PayloadRequest\n}): Promise<{\n lockedState?: { isLocked: boolean; user: ClientUser | number | string }\n state: FormState\n}> => {\n const reqData: BuildFormStateArgs = (req.data || {}) as BuildFormStateArgs\n const {\n collectionSlug,\n formState,\n globalSlug,\n locale,\n operation,\n returnLockStatus,\n schemaPath,\n updateLastEdited,\n } = reqData\n\n const incomingUserSlug = req.user?.collection\n const adminUserSlug = req.payload.config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = req.payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n } else {\n const hasUsers = await req.payload.find({\n collection: adminUserSlug,\n depth: 0,\n limit: 1,\n pagination: false,\n })\n // If there are users, we should not allow access because of /create-first-user\n if (hasUsers.docs.length) {\n throw new Error('Unauthorized')\n }\n }\n\n const fieldSchemaMap = getFieldSchemaMap(req)\n\n const id = collectionSlug ? reqData.id : undefined\n const schemaPathSegments = schemaPath && schemaPath.split('.')\n\n let fieldSchema: Field[]\n\n if (schemaPathSegments && schemaPathSegments.length === 1) {\n if (req.payload.collections[schemaPath]) {\n fieldSchema = req.payload.collections[schemaPath].config.fields\n } else {\n fieldSchema = req.payload.config.globals.find((global) => global.slug === schemaPath)?.fields\n }\n } else if (fieldSchemaMap.has(schemaPath)) {\n fieldSchema = fieldSchemaMap.get(schemaPath)\n }\n\n if (!fieldSchema) {\n throw new Error(`Could not find field schema for given path \"${schemaPath}\"`)\n }\n\n let docPreferences = reqData.docPreferences\n let data = reqData.data\n\n const promises: {\n data?: Promise<void>\n preferences?: Promise<void>\n } = {}\n\n // If the request does not include doc preferences,\n // we should fetch them. This is useful for DocumentInfoProvider\n // as it reduces the amount of client-side fetches necessary\n // when we fetch data for the Edit View\n if (!docPreferences) {\n let preferencesKey\n\n if (collectionSlug && id) {\n preferencesKey = `collection-${collectionSlug}-${id}`\n }\n\n if (globalSlug) {\n preferencesKey = `global-${globalSlug}`\n }\n\n if (preferencesKey) {\n const fetchPreferences = async () => {\n const preferencesResult = (await req.payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: req.user.collection,\n },\n },\n {\n 'user.value': {\n equals: req.user.id,\n },\n },\n ],\n },\n })) as unknown as { docs: { value: DocumentPreferences }[] }\n\n if (preferencesResult?.docs?.[0]?.value) {\n docPreferences = preferencesResult.docs[0].value\n }\n }\n\n promises.preferences = fetchPreferences()\n }\n }\n\n // If there is a form state,\n // then we can deduce data from that form state\n if (formState) {\n data = reduceFieldsToValues(formState, true)\n }\n\n // If we do not have data at this point,\n // we can fetch it. This is useful for DocumentInfoProvider\n // to reduce the amount of fetches required\n if (!data) {\n const fetchData = async () => {\n let resolvedData: Record<string, unknown> | TypeWithID\n\n if (collectionSlug && id) {\n resolvedData = await req.payload.findByID({\n id,\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale,\n overrideAccess: false,\n user: req.user,\n })\n }\n\n if (globalSlug && schemaPath === globalSlug) {\n resolvedData = await req.payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale,\n overrideAccess: false,\n user: req.user,\n })\n }\n\n data = resolvedData\n }\n\n promises.data = fetchData()\n }\n\n if (Object.keys(promises) && Object.keys(promises).length > 0) {\n await Promise.all(Object.values(promises))\n }\n\n const result = await buildStateFromSchema({\n id,\n collectionSlug,\n data,\n fieldSchema,\n operation,\n preferences: docPreferences || { fields: {} },\n req,\n })\n\n // Maintain form state of auth / upload fields\n if (collectionSlug && formState) {\n if (req.payload.collections[collectionSlug]?.config?.upload && formState.file) {\n result.file = formState.file\n }\n }\n\n if (returnLockStatus && req.user && (id || globalSlug)) {\n let lockedDocumentQuery\n\n if (collectionSlug) {\n lockedDocumentQuery = {\n and: [\n { 'document.relationTo': { equals: collectionSlug } },\n { 'document.value': { in: id } },\n ],\n }\n } else if (globalSlug) {\n lockedDocumentQuery = {\n globalSlug: { equals: globalSlug },\n }\n }\n\n if (lockedDocumentQuery) {\n const lockedDocument = await req.payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: 1,\n pagination: false,\n where: lockedDocumentQuery,\n })\n\n if (lockedDocument.docs && lockedDocument.docs.length > 0) {\n const lockedState = {\n isLocked: true,\n user: lockedDocument.docs[0]?._lastEdited?.user?.value,\n }\n\n if (updateLastEdited) {\n await req.payload.update({\n id: lockedDocument.docs[0].id,\n collection: 'payload-locked-documents',\n data: {\n _lastEdited: {\n editedAt: new Date().toISOString(),\n },\n },\n })\n }\n\n return { lockedState, state: result }\n } else {\n // If no lock document exists, create it\n await req.payload.create({\n collection: 'payload-locked-documents',\n data: {\n _lastEdited: {\n editedAt: new Date().toISOString(),\n user: {\n relationTo: [req.user.collection],\n value: req.user.id,\n },\n },\n document: collectionSlug\n ? {\n relationTo: [collectionSlug],\n value: id,\n }\n : undefined,\n globalSlug: globalSlug ? globalSlug : undefined,\n isLocked: true,\n },\n })\n\n const lockedState = {\n isLocked: true,\n user: req.user,\n }\n\n return { lockedState, state: result }\n }\n }\n }\n\n return { state: result }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Very simple, but fast deepMerge implementation. Only deepMerges objects, not arrays and clones everything.
3
+ * Do not use this if your object contains any complex objects like React Components, or if you would like to combine Arrays.
4
+ * If you only have simple objects and need a fast deepMerge, this is the function for you.
5
+ *
6
+ * obj2 takes precedence over obj1 - thus if obj2 has a key that obj1 also has, obj2's value will be used.
7
+ *
8
+ * @param obj1 base object
9
+ * @param obj2 object to merge "into" obj1
10
+ */
11
+ export declare function deepMergeSimple<T = object>(obj1: object, obj2: object): T;
12
+ //# sourceMappingURL=deepMerge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepMerge.d.ts","sourceRoot":"","sources":["../../src/utilities/deepMerge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,CAczE"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Very simple, but fast deepMerge implementation. Only deepMerges objects, not arrays and clones everything.
3
+ * Do not use this if your object contains any complex objects like React Components, or if you would like to combine Arrays.
4
+ * If you only have simple objects and need a fast deepMerge, this is the function for you.
5
+ *
6
+ * obj2 takes precedence over obj1 - thus if obj2 has a key that obj1 also has, obj2's value will be used.
7
+ *
8
+ * @param obj1 base object
9
+ * @param obj2 object to merge "into" obj1
10
+ */export function deepMergeSimple(obj1, obj2) {
11
+ const output = {
12
+ ...obj1
13
+ };
14
+ for (const key in obj2) {
15
+ if (Object.prototype.hasOwnProperty.call(obj2, key)) {
16
+ if (typeof obj2[key] === 'object' && !Array.isArray(obj2[key]) && obj1[key]) {
17
+ output[key] = deepMergeSimple(obj1[key], obj2[key]);
18
+ } else {
19
+ output[key] = obj2[key];
20
+ }
21
+ }
22
+ }
23
+ return output;
24
+ }
25
+ //# sourceMappingURL=deepMerge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepMerge.js","names":["deepMergeSimple","obj1","obj2","output","key","Object","prototype","hasOwnProperty","call","Array","isArray"],"sources":["../../src/utilities/deepMerge.ts"],"sourcesContent":["/**\n * Very simple, but fast deepMerge implementation. Only deepMerges objects, not arrays and clones everything.\n * Do not use this if your object contains any complex objects like React Components, or if you would like to combine Arrays.\n * If you only have simple objects and need a fast deepMerge, this is the function for you.\n *\n * obj2 takes precedence over obj1 - thus if obj2 has a key that obj1 also has, obj2's value will be used.\n *\n * @param obj1 base object\n * @param obj2 object to merge \"into\" obj1\n */\nexport function deepMergeSimple<T = object>(obj1: object, obj2: object): T {\n const output = { ...obj1 }\n\n for (const key in obj2) {\n if (Object.prototype.hasOwnProperty.call(obj2, key)) {\n if (typeof obj2[key] === 'object' && !Array.isArray(obj2[key]) && obj1[key]) {\n output[key] = deepMergeSimple(obj1[key], obj2[key])\n } else {\n output[key] = obj2[key]\n }\n }\n }\n\n return output as T\n}\n"],"mappings":"AAAA;;;;;;;;;GAUA,OAAO,SAASA,gBAA4BC,IAAY,EAAEC,IAAY;EACpE,MAAMC,MAAA,GAAS;IAAE,GAAGF;EAAK;EAEzB,KAAK,MAAMG,GAAA,IAAOF,IAAA,EAAM;IACtB,IAAIG,MAAA,CAAOC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACN,IAAA,EAAME,GAAA,GAAM;MACnD,IAAI,OAAOF,IAAI,CAACE,GAAA,CAAI,KAAK,YAAY,CAACK,KAAA,CAAMC,OAAO,CAACR,IAAI,CAACE,GAAA,CAAI,KAAKH,IAAI,CAACG,GAAA,CAAI,EAAE;QAC3ED,MAAM,CAACC,GAAA,CAAI,GAAGJ,eAAA,CAAgBC,IAAI,CAACG,GAAA,CAAI,EAAEF,IAAI,CAACE,GAAA,CAAI;MACpD,OAAO;QACLD,MAAM,CAACC,GAAA,CAAI,GAAGF,IAAI,CAACE,GAAA,CAAI;MACzB;IACF;EACF;EAEA,OAAOD,MAAA;AACT","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { FormState, SanitizedConfig } from 'payload';
1
+ import type { ClientUser, FormState, SanitizedConfig } from 'payload';
2
2
  import type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js';
3
3
  export declare const getFormState: (args: {
4
4
  apiRoute: SanitizedConfig["routes"]["api"];
@@ -7,5 +7,11 @@ export declare const getFormState: (args: {
7
7
  serverURL: SanitizedConfig["serverURL"];
8
8
  signal?: AbortSignal;
9
9
  token?: string;
10
- }) => Promise<FormState>;
10
+ }) => Promise<{
11
+ lockedState?: {
12
+ isLocked: boolean;
13
+ user: ClientUser;
14
+ };
15
+ state: FormState;
16
+ }>;
11
17
  //# sourceMappingURL=getFormState.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/getFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAEhF,eAAO,MAAM,YAAY,SAAgB;IACvC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAA;IAC1C,IAAI,EAAE,kBAAkB,CAAA;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC9C,SAAS,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACvC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,KAAG,OAAO,CAAC,SAAS,CAyBpB,CAAA"}
1
+ {"version":3,"file":"getFormState.d.ts","sourceRoot":"","sources":["../../src/utilities/getFormState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAErE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAA;AAEhF,eAAO,MAAM,YAAY,SAAgB;IACvC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAA;IAC1C,IAAI,EAAE,kBAAkB,CAAA;IACxB,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC9C,SAAS,EAAE,eAAe,CAAC,WAAW,CAAC,CAAA;IACvC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,KAAG,OAAO,CAAC;IAAE,WAAW,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,UAAU,CAAA;KAAE,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,CA4BtF,CAAA"}
@@ -27,6 +27,8 @@ export const getFormState = async args => {
27
27
  void onError(json);
28
28
  }
29
29
  }
30
- return body?.formState;
30
+ return {
31
+ state: body?.formState
32
+ };
31
33
  };
32
34
  //# sourceMappingURL=getFormState.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFormState.js","names":["getFormState","args","apiRoute","body","onError","serverURL","signal","token","res","fetch","JSON","stringify","credentials","headers","Authorization","method","json","ok","formState"],"sources":["../../src/utilities/getFormState.ts"],"sourcesContent":["import type { FormState, SanitizedConfig } from 'payload'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\n\nexport const getFormState = async (args: {\n apiRoute: SanitizedConfig['routes']['api']\n body: BuildFormStateArgs\n onError?: (data?: any) => Promise<void> | void\n serverURL: SanitizedConfig['serverURL']\n signal?: AbortSignal\n token?: string\n}): Promise<FormState> => {\n const { apiRoute, body, onError, serverURL, signal, token } = args\n\n const res = await fetch(`${serverURL}${apiRoute}/form-state`, {\n body: JSON.stringify(body),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n ...(token ? { Authorization: `JWT ${token}` } : {}),\n },\n method: 'POST',\n signal,\n })\n\n const json = (await res.json()) as FormState\n\n if (res.ok) {\n return json\n } else {\n if (typeof onError === 'function') {\n void onError(json)\n }\n }\n\n return body?.formState\n}\n"],"mappings":"AAIA,OAAO,MAAMA,YAAA,GAAe,MAAOC,IAAA;EAQjC,MAAM;IAAEC,QAAQ;IAAEC,IAAI;IAAEC,OAAO;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAK,CAAE,GAAGN,IAAA;EAE9D,MAAMO,GAAA,GAAM,MAAMC,KAAA,CAAM,GAAGJ,SAAA,GAAYH,QAAA,aAAqB,EAAE;IAC5DC,IAAA,EAAMO,IAAA,CAAKC,SAAS,CAACR,IAAA;IACrBS,WAAA,EAAa;IACbC,OAAA,EAAS;MACP,gBAAgB;MAChB,IAAIN,KAAA,GAAQ;QAAEO,aAAA,EAAe,OAAOP,KAAA;MAAQ,IAAI,CAAC,CAAC;IACpD;IACAQ,MAAA,EAAQ;IACRT;EACF;EAEA,MAAMU,IAAA,GAAQ,MAAMR,GAAA,CAAIQ,IAAI;EAE5B,IAAIR,GAAA,CAAIS,EAAE,EAAE;IACV,OAAOD,IAAA;EACT,OAAO;IACL,IAAI,OAAOZ,OAAA,KAAY,YAAY;MACjC,KAAKA,OAAA,CAAQY,IAAA;IACf;EACF;EAEA,OAAOb,IAAA,EAAMe,SAAA;AACf","ignoreList":[]}
1
+ {"version":3,"file":"getFormState.js","names":["getFormState","args","apiRoute","body","onError","serverURL","signal","token","res","fetch","JSON","stringify","credentials","headers","Authorization","method","json","ok","state","formState"],"sources":["../../src/utilities/getFormState.ts"],"sourcesContent":["import type { ClientUser, FormState, SanitizedConfig } from 'payload'\n\nimport type { BuildFormStateArgs } from '../forms/buildStateFromSchema/index.js'\n\nexport const getFormState = async (args: {\n apiRoute: SanitizedConfig['routes']['api']\n body: BuildFormStateArgs\n onError?: (data?: any) => Promise<void> | void\n serverURL: SanitizedConfig['serverURL']\n signal?: AbortSignal\n token?: string\n}): Promise<{ lockedState?: { isLocked: boolean; user: ClientUser }; state: FormState }> => {\n const { apiRoute, body, onError, serverURL, signal, token } = args\n\n const res = await fetch(`${serverURL}${apiRoute}/form-state`, {\n body: JSON.stringify(body),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n ...(token ? { Authorization: `JWT ${token}` } : {}),\n },\n method: 'POST',\n signal,\n })\n\n const json = (await res.json()) as {\n lockedState?: { isLocked: boolean; user: ClientUser }\n state: FormState\n }\n\n if (res.ok) {\n return json\n } else {\n if (typeof onError === 'function') {\n void onError(json)\n }\n }\n\n return { state: body?.formState }\n}\n"],"mappings":"AAIA,OAAO,MAAMA,YAAA,GAAe,MAAOC,IAAA;EAQjC,MAAM;IAAEC,QAAQ;IAAEC,IAAI;IAAEC,OAAO;IAAEC,SAAS;IAAEC,MAAM;IAAEC;EAAK,CAAE,GAAGN,IAAA;EAE9D,MAAMO,GAAA,GAAM,MAAMC,KAAA,CAAM,GAAGJ,SAAA,GAAYH,QAAA,aAAqB,EAAE;IAC5DC,IAAA,EAAMO,IAAA,CAAKC,SAAS,CAACR,IAAA;IACrBS,WAAA,EAAa;IACbC,OAAA,EAAS;MACP,gBAAgB;MAChB,IAAIN,KAAA,GAAQ;QAAEO,aAAA,EAAe,OAAOP,KAAA;MAAQ,IAAI,CAAC,CAAC;IACpD;IACAQ,MAAA,EAAQ;IACRT;EACF;EAEA,MAAMU,IAAA,GAAQ,MAAMR,GAAA,CAAIQ,IAAI;EAK5B,IAAIR,GAAA,CAAIS,EAAE,EAAE;IACV,OAAOD,IAAA;EACT,OAAO;IACL,IAAI,OAAOZ,OAAA,KAAY,YAAY;MACjC,KAAKA,OAAA,CAAQY,IAAA;IACf;EACF;EAEA,OAAO;IAAEE,KAAA,EAAOf,IAAA,EAAMgB;EAAU;AAClC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"reduceFieldsToValuesWithValidation.d.ts","sourceRoot":"","sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAI9C,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kCAAkC,WACrC,SAAS,cACL,OAAO,0BACK,OAAO,KAC9B,UAoBF,CAAA"}
1
+ {"version":3,"file":"reduceFieldsToValuesWithValidation.d.ts","sourceRoot":"","sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAI9C,KAAK,UAAU,GAAG;IAChB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,OAAO,CAAA;CACf,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,kCAAkC,WACrC,SAAS,cACL,OAAO,0BACK,OAAO,KAC9B,UAwBF,CAAA"}
@@ -11,11 +11,15 @@ export const reduceFieldsToValuesWithValidation = (fields, unflatten, ignoreDisa
11
11
  data: {},
12
12
  valid: true
13
13
  };
14
- if (!fields) return state;
14
+ if (!fields) {
15
+ return state;
16
+ }
15
17
  Object.keys(fields).forEach(key => {
16
18
  if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {
17
19
  state.data[key] = fields[key]?.value;
18
- if (!fields[key].valid) state.valid = false;
20
+ if (!fields[key].valid) {
21
+ state.valid = false;
22
+ }
19
23
  }
20
24
  });
21
25
  if (unflatten) {
@@ -1 +1 @@
1
- {"version":3,"file":"reduceFieldsToValuesWithValidation.js","names":["unflatten","flatleyUnflatten","reduceFieldsToValuesWithValidation","fields","ignoreDisableFormData","state","data","valid","Object","keys","forEach","key","disableFormData","value"],"sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"sourcesContent":["import type { Data, FormState } from 'payload'\n\nimport { unflatten as flatleyUnflatten } from 'payload/shared'\n\ntype ReturnType = {\n data: Data\n valid: boolean\n}\n\n/**\n * Reduce flattened form fields (Fields) to just map to the respective values instead of the full FormField object\n *\n * @param unflatten This also unflattens the data if `unflatten` is true. The unflattened data should match the original data structure\n * @param ignoreDisableFormData - if true, will include fields that have `disableFormData` set to true, for example, blocks or arrays fields.\n *\n */\nexport const reduceFieldsToValuesWithValidation = (\n fields: FormState,\n unflatten?: boolean,\n ignoreDisableFormData?: boolean,\n): ReturnType => {\n const state: ReturnType = {\n data: {},\n valid: true,\n }\n\n if (!fields) return state\n\n Object.keys(fields).forEach((key) => {\n if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {\n state.data[key] = fields[key]?.value\n if (!fields[key].valid) state.valid = false\n }\n })\n\n if (unflatten) {\n state.data = flatleyUnflatten(state.data)\n }\n\n return state\n}\n"],"mappings":"AAEA,SAASA,SAAA,IAAaC,gBAAgB,QAAQ;AAO9C;;;;;;;AAOA,OAAO,MAAMC,kCAAA,GAAqCA,CAChDC,MAAA,EACAH,SAAA,EACAI,qBAAA;EAEA,MAAMC,KAAA,GAAoB;IACxBC,IAAA,EAAM,CAAC;IACPC,KAAA,EAAO;EACT;EAEA,IAAI,CAACJ,MAAA,EAAQ,OAAOE,KAAA;EAEpBG,MAAA,CAAOC,IAAI,CAACN,MAAA,EAAQO,OAAO,CAAEC,GAAA;IAC3B,IAAIP,qBAAA,KAA0B,QAAQ,CAACD,MAAM,CAACQ,GAAA,CAAI,EAAEC,eAAA,EAAiB;MACnEP,KAAA,CAAMC,IAAI,CAACK,GAAA,CAAI,GAAGR,MAAM,CAACQ,GAAA,CAAI,EAAEE,KAAA;MAC/B,IAAI,CAACV,MAAM,CAACQ,GAAA,CAAI,CAACJ,KAAK,EAAEF,KAAA,CAAME,KAAK,GAAG;IACxC;EACF;EAEA,IAAIP,SAAA,EAAW;IACbK,KAAA,CAAMC,IAAI,GAAGL,gBAAA,CAAiBI,KAAA,CAAMC,IAAI;EAC1C;EAEA,OAAOD,KAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"reduceFieldsToValuesWithValidation.js","names":["unflatten","flatleyUnflatten","reduceFieldsToValuesWithValidation","fields","ignoreDisableFormData","state","data","valid","Object","keys","forEach","key","disableFormData","value"],"sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"sourcesContent":["import type { Data, FormState } from 'payload'\n\nimport { unflatten as flatleyUnflatten } from 'payload/shared'\n\ntype ReturnType = {\n data: Data\n valid: boolean\n}\n\n/**\n * Reduce flattened form fields (Fields) to just map to the respective values instead of the full FormField object\n *\n * @param unflatten This also unflattens the data if `unflatten` is true. The unflattened data should match the original data structure\n * @param ignoreDisableFormData - if true, will include fields that have `disableFormData` set to true, for example, blocks or arrays fields.\n *\n */\nexport const reduceFieldsToValuesWithValidation = (\n fields: FormState,\n unflatten?: boolean,\n ignoreDisableFormData?: boolean,\n): ReturnType => {\n const state: ReturnType = {\n data: {},\n valid: true,\n }\n\n if (!fields) {\n return state\n }\n\n Object.keys(fields).forEach((key) => {\n if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {\n state.data[key] = fields[key]?.value\n if (!fields[key].valid) {\n state.valid = false\n }\n }\n })\n\n if (unflatten) {\n state.data = flatleyUnflatten(state.data)\n }\n\n return state\n}\n"],"mappings":"AAEA,SAASA,SAAA,IAAaC,gBAAgB,QAAQ;AAO9C;;;;;;;AAOA,OAAO,MAAMC,kCAAA,GAAqCA,CAChDC,MAAA,EACAH,SAAA,EACAI,qBAAA;EAEA,MAAMC,KAAA,GAAoB;IACxBC,IAAA,EAAM,CAAC;IACPC,KAAA,EAAO;EACT;EAEA,IAAI,CAACJ,MAAA,EAAQ;IACX,OAAOE,KAAA;EACT;EAEAG,MAAA,CAAOC,IAAI,CAACN,MAAA,EAAQO,OAAO,CAAEC,GAAA;IAC3B,IAAIP,qBAAA,KAA0B,QAAQ,CAACD,MAAM,CAACQ,GAAA,CAAI,EAAEC,eAAA,EAAiB;MACnEP,KAAA,CAAMC,IAAI,CAACK,GAAA,CAAI,GAAGR,MAAM,CAACQ,GAAA,CAAI,EAAEE,KAAA;MAC/B,IAAI,CAACV,MAAM,CAACQ,GAAA,CAAI,CAACJ,KAAK,EAAE;QACtBF,KAAA,CAAME,KAAK,GAAG;MAChB;IACF;EACF;EAEA,IAAIP,SAAA,EAAW;IACbK,KAAA,CAAMC,IAAI,GAAGL,gBAAA,CAAiBI,KAAA,CAAMC,IAAI;EAC1C;EAEA,OAAOD,KAAA;AACT","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "3.0.0-canary.013af1b",
3
+ "version": "3.0.0-canary.0374de4",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -92,7 +92,7 @@
92
92
  "@faceless-ui/modal": "3.0.0-beta.2",
93
93
  "@faceless-ui/scroll-info": "2.0.0-beta.0",
94
94
  "@faceless-ui/window-info": "3.0.0-beta.0",
95
- "@monaco-editor/react": "4.5.1",
95
+ "@monaco-editor/react": "4.6.0",
96
96
  "body-scroll-lock": "4.0.0-beta.0",
97
97
  "bson-objectid": "2.0.4",
98
98
  "date-fns": "3.3.1",
@@ -109,7 +109,7 @@
109
109
  "ts-essentials": "7.0.3",
110
110
  "use-context-selector": "2.0.0",
111
111
  "uuid": "10.0.0",
112
- "@payloadcms/translations": "3.0.0-canary.013af1b"
112
+ "@payloadcms/translations": "3.0.0-canary.0374de4"
113
113
  },
114
114
  "devDependencies": {
115
115
  "@babel/cli": "^7.24.5",
@@ -127,14 +127,14 @@
127
127
  "esbuild": "0.23.1",
128
128
  "esbuild-sass-plugin": "3.3.1",
129
129
  "eslint-plugin-react-compiler": "0.0.0-experimental-72f06b2-20240822",
130
- "@payloadcms/eslint-config": "3.0.0-beta.59",
131
- "payload": "3.0.0-canary.013af1b"
130
+ "@payloadcms/eslint-config": "3.0.0-beta.97",
131
+ "payload": "3.0.0-canary.0374de4"
132
132
  },
133
133
  "peerDependencies": {
134
134
  "next": "^15.0.0-canary.104",
135
135
  "react": "^19.0.0 || ^19.0.0-rc-06d0b89e-20240801",
136
136
  "react-dom": "^19.0.0 || ^19.0.0-rc-06d0b89e-20240801",
137
- "payload": "3.0.0-canary.013af1b"
137
+ "payload": "3.0.0-canary.0374de4"
138
138
  },
139
139
  "engines": {
140
140
  "node": "^18.20.2 || >=20.9.0"
@@ -154,7 +154,7 @@
154
154
  "build:without_reactcompiler": "rm -rf dist && rm -rf tsconfig.tsbuildinfo && pnpm copyfiles && pnpm build:types && pnpm build:swc",
155
155
  "clean": "rimraf {dist,*.tsbuildinfo}",
156
156
  "copyfiles": "copyfiles -u 1 \"src/**/*.{html,css,scss,ttf,woff,woff2,eot,svg,jpg,png,json}\" dist/",
157
- "fix": "eslint \"src/**/*.{ts,tsx}\" --fix",
158
- "lint": "eslint \"src/**/*.{ts,tsx}\""
157
+ "lint": "eslint .",
158
+ "lint:fix": "eslint . --fix"
159
159
  }
160
160
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../../src/fields/Upload/HasOne/Input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,iBAAiB,EAClB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAGjD,OAAO,KAA2C,MAAM,OAAO,CAAA;AAe/D,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAA;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;IACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAA;IAC5C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAChD,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,2BAA2B,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAA;IAChG,QAAQ,CAAC,UAAU,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAA;IACpF,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAA;IACxD,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,qBAAqB,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAAA;IACpF,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAA,KAAK,IAAI,CAAA;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAAA;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuKxD,CAAA"}