@payloadcms/ui 3.0.0-canary.23fcb9e → 3.0.0-canary.28c161d

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 (745) hide show
  1. package/dist/elements/AddNewRelation/index.d.ts.map +1 -0
  2. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.js +98 -82
  3. package/dist/elements/AddNewRelation/index.js.map +1 -0
  4. package/dist/elements/AddNewRelation/index.scss +42 -0
  5. package/dist/elements/AddNewRelation/types.d.ts +11 -0
  6. package/dist/elements/AddNewRelation/types.d.ts.map +1 -0
  7. package/dist/elements/AddNewRelation/types.js.map +1 -0
  8. package/dist/elements/AddNewRelation/useRelatedCollections.d.ts.map +1 -0
  9. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.js +1 -1
  10. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -0
  11. package/dist/elements/AppHeader/index.js +45 -84
  12. package/dist/elements/AppHeader/index.js.map +1 -1
  13. package/dist/elements/Autosave/index.d.ts.map +1 -1
  14. package/dist/elements/Autosave/index.js +148 -229
  15. package/dist/elements/Autosave/index.js.map +1 -1
  16. package/dist/elements/Banner/index.d.ts.map +1 -1
  17. package/dist/elements/Banner/index.js +6 -2
  18. package/dist/elements/Banner/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +2 -2
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/ActionsBar/index.scss +4 -4
  23. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  24. package/dist/elements/BulkUpload/AddFilesView/index.js +45 -30
  25. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/AddFilesView/index.scss +13 -0
  27. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  28. package/dist/elements/BulkUpload/AddingFilesView/index.js +7 -7
  29. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -1
  31. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +14 -17
  32. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +1 -2
  34. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -1
  35. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +5 -8
  36. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  37. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  38. package/dist/elements/BulkUpload/EditForm/index.js +42 -33
  39. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  41. package/dist/elements/BulkUpload/FileSidebar/index.js +71 -59
  42. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  43. package/dist/elements/BulkUpload/FileSidebar/index.scss +16 -14
  44. package/dist/elements/BulkUpload/FormsManager/index.d.ts +4 -7
  45. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  46. package/dist/elements/BulkUpload/FormsManager/index.js +67 -37
  47. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -1
  49. package/dist/elements/BulkUpload/Header/index.js +1 -3
  50. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  51. package/dist/elements/BulkUpload/index.d.ts +21 -5
  52. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  53. package/dist/elements/BulkUpload/index.js +149 -52
  54. package/dist/elements/BulkUpload/index.js.map +1 -1
  55. package/dist/elements/Button/index.d.ts.map +1 -1
  56. package/dist/elements/Button/index.js +96 -219
  57. package/dist/elements/Button/index.js.map +1 -1
  58. package/dist/elements/Button/types.d.ts +8 -2
  59. package/dist/elements/Button/types.d.ts.map +1 -1
  60. package/dist/elements/Button/types.js.map +1 -1
  61. package/dist/elements/Card/index.d.ts +1 -1
  62. package/dist/elements/Card/index.d.ts.map +1 -1
  63. package/dist/elements/Card/index.js +2 -2
  64. package/dist/elements/Card/index.js.map +1 -1
  65. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  66. package/dist/elements/CodeEditor/CodeEditor.js +51 -25
  67. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  68. package/dist/elements/CodeEditor/index.d.ts.map +1 -1
  69. package/dist/elements/CodeEditor/index.js +3 -9
  70. package/dist/elements/CodeEditor/index.js.map +1 -1
  71. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  72. package/dist/elements/Collapsible/index.js +44 -62
  73. package/dist/elements/Collapsible/index.js.map +1 -1
  74. package/dist/elements/Collapsible/index.scss +15 -28
  75. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  76. package/dist/elements/ColumnSelector/index.js +15 -3
  77. package/dist/elements/ColumnSelector/index.js.map +1 -1
  78. package/dist/elements/CopyToClipboard/index.js +20 -54
  79. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  80. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  81. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  82. package/dist/elements/DatePicker/index.js +1 -1
  83. package/dist/elements/DatePicker/index.js.map +1 -1
  84. package/dist/elements/DeleteDocument/index.d.ts +9 -6
  85. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  86. package/dist/elements/DeleteDocument/index.js +65 -28
  87. package/dist/elements/DeleteDocument/index.js.map +1 -1
  88. package/dist/elements/DeleteDocument/index.scss +24 -11
  89. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  90. package/dist/elements/DeleteMany/index.js +26 -18
  91. package/dist/elements/DeleteMany/index.js.map +1 -1
  92. package/dist/elements/DeleteMany/index.scss +24 -5
  93. package/dist/elements/DocumentControls/index.d.ts +13 -2
  94. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  95. package/dist/elements/DocumentControls/index.js +67 -13
  96. package/dist/elements/DocumentControls/index.js.map +1 -1
  97. package/dist/elements/DocumentControls/index.scss +8 -0
  98. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  99. package/dist/elements/DocumentDrawer/DrawerContent.js +109 -38
  100. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  101. package/dist/elements/DocumentDrawer/index.js +2 -2
  102. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  103. package/dist/elements/DocumentDrawer/types.d.ts +10 -1
  104. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  105. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  106. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  107. package/dist/elements/DraggableSortable/index.js +2 -1
  108. package/dist/elements/DraggableSortable/index.js.map +1 -1
  109. package/dist/elements/Drawer/index.d.ts +1 -0
  110. package/dist/elements/Drawer/index.d.ts.map +1 -1
  111. package/dist/elements/Drawer/index.js +3 -3
  112. package/dist/elements/Drawer/index.js.map +1 -1
  113. package/dist/elements/Drawer/types.d.ts +1 -1
  114. package/dist/elements/Drawer/types.d.ts.map +1 -1
  115. package/dist/elements/Drawer/types.js.map +1 -1
  116. package/dist/elements/Dropzone/index.d.ts +4 -3
  117. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  118. package/dist/elements/Dropzone/index.js +60 -146
  119. package/dist/elements/Dropzone/index.js.map +1 -1
  120. package/dist/elements/Dropzone/index.scss +6 -23
  121. package/dist/elements/DuplicateDocument/index.d.ts +6 -3
  122. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  123. package/dist/elements/DuplicateDocument/index.js +95 -137
  124. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  125. package/dist/elements/DuplicateDocument/index.scss +25 -5
  126. package/dist/elements/EditMany/index.d.ts.map +1 -1
  127. package/dist/elements/EditMany/index.js +10 -5
  128. package/dist/elements/EditMany/index.js.map +1 -1
  129. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  130. package/dist/elements/EditUpload/index.js +140 -201
  131. package/dist/elements/EditUpload/index.js.map +1 -1
  132. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  133. package/dist/elements/ErrorPill/index.js +3 -1
  134. package/dist/elements/ErrorPill/index.js.map +1 -1
  135. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  136. package/dist/elements/FieldSelect/index.js +5 -3
  137. package/dist/elements/FieldSelect/index.js.map +1 -1
  138. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +20 -0
  139. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -0
  140. package/dist/elements/FileDetails/DraggableFileDetails/index.js +116 -0
  141. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -0
  142. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +33 -0
  143. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +17 -0
  144. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -0
  145. package/dist/elements/FileDetails/StaticFileDetails/index.js +70 -0
  146. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -0
  147. package/dist/elements/FileDetails/{index.scss → StaticFileDetails/index.scss} +2 -1
  148. package/dist/elements/FileDetails/index.d.ts +19 -4
  149. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  150. package/dist/elements/FileDetails/index.js +11 -62
  151. package/dist/elements/FileDetails/index.js.map +1 -1
  152. package/dist/elements/GenerateConfirmation/index.d.ts.map +1 -1
  153. package/dist/elements/GenerateConfirmation/index.js +31 -24
  154. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  155. package/dist/elements/GenerateConfirmation/index.scss +24 -5
  156. package/dist/elements/Hamburger/index.scss +4 -0
  157. package/dist/elements/ListControls/index.d.ts.map +1 -1
  158. package/dist/elements/ListControls/index.js +102 -204
  159. package/dist/elements/ListControls/index.js.map +1 -1
  160. package/dist/elements/ListControls/index.scss +0 -6
  161. package/dist/elements/ListDrawer/DrawerContent.d.ts +2 -0
  162. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  163. package/dist/elements/ListDrawer/DrawerContent.js +342 -251
  164. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  165. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  166. package/dist/elements/ListDrawer/index.js +19 -16
  167. package/dist/elements/ListDrawer/index.js.map +1 -1
  168. package/dist/elements/ListDrawer/index.scss +7 -0
  169. package/dist/elements/ListDrawer/types.d.ts +7 -1
  170. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  171. package/dist/elements/ListDrawer/types.js.map +1 -1
  172. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  173. package/dist/elements/Localizer/LocalizerLabel/index.js +9 -5
  174. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  175. package/dist/elements/Localizer/LocalizerLabel/index.scss +7 -3
  176. package/dist/elements/Localizer/index.d.ts.map +1 -1
  177. package/dist/elements/Localizer/index.js +1 -1
  178. package/dist/elements/Localizer/index.js.map +1 -1
  179. package/dist/elements/Locked/index.d.ts +8 -0
  180. package/dist/elements/Locked/index.d.ts.map +1 -0
  181. package/dist/elements/Locked/index.js +72 -0
  182. package/dist/elements/Locked/index.js.map +1 -0
  183. package/dist/elements/Locked/index.scss +14 -0
  184. package/dist/elements/Logout/index.js +1 -1
  185. package/dist/elements/Logout/index.js.map +1 -1
  186. package/dist/elements/Nav/context.js +47 -83
  187. package/dist/elements/Nav/context.js.map +1 -1
  188. package/dist/elements/Pagination/index.d.ts.map +1 -1
  189. package/dist/elements/Pagination/index.js +20 -10
  190. package/dist/elements/Pagination/index.js.map +1 -1
  191. package/dist/elements/PerPage/index.d.ts +5 -5
  192. package/dist/elements/PerPage/index.d.ts.map +1 -1
  193. package/dist/elements/PerPage/index.js +2 -1
  194. package/dist/elements/PerPage/index.js.map +1 -1
  195. package/dist/elements/Pill/index.d.ts.map +1 -1
  196. package/dist/elements/Pill/index.js +11 -5
  197. package/dist/elements/Pill/index.js.map +1 -1
  198. package/dist/elements/Pill/index.scss +3 -1
  199. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  200. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  201. package/dist/elements/Popup/PopupTrigger/index.js +6 -3
  202. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  203. package/dist/elements/Popup/PopupTrigger/index.scss +12 -0
  204. package/dist/elements/Popup/index.d.ts +1 -0
  205. package/dist/elements/Popup/index.d.ts.map +1 -1
  206. package/dist/elements/Popup/index.js +10 -5
  207. package/dist/elements/Popup/index.js.map +1 -1
  208. package/dist/elements/Popup/index.scss +18 -1
  209. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  210. package/dist/elements/PreviewButton/usePreviewURL.js +29 -9
  211. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  212. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  213. package/dist/elements/PreviewSizes/index.js +15 -5
  214. package/dist/elements/PreviewSizes/index.js.map +1 -1
  215. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  216. package/dist/elements/PublishButton/index.js +164 -48
  217. package/dist/elements/PublishButton/index.js.map +1 -1
  218. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  219. package/dist/elements/PublishMany/index.js +27 -18
  220. package/dist/elements/PublishMany/index.js.map +1 -1
  221. package/dist/elements/PublishMany/index.scss +23 -4
  222. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  223. package/dist/elements/ReactSelect/DropdownIndicator/index.js +3 -1
  224. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  225. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  226. package/dist/elements/ReactSelect/index.js +5 -3
  227. package/dist/elements/ReactSelect/index.js.map +1 -1
  228. package/dist/elements/ReactSelect/index.scss +4 -0
  229. package/dist/elements/ReactSelect/types.d.ts +11 -3
  230. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  231. package/dist/elements/ReactSelect/types.js.map +1 -1
  232. package/dist/elements/RelationshipTable/TableWrapper.d.ts +8 -0
  233. package/dist/elements/RelationshipTable/TableWrapper.d.ts.map +1 -0
  234. package/dist/elements/RelationshipTable/TableWrapper.js +69 -0
  235. package/dist/elements/RelationshipTable/TableWrapper.js.map +1 -0
  236. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts +8 -0
  237. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts.map +1 -0
  238. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +82 -0
  239. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -0
  240. package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +4 -0
  241. package/dist/elements/RelationshipTable/index.d.ts +15 -0
  242. package/dist/elements/RelationshipTable/index.d.ts.map +1 -0
  243. package/dist/elements/RelationshipTable/index.js +445 -0
  244. package/dist/elements/RelationshipTable/index.js.map +1 -0
  245. package/dist/elements/RelationshipTable/index.scss +26 -0
  246. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  247. package/dist/elements/SaveButton/index.js +35 -84
  248. package/dist/elements/SaveButton/index.js.map +1 -1
  249. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  250. package/dist/elements/SaveDraftButton/index.js +63 -119
  251. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  252. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  253. package/dist/elements/SearchFilter/index.js +45 -81
  254. package/dist/elements/SearchFilter/index.js.map +1 -1
  255. package/dist/elements/SelectMany/index.d.ts +6 -0
  256. package/dist/elements/SelectMany/index.d.ts.map +1 -0
  257. package/dist/elements/SelectMany/index.js +29 -0
  258. package/dist/elements/SelectMany/index.js.map +1 -0
  259. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  260. package/dist/elements/SelectRow/index.js +64 -24
  261. package/dist/elements/SelectRow/index.js.map +1 -1
  262. package/dist/elements/ShimmerEffect/index.d.ts +3 -3
  263. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  264. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  265. package/dist/elements/SortColumn/index.d.ts +5 -4
  266. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  267. package/dist/elements/SortColumn/index.js +26 -31
  268. package/dist/elements/SortColumn/index.js.map +1 -1
  269. package/dist/elements/SortColumn/index.scss +10 -1
  270. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  271. package/dist/elements/SortComplex/index.js.map +1 -1
  272. package/dist/elements/Status/index.d.ts.map +1 -1
  273. package/dist/elements/Status/index.js +44 -28
  274. package/dist/elements/Status/index.js.map +1 -1
  275. package/dist/elements/Status/index.scss +26 -7
  276. package/dist/elements/StepNav/index.d.ts +1 -1
  277. package/dist/elements/StepNav/index.d.ts.map +1 -1
  278. package/dist/elements/StepNav/index.js +2 -2
  279. package/dist/elements/StepNav/index.js.map +1 -1
  280. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -2
  281. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  282. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  283. package/dist/elements/Table/DefaultCell/fields/Code/index.js +1 -1
  284. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  285. package/dist/elements/Table/DefaultCell/fields/File/index.scss +5 -5
  286. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -3
  287. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  288. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +43 -40
  289. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  290. package/dist/elements/Table/DefaultCell/fields/Relationship/index.scss +0 -3
  291. package/dist/elements/Table/DefaultCell/fields/index.d.ts +2 -1
  292. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  293. package/dist/elements/Table/DefaultCell/fields/index.js +2 -1
  294. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  295. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  296. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  297. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  298. package/dist/elements/Table/RenderCell.d.ts +11 -0
  299. package/dist/elements/Table/RenderCell.d.ts.map +1 -0
  300. package/dist/elements/Table/RenderCell.js +30 -0
  301. package/dist/elements/Table/RenderCell.js.map +1 -0
  302. package/dist/elements/Table/TableCellProvider/index.js +9 -9
  303. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  304. package/dist/elements/Table/index.d.ts +4 -7
  305. package/dist/elements/Table/index.d.ts.map +1 -1
  306. package/dist/elements/Table/index.js +40 -30
  307. package/dist/elements/Table/index.js.map +1 -1
  308. package/dist/elements/Table/index.scss +50 -0
  309. package/dist/elements/TableColumns/buildColumnState.d.ts +5 -2
  310. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  311. package/dist/elements/TableColumns/buildColumnState.js +47 -31
  312. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  313. package/dist/elements/TableColumns/index.d.ts +5 -0
  314. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  315. package/dist/elements/TableColumns/index.js +118 -107
  316. package/dist/elements/TableColumns/index.js.map +1 -1
  317. package/dist/elements/Thumbnail/index.d.ts +10 -6
  318. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  319. package/dist/elements/Thumbnail/index.js +84 -9
  320. package/dist/elements/Thumbnail/index.js.map +1 -1
  321. package/dist/elements/Tooltip/index.d.ts +1 -0
  322. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  323. package/dist/elements/Tooltip/index.js +15 -13
  324. package/dist/elements/Tooltip/index.js.map +1 -1
  325. package/dist/elements/Tooltip/index.scss +2 -2
  326. package/dist/elements/Translation/index.d.ts.map +1 -1
  327. package/dist/elements/Translation/index.js +0 -2
  328. package/dist/elements/Translation/index.js.map +1 -1
  329. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  330. package/dist/elements/UnpublishMany/index.js +28 -19
  331. package/dist/elements/UnpublishMany/index.js.map +1 -1
  332. package/dist/elements/UnpublishMany/index.scss +23 -4
  333. package/dist/elements/Upload/index.d.ts.map +1 -1
  334. package/dist/elements/Upload/index.js +183 -302
  335. package/dist/elements/Upload/index.js.map +1 -1
  336. package/dist/elements/Upload/index.scss +38 -0
  337. package/dist/elements/ViewDescription/index.d.ts +1 -1
  338. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  339. package/dist/elements/ViewDescription/index.js.map +1 -1
  340. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  341. package/dist/elements/WhereBuilder/Condition/index.js +34 -31
  342. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  343. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  344. package/dist/elements/WhereBuilder/index.js +5 -8
  345. package/dist/elements/WhereBuilder/index.js.map +1 -1
  346. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
  347. package/dist/elements/WhereBuilder/reduceClientFields.js +6 -2
  348. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  349. package/dist/elements/WhereBuilder/types.d.ts +1 -1
  350. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  351. package/dist/elements/WhereBuilder/types.js.map +1 -1
  352. package/dist/elements/WindowInfo/index.d.ts +2 -2
  353. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  354. package/dist/elements/WindowInfo/index.js +2 -2
  355. package/dist/elements/WindowInfo/index.js.map +1 -1
  356. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  357. package/dist/exports/client/CodeEditor-4A6256PR.js +26 -0
  358. package/dist/exports/client/CodeEditor-4A6256PR.js.map +8 -0
  359. package/dist/exports/client/{DatePicker-E6IJFDN2.js → DatePicker-HNJMUG32.js} +2 -2
  360. package/dist/exports/client/chunk-6IWEPNUV.js +14 -0
  361. package/dist/exports/client/chunk-6IWEPNUV.js.map +8 -0
  362. package/dist/exports/client/{chunk-OBXEO4WP.js → chunk-IHJK2MAT.js} +3 -3
  363. package/dist/exports/client/{chunk-OBXEO4WP.js.map → chunk-IHJK2MAT.js.map} +4 -4
  364. package/dist/exports/client/index.d.ts +7 -5
  365. package/dist/exports/client/index.d.ts.map +1 -1
  366. package/dist/exports/client/index.js +19 -19
  367. package/dist/exports/client/index.js.map +4 -4
  368. package/dist/exports/shared/index.d.ts +6 -2
  369. package/dist/exports/shared/index.d.ts.map +1 -1
  370. package/dist/exports/shared/index.js +2 -2
  371. package/dist/exports/shared/index.js.map +4 -4
  372. package/dist/fields/Array/ArrayRow.d.ts +1 -1
  373. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  374. package/dist/fields/Array/ArrayRow.js +7 -7
  375. package/dist/fields/Array/ArrayRow.js.map +1 -1
  376. package/dist/fields/Array/index.d.ts +11 -3
  377. package/dist/fields/Array/index.d.ts.map +1 -1
  378. package/dist/fields/Array/index.js +8 -5
  379. package/dist/fields/Array/index.js.map +1 -1
  380. package/dist/fields/Blocks/BlockRow.d.ts +2 -2
  381. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  382. package/dist/fields/Blocks/BlockRow.js +5 -5
  383. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  384. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  385. package/dist/fields/Blocks/BlocksDrawer/index.js +3 -1
  386. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  387. package/dist/fields/Blocks/RowActions.d.ts +1 -1
  388. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  389. package/dist/fields/Blocks/RowActions.js +1 -1
  390. package/dist/fields/Blocks/RowActions.js.map +1 -1
  391. package/dist/fields/Blocks/index.d.ts +8 -2
  392. package/dist/fields/Blocks/index.d.ts.map +1 -1
  393. package/dist/fields/Blocks/index.js +2 -5
  394. package/dist/fields/Blocks/index.js.map +1 -1
  395. package/dist/fields/Checkbox/Input.d.ts +1 -1
  396. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  397. package/dist/fields/Checkbox/Input.js +3 -3
  398. package/dist/fields/Checkbox/Input.js.map +1 -1
  399. package/dist/fields/Checkbox/index.d.ts +16 -4
  400. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  401. package/dist/fields/Checkbox/index.js +2 -2
  402. package/dist/fields/Checkbox/index.js.map +1 -1
  403. package/dist/fields/Checkbox/index.scss +13 -0
  404. package/dist/fields/Code/index.d.ts +9 -2
  405. package/dist/fields/Code/index.d.ts.map +1 -1
  406. package/dist/fields/Code/index.js +32 -37
  407. package/dist/fields/Code/index.js.map +1 -1
  408. package/dist/fields/Collapsible/index.d.ts +143 -2
  409. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  410. package/dist/fields/Collapsible/index.js +49 -42
  411. package/dist/fields/Collapsible/index.js.map +1 -1
  412. package/dist/fields/DateTime/index.d.ts +9 -2
  413. package/dist/fields/DateTime/index.d.ts.map +1 -1
  414. package/dist/fields/DateTime/index.js +33 -38
  415. package/dist/fields/DateTime/index.js.map +1 -1
  416. package/dist/fields/Email/index.d.ts +10 -2
  417. package/dist/fields/Email/index.d.ts.map +1 -1
  418. package/dist/fields/Email/index.js +29 -33
  419. package/dist/fields/Email/index.js.map +1 -1
  420. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  421. package/dist/fields/FieldLabel/index.js +7 -1
  422. package/dist/fields/FieldLabel/index.js.map +1 -1
  423. package/dist/fields/Group/index.d.ts +8 -3
  424. package/dist/fields/Group/index.d.ts.map +1 -1
  425. package/dist/fields/Group/index.js +3 -3
  426. package/dist/fields/Group/index.js.map +1 -1
  427. package/dist/fields/JSON/index.d.ts +8 -2
  428. package/dist/fields/JSON/index.d.ts.map +1 -1
  429. package/dist/fields/JSON/index.js +17 -11
  430. package/dist/fields/JSON/index.js.map +1 -1
  431. package/dist/fields/Join/index.d.ts +9 -0
  432. package/dist/fields/Join/index.d.ts.map +1 -0
  433. package/dist/fields/Join/index.js +75 -0
  434. package/dist/fields/Join/index.js.map +1 -0
  435. package/dist/fields/Number/index.d.ts +9 -2
  436. package/dist/fields/Number/index.d.ts.map +1 -1
  437. package/dist/fields/Number/index.js +37 -42
  438. package/dist/fields/Number/index.js.map +1 -1
  439. package/dist/fields/Password/index.js +32 -28
  440. package/dist/fields/Password/index.js.map +1 -1
  441. package/dist/fields/Password/input.js +7 -7
  442. package/dist/fields/Password/input.js.map +1 -1
  443. package/dist/fields/Password/types.d.ts +5 -5
  444. package/dist/fields/Password/types.d.ts.map +1 -1
  445. package/dist/fields/Password/types.js.map +1 -1
  446. package/dist/fields/Point/index.d.ts +10 -3
  447. package/dist/fields/Point/index.d.ts.map +1 -1
  448. package/dist/fields/Point/index.js +2 -1
  449. package/dist/fields/Point/index.js.map +1 -1
  450. package/dist/fields/RadioGroup/Radio/index.d.ts +2 -2
  451. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  452. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  453. package/dist/fields/RadioGroup/index.d.ts +10 -2
  454. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  455. package/dist/fields/RadioGroup/index.js +36 -41
  456. package/dist/fields/RadioGroup/index.js.map +1 -1
  457. package/dist/fields/Relationship/createRelationMap.d.ts +1 -1
  458. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  459. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  460. package/dist/fields/Relationship/findOptionsByValue.d.ts +2 -1
  461. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  462. package/dist/fields/Relationship/findOptionsByValue.js +9 -2
  463. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  464. package/dist/fields/Relationship/index.d.ts +8 -2
  465. package/dist/fields/Relationship/index.d.ts.map +1 -1
  466. package/dist/fields/Relationship/index.js +421 -518
  467. package/dist/fields/Relationship/index.js.map +1 -1
  468. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  469. package/dist/fields/Relationship/optionsReducer.js +31 -1
  470. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  471. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts +6 -1
  472. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  473. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +48 -82
  474. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  475. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
  476. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts +6 -1
  477. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  478. package/dist/fields/Relationship/select-components/SingleValue/index.js +53 -101
  479. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  480. package/dist/fields/Relationship/select-components/SingleValue/index.scss +4 -0
  481. package/dist/fields/Relationship/types.d.ts +15 -5
  482. package/dist/fields/Relationship/types.d.ts.map +1 -1
  483. package/dist/fields/Relationship/types.js.map +1 -1
  484. package/dist/fields/RichText/index.d.ts +2 -2
  485. package/dist/fields/RichText/index.d.ts.map +1 -1
  486. package/dist/fields/RichText/index.js.map +1 -1
  487. package/dist/fields/Row/index.d.ts +9 -2
  488. package/dist/fields/Row/index.d.ts.map +1 -1
  489. package/dist/fields/Row/index.js.map +1 -1
  490. package/dist/fields/Row/index.scss +15 -2
  491. package/dist/fields/Select/Input.d.ts +5 -5
  492. package/dist/fields/Select/Input.d.ts.map +1 -1
  493. package/dist/fields/Select/Input.js +7 -7
  494. package/dist/fields/Select/Input.js.map +1 -1
  495. package/dist/fields/Select/index.d.ts +10 -2
  496. package/dist/fields/Select/index.d.ts.map +1 -1
  497. package/dist/fields/Select/index.js +11 -11
  498. package/dist/fields/Select/index.js.map +1 -1
  499. package/dist/fields/Tabs/index.d.ts +6 -2
  500. package/dist/fields/Tabs/index.d.ts.map +1 -1
  501. package/dist/fields/Tabs/index.js +1 -1
  502. package/dist/fields/Tabs/index.js.map +1 -1
  503. package/dist/fields/Text/Input.js +7 -7
  504. package/dist/fields/Text/Input.js.map +1 -1
  505. package/dist/fields/Text/index.d.ts +11 -3
  506. package/dist/fields/Text/index.d.ts.map +1 -1
  507. package/dist/fields/Text/index.js +4 -6
  508. package/dist/fields/Text/index.js.map +1 -1
  509. package/dist/fields/Text/types.d.ts +5 -5
  510. package/dist/fields/Text/types.d.ts.map +1 -1
  511. package/dist/fields/Text/types.js.map +1 -1
  512. package/dist/fields/Textarea/Input.js +7 -7
  513. package/dist/fields/Textarea/Input.js.map +1 -1
  514. package/dist/fields/Textarea/index.d.ts +13 -4
  515. package/dist/fields/Textarea/index.d.ts.map +1 -1
  516. package/dist/fields/Textarea/index.js +6 -5
  517. package/dist/fields/Textarea/index.js.map +1 -1
  518. package/dist/fields/Textarea/types.d.ts +5 -5
  519. package/dist/fields/Textarea/types.d.ts.map +1 -1
  520. package/dist/fields/Textarea/types.js.map +1 -1
  521. package/dist/fields/Upload/HasMany/index.d.ts +18 -0
  522. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -0
  523. package/dist/fields/Upload/HasMany/index.js +169 -0
  524. package/dist/fields/Upload/HasMany/index.js.map +1 -0
  525. package/dist/fields/Upload/HasMany/index.scss +27 -0
  526. package/dist/fields/Upload/HasOne/index.d.ts +16 -0
  527. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -0
  528. package/dist/fields/Upload/HasOne/index.js +47 -0
  529. package/dist/fields/Upload/HasOne/index.js.map +1 -0
  530. package/dist/fields/Upload/HasOne/index.scss +6 -0
  531. package/dist/fields/Upload/Input.d.ts +14 -10
  532. package/dist/fields/Upload/Input.d.ts.map +1 -1
  533. package/dist/fields/Upload/Input.js +610 -254
  534. package/dist/fields/Upload/Input.js.map +1 -1
  535. package/dist/fields/Upload/RelationshipContent/index.d.ts +21 -0
  536. package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -0
  537. package/dist/fields/Upload/RelationshipContent/index.js +139 -0
  538. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -0
  539. package/dist/fields/Upload/RelationshipContent/index.scss +54 -0
  540. package/dist/fields/Upload/UploadCard/index.d.ts +10 -0
  541. package/dist/fields/Upload/UploadCard/index.d.ts.map +1 -0
  542. package/dist/fields/Upload/UploadCard/index.js +15 -0
  543. package/dist/fields/Upload/UploadCard/index.js.map +1 -0
  544. package/dist/fields/Upload/UploadCard/index.scss +26 -0
  545. package/dist/fields/Upload/index.d.ts +6 -6
  546. package/dist/fields/Upload/index.d.ts.map +1 -1
  547. package/dist/fields/Upload/index.js +77 -96
  548. package/dist/fields/Upload/index.js.map +1 -1
  549. package/dist/fields/Upload/index.scss +38 -51
  550. package/dist/fields/index.d.ts.map +1 -1
  551. package/dist/fields/index.js +2 -0
  552. package/dist/fields/index.js.map +1 -1
  553. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  554. package/dist/forms/Form/fieldReducer.js +6 -2
  555. package/dist/forms/Form/fieldReducer.js.map +1 -1
  556. package/dist/forms/Form/index.d.ts.map +1 -1
  557. package/dist/forms/Form/index.js +26 -10
  558. package/dist/forms/Form/index.js.map +1 -1
  559. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  560. package/dist/forms/Form/mergeServerFormState.js +3 -1
  561. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  562. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  563. package/dist/forms/Form/rowHelpers.js +9 -3
  564. package/dist/forms/Form/rowHelpers.js.map +1 -1
  565. package/dist/forms/Form/rows.d.ts.map +1 -1
  566. package/dist/forms/Form/rows.js +3 -1
  567. package/dist/forms/Form/rows.js.map +1 -1
  568. package/dist/forms/Form/types.d.ts +1 -1
  569. package/dist/forms/Form/types.d.ts.map +1 -1
  570. package/dist/forms/Form/types.js.map +1 -1
  571. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  572. package/dist/forms/NullifyField/index.js +1 -0
  573. package/dist/forms/NullifyField/index.js.map +1 -1
  574. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  575. package/dist/forms/RenderFields/RenderField.js +6 -2
  576. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  577. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  578. package/dist/forms/RenderFields/index.js +19 -16
  579. package/dist/forms/RenderFields/index.js.map +1 -1
  580. package/dist/forms/RowLabel/index.js +1 -1
  581. package/dist/forms/RowLabel/index.js.map +1 -1
  582. package/dist/forms/RowLabel/types.d.ts +1 -1
  583. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  584. package/dist/forms/RowLabel/types.js.map +1 -1
  585. package/dist/forms/Submit/index.js +12 -28
  586. package/dist/forms/Submit/index.js.map +1 -1
  587. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  588. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +4 -31
  589. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  590. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  591. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +6 -2
  592. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  593. package/dist/forms/buildStateFromSchema/index.d.ts +2 -0
  594. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  595. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  596. package/dist/forms/useField/index.js +203 -111
  597. package/dist/forms/useField/index.js.map +1 -1
  598. package/dist/graphics/Account/index.d.ts.map +1 -1
  599. package/dist/graphics/Account/index.js +1 -1
  600. package/dist/graphics/Account/index.js.map +1 -1
  601. package/dist/hooks/useHotkey.d.ts.map +1 -1
  602. package/dist/hooks/useHotkey.js.map +1 -1
  603. package/dist/hooks/useIgnoredEffect.d.ts +17 -0
  604. package/dist/hooks/useIgnoredEffect.d.ts.map +1 -0
  605. package/dist/hooks/useIgnoredEffect.js +28 -0
  606. package/dist/hooks/useIgnoredEffect.js.map +1 -0
  607. package/dist/hooks/useIntersect.d.ts.map +1 -1
  608. package/dist/hooks/useIntersect.js +14 -20
  609. package/dist/hooks/useIntersect.js.map +1 -1
  610. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  611. package/dist/hooks/usePayloadAPI.js.map +1 -1
  612. package/dist/hooks/useThrottledEffect.d.ts +7 -0
  613. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  614. package/dist/hooks/useThrottledEffect.js +7 -0
  615. package/dist/hooks/useThrottledEffect.js.map +1 -1
  616. package/dist/icons/Chevron/index.d.ts +3 -3
  617. package/dist/icons/Chevron/index.d.ts.map +1 -1
  618. package/dist/icons/Chevron/index.js +4 -4
  619. package/dist/icons/Chevron/index.js.map +1 -1
  620. package/dist/icons/Chevron/index.scss +9 -1
  621. package/dist/icons/Lock/index.d.ts +6 -0
  622. package/dist/icons/Lock/index.d.ts.map +1 -0
  623. package/dist/icons/Lock/index.js +27 -0
  624. package/dist/icons/Lock/index.js.map +1 -0
  625. package/dist/icons/Lock/index.scss +8 -0
  626. package/dist/providers/Auth/index.d.ts +1 -1
  627. package/dist/providers/Auth/index.d.ts.map +1 -1
  628. package/dist/providers/Auth/index.js +6 -2
  629. package/dist/providers/Auth/index.js.map +1 -1
  630. package/dist/providers/Config/RenderComponent.d.ts +1 -1
  631. package/dist/providers/Config/RenderComponent.d.ts.map +1 -1
  632. package/dist/providers/Config/RenderComponent.js +2 -2
  633. package/dist/providers/Config/RenderComponent.js.map +1 -1
  634. package/dist/providers/Config/createClientConfig/collections.d.ts +6 -6
  635. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  636. package/dist/providers/Config/createClientConfig/collections.js +27 -13
  637. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  638. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  639. package/dist/providers/Config/createClientConfig/fields.js +34 -11
  640. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  641. package/dist/providers/Config/createClientConfig/getComponent.d.ts +1 -1
  642. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -1
  643. package/dist/providers/Config/createClientConfig/getComponent.js +2 -2
  644. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  645. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
  646. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +3 -1
  647. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  648. package/dist/providers/Config/createClientConfig/globals.d.ts +4 -4
  649. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
  650. package/dist/providers/Config/createClientConfig/globals.js +3 -3
  651. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  652. package/dist/providers/Config/createClientConfig/index.d.ts +3 -3
  653. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -1
  654. package/dist/providers/Config/createClientConfig/index.js +20 -5
  655. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  656. package/dist/providers/DocumentEvents/index.js.map +1 -1
  657. package/dist/providers/DocumentInfo/index.d.ts +1 -1
  658. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  659. package/dist/providers/DocumentInfo/index.js +117 -11
  660. package/dist/providers/DocumentInfo/index.js.map +1 -1
  661. package/dist/providers/DocumentInfo/types.d.ts +43 -21
  662. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  663. package/dist/providers/DocumentInfo/types.js.map +1 -1
  664. package/dist/providers/ListInfo/index.d.ts +8 -2
  665. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  666. package/dist/providers/ListInfo/index.js.map +1 -1
  667. package/dist/providers/ListQuery/index.d.ts +17 -11
  668. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  669. package/dist/providers/ListQuery/index.js +32 -20
  670. package/dist/providers/ListQuery/index.js.map +1 -1
  671. package/dist/providers/Locale/index.d.ts.map +1 -1
  672. package/dist/providers/Locale/index.js.map +1 -1
  673. package/dist/providers/Preferences/index.d.ts.map +1 -1
  674. package/dist/providers/Preferences/index.js +3 -1
  675. package/dist/providers/Preferences/index.js.map +1 -1
  676. package/dist/providers/Root/index.d.ts +12 -12
  677. package/dist/providers/Root/index.d.ts.map +1 -1
  678. package/dist/providers/Root/index.js +2 -2
  679. package/dist/providers/Root/index.js.map +1 -1
  680. package/dist/providers/ScrollInfo/index.d.ts +1 -3
  681. package/dist/providers/ScrollInfo/index.d.ts.map +1 -1
  682. package/dist/providers/ScrollInfo/index.js +1 -12
  683. package/dist/providers/ScrollInfo/index.js.map +1 -1
  684. package/dist/providers/Selection/index.d.ts +8 -5
  685. package/dist/providers/Selection/index.d.ts.map +1 -1
  686. package/dist/providers/Selection/index.js +130 -184
  687. package/dist/providers/Selection/index.js.map +1 -1
  688. package/dist/providers/Theme/index.d.ts +0 -1
  689. package/dist/providers/Theme/index.d.ts.map +1 -1
  690. package/dist/providers/Theme/index.js +29 -21
  691. package/dist/providers/Theme/index.js.map +1 -1
  692. package/dist/providers/Translation/index.d.ts.map +1 -1
  693. package/dist/providers/Translation/index.js +5 -7
  694. package/dist/providers/Translation/index.js.map +1 -1
  695. package/dist/providers/WindowInfo/index.d.ts +1 -1
  696. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  697. package/dist/providers/WindowInfo/index.js +1 -1
  698. package/dist/providers/WindowInfo/index.js.map +1 -1
  699. package/dist/scss/app.scss +6 -6
  700. package/dist/scss/type.scss +4 -4
  701. package/dist/styles.css +1 -1
  702. package/dist/utilities/buildFormState.d.ts +9 -3
  703. package/dist/utilities/buildFormState.d.ts.map +1 -1
  704. package/dist/utilities/buildFormState.js +88 -6
  705. package/dist/utilities/buildFormState.js.map +1 -1
  706. package/dist/utilities/deepMerge.d.ts +12 -0
  707. package/dist/utilities/deepMerge.d.ts.map +1 -0
  708. package/dist/utilities/deepMerge.js +25 -0
  709. package/dist/utilities/deepMerge.js.map +1 -0
  710. package/dist/utilities/getFormState.d.ts +8 -2
  711. package/dist/utilities/getFormState.d.ts.map +1 -1
  712. package/dist/utilities/getFormState.js +3 -1
  713. package/dist/utilities/getFormState.js.map +1 -1
  714. package/dist/utilities/handleBackToDashboard.d.ts +8 -0
  715. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -0
  716. package/dist/utilities/handleBackToDashboard.js +12 -0
  717. package/dist/utilities/handleBackToDashboard.js.map +1 -0
  718. package/dist/utilities/handleGoBack.d.ts +9 -0
  719. package/dist/utilities/handleGoBack.d.ts.map +1 -0
  720. package/dist/utilities/handleGoBack.js +13 -0
  721. package/dist/utilities/handleGoBack.js.map +1 -0
  722. package/dist/utilities/handleTakeOver.d.ts +7 -0
  723. package/dist/utilities/handleTakeOver.d.ts.map +1 -0
  724. package/dist/utilities/handleTakeOver.js +27 -0
  725. package/dist/utilities/handleTakeOver.js.map +1 -0
  726. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  727. package/dist/utilities/reduceFieldsToValuesWithValidation.js +6 -2
  728. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  729. package/package.json +21 -21
  730. package/dist/exports/client/CodeEditor-C4FLUUO7.js +0 -24
  731. package/dist/exports/client/CodeEditor-C4FLUUO7.js.map +0 -8
  732. package/dist/exports/client/chunk-UGBVRIVY.js +0 -14
  733. package/dist/exports/client/chunk-UGBVRIVY.js.map +0 -8
  734. package/dist/fields/Relationship/AddNew/index.d.ts.map +0 -1
  735. package/dist/fields/Relationship/AddNew/index.js.map +0 -1
  736. package/dist/fields/Relationship/AddNew/index.scss +0 -28
  737. package/dist/fields/Relationship/AddNew/types.d.ts +0 -12
  738. package/dist/fields/Relationship/AddNew/types.d.ts.map +0 -1
  739. package/dist/fields/Relationship/AddNew/types.js.map +0 -1
  740. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +0 -1
  741. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +0 -1
  742. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.d.ts +0 -0
  743. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/types.js +0 -0
  744. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.d.ts +0 -0
  745. /package/dist/exports/client/{DatePicker-E6IJFDN2.js.map → DatePicker-HNJMUG32.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","config","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","i18n","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","isInitializing","undefined","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","prevLocalePermissions","versionsConfig","baseURL","pluralType","preferencesKey","operation","shouldFetchVersions","Boolean","readVersions","permission","getVersions","versionFetchURL","publishedFetchURL","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","where","and","publishedVersionParams","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","params","idToUse","newIsEditing","docAccessURL","body","JSON","method","publishedAccessJSON","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newData","doc","result","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","value","title","_jsx","Provider","DocumentInfoProvider"],"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { formatDocTitle } from '../../utilities/formatDocTitle.js'\nimport { getFormState } from '../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js'\nimport { isEditing as getIsEditing } from '../../utilities/isEditing.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = ({ children, ...props }) => {\n const {\n id,\n collectionSlug,\n docPermissions: docPermissionsFromProps,\n globalSlug,\n hasPublishPermission: hasPublishPermissionFromProps,\n hasSavePermission: hasSavePermissionFromProps,\n initialData: initialDataFromProps,\n initialState: initialStateFromProps,\n onLoadError,\n onSave: onSaveFromProps,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n\n const { i18n } = useTranslation()\n\n const { uploadEdits } = useUploadEdits()\n\n const [documentTitle, setDocumentTitle] = useState(() => {\n if (!initialDataFromProps) return ''\n\n return formatDocTitle({\n collectionConfig,\n data: { ...initialDataFromProps, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n })\n })\n\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [data, setData] = useState<Data>(initialDataFromProps)\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(docPermissionsFromProps)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(hasSavePermissionFromProps)\n const [hasPublishPermission, setHasPublishPermission] = useState<boolean>(\n hasPublishPermissionFromProps,\n )\n const isInitializing = initialState === undefined || data === undefined\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n const hasInitializedDocPermissions = useRef(false)\n // Separate locale cache used for handling permissions\n const prevLocalePermissions = useRef(locale)\n\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n const operation = isEditing ? 'update' : 'create'\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission)\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON?.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig, shouldFetchVersions])\n\n const getDocPermissions = React.useCallback(\n async (data: Data) => {\n const params = {\n locale: locale || undefined,\n }\n\n const idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n ...(data || {}),\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update?.permission)\n }\n } else {\n // when creating new documents, there is no permissions saved for this document yet\n // use the generic entity permissions instead\n const newDocPermissions = collectionSlug\n ? permissions?.collections?.[collectionSlug]\n : permissions?.globals?.[globalSlug]\n\n setDocPermissions(newDocPermissions)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: newDocPermissions,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n }\n },\n [serverURL, api, id, permissions, i18n.language, locale, collectionSlug, globalSlug],\n )\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newData = collectionSlug ? json.doc : json.result\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setData(newData)\n await getDocPermissions(newData)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n operation,\n locale,\n onSaveFromProps,\n serverURL,\n getDocPermissions,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n const localeChanged = locale !== prevLocale.current\n\n if (\n initialStateFromProps === undefined ||\n initialDataFromProps === undefined ||\n localeChanged\n ) {\n if (localeChanged) prevLocale.current = locale\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n const data = reduceFieldsToValues(result, true)\n setData(data)\n\n if (localeChanged) void getDocPermissions(data)\n\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n setIsLoading(false)\n }\n\n void getInitialState()\n }\n\n return () => {\n try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n getDocPermissions,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...data, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, data, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n if (data && (collectionSlug || globalSlug)) {\n if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) notFound()\n\n const value: DocumentInfoContext = {\n ...props,\n action,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isInitializing,\n isLoading,\n onSave,\n preferencesKey,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n\nexport const DocumentInfoProvider: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","requests","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","config","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","lockDocumentsProp","lockDocuments","undefined","isLockingEnabled","i18n","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","documentIsLocked","setDocumentIsLocked","currentEditor","setCurrentEditor","isInitializing","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","versionsConfig","baseURL","pluralType","preferencesKey","operation","shouldFetchVersions","Boolean","readVersions","permission","unlockDocument","docId","isGlobal","query","request","get","docs","json","length","lockId","delete","headers","error","console","updateDocumentEditor","user","patch","body","JSON","stringify","relationTo","collection","value","fetchDocumentLockState","newEditor","getVersions","versionFetchURL","publishedFetchURL","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","limit","where","and","publishedVersionParams","or","_status","equals","exists","push","parent","publishedJSON","drafts","fetch","credentials","language","then","res","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","params","idToUse","newIsEditing","docAccessURL","method","publishedAccessJSON","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","docPreferences","newData","doc","result","state","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","title","_jsx","Provider","DocumentInfoProvider"],"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { requests } from '../../utilities/api.js'\nimport { formatDocTitle } from '../../utilities/formatDocTitle.js'\nimport { getFormState } from '../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js'\nimport { isEditing as getIsEditing } from '../../utilities/isEditing.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n readonly children: React.ReactNode\n } & DocumentInfoProps\n> = ({ children, ...props }) => {\n const {\n id,\n collectionSlug,\n docPermissions: docPermissionsFromProps,\n globalSlug,\n hasPublishPermission: hasPublishPermissionFromProps,\n hasSavePermission: hasSavePermissionFromProps,\n initialData: initialDataFromProps,\n initialState: initialStateFromProps,\n onLoadError,\n onSave: onSaveFromProps,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n\n const lockDocumentsProp = docConfig?.lockDocuments !== undefined ? docConfig?.lockDocuments : true\n\n const isLockingEnabled = lockDocumentsProp !== false\n\n const { i18n } = useTranslation()\n\n const { uploadEdits } = useUploadEdits()\n\n const [documentTitle, setDocumentTitle] = useState(() => {\n if (!initialDataFromProps) {\n return ''\n }\n\n return formatDocTitle({\n collectionConfig,\n data: { ...initialDataFromProps, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n })\n })\n\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [data, setData] = useState<Data>(initialDataFromProps)\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(docPermissionsFromProps)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(hasSavePermissionFromProps)\n const [hasPublishPermission, setHasPublishPermission] = useState<boolean>(\n hasPublishPermissionFromProps,\n )\n\n const [documentIsLocked, setDocumentIsLocked] = useState<boolean | undefined>(false)\n const [currentEditor, setCurrentEditor] = useState<ClientUser | null>(null)\n\n const isInitializing = initialState === undefined || data === undefined\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n const hasInitializedDocPermissions = useRef(false)\n\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n const operation = isEditing ? 'update' : 'create'\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission)\n\n const unlockDocument = useCallback(\n async (docId: number | string, slug: string) => {\n try {\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${docId}&where[document.relationTo][equals]=${slug}`\n\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const lockId = docs[0].id\n await requests.delete(`${serverURL}${api}/payload-locked-documents/${lockId}`, {\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n setDocumentIsLocked(false)\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to unlock the document', error)\n }\n },\n [serverURL, api, globalSlug],\n )\n\n const updateDocumentEditor = useCallback(\n async (docId: number | string, slug: string, user: ClientUser) => {\n try {\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${docId}&where[document.relationTo][equals]=${slug}`\n\n // Check if the document is already locked\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const lockId = docs[0].id\n\n // Send a patch request to update the _lastEdited info\n await requests.patch(`${serverURL}${api}/payload-locked-documents/${lockId}`, {\n body: JSON.stringify({\n user: { relationTo: user?.collection, value: user?.id },\n }),\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to update the document editor', error)\n }\n },\n [serverURL, api, globalSlug],\n )\n\n useEffect(() => {\n if (!isLockingEnabled || (!id && !globalSlug)) {\n return\n }\n\n const fetchDocumentLockState = async () => {\n if (id || globalSlug) {\n try {\n const slug = collectionSlug ?? globalSlug\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${id}&where[document.relationTo][equals]=${slug}`\n\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const newEditor = docs[0].user?.value\n if (newEditor && newEditor.id !== currentEditor?.id) {\n setCurrentEditor(newEditor)\n setDocumentIsLocked(true)\n }\n } else {\n setDocumentIsLocked(false)\n }\n } catch (error) {\n // swallow error\n }\n }\n }\n void fetchDocumentLockState()\n }, [id, serverURL, api, collectionSlug, globalSlug, currentEditor, isLockingEnabled])\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n limit: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig, shouldFetchVersions])\n\n const getDocPermissions = React.useCallback(\n async (data: Data) => {\n const params = {\n locale: locale || undefined,\n }\n\n const idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n body: JSON.stringify({\n ...(data || {}),\n _status: 'draft',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n ...(data || {}),\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update?.permission)\n }\n } else {\n // when creating new documents, there is no permissions saved for this document yet\n // use the generic entity permissions instead\n const newDocPermissions = collectionSlug\n ? permissions?.collections?.[collectionSlug]\n : permissions?.globals?.[globalSlug]\n\n setDocPermissions(newDocPermissions)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: newDocPermissions,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n }\n },\n [serverURL, api, id, permissions, i18n.language, locale, collectionSlug, globalSlug],\n )\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newData = collectionSlug ? json.doc : json.result\n\n const { state: newState } = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setData(newData)\n\n await getDocPermissions(newData)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n operation,\n locale,\n onSaveFromProps,\n serverURL,\n getDocPermissions,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n const localeChanged = locale !== prevLocale.current\n\n if (\n initialStateFromProps === undefined ||\n initialDataFromProps === undefined ||\n localeChanged\n ) {\n if (localeChanged) {\n prevLocale.current = locale\n }\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const { state: result } = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n const data = reduceFieldsToValues(result, true)\n setData(data)\n\n if (localeChanged) {\n void getDocPermissions(data)\n }\n\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n setIsLoading(false)\n }\n\n void getInitialState()\n }\n\n return () => {\n try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n getDocPermissions,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...data, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, data, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n if (data && (collectionSlug || globalSlug)) {\n if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) {\n notFound()\n }\n\n const value: DocumentInfoContext = {\n ...props,\n action,\n currentEditor,\n docConfig,\n docPermissions,\n documentIsLocked,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isInitializing,\n isLoading,\n onSave,\n preferencesKey,\n publishedDoc,\n setCurrentEditor,\n setDocFieldPreferences,\n setDocumentIsLocked,\n setDocumentTitle,\n title: documentTitle,\n unlockDocument,\n unpublishedVersions,\n updateDocumentEditor,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n\nexport const DocumentInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,28 +1,47 @@
1
- import type { ClientCollectionConfig, ClientGlobalConfig, Data, DocumentPermissions, DocumentPreferences, FormState, InsideFieldsPreferences, PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig, TypeWithID, TypeWithTimestamps, TypeWithVersion } from 'payload';
1
+ import type { ClientCollectionConfig, ClientGlobalConfig, ClientUser, Data, DocumentPermissions, DocumentPreferences, FormState, InsideFieldsPreferences, PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig, TypeWithID, TypeWithTimestamps, TypeWithVersion } from 'payload';
2
2
  import type React from 'react';
3
3
  export type DocumentInfoProps = {
4
- AfterDocument?: React.ReactNode;
5
- AfterFields?: React.ReactNode;
6
- BeforeDocument?: React.ReactNode;
7
- BeforeFields?: React.ReactNode;
8
- action?: string;
9
- apiURL?: string;
10
- collectionSlug?: SanitizedCollectionConfig['slug'];
11
- disableActions?: boolean;
12
- disableLeaveWithoutSaving?: boolean;
13
- docPermissions?: DocumentPermissions;
14
- globalSlug?: SanitizedGlobalConfig['slug'];
15
- hasPublishPermission?: boolean;
16
- hasSavePermission?: boolean;
17
- id: null | number | string;
18
- initialData?: Data;
19
- initialState?: FormState;
20
- isEditing?: boolean;
21
- onLoadError?: (data?: any) => Promise<void> | void;
22
- onSave?: (data: Data) => Promise<void> | void;
4
+ readonly action?: string;
5
+ readonly AfterDocument?: React.ReactNode;
6
+ readonly AfterFields?: React.ReactNode;
7
+ readonly apiURL?: string;
8
+ readonly BeforeDocument?: React.ReactNode;
9
+ readonly BeforeFields?: React.ReactNode;
10
+ readonly collectionSlug?: SanitizedCollectionConfig['slug'];
11
+ readonly disableActions?: boolean;
12
+ readonly disableCreate?: boolean;
13
+ readonly disableLeaveWithoutSaving?: boolean;
14
+ readonly docPermissions?: DocumentPermissions;
15
+ readonly globalSlug?: SanitizedGlobalConfig['slug'];
16
+ readonly hasPublishPermission?: boolean;
17
+ readonly hasSavePermission?: boolean;
18
+ readonly id?: number | string;
19
+ readonly initialData?: Data;
20
+ readonly initialState?: FormState;
21
+ readonly isEditing?: boolean;
22
+ readonly onDelete?: (args: {
23
+ collectionConfig?: ClientCollectionConfig;
24
+ id: string;
25
+ }) => Promise<void> | void;
26
+ readonly onDrawerCreate?: () => void;
27
+ readonly onDuplicate?: (args: {
28
+ collectionConfig?: ClientCollectionConfig;
29
+ doc: TypeWithID;
30
+ }) => Promise<void> | void;
31
+ readonly onLoadError?: (data?: any) => Promise<void> | void;
32
+ readonly onSave?: (args: {
33
+ collectionConfig?: ClientCollectionConfig;
34
+ doc: TypeWithID;
35
+ operation: 'create' | 'update';
36
+ result: Data;
37
+ }) => Promise<void> | void;
38
+ readonly redirectAfterDelete?: boolean;
39
+ readonly redirectAfterDuplicate?: boolean;
23
40
  };
24
41
  export type DocumentInfoContext = {
42
+ currentEditor?: ClientUser;
25
43
  docConfig?: ClientCollectionConfig | ClientGlobalConfig;
44
+ documentIsLocked?: boolean;
26
45
  getDocPermissions: (data?: Data) => Promise<void>;
27
46
  getDocPreferences: () => Promise<DocumentPreferences>;
28
47
  getVersions: () => Promise<void>;
@@ -34,13 +53,16 @@ export type DocumentInfoContext = {
34
53
  publishedDoc?: {
35
54
  _status?: string;
36
55
  } & TypeWithID & TypeWithTimestamps;
56
+ setCurrentEditor?: React.Dispatch<React.SetStateAction<ClientUser>>;
37
57
  setDocFieldPreferences: (field: string, fieldPreferences: {
38
58
  [key: string]: unknown;
39
59
  } & Partial<InsideFieldsPreferences>) => void;
60
+ setDocumentIsLocked?: React.Dispatch<React.SetStateAction<boolean>>;
40
61
  setDocumentTitle: (title: string) => void;
41
- slug?: string;
42
62
  title: string;
63
+ unlockDocument: (docId: number | string, slug: string) => Promise<void>;
43
64
  unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>;
65
+ updateDocumentEditor: (docId: number | string, slug: string, user: ClientUser) => Promise<void>;
44
66
  versions?: PaginatedDocs<TypeWithVersion<any>>;
45
67
  versionsCount?: PaginatedDocs<TypeWithVersion<any>>;
46
68
  } & DocumentInfoProps;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,aAAa,EACb,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,yBAAyB,CAAC,EAAE,OAAO,CAAA;IACnC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,EAAE,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;IAC1B,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClD,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC9C,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,CAAC,EAAE,sBAAsB,GAAG,kBAAkB,CAAA;IACvD,iBAAiB,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,iBAAiB,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;IACrD,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,WAAW,EAAE,IAAI,CAAA;IACjB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,YAAY,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,UAAU,GAAG,kBAAkB,CAAA;IACrE,sBAAsB,EAAE,CACtB,KAAK,EAAE,MAAM,EACb,gBAAgB,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,KAC5E,IAAI,CAAA;IACT,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACzC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,mBAAmB,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IAC9C,aAAa,CAAC,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;CACpD,GAAG,iBAAiB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n} from 'payload'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n action?: string\n apiURL?: string\n collectionSlug?: SanitizedCollectionConfig['slug']\n disableActions?: boolean\n disableLeaveWithoutSaving?: boolean\n docPermissions?: DocumentPermissions\n globalSlug?: SanitizedGlobalConfig['slug']\n hasPublishPermission?: boolean\n hasSavePermission?: boolean\n id: null | number | string\n initialData?: Data\n initialState?: FormState\n isEditing?: boolean\n onLoadError?: (data?: any) => Promise<void> | void\n onSave?: (data: Data) => Promise<void> | void\n}\n\nexport type DocumentInfoContext = {\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n getDocPermissions: (data?: Data) => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n isInitializing: boolean\n isLoading: boolean\n preferencesKey?: string\n publishedDoc?: { _status?: string } & TypeWithID & TypeWithTimestamps\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: { [key: string]: unknown } & Partial<InsideFieldsPreferences>,\n ) => void\n setDocumentTitle: (title: string) => void\n slug?: string\n title: string\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n} & DocumentInfoProps\n"],"mappings":"AAuCA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n ClientUser,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n} from 'payload'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n readonly action?: string\n readonly AfterDocument?: React.ReactNode\n readonly AfterFields?: React.ReactNode\n readonly apiURL?: string\n readonly BeforeDocument?: React.ReactNode\n readonly BeforeFields?: React.ReactNode\n readonly collectionSlug?: SanitizedCollectionConfig['slug']\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly disableLeaveWithoutSaving?: boolean\n readonly docPermissions?: DocumentPermissions\n readonly globalSlug?: SanitizedGlobalConfig['slug']\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id?: number | string\n readonly initialData?: Data\n readonly initialState?: FormState\n readonly isEditing?: boolean\n readonly onDelete?: (args: {\n collectionConfig?: ClientCollectionConfig\n id: string\n }) => Promise<void> | void\n readonly onDrawerCreate?: () => void\n /* only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: (args: {\n collectionConfig?: ClientCollectionConfig\n doc: TypeWithID\n }) => Promise<void> | void\n readonly onLoadError?: (data?: any) => Promise<void> | void\n readonly onSave?: (args: {\n collectionConfig?: ClientCollectionConfig\n doc: TypeWithID\n operation: 'create' | 'update'\n result: Data\n }) => Promise<void> | void\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n}\n\nexport type DocumentInfoContext = {\n currentEditor?: ClientUser\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n documentIsLocked?: boolean\n getDocPermissions: (data?: Data) => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n isInitializing: boolean\n isLoading: boolean\n preferencesKey?: string\n publishedDoc?: { _status?: string } & TypeWithID & TypeWithTimestamps\n setCurrentEditor?: React.Dispatch<React.SetStateAction<ClientUser>>\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: { [key: string]: unknown } & Partial<InsideFieldsPreferences>,\n ) => void\n setDocumentIsLocked?: React.Dispatch<React.SetStateAction<boolean>>\n setDocumentTitle: (title: string) => void\n title: string\n unlockDocument: (docId: number | string, slug: string) => Promise<void>\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n updateDocumentEditor: (docId: number | string, slug: string, user: ClientUser) => Promise<void>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n} & DocumentInfoProps\n"],"mappings":"AA0DA","ignoreList":[]}
@@ -3,17 +3,23 @@ import React from 'react';
3
3
  import type { Column } from '../../elements/Table/index.js';
4
4
  export type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[];
5
5
  export type ListInfoProps = {
6
- readonly Header?: React.ReactNode;
6
+ readonly beforeActions?: React.ReactNode[];
7
7
  readonly collectionConfig: ClientConfig['collections'][0];
8
8
  readonly collectionSlug: SanitizedCollectionConfig['slug'];
9
+ readonly disableBulkDelete?: boolean;
10
+ readonly disableBulkEdit?: boolean;
9
11
  readonly hasCreatePermission: boolean;
12
+ readonly Header?: React.ReactNode;
10
13
  readonly newDocumentURL: string;
11
14
  readonly titleField?: FieldAffectingData;
12
15
  };
13
16
  export type ListInfoContext = {
14
- readonly Header?: React.ReactNode;
17
+ readonly beforeActions?: React.ReactNode[];
15
18
  readonly collectionSlug: string;
19
+ readonly disableBulkDelete?: boolean;
20
+ readonly disableBulkEdit?: boolean;
16
21
  readonly hasCreatePermission: boolean;
22
+ readonly Header?: React.ReactNode;
17
23
  readonly newDocumentURL: string;
18
24
  } & ListInfoProps;
19
25
  export declare const useListInfo: () => ListInfoContext;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,aAAa,CAAA;AAIjB,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,aAAa,CAGlB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListInfo/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE1F,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAE3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzD,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CACzC,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAA;IACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;CAChC,GAAG,aAAa,CAAA;AAIjB,eAAO,MAAM,WAAW,QAAO,eAAsC,CAAA;AAErE,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CACrC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,aAAa,CAGlB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","_jsx","Provider","value"],"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n readonly Header?: React.ReactNode\n readonly collectionConfig: ClientConfig['collections'][0]\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n readonly titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n readonly Header?: React.ReactNode\n readonly collectionSlug: string\n readonly hasCreatePermission: boolean\n readonly newDocumentURL: string\n} & ListInfoProps\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAsBjD,MAAMC,OAAA,gBAAUF,aAAA,CAAc,CAAC;AAE/B,OAAO,MAAMG,WAAA,GAAcA,CAAA;EAAA,OAAuBF,UAAA,CAAAC,OAAW;AAAA;AAE7D,OAAO,MAAME,gBAAA,GAITA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAA,CAAO;EACzB,oBAAOC,IAAA,CAACL,OAAA,CAAQM,QAAQ;IAACC,KAAA,EAAOH,KAAA;cAAQD;;AAC1C","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","createContext","useContext","Context","useListInfo","ListInfoProvider","children","props","_jsx","Provider","value"],"sources":["../../../src/providers/ListInfo/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientConfig, FieldAffectingData, SanitizedCollectionConfig } from 'payload'\n\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\nexport type ListInfoProps = {\n readonly beforeActions?: React.ReactNode[]\n readonly collectionConfig: ClientConfig['collections'][0]\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly disableBulkDelete?: boolean\n readonly disableBulkEdit?: boolean\n readonly hasCreatePermission: boolean\n readonly Header?: React.ReactNode\n readonly newDocumentURL: string\n readonly titleField?: FieldAffectingData\n}\n\nexport type ListInfoContext = {\n readonly beforeActions?: React.ReactNode[]\n readonly collectionSlug: string\n readonly disableBulkDelete?: boolean\n readonly disableBulkEdit?: boolean\n readonly hasCreatePermission: boolean\n readonly Header?: React.ReactNode\n readonly newDocumentURL: string\n} & ListInfoProps\n\nconst Context = createContext({} as ListInfoContext)\n\nexport const useListInfo = (): ListInfoContext => useContext(Context)\n\nexport const ListInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & ListInfoProps\n> = ({ children, ...props }) => {\n return <Context.Provider value={props}>{children}</Context.Provider>\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AA4BjD,MAAMC,OAAA,gBAAUF,aAAA,CAAc,CAAC;AAE/B,OAAO,MAAMG,WAAA,GAAcA,CAAA;EAAA,OAAuBF,UAAA,CAAAC,OAAW;AAAA;AAE7D,OAAO,MAAME,gBAAA,GAITA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAA,CAAO;EACzB,oBAAOC,IAAA,CAACL,OAAA,CAAQM,QAAQ;IAACC,KAAA,EAAOH,KAAA;cAAQD;;AAC1C","ignoreList":[]}
@@ -3,11 +3,11 @@ import React from 'react';
3
3
  import type { Column } from '../../elements/Table/index.js';
4
4
  export type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[];
5
5
  type PropHandlers = {
6
- handlePageChange?: (page: number) => Promise<void> | void;
7
- handlePerPageChange?: (limit: number) => Promise<void> | void;
8
- handleSearchChange?: (search: string) => Promise<void> | void;
9
- handleSortChange?: (sort: string) => Promise<void> | void;
10
- handleWhereChange?: (where: Where) => Promise<void> | void;
6
+ readonly handlePageChange?: (page: number) => Promise<void> | void;
7
+ readonly handlePerPageChange?: (limit: number) => Promise<void> | void;
8
+ readonly handleSearchChange?: (search: string) => Promise<void> | void;
9
+ readonly handleSortChange?: (sort: string) => Promise<void> | void;
10
+ readonly handleWhereChange?: (where: Where) => Promise<void> | void;
11
11
  };
12
12
  type ContextHandlers = {
13
13
  handlePageChange?: (page: number) => Promise<void>;
@@ -15,14 +15,20 @@ type ContextHandlers = {
15
15
  handleSearchChange?: (search: string) => Promise<void>;
16
16
  handleSortChange?: (sort: string) => Promise<void>;
17
17
  handleWhereChange?: (where: Where) => Promise<void>;
18
+ params: RefineOverrides;
18
19
  };
19
20
  export type ListQueryProps = {
20
- children: React.ReactNode;
21
- data: PaginatedDocs;
22
- defaultLimit?: number;
23
- defaultSort?: string;
24
- modifySearchParams?: boolean;
25
- preferenceKey?: string;
21
+ readonly children: React.ReactNode;
22
+ readonly data: PaginatedDocs;
23
+ readonly defaultLimit?: number;
24
+ readonly defaultSort?: string;
25
+ readonly modifySearchParams?: boolean;
26
+ /**
27
+ * Used to manage the query params manually. If you pass this prop, the provider will not manage the query params from the searchParams.
28
+ * Useful for modals or other components that need to manage the query params themselves.
29
+ */
30
+ readonly params?: RefineOverrides;
31
+ readonly preferenceKey?: string;
26
32
  } & PropHandlers;
27
33
  export type ListQueryContext = {
28
34
  data: PaginatedDocs;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAAoC,MAAM,OAAO,CAAA;AAExD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAK3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,KAAK,YAAY,GAAG;IAClB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACzD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7D,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC7D,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACzD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC3D,CAAA;AACD,KAAK,eAAe,GAAG;IACrB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpD,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,GAAG,YAAY,CAAA;AAEhB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACzD,GAAG,eAAe,CAAA;AAInB,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA;AAEvE,KAAK,eAAe,GAAG;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAwItD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ListQuery/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAAsE,MAAM,OAAO,CAAA;AAE1F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAK3D,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAA;AAErE,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACtE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACtE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAClE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACpE,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAClD,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACnD,MAAM,EAAE,eAAe,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAA;IAC5B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IACrC;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAA;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAChC,GAAG,YAAY,CAAA;AAEhB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,aAAa,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACzD,GAAG,eAAe,CAAA;AAInB,eAAO,MAAM,YAAY,QAAO,gBAAuC,CAAA;AAEvE,KAAK,eAAe,GAAG;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA4KtD,CAAA"}
@@ -4,7 +4,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
4
4
  import { useRouter } from 'next/navigation.js';
5
5
  import { isNumber } from 'payload/shared';
6
6
  import * as qs from 'qs-esm';
7
- import React, { createContext, useContext } from 'react';
7
+ import React, { createContext, useCallback, useContext, useEffect, useState } from 'react';
8
8
  import { usePreferences } from '../Preferences/index.js';
9
9
  import { useSearchParams } from '../SearchParams/index.js';
10
10
  const Context = /*#__PURE__*/createContext({});
@@ -22,20 +22,25 @@ export const ListQueryProvider = ({
22
22
  handleSortChange: handleSortChangeFromProps,
23
23
  handleWhereChange: handleWhereChangeFromProps,
24
24
  modifySearchParams,
25
+ params: paramsFromProps,
25
26
  preferenceKey
26
27
  }) => {
27
28
  const router = useRouter();
28
29
  const {
29
30
  setPreference
30
31
  } = usePreferences();
31
- const hasSetInitialParams = React.useRef(false);
32
32
  const {
33
33
  searchParams: currentQuery
34
34
  } = useSearchParams();
35
- const refineListData = React.useCallback(async query => {
36
- if (!modifySearchParams) return;
35
+ const [params, setParams] = useState(paramsFromProps || currentQuery);
36
+ const refineListData = useCallback(async query => {
37
+ if (!modifySearchParams) {
38
+ return;
39
+ }
37
40
  let pageQuery = 'page' in query ? query.page : currentQuery?.page;
38
- if ('where' in query || 'search' in query) pageQuery = '1';
41
+ if ('where' in query || 'search' in query) {
42
+ pageQuery = '1';
43
+ }
39
44
  const updatedPreferences = {};
40
45
  let updatePreferences = false;
41
46
  if ('limit' in query) {
@@ -49,18 +54,18 @@ export const ListQueryProvider = ({
49
54
  if (updatePreferences && preferenceKey) {
50
55
  await setPreference(preferenceKey, updatedPreferences);
51
56
  }
52
- const params = {
57
+ const params_0 = {
53
58
  limit: 'limit' in query ? query.limit : currentQuery?.limit,
54
59
  page: pageQuery,
55
60
  search: 'search' in query ? query.search : currentQuery?.search,
56
61
  sort: 'sort' in query ? query.sort : currentQuery?.sort,
57
62
  where: 'where' in query ? query.where : currentQuery?.where
58
63
  };
59
- router.replace(`${qs.stringify(params, {
64
+ router.replace(`${qs.stringify(params_0, {
60
65
  addQueryPrefix: true
61
66
  })}`);
62
- }, [preferenceKey, modifySearchParams, router, setPreference, currentQuery]);
63
- const handlePageChange = React.useCallback(async arg => {
67
+ }, [modifySearchParams, currentQuery?.page, currentQuery?.limit, currentQuery?.search, currentQuery?.sort, currentQuery?.where, preferenceKey, router, setPreference]);
68
+ const handlePageChange = useCallback(async arg => {
64
69
  if (typeof handlePageChangeFromProps === 'function') {
65
70
  await handlePageChangeFromProps(arg);
66
71
  }
@@ -73,18 +78,20 @@ export const ListQueryProvider = ({
73
78
  await handlePerPageChangeFromProps(arg_0);
74
79
  }
75
80
  await refineListData({
76
- limit: String(arg_0)
81
+ limit: String(arg_0),
82
+ page: '1'
77
83
  });
78
84
  }, [refineListData, handlePerPageChangeFromProps]);
79
- const handleSearchChange = React.useCallback(async arg_1 => {
85
+ const handleSearchChange = useCallback(async arg_1 => {
86
+ const search = arg_1 === '' ? undefined : arg_1;
80
87
  if (typeof handleSearchChangeFromProps === 'function') {
81
- await handleSearchChangeFromProps(arg_1);
88
+ await handleSearchChangeFromProps(search);
82
89
  }
83
90
  await refineListData({
84
- search: arg_1
91
+ search
85
92
  });
86
- }, [refineListData, handleSearchChangeFromProps]);
87
- const handleSortChange = React.useCallback(async arg_2 => {
93
+ }, [handleSearchChangeFromProps, refineListData]);
94
+ const handleSortChange = useCallback(async arg_2 => {
88
95
  if (typeof handleSortChangeFromProps === 'function') {
89
96
  await handleSortChangeFromProps(arg_2);
90
97
  }
@@ -92,7 +99,7 @@ export const ListQueryProvider = ({
92
99
  sort: arg_2
93
100
  });
94
101
  }, [refineListData, handleSortChangeFromProps]);
95
- const handleWhereChange = React.useCallback(async arg_3 => {
102
+ const handleWhereChange = useCallback(async arg_3 => {
96
103
  if (typeof handleWhereChangeFromProps === 'function') {
97
104
  await handleWhereChangeFromProps(arg_3);
98
105
  }
@@ -100,8 +107,11 @@ export const ListQueryProvider = ({
100
107
  where: arg_3
101
108
  });
102
109
  }, [refineListData, handleWhereChangeFromProps]);
103
- React.useEffect(() => {
104
- if (!hasSetInitialParams.current) {
110
+ useEffect(() => {
111
+ if (paramsFromProps) {
112
+ // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect
113
+ setParams(paramsFromProps);
114
+ } else {
105
115
  if (modifySearchParams) {
106
116
  let shouldUpdateQueryString = false;
107
117
  if (isNumber(defaultLimit) && !('limit' in currentQuery)) {
@@ -112,13 +122,14 @@ export const ListQueryProvider = ({
112
122
  currentQuery.sort = defaultSort;
113
123
  shouldUpdateQueryString = true;
114
124
  }
125
+ // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect
126
+ setParams(currentQuery);
115
127
  if (shouldUpdateQueryString) {
116
128
  router.replace(`?${qs.stringify(currentQuery)}`);
117
129
  }
118
130
  }
119
- hasSetInitialParams.current = true;
120
131
  }
121
- }, [defaultSort, defaultLimit, router, modifySearchParams, currentQuery]);
132
+ }, [defaultSort, defaultLimit, router, modifySearchParams, currentQuery, paramsFromProps, params]);
122
133
  return /*#__PURE__*/_jsx(Context.Provider, {
123
134
  value: {
124
135
  data,
@@ -127,6 +138,7 @@ export const ListQueryProvider = ({
127
138
  handleSearchChange,
128
139
  handleSortChange,
129
140
  handleWhereChange,
141
+ params,
130
142
  refineListData
131
143
  },
132
144
  children: children
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useRouter","isNumber","qs","React","createContext","useContext","usePreferences","useSearchParams","Context","useListQuery","ListQueryProvider","children","data","defaultLimit","defaultSort","handlePageChange","handlePageChangeFromProps","handlePerPageChange","handlePerPageChangeFromProps","handleSearchChange","handleSearchChangeFromProps","handleSortChange","handleSortChangeFromProps","handleWhereChange","handleWhereChangeFromProps","modifySearchParams","preferenceKey","router","setPreference","hasSetInitialParams","useRef","searchParams","currentQuery","refineListData","useCallback","query","pageQuery","page","updatedPreferences","updatePreferences","limit","sort","params","search","where","replace","stringify","addQueryPrefix","arg","String","useEffect","current","shouldUpdateQueryString","_jsx","Provider","value"],"sources":["../../../src/providers/ListQuery/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { useRouter } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useContext } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nimport { usePreferences } from '../Preferences/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\ntype PropHandlers = {\n handlePageChange?: (page: number) => Promise<void> | void\n handlePerPageChange?: (limit: number) => Promise<void> | void\n handleSearchChange?: (search: string) => Promise<void> | void\n handleSortChange?: (sort: string) => Promise<void> | void\n handleWhereChange?: (where: Where) => Promise<void> | void\n}\ntype ContextHandlers = {\n handlePageChange?: (page: number) => Promise<void>\n handlePerPageChange?: (limit: number) => Promise<void>\n handleSearchChange?: (search: string) => Promise<void>\n handleSortChange?: (sort: string) => Promise<void>\n handleWhereChange?: (where: Where) => Promise<void>\n}\n\nexport type ListQueryProps = {\n children: React.ReactNode\n data: PaginatedDocs\n defaultLimit?: number\n defaultSort?: string\n modifySearchParams?: boolean\n preferenceKey?: string\n} & PropHandlers\n\nexport type ListQueryContext = {\n data: PaginatedDocs\n defaultLimit?: number\n defaultSort?: string\n refineListData: (args: RefineOverrides) => Promise<void>\n} & ContextHandlers\n\nconst Context = createContext({} as ListQueryContext)\n\nexport const useListQuery = (): ListQueryContext => useContext(Context)\n\ntype RefineOverrides = {\n limit?: string\n page?: string\n search?: string\n sort?: string\n where?: Where\n}\n\nexport const ListQueryProvider: React.FC<ListQueryProps> = ({\n children,\n data,\n defaultLimit,\n defaultSort,\n handlePageChange: handlePageChangeFromProps,\n handlePerPageChange: handlePerPageChangeFromProps,\n handleSearchChange: handleSearchChangeFromProps,\n handleSortChange: handleSortChangeFromProps,\n handleWhereChange: handleWhereChangeFromProps,\n modifySearchParams,\n preferenceKey,\n}) => {\n const router = useRouter()\n const { setPreference } = usePreferences()\n const hasSetInitialParams = React.useRef(false)\n const { searchParams: currentQuery } = useSearchParams()\n\n const refineListData = React.useCallback(\n async (query: RefineOverrides) => {\n if (!modifySearchParams) return\n\n let pageQuery = 'page' in query ? query.page : currentQuery?.page\n if ('where' in query || 'search' in query) pageQuery = '1'\n\n const updatedPreferences: Record<string, unknown> = {}\n let updatePreferences = false\n\n if ('limit' in query) {\n updatedPreferences.limit = query.limit\n updatePreferences = true\n }\n if ('sort' in query) {\n updatedPreferences.sort = query.sort\n updatePreferences = true\n }\n if (updatePreferences && preferenceKey) {\n await setPreference(preferenceKey, updatedPreferences)\n }\n\n const params = {\n limit: 'limit' in query ? query.limit : currentQuery?.limit,\n page: pageQuery,\n search: 'search' in query ? query.search : currentQuery?.search,\n sort: 'sort' in query ? query.sort : currentQuery?.sort,\n where: 'where' in query ? query.where : currentQuery?.where,\n }\n\n router.replace(`${qs.stringify(params, { addQueryPrefix: true })}`)\n },\n [preferenceKey, modifySearchParams, router, setPreference, currentQuery],\n )\n\n const handlePageChange = React.useCallback(\n async (arg: number) => {\n if (typeof handlePageChangeFromProps === 'function') {\n await handlePageChangeFromProps(arg)\n }\n await refineListData({ page: String(arg) })\n },\n [refineListData, handlePageChangeFromProps],\n )\n const handlePerPageChange = React.useCallback(\n async (arg: number) => {\n if (typeof handlePerPageChangeFromProps === 'function') {\n await handlePerPageChangeFromProps(arg)\n }\n await refineListData({ limit: String(arg) })\n },\n [refineListData, handlePerPageChangeFromProps],\n )\n const handleSearchChange = React.useCallback(\n async (arg: string) => {\n if (typeof handleSearchChangeFromProps === 'function') {\n await handleSearchChangeFromProps(arg)\n }\n await refineListData({ search: arg })\n },\n [refineListData, handleSearchChangeFromProps],\n )\n const handleSortChange = React.useCallback(\n async (arg: string) => {\n if (typeof handleSortChangeFromProps === 'function') {\n await handleSortChangeFromProps(arg)\n }\n await refineListData({ sort: arg })\n },\n [refineListData, handleSortChangeFromProps],\n )\n const handleWhereChange = React.useCallback(\n async (arg: Where) => {\n if (typeof handleWhereChangeFromProps === 'function') {\n await handleWhereChangeFromProps(arg)\n }\n await refineListData({ where: arg })\n },\n [refineListData, handleWhereChangeFromProps],\n )\n\n React.useEffect(() => {\n if (!hasSetInitialParams.current) {\n if (modifySearchParams) {\n let shouldUpdateQueryString = false\n\n if (isNumber(defaultLimit) && !('limit' in currentQuery)) {\n currentQuery.limit = String(defaultLimit)\n shouldUpdateQueryString = true\n }\n if (defaultSort && !('sort' in currentQuery)) {\n currentQuery.sort = defaultSort\n shouldUpdateQueryString = true\n }\n if (shouldUpdateQueryString) {\n router.replace(`?${qs.stringify(currentQuery)}`)\n }\n }\n\n hasSetInitialParams.current = true\n }\n }, [defaultSort, defaultLimit, router, modifySearchParams, currentQuery])\n\n return (\n <Context.Provider\n value={{\n data,\n handlePageChange,\n handlePerPageChange,\n handleSearchChange,\n handleSortChange,\n handleWhereChange,\n refineListData,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,SAAS,QAAQ;AAC1B,SAASC,QAAQ,QAAQ;AACzB,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,QAAQ;AAIjD,SAASC,cAAc,QAAQ;AAC/B,SAASC,eAAe,QAAQ;AAmChC,MAAMC,OAAA,gBAAUJ,aAAA,CAAc,CAAC;AAE/B,OAAO,MAAMK,YAAA,GAAeA,CAAA;EAAA,OAAwBJ,UAAA,CAAAG,OAAW;AAAA;AAU/D,OAAO,MAAME,iBAAA,GAA8CA,CAAC;EAC1DC,QAAQ;EACRC,IAAI;EACJC,YAAY;EACZC,WAAW;EACXC,gBAAA,EAAkBC,yBAAyB;EAC3CC,mBAAA,EAAqBC,4BAA4B;EACjDC,kBAAA,EAAoBC,2BAA2B;EAC/CC,gBAAA,EAAkBC,yBAAyB;EAC3CC,iBAAA,EAAmBC,0BAA0B;EAC7CC,kBAAkB;EAClBC;AAAa,CACd;EACC,MAAMC,MAAA,GAAS3B,SAAA;EACf,MAAM;IAAE4B;EAAa,CAAE,GAAGtB,cAAA;EAC1B,MAAMuB,mBAAA,GAAsB1B,KAAA,CAAM2B,MAAM,CAAC;EACzC,MAAM;IAAEC,YAAA,EAAcC;EAAY,CAAE,GAAGzB,eAAA;EAEvC,MAAM0B,cAAA,GAAiB9B,KAAA,CAAM+B,WAAW,CACtC,MAAOC,KAAA;IACL,IAAI,CAACV,kBAAA,EAAoB;IAEzB,IAAIW,SAAA,GAAY,UAAUD,KAAA,GAAQA,KAAA,CAAME,IAAI,GAAGL,YAAA,EAAcK,IAAA;IAC7D,IAAI,WAAWF,KAAA,IAAS,YAAYA,KAAA,EAAOC,SAAA,GAAY;IAEvD,MAAME,kBAAA,GAA8C,CAAC;IACrD,IAAIC,iBAAA,GAAoB;IAExB,IAAI,WAAWJ,KAAA,EAAO;MACpBG,kBAAA,CAAmBE,KAAK,GAAGL,KAAA,CAAMK,KAAK;MACtCD,iBAAA,GAAoB;IACtB;IACA,IAAI,UAAUJ,KAAA,EAAO;MACnBG,kBAAA,CAAmBG,IAAI,GAAGN,KAAA,CAAMM,IAAI;MACpCF,iBAAA,GAAoB;IACtB;IACA,IAAIA,iBAAA,IAAqBb,aAAA,EAAe;MACtC,MAAME,aAAA,CAAcF,aAAA,EAAeY,kBAAA;IACrC;IAEA,MAAMI,MAAA,GAAS;MACbF,KAAA,EAAO,WAAWL,KAAA,GAAQA,KAAA,CAAMK,KAAK,GAAGR,YAAA,EAAcQ,KAAA;MACtDH,IAAA,EAAMD,SAAA;MACNO,MAAA,EAAQ,YAAYR,KAAA,GAAQA,KAAA,CAAMQ,MAAM,GAAGX,YAAA,EAAcW,MAAA;MACzDF,IAAA,EAAM,UAAUN,KAAA,GAAQA,KAAA,CAAMM,IAAI,GAAGT,YAAA,EAAcS,IAAA;MACnDG,KAAA,EAAO,WAAWT,KAAA,GAAQA,KAAA,CAAMS,KAAK,GAAGZ,YAAA,EAAcY;IACxD;IAEAjB,MAAA,CAAOkB,OAAO,CAAC,GAAG3C,EAAA,CAAG4C,SAAS,CAACJ,MAAA,EAAQ;MAAEK,cAAA,EAAgB;IAAK,IAAI;EACpE,GACA,CAACrB,aAAA,EAAeD,kBAAA,EAAoBE,MAAA,EAAQC,aAAA,EAAeI,YAAA,CAAa;EAG1E,MAAMjB,gBAAA,GAAmBZ,KAAA,CAAM+B,WAAW,CACxC,MAAOc,GAAA;IACL,IAAI,OAAOhC,yBAAA,KAA8B,YAAY;MACnD,MAAMA,yBAAA,CAA0BgC,GAAA;IAClC;IACA,MAAMf,cAAA,CAAe;MAAEI,IAAA,EAAMY,MAAA,CAAOD,GAAA;IAAK;EAC3C,GACA,CAACf,cAAA,EAAgBjB,yBAAA,CAA0B;EAE7C,MAAMC,mBAAA,GAAsBd,KAAA,CAAM+B,WAAW,CAC3C,MAAOc,KAAA;IACL,IAAI,OAAO9B,4BAAA,KAAiC,YAAY;MACtD,MAAMA,4BAAA,CAA6B8B,KAAA;IACrC;IACA,MAAMf,cAAA,CAAe;MAAEO,KAAA,EAAOS,MAAA,CAAOD,KAAA;IAAK;EAC5C,GACA,CAACf,cAAA,EAAgBf,4BAAA,CAA6B;EAEhD,MAAMC,kBAAA,GAAqBhB,KAAA,CAAM+B,WAAW,CAC1C,MAAOc,KAAA;IACL,IAAI,OAAO5B,2BAAA,KAAgC,YAAY;MACrD,MAAMA,2BAAA,CAA4B4B,KAAA;IACpC;IACA,MAAMf,cAAA,CAAe;MAAEU,MAAA,EAAQK;IAAI;EACrC,GACA,CAACf,cAAA,EAAgBb,2BAAA,CAA4B;EAE/C,MAAMC,gBAAA,GAAmBlB,KAAA,CAAM+B,WAAW,CACxC,MAAOc,KAAA;IACL,IAAI,OAAO1B,yBAAA,KAA8B,YAAY;MACnD,MAAMA,yBAAA,CAA0B0B,KAAA;IAClC;IACA,MAAMf,cAAA,CAAe;MAAEQ,IAAA,EAAMO;IAAI;EACnC,GACA,CAACf,cAAA,EAAgBX,yBAAA,CAA0B;EAE7C,MAAMC,iBAAA,GAAoBpB,KAAA,CAAM+B,WAAW,CACzC,MAAOc,KAAA;IACL,IAAI,OAAOxB,0BAAA,KAA+B,YAAY;MACpD,MAAMA,0BAAA,CAA2BwB,KAAA;IACnC;IACA,MAAMf,cAAA,CAAe;MAAEW,KAAA,EAAOI;IAAI;EACpC,GACA,CAACf,cAAA,EAAgBT,0BAAA,CAA2B;EAG9CrB,KAAA,CAAM+C,SAAS,CAAC;IACd,IAAI,CAACrB,mBAAA,CAAoBsB,OAAO,EAAE;MAChC,IAAI1B,kBAAA,EAAoB;QACtB,IAAI2B,uBAAA,GAA0B;QAE9B,IAAInD,QAAA,CAASY,YAAA,KAAiB,EAAE,WAAWmB,YAAW,GAAI;UACxDA,YAAA,CAAaQ,KAAK,GAAGS,MAAA,CAAOpC,YAAA;UAC5BuC,uBAAA,GAA0B;QAC5B;QACA,IAAItC,WAAA,IAAe,EAAE,UAAUkB,YAAW,GAAI;UAC5CA,YAAA,CAAaS,IAAI,GAAG3B,WAAA;UACpBsC,uBAAA,GAA0B;QAC5B;QACA,IAAIA,uBAAA,EAAyB;UAC3BzB,MAAA,CAAOkB,OAAO,CAAC,IAAI3C,EAAA,CAAG4C,SAAS,CAACd,YAAA,GAAe;QACjD;MACF;MAEAH,mBAAA,CAAoBsB,OAAO,GAAG;IAChC;EACF,GAAG,CAACrC,WAAA,EAAaD,YAAA,EAAcc,MAAA,EAAQF,kBAAA,EAAoBO,YAAA,CAAa;EAExE,oBACEqB,IAAA,CAAC7C,OAAA,CAAQ8C,QAAQ;IACfC,KAAA,EAAO;MACL3C,IAAA;MACAG,gBAAA;MACAE,mBAAA;MACAE,kBAAA;MACAE,gBAAA;MACAE,iBAAA;MACAU;IACF;cAECtB;;AAGP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useRouter","isNumber","qs","React","createContext","useCallback","useContext","useEffect","useState","usePreferences","useSearchParams","Context","useListQuery","ListQueryProvider","children","data","defaultLimit","defaultSort","handlePageChange","handlePageChangeFromProps","handlePerPageChange","handlePerPageChangeFromProps","handleSearchChange","handleSearchChangeFromProps","handleSortChange","handleSortChangeFromProps","handleWhereChange","handleWhereChangeFromProps","modifySearchParams","params","paramsFromProps","preferenceKey","router","setPreference","searchParams","currentQuery","setParams","refineListData","query","pageQuery","page","updatedPreferences","updatePreferences","limit","sort","search","where","replace","stringify","addQueryPrefix","arg","String","undefined","shouldUpdateQueryString","_jsx","Provider","value"],"sources":["../../../src/providers/ListQuery/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { useRouter } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\n\nimport type { Column } from '../../elements/Table/index.js'\n\nimport { usePreferences } from '../Preferences/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport type ColumnPreferences = Pick<Column, 'accessor' | 'active'>[]\n\ntype PropHandlers = {\n readonly handlePageChange?: (page: number) => Promise<void> | void\n readonly handlePerPageChange?: (limit: number) => Promise<void> | void\n readonly handleSearchChange?: (search: string) => Promise<void> | void\n readonly handleSortChange?: (sort: string) => Promise<void> | void\n readonly handleWhereChange?: (where: Where) => Promise<void> | void\n}\n\ntype ContextHandlers = {\n handlePageChange?: (page: number) => Promise<void>\n handlePerPageChange?: (limit: number) => Promise<void>\n handleSearchChange?: (search: string) => Promise<void>\n handleSortChange?: (sort: string) => Promise<void>\n handleWhereChange?: (where: Where) => Promise<void>\n params: RefineOverrides\n}\n\nexport type ListQueryProps = {\n readonly children: React.ReactNode\n readonly data: PaginatedDocs\n readonly defaultLimit?: number\n readonly defaultSort?: string\n readonly modifySearchParams?: boolean\n /**\n * Used to manage the query params manually. If you pass this prop, the provider will not manage the query params from the searchParams.\n * Useful for modals or other components that need to manage the query params themselves.\n */\n readonly params?: RefineOverrides\n readonly preferenceKey?: string\n} & PropHandlers\n\nexport type ListQueryContext = {\n data: PaginatedDocs\n defaultLimit?: number\n defaultSort?: string\n refineListData: (args: RefineOverrides) => Promise<void>\n} & ContextHandlers\n\nconst Context = createContext({} as ListQueryContext)\n\nexport const useListQuery = (): ListQueryContext => useContext(Context)\n\ntype RefineOverrides = {\n limit?: string\n page?: string\n search?: string\n sort?: string\n where?: Where\n}\n\nexport const ListQueryProvider: React.FC<ListQueryProps> = ({\n children,\n data,\n defaultLimit,\n defaultSort,\n handlePageChange: handlePageChangeFromProps,\n handlePerPageChange: handlePerPageChangeFromProps,\n handleSearchChange: handleSearchChangeFromProps,\n handleSortChange: handleSortChangeFromProps,\n handleWhereChange: handleWhereChangeFromProps,\n modifySearchParams,\n params: paramsFromProps,\n preferenceKey,\n}) => {\n const router = useRouter()\n const { setPreference } = usePreferences()\n const { searchParams: currentQuery } = useSearchParams()\n const [params, setParams] = useState(paramsFromProps || currentQuery)\n\n const refineListData = useCallback(\n async (query: RefineOverrides) => {\n if (!modifySearchParams) {\n return\n }\n\n let pageQuery = 'page' in query ? query.page : currentQuery?.page\n\n if ('where' in query || 'search' in query) {\n pageQuery = '1'\n }\n\n const updatedPreferences: Record<string, unknown> = {}\n let updatePreferences = false\n\n if ('limit' in query) {\n updatedPreferences.limit = query.limit\n updatePreferences = true\n }\n\n if ('sort' in query) {\n updatedPreferences.sort = query.sort\n updatePreferences = true\n }\n\n if (updatePreferences && preferenceKey) {\n await setPreference(preferenceKey, updatedPreferences)\n }\n\n const params = {\n limit: 'limit' in query ? query.limit : currentQuery?.limit,\n page: pageQuery,\n search: 'search' in query ? query.search : currentQuery?.search,\n sort: 'sort' in query ? query.sort : currentQuery?.sort,\n where: 'where' in query ? query.where : currentQuery?.where,\n }\n\n router.replace(`${qs.stringify(params, { addQueryPrefix: true })}`)\n },\n [\n modifySearchParams,\n currentQuery?.page,\n currentQuery?.limit,\n currentQuery?.search,\n currentQuery?.sort,\n currentQuery?.where,\n preferenceKey,\n router,\n setPreference,\n ],\n )\n\n const handlePageChange = useCallback(\n async (arg: number) => {\n if (typeof handlePageChangeFromProps === 'function') {\n await handlePageChangeFromProps(arg)\n }\n\n await refineListData({ page: String(arg) })\n },\n [refineListData, handlePageChangeFromProps],\n )\n\n const handlePerPageChange = React.useCallback(\n async (arg: number) => {\n if (typeof handlePerPageChangeFromProps === 'function') {\n await handlePerPageChangeFromProps(arg)\n }\n\n await refineListData({ limit: String(arg), page: '1' })\n },\n [refineListData, handlePerPageChangeFromProps],\n )\n\n const handleSearchChange = useCallback(\n async (arg: string) => {\n const search = arg === '' ? undefined : arg\n\n if (typeof handleSearchChangeFromProps === 'function') {\n await handleSearchChangeFromProps(search)\n }\n\n await refineListData({ search })\n },\n [handleSearchChangeFromProps, refineListData],\n )\n\n const handleSortChange = useCallback(\n async (arg: string) => {\n if (typeof handleSortChangeFromProps === 'function') {\n await handleSortChangeFromProps(arg)\n }\n\n await refineListData({ sort: arg })\n },\n [refineListData, handleSortChangeFromProps],\n )\n\n const handleWhereChange = useCallback(\n async (arg: Where) => {\n if (typeof handleWhereChangeFromProps === 'function') {\n await handleWhereChangeFromProps(arg)\n }\n\n await refineListData({ where: arg })\n },\n [refineListData, handleWhereChangeFromProps],\n )\n\n useEffect(() => {\n if (paramsFromProps) {\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setParams(paramsFromProps)\n } else {\n if (modifySearchParams) {\n let shouldUpdateQueryString = false\n\n if (isNumber(defaultLimit) && !('limit' in currentQuery)) {\n currentQuery.limit = String(defaultLimit)\n shouldUpdateQueryString = true\n }\n\n if (defaultSort && !('sort' in currentQuery)) {\n currentQuery.sort = defaultSort\n shouldUpdateQueryString = true\n }\n\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setParams(currentQuery)\n\n if (shouldUpdateQueryString) {\n router.replace(`?${qs.stringify(currentQuery)}`)\n }\n }\n }\n }, [defaultSort, defaultLimit, router, modifySearchParams, currentQuery, paramsFromProps, params])\n\n return (\n <Context.Provider\n value={{\n data,\n handlePageChange,\n handlePerPageChange,\n handleSearchChange,\n handleSortChange,\n handleWhereChange,\n params,\n refineListData,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAyD,MAAM,OAAO,CAAA;AAU7E,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAyEnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,MAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Locale/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC,OAAO,KAAyD,MAAM,OAAO,CAAA;AAU7E,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CA2EnE,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,MAAmC,CAAA"}