@payloadcms/ui 4.0.0-internal.183b315 → 4.0.0-internal.203916b

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 (1046) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/css/colors.css +112 -59
  3. package/dist/css/design-tokens.css +5 -0
  4. package/dist/css/elevations.css +4 -0
  5. package/dist/css/forms.css +6 -3
  6. package/dist/css/radius.css +1 -3
  7. package/dist/css/theme.css +6 -1
  8. package/dist/css/utilities.css +7 -1
  9. package/dist/elements/APIKeyInput/index.css +92 -0
  10. package/dist/elements/APIKeyInput/index.d.ts +14 -0
  11. package/dist/elements/APIKeyInput/index.d.ts.map +1 -0
  12. package/dist/elements/APIKeyInput/index.js +86 -0
  13. package/dist/elements/APIKeyInput/index.js.map +1 -0
  14. package/dist/elements/AddNewRelation/index.css +28 -28
  15. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  16. package/dist/elements/AddNewRelation/index.js +85 -103
  17. package/dist/elements/AddNewRelation/index.js.map +1 -1
  18. package/dist/elements/AppHeader/index.d.ts +4 -1
  19. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  20. package/dist/elements/AppHeader/index.js +16 -27
  21. package/dist/elements/AppHeader/index.js.map +1 -1
  22. package/dist/elements/ArrayAction/index.js +2 -2
  23. package/dist/elements/ArrayAction/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/ActionsBar/index.css +13 -11
  25. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +1 -5
  26. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  27. package/dist/elements/BulkUpload/ActionsBar/index.js +57 -61
  28. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  29. package/dist/elements/BulkUpload/AddFilesView/index.css +14 -8
  30. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -2
  31. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  32. package/dist/elements/BulkUpload/AddFilesView/index.js +41 -36
  33. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  34. package/dist/elements/BulkUpload/AddingFilesView/index.css +177 -0
  35. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +6 -2
  36. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/AddingFilesView/index.js +135 -66
  38. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  39. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  40. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  41. package/dist/elements/BulkUpload/EditForm/index.css +9 -0
  42. package/dist/elements/BulkUpload/EditForm/index.d.ts +2 -2
  43. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  44. package/dist/elements/BulkUpload/EditForm/index.js +17 -18
  45. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  46. package/dist/elements/BulkUpload/EditForm/types.d.ts +2 -3
  47. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -1
  48. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  49. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -1
  50. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  51. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +77 -59
  52. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  53. package/dist/elements/BulkUpload/EditMany/index.css +71 -0
  54. package/dist/elements/BulkUpload/EditMany/index.d.ts +1 -1
  55. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  56. package/dist/elements/BulkUpload/EditMany/index.js +29 -11
  57. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  58. package/dist/elements/BulkUpload/FileSidebar/index.css +79 -180
  59. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  60. package/dist/elements/BulkUpload/FileSidebar/index.js +42 -165
  61. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  62. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  63. package/dist/elements/BulkUpload/FormsManager/index.js +14 -1
  64. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  65. package/dist/elements/BulkUpload/index.css +48 -0
  66. package/dist/elements/BulkUpload/index.d.ts +6 -5
  67. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  68. package/dist/elements/BulkUpload/index.js +42 -41
  69. package/dist/elements/BulkUpload/index.js.map +1 -1
  70. package/dist/elements/Button/index.css +8 -0
  71. package/dist/elements/Button/index.d.ts.map +1 -1
  72. package/dist/elements/Button/index.js +5 -0
  73. package/dist/elements/Button/index.js.map +1 -1
  74. package/dist/elements/Card/index.css +1 -1
  75. package/dist/elements/Chip/index.css +1 -1
  76. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  77. package/dist/elements/ClipboardAction/index.js +1 -0
  78. package/dist/elements/ClipboardAction/index.js.map +1 -1
  79. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  80. package/dist/elements/CodeEditor/CodeEditor.js +19 -0
  81. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  82. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  83. package/dist/elements/Collapsible/index.js +2 -0
  84. package/dist/elements/Collapsible/index.js.map +1 -1
  85. package/dist/elements/ColumnSelection/Popup.d.ts +12 -0
  86. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -0
  87. package/dist/elements/{ColumnSelector/index.js → ColumnSelection/Popup.js} +25 -18
  88. package/dist/elements/ColumnSelection/Popup.js.map +1 -0
  89. package/dist/elements/ColumnSelection/index.d.ts +10 -0
  90. package/dist/elements/ColumnSelection/index.d.ts.map +1 -0
  91. package/dist/elements/{ColumnsButton → ColumnSelection}/index.js +23 -17
  92. package/dist/elements/ColumnSelection/index.js.map +1 -0
  93. package/dist/elements/Combobox/index.css +9 -8
  94. package/dist/elements/ConfirmationModal/index.css +7 -0
  95. package/dist/elements/ConfirmationModal/index.d.ts +1 -0
  96. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  97. package/dist/elements/ConfirmationModal/index.js +7 -3
  98. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  99. package/dist/elements/CopyLocaleData/index.js +1 -1
  100. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  101. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  102. package/dist/elements/CreateDocumentButton/index.js +0 -1
  103. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  104. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  105. package/dist/elements/DatePicker/DatePicker.js +4 -2
  106. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  107. package/dist/elements/DatePicker/index.css +14 -9
  108. package/dist/elements/DatePicker/index.js +1 -1
  109. package/dist/elements/DatePicker/index.js.map +1 -1
  110. package/dist/elements/DeleteMany/index.d.ts +3 -26
  111. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  112. package/dist/elements/DeleteMany/index.js +1 -95
  113. package/dist/elements/DeleteMany/index.js.map +1 -1
  114. package/dist/elements/Dialog/DialogHeader/index.d.ts +4 -0
  115. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -1
  116. package/dist/elements/Dialog/DialogHeader/index.js +45 -30
  117. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  118. package/dist/elements/Dialog/DialogModal/index.d.ts +6 -1
  119. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  120. package/dist/elements/Dialog/DialogModal/index.js +58 -31
  121. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  122. package/dist/elements/Dialog/DialogTitle/index.css +9 -0
  123. package/dist/elements/Dialog/DialogTitle/index.d.ts +5 -0
  124. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -0
  125. package/dist/elements/Dialog/DialogTitle/index.js +10 -0
  126. package/dist/elements/Dialog/DialogTitle/index.js.map +1 -0
  127. package/dist/elements/Dialog/index.css +10 -0
  128. package/dist/elements/DocumentControls/index.css +18 -2
  129. package/dist/elements/DocumentControls/index.d.ts +6 -0
  130. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  131. package/dist/elements/DocumentControls/index.js +20 -9
  132. package/dist/elements/DocumentControls/index.js.map +1 -1
  133. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  134. package/dist/elements/DocumentDrawer/DrawerContent.js +10 -6
  135. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  136. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +76 -4
  137. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +7 -1
  138. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  139. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +150 -87
  140. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  141. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  142. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  143. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  144. package/dist/elements/DocumentFields/index.css +75 -4
  145. package/dist/elements/DocumentFields/index.d.ts +5 -0
  146. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  147. package/dist/elements/DocumentFields/index.js +9 -1
  148. package/dist/elements/DocumentFields/index.js.map +1 -1
  149. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts +12 -0
  150. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts.map +1 -0
  151. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +28 -0
  152. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -0
  153. package/dist/elements/DocumentHeader/index.js +2 -3
  154. package/dist/elements/DocumentHeader/index.js.map +1 -1
  155. package/dist/elements/DraggableSortable/DragOverlayPreview/index.css +1 -1
  156. package/dist/elements/DraggableSortable/index.js.map +1 -1
  157. package/dist/elements/Drawer/index.css +57 -26
  158. package/dist/elements/Drawer/index.d.ts +25 -0
  159. package/dist/elements/Drawer/index.d.ts.map +1 -1
  160. package/dist/elements/Drawer/index.js +133 -54
  161. package/dist/elements/Drawer/index.js.map +1 -1
  162. package/dist/elements/Drawer/types.d.ts +1 -0
  163. package/dist/elements/Drawer/types.d.ts.map +1 -1
  164. package/dist/elements/Drawer/types.js.map +1 -1
  165. package/dist/elements/DrawerActionHeader/index.css +1 -1
  166. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.css +7 -1
  167. package/dist/elements/DrawerHeader/index.d.ts +10 -0
  168. package/dist/elements/DrawerHeader/index.d.ts.map +1 -0
  169. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.js +16 -11
  170. package/dist/elements/DrawerHeader/index.js.map +1 -0
  171. package/dist/elements/Dropzone/index.css +5 -13
  172. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +1 -1
  173. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  174. package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
  175. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  176. package/dist/elements/EditMany/DrawerContent.js +76 -71
  177. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  178. package/dist/elements/EditMany/index.css +71 -0
  179. package/dist/elements/EditMany/index.d.ts +9 -11
  180. package/dist/elements/EditMany/index.d.ts.map +1 -1
  181. package/dist/elements/EditMany/index.js +2 -40
  182. package/dist/elements/EditMany/index.js.map +1 -1
  183. package/dist/elements/EditUpload/index.css +97 -158
  184. package/dist/elements/EditUpload/index.d.ts +2 -1
  185. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  186. package/dist/elements/EditUpload/index.js +209 -231
  187. package/dist/elements/EditUpload/index.js.map +1 -1
  188. package/dist/elements/EditUpload/{library.scss → library.css} +108 -46
  189. package/dist/elements/FieldSelect/index.css +3 -0
  190. package/dist/elements/FileDetails/DraggableFileDetails/index.css +32 -0
  191. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +2 -2
  192. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  193. package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -18
  194. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  195. package/dist/elements/FileDetails/FileMeta/index.css +27 -0
  196. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  197. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  198. package/dist/elements/FileDetails/FileMeta/index.js +1 -1
  199. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  200. package/dist/elements/FileDetails/StaticFileDetails/index.css +140 -0
  201. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +2 -2
  202. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  203. package/dist/elements/FileDetails/StaticFileDetails/index.js +1 -1
  204. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  205. package/dist/elements/FileDetails/index.d.ts +1 -1
  206. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  207. package/dist/elements/FileDetails/index.js.map +1 -1
  208. package/dist/elements/FileManager/FilePreview/AudioPreview/index.css +8 -0
  209. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts +10 -0
  210. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts.map +1 -0
  211. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js +24 -0
  212. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js.map +1 -0
  213. package/dist/elements/FileManager/FilePreview/PdfPreview/index.css +9 -0
  214. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts +12 -0
  215. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts.map +1 -0
  216. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js +27 -0
  217. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js.map +1 -0
  218. package/dist/elements/FileManager/FilePreview/VideoPreview/index.css +8 -0
  219. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts +10 -0
  220. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts.map +1 -0
  221. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js +24 -0
  222. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js.map +1 -0
  223. package/dist/elements/FileManager/FilePreview/index.css +83 -0
  224. package/dist/elements/FileManager/FilePreview/index.d.ts +13 -0
  225. package/dist/elements/FileManager/FilePreview/index.d.ts.map +1 -0
  226. package/dist/elements/FileManager/FilePreview/index.js +140 -0
  227. package/dist/elements/FileManager/FilePreview/index.js.map +1 -0
  228. package/dist/elements/FileManager/FileToolbar/index.css +91 -0
  229. package/dist/elements/FileManager/FileToolbar/index.d.ts +14 -0
  230. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -0
  231. package/dist/elements/FileManager/FileToolbar/index.js +106 -0
  232. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -0
  233. package/dist/elements/FileManager/index.css +154 -0
  234. package/dist/elements/FileManager/index.d.ts +19 -0
  235. package/dist/elements/FileManager/index.d.ts.map +1 -0
  236. package/dist/elements/FileManager/index.js +424 -0
  237. package/dist/elements/FileManager/index.js.map +1 -0
  238. package/dist/elements/GroupBy/Popup.d.ts +21 -0
  239. package/dist/elements/GroupBy/Popup.d.ts.map +1 -0
  240. package/dist/elements/GroupBy/Popup.js +268 -0
  241. package/dist/elements/GroupBy/Popup.js.map +1 -0
  242. package/dist/elements/GroupBy/index.d.ts +12 -0
  243. package/dist/elements/GroupBy/index.d.ts.map +1 -0
  244. package/dist/elements/GroupBy/index.js +91 -0
  245. package/dist/elements/GroupBy/index.js.map +1 -0
  246. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +5 -3
  247. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +1 -0
  248. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +1 -1
  249. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  250. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  251. package/dist/elements/Hierarchy/DocHeaderButton/index.js +12 -12
  252. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  253. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
  254. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +1 -1
  255. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  256. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -1
  257. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  258. package/dist/elements/Hierarchy/Field/index.client.d.ts +1 -1
  259. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  260. package/dist/elements/Hierarchy/Field/index.client.js +19 -16
  261. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  262. package/dist/elements/Hierarchy/Field/index.css +37 -0
  263. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -0
  264. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -0
  265. package/dist/elements/Hierarchy/Modal/index.css +88 -0
  266. package/dist/elements/Hierarchy/Modal/index.d.ts +20 -0
  267. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -0
  268. package/dist/elements/Hierarchy/{Drawer → Modal}/index.js +109 -83
  269. package/dist/elements/Hierarchy/Modal/index.js.map +1 -0
  270. package/dist/elements/Hierarchy/{Drawer → Modal}/types.d.ts +22 -18
  271. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -0
  272. package/dist/elements/Hierarchy/Modal/types.js.map +1 -0
  273. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts +30 -0
  274. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -0
  275. package/dist/elements/Hierarchy/{Drawer/useHierarchyDrawer.js → Modal/useHierarchyModal.js} +51 -50
  276. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -0
  277. package/dist/elements/Hierarchy/MoveMany/index.d.ts +2 -3
  278. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  279. package/dist/elements/Hierarchy/MoveMany/index.js +9 -10
  280. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  281. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +27 -0
  282. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +1 -1
  283. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -1
  284. package/dist/elements/Hierarchy/Tree/LoadMore/index.js +1 -1
  285. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -1
  286. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  287. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +36 -16
  288. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  289. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +38 -13
  290. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  291. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +54 -43
  292. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  293. package/dist/elements/Hierarchy/Tree/index.css +1 -1
  294. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  295. package/dist/elements/Hierarchy/Tree/index.js +18 -5
  296. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  297. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  298. package/dist/elements/ListColumnSelectionButton/index.d.ts +11 -0
  299. package/dist/elements/ListColumnSelectionButton/index.d.ts.map +1 -0
  300. package/dist/elements/ListColumnSelectionButton/index.js +37 -0
  301. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -0
  302. package/dist/elements/ListControls/index.css +5 -0
  303. package/dist/elements/ListControls/index.d.ts.map +1 -1
  304. package/dist/elements/ListControls/index.js +7 -8
  305. package/dist/elements/ListControls/index.js.map +1 -1
  306. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  307. package/dist/elements/ListDrawer/DrawerContent.js +13 -7
  308. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  309. package/dist/elements/ListDrawer/Provider.d.ts +1 -1
  310. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  311. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  312. package/dist/elements/ListGroupByButton/index.d.ts +12 -0
  313. package/dist/elements/ListGroupByButton/index.d.ts.map +1 -0
  314. package/dist/elements/ListGroupByButton/index.js +55 -0
  315. package/dist/elements/ListGroupByButton/index.js.map +1 -0
  316. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  317. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +2 -0
  318. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  319. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +4 -4
  320. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  321. package/dist/elements/ListSelection/index.css +1 -1
  322. package/dist/elements/ListWhereBuilder/index.d.ts +16 -0
  323. package/dist/elements/ListWhereBuilder/index.d.ts.map +1 -0
  324. package/dist/elements/ListWhereBuilder/index.js +62 -0
  325. package/dist/elements/ListWhereBuilder/index.js.map +1 -0
  326. package/dist/elements/LivePreview/Toolbar/Controls/index.js +2 -2
  327. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  328. package/dist/elements/LivePreview/Toolbar/SizeInput/index.css +5 -44
  329. package/dist/elements/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  330. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +26 -43
  331. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  332. package/dist/elements/LivePreview/Window/index.css +6 -0
  333. package/dist/elements/LoadMoreRow/index.css +34 -0
  334. package/dist/elements/LoadMoreRow/index.d.ts +1 -1
  335. package/dist/elements/LoadMoreRow/index.d.ts.map +1 -1
  336. package/dist/elements/LoadMoreRow/index.js +4 -8
  337. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  338. package/dist/elements/Loading/index.css +28 -74
  339. package/dist/elements/Loading/index.d.ts.map +1 -1
  340. package/dist/elements/Loading/index.js +16 -60
  341. package/dist/elements/Loading/index.js.map +1 -1
  342. package/dist/elements/Localizer/index.d.ts.map +1 -1
  343. package/dist/elements/Localizer/index.js +3 -4
  344. package/dist/elements/Localizer/index.js.map +1 -1
  345. package/dist/elements/MenuSeparator/index.d.ts +4 -0
  346. package/dist/elements/MenuSeparator/index.d.ts.map +1 -0
  347. package/dist/elements/MenuSeparator/index.js +10 -0
  348. package/dist/elements/MenuSeparator/index.js.map +1 -0
  349. package/dist/elements/MiniCarousel/index.css +94 -0
  350. package/dist/elements/MiniCarousel/index.d.ts +15 -0
  351. package/dist/elements/MiniCarousel/index.d.ts.map +1 -0
  352. package/dist/elements/MiniCarousel/index.js +84 -0
  353. package/dist/elements/MiniCarousel/index.js.map +1 -0
  354. package/dist/elements/Nav/SettingsMenuButton/index.css +5 -0
  355. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +1 -1
  356. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  357. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -1
  358. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  359. package/dist/elements/Nav/index.css +2 -2
  360. package/dist/elements/Nav/index.d.ts.map +1 -1
  361. package/dist/elements/Nav/index.js +4 -23
  362. package/dist/elements/Nav/index.js.map +1 -1
  363. package/dist/elements/NavGroup/index.css +1 -1
  364. package/dist/elements/Pill/index.css +1 -1
  365. package/dist/elements/PillSelector/index.css +1 -1
  366. package/dist/elements/Popup/PopupButtonList/index.css +48 -4
  367. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  368. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  369. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  370. package/dist/elements/Popup/PopupGroupLabel/index.css +19 -4
  371. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  372. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  373. package/dist/elements/Popup/PopupTrigger/index.js +3 -0
  374. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  375. package/dist/elements/Popup/index.d.ts +14 -1
  376. package/dist/elements/Popup/index.d.ts.map +1 -1
  377. package/dist/elements/Popup/index.js +162 -63
  378. package/dist/elements/Popup/index.js.map +1 -1
  379. package/dist/elements/PreviewSizes/index.css +149 -0
  380. package/dist/elements/PreviewSizes/index.d.ts +2 -2
  381. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  382. package/dist/elements/PreviewSizes/index.js +1 -1
  383. package/dist/elements/PreviewSizes/index.js.map +1 -1
  384. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts +13 -0
  385. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -0
  386. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js +41 -0
  387. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js.map +1 -0
  388. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +1 -0
  389. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  390. package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
  391. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  392. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  393. package/dist/elements/PublishButton/index.js +4 -5
  394. package/dist/elements/PublishButton/index.js.map +1 -1
  395. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  396. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  397. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  398. package/dist/elements/PublishMany/index.d.ts +2 -6
  399. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  400. package/dist/elements/PublishMany/index.js +0 -38
  401. package/dist/elements/PublishMany/index.js.map +1 -1
  402. package/dist/elements/QueryPresets/cells/ColumnsCell/{index.scss → index.css} +1 -3
  403. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +1 -1
  404. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -1
  405. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +1 -1
  406. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  407. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +1 -1
  408. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  409. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +77 -48
  410. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  411. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +1 -1
  412. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  413. package/dist/elements/QueryPresets/fields/GroupByField/index.js +12 -21
  414. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  415. package/dist/elements/QueryPresets/fields/Heading/index.css +52 -0
  416. package/dist/elements/QueryPresets/fields/Heading/index.d.ts +7 -0
  417. package/dist/elements/QueryPresets/fields/Heading/index.d.ts.map +1 -0
  418. package/dist/elements/QueryPresets/fields/Heading/index.js +31 -0
  419. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -0
  420. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +1 -1
  421. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  422. package/dist/elements/QueryPresets/fields/WhereField/index.js +24 -23
  423. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  424. package/dist/elements/QueryPresets/fields/fields.css +23 -0
  425. package/dist/elements/ReactSelect/DropdownIndicator/index.css +1 -1
  426. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  427. package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -12
  428. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  429. package/dist/elements/ReactSelect/MultiValue/index.css +1 -1
  430. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  431. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  432. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  433. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  434. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  435. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  436. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  437. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  438. package/dist/elements/ReactSelect/index.css +54 -54
  439. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  440. package/dist/elements/ReactSelect/index.js +211 -115
  441. package/dist/elements/ReactSelect/index.js.map +1 -1
  442. package/dist/elements/ReactSelect/types.d.ts +8 -1
  443. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  444. package/dist/elements/ReactSelect/types.js.map +1 -1
  445. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  446. package/dist/elements/RelationshipTable/AddNewButton.js +1 -2
  447. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  448. package/dist/elements/RelationshipTable/index.css +1 -2
  449. package/dist/elements/RelationshipTable/index.js +2 -2
  450. package/dist/elements/RelationshipTable/index.js.map +1 -1
  451. package/dist/elements/RenderTitle/index.css +10 -0
  452. package/dist/elements/RenderTitle/index.d.ts +5 -0
  453. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  454. package/dist/elements/RenderTitle/index.js +52 -27
  455. package/dist/elements/RenderTitle/index.js.map +1 -1
  456. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  457. package/dist/elements/SchedulePublishButton/index.js +6 -1
  458. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  459. package/dist/elements/Search/SearchInput/index.js +1 -1
  460. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  461. package/dist/elements/SelectMany/index.js +1 -1
  462. package/dist/elements/SelectMany/index.js.map +1 -1
  463. package/dist/elements/SidebarRow/index.css +0 -2
  464. package/dist/elements/SortColumn/index.css +1 -1
  465. package/dist/elements/Spinner/index.css +16 -0
  466. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  467. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -2
  468. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  469. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  470. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +32 -13
  471. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  472. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  473. package/dist/elements/Table/OrderableRow.js +1 -1
  474. package/dist/elements/Table/OrderableRow.js.map +1 -1
  475. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  476. package/dist/elements/Table/RelationshipProvider/index.js +1 -0
  477. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  478. package/dist/elements/Table/index.css +44 -10
  479. package/dist/elements/Tabs/index.css +100 -0
  480. package/dist/elements/Tabs/index.d.ts +32 -0
  481. package/dist/elements/Tabs/index.d.ts.map +1 -0
  482. package/dist/elements/Tabs/index.js +62 -0
  483. package/dist/elements/Tabs/index.js.map +1 -0
  484. package/dist/elements/Thumbnail/index.css +41 -0
  485. package/dist/elements/Thumbnail/index.d.ts +3 -3
  486. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  487. package/dist/elements/Thumbnail/index.js +1 -1
  488. package/dist/elements/Thumbnail/index.js.map +1 -1
  489. package/dist/elements/TimezonePicker/index.css +58 -24
  490. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  491. package/dist/elements/TimezonePicker/index.js +31 -4
  492. package/dist/elements/TimezonePicker/index.js.map +1 -1
  493. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  494. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  495. package/dist/elements/Toasts/fieldErrors.js +25 -9
  496. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  497. package/dist/elements/Toasts/index.css +5 -0
  498. package/dist/elements/Tooltip/index.css +20 -4
  499. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  500. package/dist/elements/Tooltip/index.js +71 -3
  501. package/dist/elements/Tooltip/index.js.map +1 -1
  502. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  503. package/dist/elements/UnpublishButton/index.js +5 -13
  504. package/dist/elements/UnpublishButton/index.js.map +1 -1
  505. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  506. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  507. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  508. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  509. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  510. package/dist/elements/UnpublishMany/index.js +0 -38
  511. package/dist/elements/UnpublishMany/index.js.map +1 -1
  512. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +11 -0
  513. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -0
  514. package/dist/elements/Upload/UploadFromURLModal/index.js +88 -0
  515. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -0
  516. package/dist/elements/Upload/index.css +134 -45
  517. package/dist/elements/Upload/index.d.ts +3 -8
  518. package/dist/elements/Upload/index.d.ts.map +1 -1
  519. package/dist/elements/Upload/index.js +71 -92
  520. package/dist/elements/Upload/index.js.map +1 -1
  521. package/dist/elements/UserMenu/LanguageMenu/index.d.ts +6 -0
  522. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -0
  523. package/dist/elements/UserMenu/LanguageMenu/index.js +133 -0
  524. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -0
  525. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +15 -0
  526. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -0
  527. package/dist/elements/UserMenu/SettingsMenu/index.js +119 -0
  528. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -0
  529. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts +6 -0
  530. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -0
  531. package/dist/elements/UserMenu/SubMenuHeader/index.js +34 -0
  532. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -0
  533. package/dist/elements/UserMenu/ThemeMenu/index.d.ts +6 -0
  534. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -0
  535. package/dist/elements/UserMenu/ThemeMenu/index.js +145 -0
  536. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -0
  537. package/dist/elements/UserMenu/index.css +80 -0
  538. package/dist/elements/UserMenu/index.d.ts +11 -0
  539. package/dist/elements/UserMenu/index.d.ts.map +1 -0
  540. package/dist/elements/UserMenu/index.js +205 -0
  541. package/dist/elements/UserMenu/index.js.map +1 -0
  542. package/dist/elements/WhereBuilder/Condition/index.css +1 -1
  543. package/dist/elements/WhereBuilder/Condition/index.d.ts +1 -0
  544. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  545. package/dist/elements/WhereBuilder/Condition/index.js +20 -2
  546. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  547. package/dist/elements/WhereBuilder/index.d.ts +4 -3
  548. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  549. package/dist/elements/WhereBuilder/index.js +71 -62
  550. package/dist/elements/WhereBuilder/index.js.map +1 -1
  551. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  552. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  553. package/dist/elements/WhereBuilder/types.js.map +1 -1
  554. package/dist/exports/client/index.d.ts +22 -5
  555. package/dist/exports/client/index.d.ts.map +1 -1
  556. package/dist/exports/client/index.js +1 -2
  557. package/dist/exports/client/index.js.map +4 -4
  558. package/dist/exports/rsc/index.d.ts +3 -0
  559. package/dist/exports/rsc/index.d.ts.map +1 -1
  560. package/dist/exports/rsc/index.js +3 -0
  561. package/dist/exports/rsc/index.js.map +1 -1
  562. package/dist/exports/shared/index.js +2 -2
  563. package/dist/exports/shared/index.js.map +2 -2
  564. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +2 -50
  565. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.d.ts.map +1 -1
  566. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +27 -20
  567. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  568. package/dist/fields/Blocks/BlockSelector/index.css +15 -4
  569. package/dist/fields/Blocks/BlockSelector/index.js +1 -1
  570. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  571. package/dist/fields/Blocks/SectionTitle/index.d.ts.map +1 -1
  572. package/dist/fields/Blocks/SectionTitle/index.js +1 -0
  573. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  574. package/dist/fields/Blocks/index.d.ts.map +1 -1
  575. package/dist/fields/Blocks/index.js +6 -11
  576. package/dist/fields/Blocks/index.js.map +1 -1
  577. package/dist/fields/Checkbox/index.css +2 -2
  578. package/dist/fields/ConfirmPassword/index.d.ts +4 -0
  579. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  580. package/dist/fields/ConfirmPassword/index.js +37 -33
  581. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  582. package/dist/fields/Group/index.css +5 -11
  583. package/dist/fields/Join/index.js +1 -1
  584. package/dist/fields/Join/index.js.map +1 -1
  585. package/dist/fields/Number/Input.d.ts.map +1 -1
  586. package/dist/fields/Number/Input.js +62 -46
  587. package/dist/fields/Number/Input.js.map +1 -1
  588. package/dist/fields/Number/index.css +19 -0
  589. package/dist/fields/Number/types.d.ts +10 -0
  590. package/dist/fields/Number/types.d.ts.map +1 -1
  591. package/dist/fields/Number/types.js.map +1 -1
  592. package/dist/fields/Password/input.d.ts.map +1 -1
  593. package/dist/fields/Password/input.js +33 -29
  594. package/dist/fields/Password/input.js.map +1 -1
  595. package/dist/fields/Password/types.d.ts +4 -0
  596. package/dist/fields/Password/types.d.ts.map +1 -1
  597. package/dist/fields/Password/types.js.map +1 -1
  598. package/dist/fields/RadioGroup/index.css +6 -0
  599. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  600. package/dist/fields/Relationship/Input.js +4 -0
  601. package/dist/fields/Relationship/Input.js.map +1 -1
  602. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +4 -4
  603. package/dist/fields/Relationship/types.d.ts +4 -0
  604. package/dist/fields/Relationship/types.d.ts.map +1 -1
  605. package/dist/fields/Relationship/types.js.map +1 -1
  606. package/dist/fields/Row/index.d.ts +1 -1
  607. package/dist/fields/Select/Input.d.ts +4 -0
  608. package/dist/fields/Select/Input.d.ts.map +1 -1
  609. package/dist/fields/Select/Input.js +45 -40
  610. package/dist/fields/Select/Input.js.map +1 -1
  611. package/dist/fields/Tabs/Tab/index.d.ts +0 -1
  612. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  613. package/dist/fields/Tabs/Tab/index.js +12 -23
  614. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  615. package/dist/fields/Tabs/index.d.ts.map +1 -1
  616. package/dist/fields/Tabs/index.js +37 -37
  617. package/dist/fields/Tabs/index.js.map +1 -1
  618. package/dist/fields/Text/Input.d.ts.map +1 -1
  619. package/dist/fields/Text/Input.js +44 -37
  620. package/dist/fields/Text/Input.js.map +1 -1
  621. package/dist/fields/Text/types.d.ts +9 -0
  622. package/dist/fields/Text/types.d.ts.map +1 -1
  623. package/dist/fields/Text/types.js.map +1 -1
  624. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  625. package/dist/fields/Textarea/Input.js +27 -23
  626. package/dist/fields/Textarea/Input.js.map +1 -1
  627. package/dist/fields/Textarea/index.css +1 -1
  628. package/dist/fields/Textarea/types.d.ts +4 -0
  629. package/dist/fields/Textarea/types.d.ts.map +1 -1
  630. package/dist/fields/Textarea/types.js.map +1 -1
  631. package/dist/fields/Upload/HasMany/index.css +4 -0
  632. package/dist/fields/Upload/Input.d.ts.map +1 -1
  633. package/dist/fields/Upload/Input.js +12 -11
  634. package/dist/fields/Upload/Input.js.map +1 -1
  635. package/dist/fields/Upload/index.js +1 -1
  636. package/dist/fields/Upload/index.js.map +1 -1
  637. package/dist/forms/Form/types.d.ts +2 -2
  638. package/dist/forms/Form/types.d.ts.map +1 -1
  639. package/dist/forms/Form/types.js.map +1 -1
  640. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  641. package/dist/forms/RenderFields/RenderField.js +2 -1
  642. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  643. package/dist/forms/RenderFields/index.css +4 -4
  644. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +1 -0
  645. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  646. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +10 -2
  647. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  648. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts +2 -2
  649. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  650. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  651. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts +2 -2
  652. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  653. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  654. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts +2 -2
  655. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  656. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +1 -1
  657. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  658. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -1
  659. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  660. package/dist/forms/fieldSchemasToFormState/index.js +2 -0
  661. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  662. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -1
  663. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  664. package/dist/forms/fieldSchemasToFormState/iterateFields.js +2 -0
  665. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  666. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
  667. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  668. package/dist/forms/useField/index.js.map +1 -1
  669. package/dist/graphics/Icon/index.js +1 -1
  670. package/dist/graphics/Icon/index.js.map +1 -1
  671. package/dist/hooks/useElementHeightVariable.d.ts +15 -0
  672. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -0
  673. package/dist/hooks/useElementHeightVariable.js +53 -0
  674. package/dist/hooks/useElementHeightVariable.js.map +1 -0
  675. package/dist/icons/Check/index.css +1 -2
  676. package/dist/icons/Check/index.js +1 -1
  677. package/dist/icons/Check/index.js.map +1 -1
  678. package/dist/icons/Crop/index.css +5 -0
  679. package/dist/icons/Crop/index.d.ts +7 -0
  680. package/dist/icons/Crop/index.d.ts.map +1 -0
  681. package/dist/icons/Crop/index.js +24 -0
  682. package/dist/icons/Crop/index.js.map +1 -0
  683. package/dist/icons/Dots/index.css +4 -4
  684. package/dist/icons/Download/index.css +5 -0
  685. package/dist/icons/{ExternalLink → Download}/index.d.ts +1 -1
  686. package/dist/icons/Download/index.d.ts.map +1 -0
  687. package/dist/icons/Download/index.js +27 -0
  688. package/dist/icons/Download/index.js.map +1 -0
  689. package/dist/icons/Gear/index.d.ts.map +1 -1
  690. package/dist/icons/Gear/index.js +8 -1
  691. package/dist/icons/Gear/index.js.map +1 -1
  692. package/dist/icons/InteractionEnter/index.css +5 -0
  693. package/dist/icons/InteractionEnter/index.d.ts +11 -0
  694. package/dist/icons/InteractionEnter/index.d.ts.map +1 -0
  695. package/dist/icons/InteractionEnter/index.js +25 -0
  696. package/dist/icons/InteractionEnter/index.js.map +1 -0
  697. package/dist/icons/{Write → Key}/index.css +1 -1
  698. package/dist/icons/Key/index.d.ts +7 -0
  699. package/dist/icons/Key/index.d.ts.map +1 -0
  700. package/dist/icons/Key/index.js +24 -0
  701. package/dist/icons/Key/index.js.map +1 -0
  702. package/dist/icons/LogOut/index.js +2 -2
  703. package/dist/icons/LogOut/index.js.map +1 -1
  704. package/dist/icons/{ExternalLink → NewTab}/index.css +1 -1
  705. package/dist/icons/NewTab/index.d.ts +7 -0
  706. package/dist/icons/NewTab/index.d.ts.map +1 -0
  707. package/dist/icons/NewTab/index.js +25 -0
  708. package/dist/icons/NewTab/index.js.map +1 -0
  709. package/dist/icons/Replace/index.css +5 -0
  710. package/dist/icons/Replace/index.d.ts +6 -0
  711. package/dist/icons/Replace/index.d.ts.map +1 -0
  712. package/dist/icons/Replace/index.js +20 -0
  713. package/dist/icons/Replace/index.js.map +1 -0
  714. package/dist/icons/Reset/index.css +5 -0
  715. package/dist/icons/Reset/index.d.ts +7 -0
  716. package/dist/icons/Reset/index.d.ts.map +1 -0
  717. package/dist/icons/Reset/index.js +25 -0
  718. package/dist/icons/Reset/index.js.map +1 -0
  719. package/dist/icons/Schedule/index.d.ts.map +1 -1
  720. package/dist/icons/Schedule/index.js +38 -39
  721. package/dist/icons/Schedule/index.js.map +1 -1
  722. package/dist/icons/Swap/index.js +1 -1
  723. package/dist/icons/Swap/index.js.map +1 -1
  724. package/dist/icons/VariableColor/index.css +5 -0
  725. package/dist/icons/VariableColor/index.d.ts +7 -0
  726. package/dist/icons/VariableColor/index.d.ts.map +1 -0
  727. package/dist/icons/VariableColor/index.js +23 -0
  728. package/dist/icons/VariableColor/index.js.map +1 -0
  729. package/dist/icons/Warning/index.css +1 -7
  730. package/dist/icons/Warning/index.d.ts +1 -1
  731. package/dist/icons/Warning/index.d.ts.map +1 -1
  732. package/dist/icons/Warning/index.js +11 -16
  733. package/dist/icons/Warning/index.js.map +1 -1
  734. package/dist/icons/WarningTriangle/index.css +5 -0
  735. package/dist/icons/WarningTriangle/index.d.ts +6 -0
  736. package/dist/icons/WarningTriangle/index.d.ts.map +1 -0
  737. package/dist/icons/WarningTriangle/index.js +21 -0
  738. package/dist/icons/WarningTriangle/index.js.map +1 -0
  739. package/dist/icons/Write/index.d.ts +0 -1
  740. package/dist/icons/Write/index.d.ts.map +1 -1
  741. package/dist/icons/Write/index.js +1 -2
  742. package/dist/icons/Write/index.js.map +1 -1
  743. package/dist/providers/Auth/index.d.ts +2 -2
  744. package/dist/providers/Auth/index.d.ts.map +1 -1
  745. package/dist/providers/Auth/index.js.map +1 -1
  746. package/dist/providers/Config/index.js.map +1 -1
  747. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  748. package/dist/providers/DocumentInfo/index.js +4 -0
  749. package/dist/providers/DocumentInfo/index.js.map +1 -1
  750. package/dist/providers/DocumentInfo/types.d.ts +6 -2
  751. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  752. package/dist/providers/DocumentInfo/types.js.map +1 -1
  753. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  754. package/dist/providers/ListQuery/index.js +1 -8
  755. package/dist/providers/ListQuery/index.js.map +1 -1
  756. package/dist/providers/Root/index.d.ts +2 -2
  757. package/dist/providers/Root/index.d.ts.map +1 -1
  758. package/dist/providers/Root/index.js +27 -24
  759. package/dist/providers/Root/index.js.map +1 -1
  760. package/dist/providers/TableColumns/RenderDefaultCell/index.css +1 -0
  761. package/dist/providers/Theme/index.d.ts +17 -2
  762. package/dist/providers/Theme/index.d.ts.map +1 -1
  763. package/dist/providers/Theme/index.js +126 -75
  764. package/dist/providers/Theme/index.js.map +1 -1
  765. package/dist/providers/ToastContainer/index.css +208 -0
  766. package/dist/providers/ToastContainer/index.d.ts +1 -0
  767. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  768. package/dist/providers/ToastContainer/index.js +19 -6
  769. package/dist/providers/ToastContainer/index.js.map +1 -1
  770. package/dist/scss/app.scss +10 -4
  771. package/dist/styles.css +1369 -1
  772. package/dist/templates/Default/index.d.ts.map +1 -1
  773. package/dist/templates/Default/index.js +59 -3
  774. package/dist/templates/Default/index.js.map +1 -1
  775. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +1 -2
  776. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  777. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -2
  778. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  779. package/dist/utilities/buildFormState.d.ts.map +1 -1
  780. package/dist/utilities/buildFormState.js +1 -0
  781. package/dist/utilities/buildFormState.js.map +1 -1
  782. package/dist/utilities/copyDataFromLocale.js +1 -1
  783. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  784. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  785. package/dist/utilities/formatDocTitle/formatDateTitle.js +1 -1
  786. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  787. package/dist/utilities/formatRelativeDate.d.ts +15 -0
  788. package/dist/utilities/formatRelativeDate.d.ts.map +1 -0
  789. package/dist/utilities/formatRelativeDate.js +62 -0
  790. package/dist/utilities/formatRelativeDate.js.map +1 -0
  791. package/dist/utilities/getDocPreferences.d.ts +2 -2
  792. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  793. package/dist/utilities/getDocPreferences.js.map +1 -1
  794. package/dist/utilities/getDocumentData.d.ts +2 -2
  795. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  796. package/dist/utilities/getDocumentData.js.map +1 -1
  797. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  798. package/dist/utilities/getGlobalData.js.map +1 -1
  799. package/dist/utilities/getHasScheduledPublish.d.ts +12 -0
  800. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -0
  801. package/dist/utilities/getHasScheduledPublish.js +38 -0
  802. package/dist/utilities/getHasScheduledPublish.js.map +1 -0
  803. package/dist/utilities/getIsLocked.d.ts +2 -2
  804. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  805. package/dist/utilities/getIsLocked.js.map +1 -1
  806. package/dist/utilities/getVersions.d.ts +2 -2
  807. package/dist/utilities/getVersions.d.ts.map +1 -1
  808. package/dist/utilities/getVersions.js +3 -26
  809. package/dist/utilities/getVersions.js.map +1 -1
  810. package/dist/utilities/handleAuthRedirect.d.ts +2 -2
  811. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  812. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  813. package/dist/utilities/handleFormStateLocking.d.ts +2 -2
  814. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  815. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  816. package/dist/utilities/handleLivePreview.d.ts +1 -0
  817. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  818. package/dist/utilities/recentlyViewed.d.ts +16 -0
  819. package/dist/utilities/recentlyViewed.d.ts.map +1 -0
  820. package/dist/utilities/recentlyViewed.js +21 -0
  821. package/dist/utilities/recentlyViewed.js.map +1 -0
  822. package/dist/utilities/recentlyViewed.spec.js +92 -0
  823. package/dist/utilities/recentlyViewed.spec.js.map +1 -0
  824. package/dist/utilities/reduceFieldsToOptions.js +1 -1
  825. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  826. package/dist/utilities/renderTable.js +1 -1
  827. package/dist/utilities/renderTable.js.map +1 -1
  828. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  829. package/dist/utilities/traverseForLocalizedFields.js +3 -0
  830. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  831. package/dist/views/API/index.client.js +2 -2
  832. package/dist/views/API/index.client.js.map +1 -1
  833. package/dist/views/Account/ResetPreferences/index.d.ts +2 -2
  834. package/dist/views/Account/ResetPreferences/index.d.ts.map +1 -1
  835. package/dist/views/Account/ResetPreferences/index.js +1 -0
  836. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  837. package/dist/views/Account/Settings/index.css +30 -13
  838. package/dist/views/Account/Settings/index.d.ts +2 -2
  839. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  840. package/dist/views/Account/Settings/index.js.map +1 -1
  841. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  842. package/dist/views/Account/ToggleTheme/index.js +31 -47
  843. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  844. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -1
  845. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +27 -23
  846. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  847. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  848. package/dist/views/Dashboard/Default/ModularDashboard/index.css +2 -0
  849. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +2 -2
  850. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  851. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -2
  852. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  853. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts +2 -2
  854. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts.map +1 -1
  855. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -1
  856. package/dist/views/Document/index.d.ts.map +1 -1
  857. package/dist/views/Document/index.js +28 -2
  858. package/dist/views/Document/index.js.map +1 -1
  859. package/dist/views/Document/recordRecentlyViewed.d.ts +12 -0
  860. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -0
  861. package/dist/views/Document/recordRecentlyViewed.js +40 -0
  862. package/dist/views/Document/recordRecentlyViewed.js.map +1 -0
  863. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  864. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  865. package/dist/views/Document/renderDocumentSlots.js +47 -1
  866. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  867. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  868. package/dist/views/Edit/Auth/APIKey.js +10 -32
  869. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  870. package/dist/views/Edit/Auth/index.css +0 -67
  871. package/dist/views/Edit/index.css +143 -6
  872. package/dist/views/Edit/index.d.ts +1 -1
  873. package/dist/views/Edit/index.d.ts.map +1 -1
  874. package/dist/views/Edit/index.js +96 -79
  875. package/dist/views/Edit/index.js.map +1 -1
  876. package/dist/views/HierarchyList/DocumentListSelection/index.js +8 -8
  877. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  878. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +2 -2
  879. package/dist/views/List/ListHeader/index.css +28 -1
  880. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  881. package/dist/views/List/ListHeader/index.js +0 -1
  882. package/dist/views/List/ListHeader/index.js.map +1 -1
  883. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  884. package/dist/views/List/ListSelection/index.js +84 -33
  885. package/dist/views/List/ListSelection/index.js.map +1 -1
  886. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  887. package/dist/views/List/handleGroupBy.js +9 -0
  888. package/dist/views/List/handleGroupBy.js.map +1 -1
  889. package/dist/views/List/index.client.d.ts.map +1 -1
  890. package/dist/views/List/index.client.js +10 -9
  891. package/dist/views/List/index.client.js.map +1 -1
  892. package/dist/views/List/index.css +15 -0
  893. package/dist/views/List/index.d.ts.map +1 -1
  894. package/dist/views/List/index.js +4 -3
  895. package/dist/views/List/index.js.map +1 -1
  896. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  897. package/dist/views/List/renderListViewSlots.js +11 -0
  898. package/dist/views/List/renderListViewSlots.js.map +1 -1
  899. package/dist/views/Logout/LogoutClient.d.ts +14 -0
  900. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  901. package/dist/views/Logout/LogoutClient.js +7 -5
  902. package/dist/views/Logout/LogoutClient.js.map +1 -1
  903. package/dist/views/Logout/index.d.ts.map +1 -1
  904. package/dist/views/Logout/index.js +7 -2
  905. package/dist/views/Logout/index.js.map +1 -1
  906. package/dist/views/Verify/index.client.d.ts +4 -0
  907. package/dist/views/Verify/index.client.d.ts.map +1 -1
  908. package/dist/views/Verify/index.client.js +81 -0
  909. package/dist/views/Verify/index.client.js.map +1 -1
  910. package/dist/views/Verify/index.css +38 -0
  911. package/dist/views/Verify/index.d.ts +1 -1
  912. package/dist/views/Verify/index.d.ts.map +1 -1
  913. package/dist/views/Verify/index.js +13 -19
  914. package/dist/views/Verify/index.js.map +1 -1
  915. package/dist/views/Version/Default/index.css +3 -5
  916. package/dist/views/Version/Default/index.d.ts.map +1 -1
  917. package/dist/views/Version/Default/index.js +7 -28
  918. package/dist/views/Version/Default/index.js.map +1 -1
  919. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +2 -2
  920. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  921. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  922. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  923. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +3 -3
  924. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  925. package/dist/views/Version/Restore/index.css +2 -2
  926. package/dist/views/Version/SelectComparison/VersionDrawer/index.css +5 -0
  927. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +1 -1
  928. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  929. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +1 -2
  930. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  931. package/dist/views/Version/SelectComparison/index.css +5 -0
  932. package/dist/views/Version/SelectComparison/index.d.ts +1 -1
  933. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  934. package/dist/views/Version/SelectComparison/index.js +2 -1
  935. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  936. package/dist/views/Version/SelectLocales/index.d.ts +1 -2
  937. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  938. package/dist/views/Version/SelectLocales/index.js +83 -32
  939. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  940. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  941. package/dist/views/Versions/fetchVersions.d.ts +4 -4
  942. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  943. package/dist/views/Versions/fetchVersions.js.map +1 -1
  944. package/dist/views/Versions/index.css +19 -16
  945. package/dist/views/Versions/index.d.ts +1 -1
  946. package/dist/views/Versions/index.d.ts.map +1 -1
  947. package/dist/views/Versions/index.js +3 -26
  948. package/dist/views/Versions/index.js.map +1 -1
  949. package/dist/views/Versions/types.d.ts +2 -2
  950. package/dist/views/Versions/types.d.ts.map +1 -1
  951. package/dist/views/Versions/types.js.map +1 -1
  952. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  953. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -0
  954. package/dist/widgets/CollectionQuery/SortField/index.js +118 -0
  955. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -0
  956. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts +18 -0
  957. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts.map +1 -0
  958. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js +91 -0
  959. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js.map +1 -0
  960. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +100 -0
  961. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +1 -0
  962. package/dist/widgets/CollectionQuery/index.css +64 -0
  963. package/dist/widgets/CollectionQuery/index.d.ts +16 -0
  964. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -0
  965. package/dist/widgets/CollectionQuery/index.js +328 -0
  966. package/dist/widgets/CollectionQuery/index.js.map +1 -0
  967. package/dist/widgets/RecentlyViewed/CollectionsField/index.css +14 -0
  968. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts +10 -0
  969. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +1 -0
  970. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +76 -0
  971. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +1 -0
  972. package/dist/widgets/RecentlyViewed/index.d.ts +10 -0
  973. package/dist/widgets/RecentlyViewed/index.d.ts.map +1 -0
  974. package/dist/widgets/RecentlyViewed/index.js +148 -0
  975. package/dist/widgets/RecentlyViewed/index.js.map +1 -0
  976. package/dist/widgets/WidgetCard/index.css +155 -0
  977. package/dist/widgets/WidgetCard/index.d.ts +19 -0
  978. package/dist/widgets/WidgetCard/index.d.ts.map +1 -0
  979. package/dist/widgets/WidgetCard/index.js +49 -0
  980. package/dist/widgets/WidgetCard/index.js.map +1 -0
  981. package/package.json +4 -508
  982. package/dist/elements/BulkUpload/AddingFilesView/index.scss +0 -25
  983. package/dist/elements/BulkUpload/EditForm/index.scss +0 -11
  984. package/dist/elements/BulkUpload/EditMany/index.scss +0 -171
  985. package/dist/elements/BulkUpload/Header/index.d.ts +0 -9
  986. package/dist/elements/BulkUpload/Header/index.d.ts.map +0 -1
  987. package/dist/elements/BulkUpload/Header/index.js.map +0 -1
  988. package/dist/elements/ColumnSelector/index.d.ts +0 -9
  989. package/dist/elements/ColumnSelector/index.d.ts.map +0 -1
  990. package/dist/elements/ColumnSelector/index.js.map +0 -1
  991. package/dist/elements/ColumnsButton/index.d.ts +0 -7
  992. package/dist/elements/ColumnsButton/index.d.ts.map +0 -1
  993. package/dist/elements/ColumnsButton/index.js.map +0 -1
  994. package/dist/elements/EditMany/index.scss +0 -182
  995. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +0 -35
  996. package/dist/elements/FileDetails/FileMeta/index.scss +0 -31
  997. package/dist/elements/FileDetails/StaticFileDetails/index.scss +0 -134
  998. package/dist/elements/GroupByBuilder/index.d.ts +0 -12
  999. package/dist/elements/GroupByBuilder/index.d.ts.map +0 -1
  1000. package/dist/elements/GroupByBuilder/index.js +0 -164
  1001. package/dist/elements/GroupByBuilder/index.js.map +0 -1
  1002. package/dist/elements/GroupByBuilder/index.scss +0 -39
  1003. package/dist/elements/GroupByControl/index.d.ts +0 -9
  1004. package/dist/elements/GroupByControl/index.d.ts.map +0 -1
  1005. package/dist/elements/GroupByControl/index.js +0 -255
  1006. package/dist/elements/GroupByControl/index.js.map +0 -1
  1007. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +0 -1
  1008. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +0 -1
  1009. package/dist/elements/Hierarchy/Drawer/index.css +0 -108
  1010. package/dist/elements/Hierarchy/Drawer/index.d.ts +0 -20
  1011. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +0 -1
  1012. package/dist/elements/Hierarchy/Drawer/index.js.map +0 -1
  1013. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +0 -1
  1014. package/dist/elements/Hierarchy/Drawer/types.js.map +0 -1
  1015. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts +0 -30
  1016. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +0 -1
  1017. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +0 -1
  1018. package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +0 -78
  1019. package/dist/elements/Hierarchy/Field/index.scss +0 -41
  1020. package/dist/elements/Hierarchy/MoveMany/index.scss +0 -7
  1021. package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +0 -26
  1022. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +0 -7
  1023. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +0 -1
  1024. package/dist/elements/Hierarchy/Tree/TreeConnector.js +0 -23
  1025. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +0 -1
  1026. package/dist/elements/LoadMoreRow/index.scss +0 -45
  1027. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  1028. package/dist/elements/PreviewSizes/index.scss +0 -147
  1029. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -17
  1030. package/dist/elements/QueryPresets/fields/GroupByField/index.scss +0 -17
  1031. package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
  1032. package/dist/elements/Thumbnail/index.scss +0 -53
  1033. package/dist/fields/Tabs/Tab/index.css +0 -82
  1034. package/dist/icons/ExternalLink/index.d.ts.map +0 -1
  1035. package/dist/icons/ExternalLink/index.js +0 -26
  1036. package/dist/icons/ExternalLink/index.js.map +0 -1
  1037. package/dist/scss/toasts.scss +0 -146
  1038. package/dist/views/Unauthorized/index.scss +0 -14
  1039. package/dist/views/Verify/index.scss +0 -18
  1040. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  1041. package/dist/views/Version/SelectComparison/index.scss +0 -9
  1042. /package/dist/elements/{ColumnSelector/index.css → ColumnSelection/Popup.css} +0 -0
  1043. /package/dist/elements/{GroupByControl/index.css → GroupBy/Popup.css} +0 -0
  1044. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.d.ts +0 -0
  1045. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.js +0 -0
  1046. /package/dist/elements/Hierarchy/{Drawer → Modal}/types.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"getDocPreferences.js","names":["sanitizeID","getDocPreferences","id","collectionSlug","globalSlug","payload","user","preferencesKey","preferencesResult","find","collection","depth","limit","where","and","key","equals","docs","value","fields"],"sources":["../../src/utilities/getDocPreferences.ts"],"sourcesContent":["import type { DocumentPreferences, Payload, TypedUser } from 'payload'\n\nimport { sanitizeID } from '../utilities/sanitizeID.js'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n payload: Payload\n user: TypedUser\n}\n\nexport const getDocPreferences = async ({\n id,\n collectionSlug,\n globalSlug,\n payload,\n user,\n}: Args): Promise<DocumentPreferences> => {\n let preferencesKey\n\n if (collectionSlug && id) {\n preferencesKey = `collection-${collectionSlug}-${id}`\n }\n\n if (globalSlug) {\n preferencesKey = `global-${globalSlug}`\n }\n\n if (preferencesKey) {\n const preferencesResult = (await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: sanitizeID(user.id),\n },\n },\n ],\n },\n })) as unknown as { docs: { value: DocumentPreferences }[] }\n\n if (preferencesResult?.docs?.[0]?.value) {\n return preferencesResult.docs[0].value\n }\n }\n\n return { fields: {} }\n}\n"],"mappings":"AAEA,SAASA,UAAU,QAAQ;AAU3B,OAAO,MAAMC,iBAAA,GAAoB,MAAAA,CAAO;EACtCC,EAAE;EACFC,cAAc;EACdC,UAAU;EACVC,OAAO;EACPC;AAAI,CACC;EACL,IAAIC,cAAA;EAEJ,IAAIJ,cAAA,IAAkBD,EAAA,EAAI;IACxBK,cAAA,GAAiB,cAAcJ,cAAA,IAAkBD,EAAA,EAAI;EACvD;EAEA,IAAIE,UAAA,EAAY;IACdG,cAAA,GAAiB,UAAUH,UAAA,EAAY;EACzC;EAEA,IAAIG,cAAA,EAAgB;IAClB,MAAMC,iBAAA,GAAqB,MAAMH,OAAA,CAAQI,IAAI,CAAC;MAC5CC,UAAA,EAAY;MACZC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,KAAA,EAAO;QACLC,GAAA,EAAK,CACH;UACEC,GAAA,EAAK;YACHC,MAAA,EAAQT;UACV;QACF,GACA;UACE,mBAAmB;YACjBS,MAAA,EAAQV,IAAA,CAAKI;UACf;QACF,GACA;UACE,cAAc;YACZM,MAAA,EAAQhB,UAAA,CAAWM,IAAA,CAAKJ,EAAE;UAC5B;QACF;MAEJ;IACF;IAEA,IAAIM,iBAAA,EAAmBS,IAAA,GAAO,EAAE,EAAEC,KAAA,EAAO;MACvC,OAAOV,iBAAA,CAAkBS,IAAI,CAAC,EAAE,CAACC,KAAK;IACxC;EACF;EAEA,OAAO;IAAEC,MAAA,EAAQ,CAAC;EAAE;AACtB","ignoreList":[]}
1
+ {"version":3,"file":"getDocPreferences.js","names":["sanitizeID","getDocPreferences","id","collectionSlug","globalSlug","payload","user","preferencesKey","preferencesResult","find","collection","depth","limit","where","and","key","equals","docs","value","fields"],"sources":["../../src/utilities/getDocPreferences.ts"],"sourcesContent":["import type { DocumentPreferences, Payload, User } from 'payload'\n\nimport { sanitizeID } from '../utilities/sanitizeID.js'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n payload: Payload\n user: User\n}\n\nexport const getDocPreferences = async ({\n id,\n collectionSlug,\n globalSlug,\n payload,\n user,\n}: Args): Promise<DocumentPreferences> => {\n let preferencesKey\n\n if (collectionSlug && id) {\n preferencesKey = `collection-${collectionSlug}-${id}`\n }\n\n if (globalSlug) {\n preferencesKey = `global-${globalSlug}`\n }\n\n if (preferencesKey) {\n const preferencesResult = (await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: sanitizeID(user.id),\n },\n },\n ],\n },\n })) as unknown as { docs: { value: DocumentPreferences }[] }\n\n if (preferencesResult?.docs?.[0]?.value) {\n return preferencesResult.docs[0].value\n }\n }\n\n return { fields: {} }\n}\n"],"mappings":"AAEA,SAASA,UAAU,QAAQ;AAU3B,OAAO,MAAMC,iBAAA,GAAoB,MAAAA,CAAO;EACtCC,EAAE;EACFC,cAAc;EACdC,UAAU;EACVC,OAAO;EACPC;AAAI,CACC;EACL,IAAIC,cAAA;EAEJ,IAAIJ,cAAA,IAAkBD,EAAA,EAAI;IACxBK,cAAA,GAAiB,cAAcJ,cAAA,IAAkBD,EAAA,EAAI;EACvD;EAEA,IAAIE,UAAA,EAAY;IACdG,cAAA,GAAiB,UAAUH,UAAA,EAAY;EACzC;EAEA,IAAIG,cAAA,EAAgB;IAClB,MAAMC,iBAAA,GAAqB,MAAMH,OAAA,CAAQI,IAAI,CAAC;MAC5CC,UAAA,EAAY;MACZC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,KAAA,EAAO;QACLC,GAAA,EAAK,CACH;UACEC,GAAA,EAAK;YACHC,MAAA,EAAQT;UACV;QACF,GACA;UACE,mBAAmB;YACjBS,MAAA,EAAQV,IAAA,CAAKI;UACf;QACF,GACA;UACE,cAAc;YACZM,MAAA,EAAQhB,UAAA,CAAWM,IAAA,CAAKJ,EAAE;UAC5B;QACF;MAEJ;IACF;IAEA,IAAIM,iBAAA,EAAmBS,IAAA,GAAO,EAAE,EAAEC,KAAA,EAAO;MACvC,OAAOV,iBAAA,CAAkBS,IAAI,CAAC,EAAE,CAACC,KAAK;IACxC;EACF;EAEA,OAAO;IAAEC,MAAA,EAAQ,CAAC;EAAE;AACtB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { type Locale, type Payload, type PayloadRequest, type TypedUser, type TypeWithID } from 'payload';
1
+ import { type Locale, type Payload, type PayloadRequest, type TypeWithID, type User } from 'payload';
2
2
  type Args = {
3
3
  collectionSlug?: string;
4
4
  globalSlug?: string;
@@ -7,7 +7,7 @@ type Args = {
7
7
  payload: Payload;
8
8
  req?: PayloadRequest;
9
9
  segments?: string[];
10
- user?: TypedUser;
10
+ user?: User;
11
11
  };
12
12
  export declare const getDocumentData: ({ id: idArg, collectionSlug, globalSlug, locale, payload, req, segments, user, }: Args) => Promise<null | Record<string, unknown> | TypeWithID>;
13
13
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"getDocumentData.d.ts","sourceRoot":"","sources":["../../src/utilities/getDocumentData.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,UAAU,EAChB,MAAM,SAAS,CAAA;AAIhB,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,eAAe,GAAU,kFASnC,IAAI,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CA4C5D,CAAA"}
1
+ {"version":3,"file":"getDocumentData.d.ts","sourceRoot":"","sources":["../../src/utilities/getDocumentData.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,MAAM,EAEX,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,KAAK,IAAI,EACV,MAAM,SAAS,CAAA;AAIhB,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IACnB,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,eAAO,MAAM,eAAe,GAAU,kFASnC,IAAI,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CA4C5D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getDocumentData.js","names":["logError","sanitizeID","getDocumentData","id","idArg","collectionSlug","globalSlug","locale","payload","req","segments","user","resolvedData","transactionID","rest","isTrashedDoc","findByID","collection","depth","draft","fallbackLocale","code","overrideAccess","trash","findGlobal","slug","err"],"sources":["../../src/utilities/getDocumentData.ts"],"sourcesContent":["import {\n type Locale,\n logError,\n type Payload,\n type PayloadRequest,\n type TypedUser,\n type TypeWithID,\n} from 'payload'\n\nimport { sanitizeID } from '../utilities/sanitizeID.js'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n locale?: Locale\n payload: Payload\n req?: PayloadRequest\n segments?: string[]\n user?: TypedUser\n}\n\nexport const getDocumentData = async ({\n id: idArg,\n collectionSlug,\n globalSlug,\n locale,\n payload,\n req,\n segments,\n user,\n}: Args): Promise<null | Record<string, unknown> | TypeWithID> => {\n const id = sanitizeID(idArg)\n let resolvedData: Record<string, unknown> | TypeWithID = null\n const { transactionID, ...rest } = req\n\n const isTrashedDoc = segments?.[2] === 'trash' && typeof segments?.[3] === 'string' // id exists at segment 3\n\n try {\n if (collectionSlug && id) {\n resolvedData = await payload.findByID({\n id,\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n locale: locale?.code,\n overrideAccess: false,\n req: {\n ...rest,\n },\n trash: isTrashedDoc ? true : false,\n user,\n })\n }\n\n if (globalSlug) {\n resolvedData = await payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n locale: locale?.code,\n overrideAccess: false,\n req: {\n ...rest,\n },\n user,\n })\n }\n } catch (err) {\n logError({ err, payload })\n }\n\n return resolvedData\n}\n"],"mappings":"AAAA,SAEEA,QAAQ,QAKH;AAEP,SAASC,UAAU,QAAQ;AAa3B,OAAO,MAAMC,eAAA,GAAkB,MAAAA,CAAO;EACpCC,EAAA,EAAIC,KAAK;EACTC,cAAc;EACdC,UAAU;EACVC,MAAM;EACNC,OAAO;EACPC,GAAG;EACHC,QAAQ;EACRC;AAAI,CACC;EACL,MAAMR,EAAA,GAAKF,UAAA,CAAWG,KAAA;EACtB,IAAIQ,YAAA,GAAqD;EACzD,MAAM;IAAEC,aAAa;IAAE,GAAGC;EAAA,CAAM,GAAGL,GAAA;EAEnC,MAAMM,YAAA,GAAeL,QAAA,GAAW,EAAE,KAAK,WAAW,OAAOA,QAAA,GAAW,EAAE,KAAK,SAAS;AAAA;EAEpF,IAAI;IACF,IAAIL,cAAA,IAAkBF,EAAA,EAAI;MACxBS,YAAA,GAAe,MAAMJ,OAAA,CAAQQ,QAAQ,CAAC;QACpCb,EAAA;QACAc,UAAA,EAAYZ,cAAA;QACZa,KAAA,EAAO;QACPC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBb,MAAA,EAAQA,MAAA,EAAQc,IAAA;QAChBC,cAAA,EAAgB;QAChBb,GAAA,EAAK;UACH,GAAGK;QACL;QACAS,KAAA,EAAOR,YAAA,GAAe,OAAO;QAC7BJ;MACF;IACF;IAEA,IAAIL,UAAA,EAAY;MACdM,YAAA,GAAe,MAAMJ,OAAA,CAAQgB,UAAU,CAAC;QACtCC,IAAA,EAAMnB,UAAA;QACNY,KAAA,EAAO;QACPC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBb,MAAA,EAAQA,MAAA,EAAQc,IAAA;QAChBC,cAAA,EAAgB;QAChBb,GAAA,EAAK;UACH,GAAGK;QACL;QACAH;MACF;IACF;EACF,EAAE,OAAOe,GAAA,EAAK;IACZ1B,QAAA,CAAS;MAAE0B,GAAA;MAAKlB;IAAQ;EAC1B;EAEA,OAAOI,YAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"getDocumentData.js","names":["logError","sanitizeID","getDocumentData","id","idArg","collectionSlug","globalSlug","locale","payload","req","segments","user","resolvedData","transactionID","rest","isTrashedDoc","findByID","collection","depth","draft","fallbackLocale","code","overrideAccess","trash","findGlobal","slug","err"],"sources":["../../src/utilities/getDocumentData.ts"],"sourcesContent":["import {\n type Locale,\n logError,\n type Payload,\n type PayloadRequest,\n type TypeWithID,\n type User,\n} from 'payload'\n\nimport { sanitizeID } from '../utilities/sanitizeID.js'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n locale?: Locale\n payload: Payload\n req?: PayloadRequest\n segments?: string[]\n user?: User\n}\n\nexport const getDocumentData = async ({\n id: idArg,\n collectionSlug,\n globalSlug,\n locale,\n payload,\n req,\n segments,\n user,\n}: Args): Promise<null | Record<string, unknown> | TypeWithID> => {\n const id = sanitizeID(idArg)\n let resolvedData: Record<string, unknown> | TypeWithID = null\n const { transactionID, ...rest } = req\n\n const isTrashedDoc = segments?.[2] === 'trash' && typeof segments?.[3] === 'string' // id exists at segment 3\n\n try {\n if (collectionSlug && id) {\n resolvedData = await payload.findByID({\n id,\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n locale: locale?.code,\n overrideAccess: false,\n req: {\n ...rest,\n },\n trash: isTrashedDoc ? true : false,\n user,\n })\n }\n\n if (globalSlug) {\n resolvedData = await payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n locale: locale?.code,\n overrideAccess: false,\n req: {\n ...rest,\n },\n user,\n })\n }\n } catch (err) {\n logError({ err, payload })\n }\n\n return resolvedData\n}\n"],"mappings":"AAAA,SAEEA,QAAQ,QAKH;AAEP,SAASC,UAAU,QAAQ;AAa3B,OAAO,MAAMC,eAAA,GAAkB,MAAAA,CAAO;EACpCC,EAAA,EAAIC,KAAK;EACTC,cAAc;EACdC,UAAU;EACVC,MAAM;EACNC,OAAO;EACPC,GAAG;EACHC,QAAQ;EACRC;AAAI,CACC;EACL,MAAMR,EAAA,GAAKF,UAAA,CAAWG,KAAA;EACtB,IAAIQ,YAAA,GAAqD;EACzD,MAAM;IAAEC,aAAa;IAAE,GAAGC;EAAA,CAAM,GAAGL,GAAA;EAEnC,MAAMM,YAAA,GAAeL,QAAA,GAAW,EAAE,KAAK,WAAW,OAAOA,QAAA,GAAW,EAAE,KAAK,SAAS;AAAA;EAEpF,IAAI;IACF,IAAIL,cAAA,IAAkBF,EAAA,EAAI;MACxBS,YAAA,GAAe,MAAMJ,OAAA,CAAQQ,QAAQ,CAAC;QACpCb,EAAA;QACAc,UAAA,EAAYZ,cAAA;QACZa,KAAA,EAAO;QACPC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBb,MAAA,EAAQA,MAAA,EAAQc,IAAA;QAChBC,cAAA,EAAgB;QAChBb,GAAA,EAAK;UACH,GAAGK;QACL;QACAS,KAAA,EAAOR,YAAA,GAAe,OAAO;QAC7BJ;MACF;IACF;IAEA,IAAIL,UAAA,EAAY;MACdM,YAAA,GAAe,MAAMJ,OAAA,CAAQgB,UAAU,CAAC;QACtCC,IAAA,EAAMnB,UAAA;QACNY,KAAA,EAAO;QACPC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBb,MAAA,EAAQA,MAAA,EAAQc,IAAA;QAChBC,cAAA,EAAgB;QAChBb,GAAA,EAAK;UACH,GAAGK;QACL;QACAH;MACF;IACF;EACF,EAAE,OAAOe,GAAA,EAAK;IACZ1B,QAAA,CAAS;MAAE0B,GAAA;MAAKlB;IAAQ;EAC1B;EAEA,OAAOI,YAAA;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"getGlobalData.d.ts","sourceRoot":"","sources":["../../src/utilities/getGlobalData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAa,MAAM,SAAS,CAAA;AAIpE,wBAAsB,aAAa,CAAC,GAAG,EAAE,cAAc;UAU7C;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE;mBAChF,MAAM;UACf,MAAM;KAgEf"}
1
+ {"version":3,"file":"getGlobalData.d.ts","sourceRoot":"","sources":["../../src/utilities/getGlobalData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAQ,MAAM,SAAS,CAAA;AAI/D,wBAAsB,aAAa,CAAC,GAAG,EAAE,cAAc;UAU7C;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE;mBAChF,MAAM;UACf,MAAM;KAgEf"}
@@ -1 +1 @@
1
- {"version":3,"file":"getGlobalData.js","names":["globalLockDurationDefault","getGlobalData","req","payload","config","globalData","globals","length","collections","lockedDocuments","find","collection","depth","overrideAccess","pagination","select","globalSlug","updatedAt","user","where","exists","map","global","lockDuration","lockDocuments","duration","lockedDoc","docs","doc","slug","data","_isLocked","_lastEditedAt","_userEditing","value"],"sources":["../../src/utilities/getGlobalData.ts"],"sourcesContent":["import type { ClientUser, PayloadRequest, TypedUser } from 'payload'\n\nconst globalLockDurationDefault = 300\n\nexport async function getGlobalData(req: PayloadRequest) {\n const {\n payload: { config },\n payload,\n } = req\n // Query locked global documents only if there are globals in the config\n // This type is repeated from DashboardViewServerPropsOnly['globalData'].\n // I thought about moving it to a payload to share it, but we're already\n // exporting all the views props from the next package.\n let globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }> = []\n\n if (config.globals.length > 0) {\n if (payload.collections?.['payload-locked-documents']) {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n pagination: false,\n req,\n select: {\n globalSlug: true,\n updatedAt: true,\n user: true,\n },\n where: {\n globalSlug: {\n exists: true,\n },\n },\n })\n\n // Map over globals to include `lockDuration` and lock data for each global slug\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n const lockedDoc = lockedDocuments.docs.find((doc) => doc.globalSlug === global.slug)\n\n return {\n slug: global.slug,\n data: {\n _isLocked: !!lockedDoc,\n _lastEditedAt: (lockedDoc?.updatedAt as string) ?? null,\n _userEditing: (lockedDoc?.user as { value?: TypedUser })?.value ?? null,\n },\n lockDuration,\n }\n })\n } else {\n // If locked-documents collection doesn't exist, return globals without lock data\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n return {\n slug: global.slug,\n data: {\n _isLocked: false,\n _lastEditedAt: null,\n _userEditing: null,\n },\n lockDuration,\n }\n })\n }\n }\n\n return globalData\n}\n"],"mappings":"AAEA,MAAMA,yBAAA,GAA4B;AAElC,OAAO,eAAeC,cAAcC,GAAmB;EACrD,MAAM;IACJC,OAAA,EAAS;MAAEC;IAAM,CAAE;IACnBD;EAAO,CACR,GAAGD,GAAA;EACJ;EACA;EACA;EACA;EACA,IAAIG,UAAA,GAIC,EAAE;EAEP,IAAID,MAAA,CAAOE,OAAO,CAACC,MAAM,GAAG,GAAG;IAC7B,IAAIJ,OAAA,CAAQK,WAAW,GAAG,2BAA2B,EAAE;MACrD,MAAMC,eAAA,GAAkB,MAAMN,OAAA,CAAQO,IAAI,CAAC;QACzCC,UAAA,EAAY;QACZC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBC,UAAA,EAAY;QACZZ,GAAA;QACAa,MAAA,EAAQ;UACNC,UAAA,EAAY;UACZC,SAAA,EAAW;UACXC,IAAA,EAAM;QACR;QACAC,KAAA,EAAO;UACLH,UAAA,EAAY;YACVI,MAAA,EAAQ;UACV;QACF;MACF;MAEA;MACAf,UAAA,GAAaD,MAAA,CAAOE,OAAO,CAACe,GAAG,CAAEC,MAAA;QAC/B,MAAMC,YAAA,GACJ,OAAOD,MAAA,CAAOE,aAAa,KAAK,WAC5BF,MAAA,CAAOE,aAAa,CAACC,QAAQ,GAC7BzB,yBAAA;QAEN,MAAM0B,SAAA,GAAYjB,eAAA,CAAgBkB,IAAI,CAACjB,IAAI,CAAEkB,GAAA,IAAQA,GAAA,CAAIZ,UAAU,KAAKM,MAAA,CAAOO,IAAI;QAEnF,OAAO;UACLA,IAAA,EAAMP,MAAA,CAAOO,IAAI;UACjBC,IAAA,EAAM;YACJC,SAAA,EAAW,CAAC,CAACL,SAAA;YACbM,aAAA,EAAeN,SAAC,EAAWT,SAAA,IAAwB;YACnDgB,YAAA,EAAcP,SAAC,EAAWR,IAAA,EAAgCgB,KAAA,IAAS;UACrE;UACAX;QACF;MACF;IACF,OAAO;MACL;MACAlB,UAAA,GAAaD,MAAA,CAAOE,OAAO,CAACe,GAAG,CAAEC,MAAA;QAC/B,MAAMC,YAAA,GACJ,OAAOD,MAAA,CAAOE,aAAa,KAAK,WAC5BF,MAAA,CAAOE,aAAa,CAACC,QAAQ,GAC7BzB,yBAAA;QAEN,OAAO;UACL6B,IAAA,EAAMP,MAAA,CAAOO,IAAI;UACjBC,IAAA,EAAM;YACJC,SAAA,EAAW;YACXC,aAAA,EAAe;YACfC,YAAA,EAAc;UAChB;UACAV;QACF;MACF;IACF;EACF;EAEA,OAAOlB,UAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"getGlobalData.js","names":["globalLockDurationDefault","getGlobalData","req","payload","config","globalData","globals","length","collections","lockedDocuments","find","collection","depth","overrideAccess","pagination","select","globalSlug","updatedAt","user","where","exists","map","global","lockDuration","lockDocuments","duration","lockedDoc","docs","doc","slug","data","_isLocked","_lastEditedAt","_userEditing","value"],"sources":["../../src/utilities/getGlobalData.ts"],"sourcesContent":["import type { ClientUser, PayloadRequest, User } from 'payload'\n\nconst globalLockDurationDefault = 300\n\nexport async function getGlobalData(req: PayloadRequest) {\n const {\n payload: { config },\n payload,\n } = req\n // Query locked global documents only if there are globals in the config\n // This type is repeated from DashboardViewServerPropsOnly['globalData'].\n // I thought about moving it to a payload to share it, but we're already\n // exporting all the views props from the next package.\n let globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }> = []\n\n if (config.globals.length > 0) {\n if (payload.collections?.['payload-locked-documents']) {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n pagination: false,\n req,\n select: {\n globalSlug: true,\n updatedAt: true,\n user: true,\n },\n where: {\n globalSlug: {\n exists: true,\n },\n },\n })\n\n // Map over globals to include `lockDuration` and lock data for each global slug\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n const lockedDoc = lockedDocuments.docs.find((doc) => doc.globalSlug === global.slug)\n\n return {\n slug: global.slug,\n data: {\n _isLocked: !!lockedDoc,\n _lastEditedAt: (lockedDoc?.updatedAt as string) ?? null,\n _userEditing: (lockedDoc?.user as { value?: User })?.value ?? null,\n },\n lockDuration,\n }\n })\n } else {\n // If locked-documents collection doesn't exist, return globals without lock data\n globalData = config.globals.map((global) => {\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : globalLockDurationDefault\n\n return {\n slug: global.slug,\n data: {\n _isLocked: false,\n _lastEditedAt: null,\n _userEditing: null,\n },\n lockDuration,\n }\n })\n }\n }\n\n return globalData\n}\n"],"mappings":"AAEA,MAAMA,yBAAA,GAA4B;AAElC,OAAO,eAAeC,cAAcC,GAAmB;EACrD,MAAM;IACJC,OAAA,EAAS;MAAEC;IAAM,CAAE;IACnBD;EAAO,CACR,GAAGD,GAAA;EACJ;EACA;EACA;EACA;EACA,IAAIG,UAAA,GAIC,EAAE;EAEP,IAAID,MAAA,CAAOE,OAAO,CAACC,MAAM,GAAG,GAAG;IAC7B,IAAIJ,OAAA,CAAQK,WAAW,GAAG,2BAA2B,EAAE;MACrD,MAAMC,eAAA,GAAkB,MAAMN,OAAA,CAAQO,IAAI,CAAC;QACzCC,UAAA,EAAY;QACZC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBC,UAAA,EAAY;QACZZ,GAAA;QACAa,MAAA,EAAQ;UACNC,UAAA,EAAY;UACZC,SAAA,EAAW;UACXC,IAAA,EAAM;QACR;QACAC,KAAA,EAAO;UACLH,UAAA,EAAY;YACVI,MAAA,EAAQ;UACV;QACF;MACF;MAEA;MACAf,UAAA,GAAaD,MAAA,CAAOE,OAAO,CAACe,GAAG,CAAEC,MAAA;QAC/B,MAAMC,YAAA,GACJ,OAAOD,MAAA,CAAOE,aAAa,KAAK,WAC5BF,MAAA,CAAOE,aAAa,CAACC,QAAQ,GAC7BzB,yBAAA;QAEN,MAAM0B,SAAA,GAAYjB,eAAA,CAAgBkB,IAAI,CAACjB,IAAI,CAAEkB,GAAA,IAAQA,GAAA,CAAIZ,UAAU,KAAKM,MAAA,CAAOO,IAAI;QAEnF,OAAO;UACLA,IAAA,EAAMP,MAAA,CAAOO,IAAI;UACjBC,IAAA,EAAM;YACJC,SAAA,EAAW,CAAC,CAACL,SAAA;YACbM,aAAA,EAAeN,SAAC,EAAWT,SAAA,IAAwB;YACnDgB,YAAA,EAAcP,SAAC,EAAWR,IAAA,EAA2BgB,KAAA,IAAS;UAChE;UACAX;QACF;MACF;IACF,OAAO;MACL;MACAlB,UAAA,GAAaD,MAAA,CAAOE,OAAO,CAACe,GAAG,CAAEC,MAAA;QAC/B,MAAMC,YAAA,GACJ,OAAOD,MAAA,CAAOE,aAAa,KAAK,WAC5BF,MAAA,CAAOE,aAAa,CAACC,QAAQ,GAC7BzB,yBAAA;QAEN,OAAO;UACL6B,IAAA,EAAMP,MAAA,CAAOO,IAAI;UACjBC,IAAA,EAAM;YACJC,SAAA,EAAW;YACXC,aAAA,EAAe;YACfC,YAAA,EAAc;UAChB;UACAV;QACF;MACF;IACF;EACF;EAEA,OAAOlB,UAAA;AACT","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import type { Payload, SanitizedCollectionConfig, SanitizedGlobalConfig, User } from 'payload';
2
+ type Args = {
3
+ collectionConfig?: SanitizedCollectionConfig;
4
+ globalConfig?: SanitizedGlobalConfig;
5
+ hasPublishPermission?: boolean;
6
+ id?: number | string;
7
+ payload: Payload;
8
+ user: User;
9
+ };
10
+ export declare const getHasScheduledPublish: ({ id: idArg, collectionConfig, globalConfig, hasPublishPermission, payload, user, }: Args) => Promise<boolean>;
11
+ export {};
12
+ //# sourceMappingURL=getHasScheduledPublish.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getHasScheduledPublish.d.ts","sourceRoot":"","sources":["../../src/utilities/getHasScheduledPublish.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAO9F,KAAK,IAAI,GAAG;IACV,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAU,qFAO1C,IAAI,KAAG,OAAO,CAAC,OAAO,CA4BxB,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { hasScheduledPublishEnabled } from 'payload/shared';
2
+ import { buildUpcomingScheduleWhere } from '../elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js';
3
+ import { sanitizeID } from './sanitizeID.js';
4
+ export const getHasScheduledPublish = async ({
5
+ id: idArg,
6
+ collectionConfig,
7
+ globalConfig,
8
+ hasPublishPermission,
9
+ payload,
10
+ user
11
+ }) => {
12
+ const entityConfig = collectionConfig || globalConfig;
13
+ const id = sanitizeID(idArg);
14
+ const collectionSlug = collectionConfig?.slug;
15
+ const globalSlug = globalConfig?.slug;
16
+ const canSchedulePublish = Boolean(hasScheduledPublishEnabled(entityConfig) && hasPublishPermission && (globalSlug || collectionSlug && id));
17
+ if (!canSchedulePublish) {
18
+ return false;
19
+ }
20
+ try {
21
+ const {
22
+ totalDocs
23
+ } = await payload.count({
24
+ collection: 'payload-jobs',
25
+ overrideAccess: false,
26
+ user,
27
+ where: buildUpcomingScheduleWhere({
28
+ id,
29
+ collectionSlug,
30
+ globalSlug
31
+ })
32
+ });
33
+ return totalDocs > 0;
34
+ } catch {
35
+ return false;
36
+ }
37
+ };
38
+ //# sourceMappingURL=getHasScheduledPublish.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getHasScheduledPublish.js","names":["hasScheduledPublishEnabled","buildUpcomingScheduleWhere","sanitizeID","getHasScheduledPublish","id","idArg","collectionConfig","globalConfig","hasPublishPermission","payload","user","entityConfig","collectionSlug","slug","globalSlug","canSchedulePublish","Boolean","totalDocs","count","collection","overrideAccess","where"],"sources":["../../src/utilities/getHasScheduledPublish.ts"],"sourcesContent":["import type { Payload, SanitizedCollectionConfig, SanitizedGlobalConfig, User } from 'payload'\n\nimport { hasScheduledPublishEnabled } from 'payload/shared'\n\nimport { buildUpcomingScheduleWhere } from '../elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js'\nimport { sanitizeID } from './sanitizeID.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n hasPublishPermission?: boolean\n id?: number | string\n payload: Payload\n user: User\n}\n\nexport const getHasScheduledPublish = async ({\n id: idArg,\n collectionConfig,\n globalConfig,\n hasPublishPermission,\n payload,\n user,\n}: Args): Promise<boolean> => {\n const entityConfig = collectionConfig || globalConfig\n const id = sanitizeID(idArg)\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const canSchedulePublish = Boolean(\n hasScheduledPublishEnabled(entityConfig) &&\n hasPublishPermission &&\n (globalSlug || (collectionSlug && id)),\n )\n\n if (!canSchedulePublish) {\n return false\n }\n\n try {\n const { totalDocs } = await payload.count({\n collection: 'payload-jobs',\n overrideAccess: false,\n user,\n where: buildUpcomingScheduleWhere({ id, collectionSlug, globalSlug }),\n })\n\n return totalDocs > 0\n } catch {\n return false\n }\n}\n"],"mappings":"AAEA,SAASA,0BAA0B,QAAQ;AAE3C,SAASC,0BAA0B,QAAQ;AAC3C,SAASC,UAAU,QAAQ;AAW3B,OAAO,MAAMC,sBAAA,GAAyB,MAAAA,CAAO;EAC3CC,EAAA,EAAIC,KAAK;EACTC,gBAAgB;EAChBC,YAAY;EACZC,oBAAoB;EACpBC,OAAO;EACPC;AAAI,CACC;EACL,MAAMC,YAAA,GAAeL,gBAAA,IAAoBC,YAAA;EACzC,MAAMH,EAAA,GAAKF,UAAA,CAAWG,KAAA;EACtB,MAAMO,cAAA,GAAiBN,gBAAA,EAAkBO,IAAA;EACzC,MAAMC,UAAA,GAAaP,YAAA,EAAcM,IAAA;EAEjC,MAAME,kBAAA,GAAqBC,OAAA,CACzBhB,0BAAA,CAA2BW,YAAA,KACzBH,oBAAA,KACCM,UAAA,IAAeF,cAAA,IAAkBR,EAAE;EAGxC,IAAI,CAACW,kBAAA,EAAoB;IACvB,OAAO;EACT;EAEA,IAAI;IACF,MAAM;MAAEE;IAAS,CAAE,GAAG,MAAMR,OAAA,CAAQS,KAAK,CAAC;MACxCC,UAAA,EAAY;MACZC,cAAA,EAAgB;MAChBV,IAAA;MACAW,KAAA,EAAOpB,0BAAA,CAA2B;QAAEG,EAAA;QAAIQ,cAAA;QAAgBE;MAAW;IACrE;IAEA,OAAOG,SAAA,GAAY;EACrB,EAAE,MAAM;IACN,OAAO;EACT;AACF","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { PayloadRequest, SanitizedCollectionConfig, SanitizedGlobalConfig, TypedUser } from 'payload';
1
+ import type { PayloadRequest, SanitizedCollectionConfig, SanitizedGlobalConfig, User } from 'payload';
2
2
  type Args = {
3
3
  collectionConfig?: SanitizedCollectionConfig;
4
4
  globalConfig?: SanitizedGlobalConfig;
@@ -7,7 +7,7 @@ type Args = {
7
7
  req: PayloadRequest;
8
8
  };
9
9
  type Result = Promise<{
10
- currentEditor?: TypedUser;
10
+ currentEditor?: User;
11
11
  isLocked: boolean;
12
12
  lastUpdateTime?: number;
13
13
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"getIsLocked.d.ts","sourceRoot":"","sources":["../../src/utilities/getIsLocked.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,SAAS,EAEV,MAAM,SAAS,CAAA;AAMhB,KAAK,IAAI,GAAG;IACV,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,KAAK,MAAM,GAAG,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAC,CAAA;AAEF,eAAO,MAAM,WAAW,GAAU,yDAM/B,IAAI,KAAG,MAwFT,CAAA"}
1
+ {"version":3,"file":"getIsLocked.d.ts","sourceRoot":"","sources":["../../src/utilities/getIsLocked.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,IAAI,EAEL,MAAM,SAAS,CAAA;AAMhB,KAAK,IAAI,GAAG;IACV,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,EAAE,OAAO,CAAA;IAClB,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AAED,KAAK,MAAM,GAAG,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,IAAI,CAAA;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAC,CAAA;AAEF,eAAO,MAAM,WAAW,GAAU,yDAM/B,IAAI,KAAG,MAwFT,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getIsLocked.js","names":["extractID","sanitizeID","getIsLocked","id","collectionConfig","globalConfig","isEditing","req","entityConfig","entityHasLockingEnabled","lockDocuments","undefined","payload","collections","isLocked","where","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","now","Date","getTime","and","globalSlug","equals","slug","updatedAt","greater_than","docs","find","collection","depth","overrideAccess","length","currentEditor","user","value","lastUpdateTime"],"sources":["../../src/utilities/getIsLocked.ts"],"sourcesContent":["import type {\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypedUser,\n Where,\n} from 'payload'\n\nimport { extractID } from 'payload/shared'\n\nimport { sanitizeID } from './sanitizeID.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n id?: number | string\n isEditing: boolean\n req: PayloadRequest\n}\n\ntype Result = Promise<{\n currentEditor?: TypedUser\n isLocked: boolean\n lastUpdateTime?: number\n}>\n\nexport const getIsLocked = async ({\n id,\n collectionConfig,\n globalConfig,\n isEditing,\n req,\n}: Args): Result => {\n const entityConfig = collectionConfig || globalConfig\n\n const entityHasLockingEnabled =\n entityConfig?.lockDocuments !== undefined ? entityConfig?.lockDocuments : true\n\n // Check if the locked-documents collection exists\n if (!req.payload.collections?.['payload-locked-documents']) {\n // If the collection doesn't exist, locking is not available\n return {\n isLocked: false,\n }\n }\n\n if (!entityHasLockingEnabled || !isEditing) {\n return {\n isLocked: false,\n }\n }\n\n const where: Where = {}\n\n const lockDurationDefault = 300 // Default 5 minutes in seconds\n const lockDuration =\n typeof entityConfig.lockDocuments === 'object'\n ? entityConfig.lockDocuments.duration\n : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n\n const now = new Date().getTime()\n\n if (globalConfig) {\n where.and = [\n {\n globalSlug: {\n equals: globalConfig.slug,\n },\n },\n {\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds),\n },\n },\n ]\n } else {\n where.and = [\n {\n 'document.value': {\n equals: sanitizeID(id),\n },\n },\n {\n 'document.relationTo': {\n equals: collectionConfig.slug,\n },\n },\n {\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds),\n },\n },\n ]\n }\n\n const { docs } = await req.payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n req,\n where,\n })\n\n if (docs.length > 0) {\n const currentEditor = docs[0].user?.value\n const lastUpdateTime = new Date(docs[0].updatedAt).getTime()\n\n if (extractID(currentEditor) !== req.user.id) {\n return {\n currentEditor,\n isLocked: true,\n lastUpdateTime,\n }\n }\n }\n\n return {\n isLocked: false,\n }\n}\n"],"mappings":"AAQA,SAASA,SAAS,QAAQ;AAE1B,SAASC,UAAU,QAAQ;AAgB3B,OAAO,MAAMC,WAAA,GAAc,MAAAA,CAAO;EAChCC,EAAE;EACFC,gBAAgB;EAChBC,YAAY;EACZC,SAAS;EACTC;AAAG,CACE;EACL,MAAMC,YAAA,GAAeJ,gBAAA,IAAoBC,YAAA;EAEzC,MAAMI,uBAAA,GACJD,YAAA,EAAcE,aAAA,KAAkBC,SAAA,GAAYH,YAAA,EAAcE,aAAA,GAAgB;EAE5E;EACA,IAAI,CAACH,GAAA,CAAIK,OAAO,CAACC,WAAW,GAAG,2BAA2B,EAAE;IAC1D;IACA,OAAO;MACLC,QAAA,EAAU;IACZ;EACF;EAEA,IAAI,CAACL,uBAAA,IAA2B,CAACH,SAAA,EAAW;IAC1C,OAAO;MACLQ,QAAA,EAAU;IACZ;EACF;EAEA,MAAMC,KAAA,GAAe,CAAC;EAEtB,MAAMC,mBAAA,GAAsB,IAAI;AAAA;EAChC,MAAMC,YAAA,GACJ,OAAOT,YAAA,CAAaE,aAAa,KAAK,WAClCF,YAAA,CAAaE,aAAa,CAACQ,QAAQ,GACnCF,mBAAA;EACN,MAAMG,0BAAA,GAA6BF,YAAA,GAAe;EAElD,MAAMG,GAAA,GAAM,IAAIC,IAAA,GAAOC,OAAO;EAE9B,IAAIjB,YAAA,EAAc;IAChBU,KAAA,CAAMQ,GAAG,GAAG,CACV;MACEC,UAAA,EAAY;QACVC,MAAA,EAAQpB,YAAA,CAAaqB;MACvB;IACF,GACA;MACEC,SAAA,EAAW;QACTC,YAAA,EAAc,IAAIP,IAAA,CAAKD,GAAA,GAAMD,0BAAA;MAC/B;IACF,EACD;EACH,OAAO;IACLJ,KAAA,CAAMQ,GAAG,GAAG,CACV;MACE,kBAAkB;QAChBE,MAAA,EAAQxB,UAAA,CAAWE,EAAA;MACrB;IACF,GACA;MACE,uBAAuB;QACrBsB,MAAA,EAAQrB,gBAAA,CAAiBsB;MAC3B;IACF,GACA;MACEC,SAAA,EAAW;QACTC,YAAA,EAAc,IAAIP,IAAA,CAAKD,GAAA,GAAMD,0BAAA;MAC/B;IACF,EACD;EACH;EAEA,MAAM;IAAEU;EAAI,CAAE,GAAG,MAAMtB,GAAA,CAAIK,OAAO,CAACkB,IAAI,CAAC;IACtCC,UAAA,EAAY;IACZC,KAAA,EAAO;IACPC,cAAA,EAAgB;IAChB1B,GAAA;IACAQ;EACF;EAEA,IAAIc,IAAA,CAAKK,MAAM,GAAG,GAAG;IACnB,MAAMC,aAAA,GAAgBN,IAAI,CAAC,EAAE,CAACO,IAAI,EAAEC,KAAA;IACpC,MAAMC,cAAA,GAAiB,IAAIjB,IAAA,CAAKQ,IAAI,CAAC,EAAE,CAACF,SAAS,EAAEL,OAAO;IAE1D,IAAItB,SAAA,CAAUmC,aAAA,MAAmB5B,GAAA,CAAI6B,IAAI,CAACjC,EAAE,EAAE;MAC5C,OAAO;QACLgC,aAAA;QACArB,QAAA,EAAU;QACVwB;MACF;IACF;EACF;EAEA,OAAO;IACLxB,QAAA,EAAU;EACZ;AACF","ignoreList":[]}
1
+ {"version":3,"file":"getIsLocked.js","names":["extractID","sanitizeID","getIsLocked","id","collectionConfig","globalConfig","isEditing","req","entityConfig","entityHasLockingEnabled","lockDocuments","undefined","payload","collections","isLocked","where","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","now","Date","getTime","and","globalSlug","equals","slug","updatedAt","greater_than","docs","find","collection","depth","overrideAccess","length","currentEditor","user","value","lastUpdateTime"],"sources":["../../src/utilities/getIsLocked.ts"],"sourcesContent":["import type {\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n User,\n Where,\n} from 'payload'\n\nimport { extractID } from 'payload/shared'\n\nimport { sanitizeID } from './sanitizeID.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n id?: number | string\n isEditing: boolean\n req: PayloadRequest\n}\n\ntype Result = Promise<{\n currentEditor?: User\n isLocked: boolean\n lastUpdateTime?: number\n}>\n\nexport const getIsLocked = async ({\n id,\n collectionConfig,\n globalConfig,\n isEditing,\n req,\n}: Args): Result => {\n const entityConfig = collectionConfig || globalConfig\n\n const entityHasLockingEnabled =\n entityConfig?.lockDocuments !== undefined ? entityConfig?.lockDocuments : true\n\n // Check if the locked-documents collection exists\n if (!req.payload.collections?.['payload-locked-documents']) {\n // If the collection doesn't exist, locking is not available\n return {\n isLocked: false,\n }\n }\n\n if (!entityHasLockingEnabled || !isEditing) {\n return {\n isLocked: false,\n }\n }\n\n const where: Where = {}\n\n const lockDurationDefault = 300 // Default 5 minutes in seconds\n const lockDuration =\n typeof entityConfig.lockDocuments === 'object'\n ? entityConfig.lockDocuments.duration\n : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n\n const now = new Date().getTime()\n\n if (globalConfig) {\n where.and = [\n {\n globalSlug: {\n equals: globalConfig.slug,\n },\n },\n {\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds),\n },\n },\n ]\n } else {\n where.and = [\n {\n 'document.value': {\n equals: sanitizeID(id),\n },\n },\n {\n 'document.relationTo': {\n equals: collectionConfig.slug,\n },\n },\n {\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds),\n },\n },\n ]\n }\n\n const { docs } = await req.payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n req,\n where,\n })\n\n if (docs.length > 0) {\n const currentEditor = docs[0].user?.value\n const lastUpdateTime = new Date(docs[0].updatedAt).getTime()\n\n if (extractID(currentEditor) !== req.user.id) {\n return {\n currentEditor,\n isLocked: true,\n lastUpdateTime,\n }\n }\n }\n\n return {\n isLocked: false,\n }\n}\n"],"mappings":"AAQA,SAASA,SAAS,QAAQ;AAE1B,SAASC,UAAU,QAAQ;AAgB3B,OAAO,MAAMC,WAAA,GAAc,MAAAA,CAAO;EAChCC,EAAE;EACFC,gBAAgB;EAChBC,YAAY;EACZC,SAAS;EACTC;AAAG,CACE;EACL,MAAMC,YAAA,GAAeJ,gBAAA,IAAoBC,YAAA;EAEzC,MAAMI,uBAAA,GACJD,YAAA,EAAcE,aAAA,KAAkBC,SAAA,GAAYH,YAAA,EAAcE,aAAA,GAAgB;EAE5E;EACA,IAAI,CAACH,GAAA,CAAIK,OAAO,CAACC,WAAW,GAAG,2BAA2B,EAAE;IAC1D;IACA,OAAO;MACLC,QAAA,EAAU;IACZ;EACF;EAEA,IAAI,CAACL,uBAAA,IAA2B,CAACH,SAAA,EAAW;IAC1C,OAAO;MACLQ,QAAA,EAAU;IACZ;EACF;EAEA,MAAMC,KAAA,GAAe,CAAC;EAEtB,MAAMC,mBAAA,GAAsB,IAAI;AAAA;EAChC,MAAMC,YAAA,GACJ,OAAOT,YAAA,CAAaE,aAAa,KAAK,WAClCF,YAAA,CAAaE,aAAa,CAACQ,QAAQ,GACnCF,mBAAA;EACN,MAAMG,0BAAA,GAA6BF,YAAA,GAAe;EAElD,MAAMG,GAAA,GAAM,IAAIC,IAAA,GAAOC,OAAO;EAE9B,IAAIjB,YAAA,EAAc;IAChBU,KAAA,CAAMQ,GAAG,GAAG,CACV;MACEC,UAAA,EAAY;QACVC,MAAA,EAAQpB,YAAA,CAAaqB;MACvB;IACF,GACA;MACEC,SAAA,EAAW;QACTC,YAAA,EAAc,IAAIP,IAAA,CAAKD,GAAA,GAAMD,0BAAA;MAC/B;IACF,EACD;EACH,OAAO;IACLJ,KAAA,CAAMQ,GAAG,GAAG,CACV;MACE,kBAAkB;QAChBE,MAAA,EAAQxB,UAAA,CAAWE,EAAA;MACrB;IACF,GACA;MACE,uBAAuB;QACrBsB,MAAA,EAAQrB,gBAAA,CAAiBsB;MAC3B;IACF,GACA;MACEC,SAAA,EAAW;QACTC,YAAA,EAAc,IAAIP,IAAA,CAAKD,GAAA,GAAMD,0BAAA;MAC/B;IACF,EACD;EACH;EAEA,MAAM;IAAEU;EAAI,CAAE,GAAG,MAAMtB,GAAA,CAAIK,OAAO,CAACkB,IAAI,CAAC;IACtCC,UAAA,EAAY;IACZC,KAAA,EAAO;IACPC,cAAA,EAAgB;IAChB1B,GAAA;IACAQ;EACF;EAEA,IAAIc,IAAA,CAAKK,MAAM,GAAG,GAAG;IACnB,MAAMC,aAAA,GAAgBN,IAAI,CAAC,EAAE,CAACO,IAAI,EAAEC,KAAA;IACpC,MAAMC,cAAA,GAAiB,IAAIjB,IAAA,CAAKQ,IAAI,CAAC,EAAE,CAACF,SAAS,EAAEL,OAAO;IAE1D,IAAItB,SAAA,CAAUmC,aAAA,MAAmB5B,GAAA,CAAI6B,IAAI,CAACjC,EAAE,EAAE;MAC5C,OAAO;QACLgC,aAAA;QACArB,QAAA,EAAU;QACVwB;MACF;IACF;EACF;EAEA,OAAO;IACLxB,QAAA,EAAU;EACZ;AACF","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { Payload, SanitizedCollectionConfig, SanitizedDocumentPermissions, SanitizedGlobalConfig, TypedUser } from 'payload';
1
+ import type { Payload, SanitizedCollectionConfig, SanitizedDocumentPermissions, SanitizedGlobalConfig, User } from 'payload';
2
2
  type Args = {
3
3
  collectionConfig?: SanitizedCollectionConfig;
4
4
  /**
@@ -13,7 +13,7 @@ type Args = {
13
13
  id?: number | string;
14
14
  locale?: string;
15
15
  payload: Payload;
16
- user: TypedUser;
16
+ user: User;
17
17
  };
18
18
  type Result = Promise<{
19
19
  hasPublishedDoc: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"getVersions.d.ts","sourceRoot":"","sources":["../../src/utilities/getVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,SAAS,EACV,MAAM,SAAS,CAAA;AAQhB,KAAK,IAAI,GAAG;IACV,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,cAAc,EAAE,4BAA4B,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED,KAAK,MAAM,GAAG,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAA;IACxB,4BAA4B,EAAE,OAAO,CAAA;IACrC,uBAAuB,EAAE,MAAM,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;CACrB,CAAC,CAAA;AAKF,eAAO,MAAM,WAAW,GAAU,4FAS/B,IAAI,KAAG,MAgRT,CAAA"}
1
+ {"version":3,"file":"getVersions.d.ts","sourceRoot":"","sources":["../../src/utilities/getVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,yBAAyB,EACzB,4BAA4B,EAC5B,qBAAqB,EACrB,IAAI,EACL,MAAM,SAAS,CAAA;AAQhB,KAAK,IAAI,GAAG;IACV,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C;;;;;OAKG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IACzB,cAAc,EAAE,4BAA4B,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAED,KAAK,MAAM,GAAG,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAA;IACxB,4BAA4B,EAAE,OAAO,CAAA;IACrC,uBAAuB,EAAE,MAAM,CAAA;IAC/B,YAAY,EAAE,MAAM,CAAA;CACrB,CAAC,CAAA;AAKF,eAAO,MAAM,WAAW,GAAU,4FAS/B,IAAI,KAAG,MAoPT,CAAA"}
@@ -27,11 +27,8 @@ export const getVersions = async ({
27
27
  const localizedDraftsEnabled = hasDraftsEnabled(entityConfig) && typeof payload.config.localization === 'object' && hasLocalizedFields;
28
28
  const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions);
29
29
  if (!shouldFetchVersions) {
30
- // Without readVersions permission, determine published status from the
31
- // `_status` field. A missing doc (e.g. the create view, before the first
32
- // save) has no published version — guard against `undefined !== 'draft'`
33
- // resolving to `true` and reporting a brand-new draft as published.
34
- const hasPublishedDoc = doc ? localizedDraftsEnabled ? doc._status === 'published' : doc._status !== 'draft' : false;
30
+ // Without readVersions permission, determine published status from the _status field
31
+ const hasPublishedDoc = localizedDraftsEnabled ? doc?._status === 'published' : doc?._status !== 'draft';
35
32
  return {
36
33
  hasPublishedDoc,
37
34
  mostRecentVersionIsAutosaved,
@@ -87,13 +84,6 @@ export const getVersions = async ({
87
84
  }
88
85
  }]
89
86
  };
90
- if (localizedDraftsEnabled) {
91
- where.and.push({
92
- snapshot: {
93
- not_equals: true
94
- }
95
- });
96
- }
97
87
  const mostRecentVersion = await payload.findVersions({
98
88
  collection: collectionConfig.slug,
99
89
  depth: 0,
@@ -142,14 +132,6 @@ export const getVersions = async ({
142
132
  }
143
133
  }]
144
134
  };
145
- if (localizedDraftsEnabled) {
146
- countVersionsWhere.and.push({
147
- snapshot: {
148
- not_equals: true
149
- }
150
- });
151
- }
152
- ;
153
135
  ({
154
136
  totalDocs: versionCount
155
137
  } = await payload.countVersions({
@@ -220,12 +202,7 @@ export const getVersions = async ({
220
202
  } = await payload.countGlobalVersions({
221
203
  global: globalConfig.slug,
222
204
  locale,
223
- user,
224
- where: localizedDraftsEnabled ? {
225
- snapshot: {
226
- not_equals: true
227
- }
228
- } : undefined
205
+ user
229
206
  }));
230
207
  }
231
208
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"getVersions.js","names":["combineQueries","extractAccessFromPermission","hasAutosaveEnabled","hasDraftsEnabled","sanitizeID","traverseForLocalizedFields","getVersions","id","idArg","collectionConfig","doc","docPermissions","globalConfig","locale","payload","user","publishedDoc","hasPublishedDoc","mostRecentVersionIsAutosaved","unpublishedVersionCount","versionCount","entityConfig","versionsConfig","versions","hasLocalizedFields","fields","localizedDraftsEnabled","config","localization","shouldFetchVersions","Boolean","readVersions","_status","find","collection","slug","depth","limit","undefined","pagination","select","updatedAt","where","and","equals","docs","parent","push","snapshot","not_equals","mostRecentVersion","findVersions","autosave","totalDocs","countVersions","greater_than","countVersionsWhere","findGlobal","findGlobalVersions","countGlobalVersions","global"],"sources":["../../src/utilities/getVersions.ts"],"sourcesContent":["import type {\n Payload,\n SanitizedCollectionConfig,\n SanitizedDocumentPermissions,\n SanitizedGlobalConfig,\n TypedUser,\n} from 'payload'\n\nimport { combineQueries, extractAccessFromPermission } from 'payload'\nimport { hasAutosaveEnabled, hasDraftsEnabled } from 'payload/shared'\n\nimport { sanitizeID } from './sanitizeID.js'\nimport { traverseForLocalizedFields } from './traverseForLocalizedFields.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n /**\n * Optional - performance optimization.\n * If a document has been fetched before fetching versions, pass it here.\n * If this document is set to published, we can skip the query to find out if a published document exists,\n * as the passed in document is proof of its existence.\n */\n doc?: Record<string, any>\n docPermissions: SanitizedDocumentPermissions\n globalConfig?: SanitizedGlobalConfig\n id?: number | string\n locale?: string\n payload: Payload\n user: TypedUser\n}\n\ntype Result = Promise<{\n hasPublishedDoc: boolean\n mostRecentVersionIsAutosaved: boolean\n unpublishedVersionCount: number\n versionCount: number\n}>\n\n// TODO: in the future, we can parallelize some of these queries\n// this will speed up the API by ~30-100ms or so\n// Note from the future: I have attempted parallelizing these queries, but it made this function almost 2x slower.\nexport const getVersions = async ({\n id: idArg,\n collectionConfig,\n doc,\n docPermissions,\n globalConfig,\n locale,\n payload,\n user,\n}: Args): Result => {\n const id = sanitizeID(idArg)\n let publishedDoc\n let hasPublishedDoc = false\n let mostRecentVersionIsAutosaved = false\n let unpublishedVersionCount = 0\n let versionCount = 0\n\n const entityConfig = collectionConfig || globalConfig\n const versionsConfig = entityConfig?.versions\n const hasLocalizedFields = traverseForLocalizedFields(entityConfig.fields)\n const localizedDraftsEnabled =\n hasDraftsEnabled(entityConfig) &&\n typeof payload.config.localization === 'object' &&\n hasLocalizedFields\n\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions)\n\n if (!shouldFetchVersions) {\n // Without readVersions permission, determine published status from the\n // `_status` field. A missing doc (e.g. the create view, before the first\n // save) has no published version — guard against `undefined !== 'draft'`\n // resolving to `true` and reporting a brand-new draft as published.\n const hasPublishedDoc = doc\n ? localizedDraftsEnabled\n ? doc._status === 'published'\n : doc._status !== 'draft'\n : false\n\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n }\n\n if (collectionConfig) {\n if (!id) {\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n }\n\n if (hasDraftsEnabled(collectionConfig)) {\n // Find out if a published document exists\n if (doc?._status === 'published') {\n publishedDoc = doc\n } else {\n publishedDoc = (\n await payload.find({\n collection: collectionConfig.slug,\n depth: 0,\n limit: 1,\n locale: locale || undefined,\n pagination: false,\n select: {\n updatedAt: true,\n },\n user,\n where: {\n and: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n id: {\n equals: id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n }\n\n if (publishedDoc) {\n hasPublishedDoc = true\n }\n\n if (hasAutosaveEnabled(collectionConfig)) {\n const where: Record<string, any> = {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n ],\n }\n\n if (localizedDraftsEnabled) {\n where.and.push({\n snapshot: {\n not_equals: true,\n },\n })\n }\n\n const mostRecentVersion = await payload.findVersions({\n collection: collectionConfig.slug,\n depth: 0,\n limit: 1,\n locale,\n select: {\n autosave: true,\n },\n user,\n where: combineQueries(where, extractAccessFromPermission(docPermissions.readVersions)),\n })\n\n if (\n mostRecentVersion.docs[0] &&\n 'autosave' in mostRecentVersion.docs[0] &&\n mostRecentVersion.docs[0].autosave\n ) {\n mostRecentVersionIsAutosaved = true\n }\n }\n\n if (publishedDoc?.updatedAt) {\n ;({ totalDocs: unpublishedVersionCount } = await payload.countVersions({\n collection: collectionConfig.slug,\n locale,\n user,\n where: combineQueries(\n {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n {\n 'version._status': {\n equals: 'draft',\n },\n },\n {\n updatedAt: {\n greater_than: publishedDoc.updatedAt,\n },\n },\n ],\n },\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n }\n\n const countVersionsWhere: Record<string, any> = {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n ],\n }\n\n if (localizedDraftsEnabled) {\n countVersionsWhere.and.push({\n snapshot: {\n not_equals: true,\n },\n })\n }\n\n ;({ totalDocs: versionCount } = await payload.countVersions({\n collection: collectionConfig.slug,\n locale,\n user,\n where: combineQueries(\n countVersionsWhere,\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n\n if (globalConfig) {\n // Find out if a published document exists\n if (hasDraftsEnabled(globalConfig)) {\n if (doc?._status === 'published') {\n publishedDoc = doc\n } else {\n publishedDoc = await payload.findGlobal({\n slug: globalConfig.slug,\n depth: 0,\n locale,\n select: {\n updatedAt: true,\n },\n user,\n })\n }\n\n if (publishedDoc?._status === 'published') {\n hasPublishedDoc = true\n }\n\n if (hasAutosaveEnabled(globalConfig)) {\n const mostRecentVersion = await payload.findGlobalVersions({\n slug: globalConfig.slug,\n limit: 1,\n locale,\n select: {\n autosave: true,\n },\n user,\n })\n\n if (\n mostRecentVersion.docs[0] &&\n 'autosave' in mostRecentVersion.docs[0] &&\n mostRecentVersion.docs[0].autosave\n ) {\n mostRecentVersionIsAutosaved = true\n }\n }\n\n if (publishedDoc?.updatedAt) {\n ;({ totalDocs: unpublishedVersionCount } = await payload.countGlobalVersions({\n global: globalConfig.slug,\n locale,\n user,\n where: combineQueries(\n {\n and: [\n {\n 'version._status': {\n equals: 'draft',\n },\n },\n {\n updatedAt: {\n greater_than: publishedDoc.updatedAt,\n },\n },\n ],\n },\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n }\n\n ;({ totalDocs: versionCount } = await payload.countGlobalVersions({\n global: globalConfig.slug,\n locale,\n user,\n where: localizedDraftsEnabled\n ? {\n snapshot: {\n not_equals: true,\n },\n }\n : undefined,\n }))\n }\n\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getVersions.js","names":["combineQueries","extractAccessFromPermission","hasAutosaveEnabled","hasDraftsEnabled","sanitizeID","traverseForLocalizedFields","getVersions","id","idArg","collectionConfig","doc","docPermissions","globalConfig","locale","payload","user","publishedDoc","hasPublishedDoc","mostRecentVersionIsAutosaved","unpublishedVersionCount","versionCount","entityConfig","versionsConfig","versions","hasLocalizedFields","fields","localizedDraftsEnabled","config","localization","shouldFetchVersions","Boolean","readVersions","_status","find","collection","slug","depth","limit","undefined","pagination","select","updatedAt","where","and","equals","docs","parent","mostRecentVersion","findVersions","autosave","totalDocs","countVersions","greater_than","countVersionsWhere","findGlobal","findGlobalVersions","countGlobalVersions","global"],"sources":["../../src/utilities/getVersions.ts"],"sourcesContent":["import type {\n Payload,\n SanitizedCollectionConfig,\n SanitizedDocumentPermissions,\n SanitizedGlobalConfig,\n User,\n} from 'payload'\n\nimport { combineQueries, extractAccessFromPermission } from 'payload'\nimport { hasAutosaveEnabled, hasDraftsEnabled } from 'payload/shared'\n\nimport { sanitizeID } from './sanitizeID.js'\nimport { traverseForLocalizedFields } from './traverseForLocalizedFields.js'\n\ntype Args = {\n collectionConfig?: SanitizedCollectionConfig\n /**\n * Optional - performance optimization.\n * If a document has been fetched before fetching versions, pass it here.\n * If this document is set to published, we can skip the query to find out if a published document exists,\n * as the passed in document is proof of its existence.\n */\n doc?: Record<string, any>\n docPermissions: SanitizedDocumentPermissions\n globalConfig?: SanitizedGlobalConfig\n id?: number | string\n locale?: string\n payload: Payload\n user: User\n}\n\ntype Result = Promise<{\n hasPublishedDoc: boolean\n mostRecentVersionIsAutosaved: boolean\n unpublishedVersionCount: number\n versionCount: number\n}>\n\n// TODO: in the future, we can parallelize some of these queries\n// this will speed up the API by ~30-100ms or so\n// Note from the future: I have attempted parallelizing these queries, but it made this function almost 2x slower.\nexport const getVersions = async ({\n id: idArg,\n collectionConfig,\n doc,\n docPermissions,\n globalConfig,\n locale,\n payload,\n user,\n}: Args): Result => {\n const id = sanitizeID(idArg)\n let publishedDoc\n let hasPublishedDoc = false\n let mostRecentVersionIsAutosaved = false\n let unpublishedVersionCount = 0\n let versionCount = 0\n\n const entityConfig = collectionConfig || globalConfig\n const versionsConfig = entityConfig?.versions\n const hasLocalizedFields = traverseForLocalizedFields(entityConfig.fields)\n const localizedDraftsEnabled =\n hasDraftsEnabled(entityConfig) &&\n typeof payload.config.localization === 'object' &&\n hasLocalizedFields\n\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions)\n\n if (!shouldFetchVersions) {\n // Without readVersions permission, determine published status from the _status field\n const hasPublishedDoc = localizedDraftsEnabled\n ? doc?._status === 'published'\n : doc?._status !== 'draft'\n\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n }\n\n if (collectionConfig) {\n if (!id) {\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n }\n\n if (hasDraftsEnabled(collectionConfig)) {\n // Find out if a published document exists\n if (doc?._status === 'published') {\n publishedDoc = doc\n } else {\n publishedDoc = (\n await payload.find({\n collection: collectionConfig.slug,\n depth: 0,\n limit: 1,\n locale: locale || undefined,\n pagination: false,\n select: {\n updatedAt: true,\n },\n user,\n where: {\n and: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n id: {\n equals: id,\n },\n },\n ],\n },\n })\n )?.docs?.[0]\n }\n\n if (publishedDoc) {\n hasPublishedDoc = true\n }\n\n if (hasAutosaveEnabled(collectionConfig)) {\n const where: Record<string, any> = {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n ],\n }\n\n const mostRecentVersion = await payload.findVersions({\n collection: collectionConfig.slug,\n depth: 0,\n limit: 1,\n locale,\n select: {\n autosave: true,\n },\n user,\n where: combineQueries(where, extractAccessFromPermission(docPermissions.readVersions)),\n })\n\n if (\n mostRecentVersion.docs[0] &&\n 'autosave' in mostRecentVersion.docs[0] &&\n mostRecentVersion.docs[0].autosave\n ) {\n mostRecentVersionIsAutosaved = true\n }\n }\n\n if (publishedDoc?.updatedAt) {\n ;({ totalDocs: unpublishedVersionCount } = await payload.countVersions({\n collection: collectionConfig.slug,\n locale,\n user,\n where: combineQueries(\n {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n {\n 'version._status': {\n equals: 'draft',\n },\n },\n {\n updatedAt: {\n greater_than: publishedDoc.updatedAt,\n },\n },\n ],\n },\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n }\n\n const countVersionsWhere: Record<string, any> = {\n and: [\n {\n parent: {\n equals: id,\n },\n },\n ],\n }\n\n ;({ totalDocs: versionCount } = await payload.countVersions({\n collection: collectionConfig.slug,\n locale,\n user,\n where: combineQueries(\n countVersionsWhere,\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n\n if (globalConfig) {\n // Find out if a published document exists\n if (hasDraftsEnabled(globalConfig)) {\n if (doc?._status === 'published') {\n publishedDoc = doc\n } else {\n publishedDoc = await payload.findGlobal({\n slug: globalConfig.slug,\n depth: 0,\n locale,\n select: {\n updatedAt: true,\n },\n user,\n })\n }\n\n if (publishedDoc?._status === 'published') {\n hasPublishedDoc = true\n }\n\n if (hasAutosaveEnabled(globalConfig)) {\n const mostRecentVersion = await payload.findGlobalVersions({\n slug: globalConfig.slug,\n limit: 1,\n locale,\n select: {\n autosave: true,\n },\n user,\n })\n\n if (\n mostRecentVersion.docs[0] &&\n 'autosave' in mostRecentVersion.docs[0] &&\n mostRecentVersion.docs[0].autosave\n ) {\n mostRecentVersionIsAutosaved = true\n }\n }\n\n if (publishedDoc?.updatedAt) {\n ;({ totalDocs: unpublishedVersionCount } = await payload.countGlobalVersions({\n global: globalConfig.slug,\n locale,\n user,\n where: combineQueries(\n {\n and: [\n {\n 'version._status': {\n equals: 'draft',\n },\n },\n {\n updatedAt: {\n greater_than: publishedDoc.updatedAt,\n },\n },\n ],\n },\n extractAccessFromPermission(docPermissions.readVersions),\n ),\n }))\n }\n }\n\n ;({ totalDocs: versionCount } = await payload.countGlobalVersions({\n global: globalConfig.slug,\n locale,\n user,\n }))\n }\n\n return {\n hasPublishedDoc,\n mostRecentVersionIsAutosaved,\n unpublishedVersionCount,\n versionCount,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { TypedUser } from 'payload';
1
+ import type { User } from 'payload';
2
2
  type Args = {
3
3
  config: {
4
4
  admin: {
@@ -15,7 +15,7 @@ type Args = {
15
15
  searchParams: {
16
16
  [key: string]: string | string[];
17
17
  };
18
- user?: TypedUser;
18
+ user?: User;
19
19
  };
20
20
  /** Builds the redirect URL for unauthenticated or unauthorized admin access. */
21
21
  export declare const handleAuthRedirect: ({ config, route, searchParams, user }: Args) => string;
@@ -1 +1 @@
1
- {"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../src/utilities/handleAuthRedirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAKxC,KAAK,IAAI,GAAG;IACV,MAAM,EAAE;QACN,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAA;gBACb,YAAY,EAAE,MAAM,CAAA;aACrB,CAAA;SACF,CAAA;QACD,MAAM,EAAE;YACN,KAAK,EAAE,MAAM,CAAA;SACd,CAAA;KACF,CAAA;IACD,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;IAClD,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,GAAI,uCAAuC,IAAI,KAAG,MAkChF,CAAA"}
1
+ {"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../src/utilities/handleAuthRedirect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAKnC,KAAK,IAAI,GAAG;IACV,MAAM,EAAE;QACN,KAAK,EAAE;YACL,MAAM,EAAE;gBACN,KAAK,EAAE,MAAM,CAAA;gBACb,YAAY,EAAE,MAAM,CAAA;aACrB,CAAA;SACF,CAAA;QACD,MAAM,EAAE;YACN,KAAK,EAAE,MAAM,CAAA;SACd,CAAA;KACF,CAAA;IACD,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;IAClD,IAAI,CAAC,EAAE,IAAI,CAAA;CACZ,CAAA;AAED,gFAAgF;AAChF,eAAO,MAAM,kBAAkB,GAAI,uCAAuC,IAAI,KAAG,MAkChF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleAuthRedirect.js","names":["formatAdminURL","qs","handleAuthRedirect","config","route","searchParams","user","admin","routes","login","loginRouteFromConfig","unauthorized","unauthorizedRoute","adminRoute","redirect","redirectRoute","Object","keys","length","stringify","addQueryPrefix","redirectTo","path","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"sources":["../../src/utilities/handleAuthRedirect.ts"],"sourcesContent":["import type { TypedUser } from 'payload'\n\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\n\ntype Args = {\n config: {\n admin: {\n routes: {\n login: string\n unauthorized: string\n }\n }\n routes: {\n admin: string\n }\n }\n route: string\n searchParams: { [key: string]: string | string[] }\n user?: TypedUser\n}\n\n/** Builds the redirect URL for unauthenticated or unauthorized admin access. */\nexport const handleAuthRedirect = ({ config, route, searchParams, user }: Args): string => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig, unauthorized: unauthorizedRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (searchParams && 'redirect' in searchParams) {\n delete searchParams.redirect\n }\n\n const redirectRoute =\n (route !== adminRoute ? route : '') +\n (Object.keys(searchParams ?? {}).length > 0\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : '')\n\n const redirectTo = formatAdminURL({\n adminRoute,\n path: (user ? unauthorizedRoute : loginRouteFromConfig) as `/${string}`,\n })\n\n const parsedLoginRouteSearchParams = qs.parse(redirectTo.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n return `${redirectTo.split('?', 1)[0]}${searchParamsWithRedirect}`\n}\n"],"mappings":"AAEA,SAASA,cAAc,QAAQ;AAC/B,YAAYC,EAAA,MAAQ;AAmBpB;AACA,OAAO,MAAMC,kBAAA,GAAqBA,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC,YAAY;EAAEC;AAAI,CAAQ;EAC5E,MAAM;IACJC,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,oBAAoB;QAAEC,YAAA,EAAcC;MAAiB;IAAE,CACzE;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGV,MAAA;EAEJ,IAAIE,YAAA,IAAgB,cAAcA,YAAA,EAAc;IAC9C,OAAOA,YAAA,CAAaS,QAAQ;EAC9B;EAEA,MAAMC,aAAA,GACJ,CAACX,KAAA,KAAUS,UAAA,GAAaT,KAAA,GAAQ,EAAC,KAChCY,MAAA,CAAOC,IAAI,CAACZ,YAAA,IAAgB,CAAC,GAAGa,MAAM,GAAG,IACtC,GAAGjB,EAAA,CAAGkB,SAAS,CAACd,YAAA,EAAc;IAAEe,cAAA,EAAgB;EAAK,IAAI,GACzD,EAAC;EAEP,MAAMC,UAAA,GAAarB,cAAA,CAAe;IAChCa,UAAA;IACAS,IAAA,EAAOhB,IAAA,GAAOM,iBAAA,GAAoBF;EACpC;EAEA,MAAMa,4BAAA,GAA+BtB,EAAA,CAAGuB,KAAK,CAACH,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;EAE1E,MAAMC,wBAAA,GAA2B,GAAGzB,EAAA,CAAGkB,SAAS,CAC9C;IACE,GAAGI,4BAA4B;IAC/B,IAAIR,aAAA,GAAgB;MAAED,QAAA,EAAUC;IAAc,IAAI,CAAC,CAAC;EACtD,GACA;IAAEK,cAAA,EAAgB;EAAK,IACtB;EAEH,OAAO,GAAGC,UAAA,CAAWI,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,GAAGC,wBAAA,EAA0B;AACpE","ignoreList":[]}
1
+ {"version":3,"file":"handleAuthRedirect.js","names":["formatAdminURL","qs","handleAuthRedirect","config","route","searchParams","user","admin","routes","login","loginRouteFromConfig","unauthorized","unauthorizedRoute","adminRoute","redirect","redirectRoute","Object","keys","length","stringify","addQueryPrefix","redirectTo","path","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"sources":["../../src/utilities/handleAuthRedirect.ts"],"sourcesContent":["import type { User } from 'payload'\n\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\n\ntype Args = {\n config: {\n admin: {\n routes: {\n login: string\n unauthorized: string\n }\n }\n routes: {\n admin: string\n }\n }\n route: string\n searchParams: { [key: string]: string | string[] }\n user?: User\n}\n\n/** Builds the redirect URL for unauthenticated or unauthorized admin access. */\nexport const handleAuthRedirect = ({ config, route, searchParams, user }: Args): string => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig, unauthorized: unauthorizedRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (searchParams && 'redirect' in searchParams) {\n delete searchParams.redirect\n }\n\n const redirectRoute =\n (route !== adminRoute ? route : '') +\n (Object.keys(searchParams ?? {}).length > 0\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : '')\n\n const redirectTo = formatAdminURL({\n adminRoute,\n path: (user ? unauthorizedRoute : loginRouteFromConfig) as `/${string}`,\n })\n\n const parsedLoginRouteSearchParams = qs.parse(redirectTo.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n return `${redirectTo.split('?', 1)[0]}${searchParamsWithRedirect}`\n}\n"],"mappings":"AAEA,SAASA,cAAc,QAAQ;AAC/B,YAAYC,EAAA,MAAQ;AAmBpB;AACA,OAAO,MAAMC,kBAAA,GAAqBA,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC,YAAY;EAAEC;AAAI,CAAQ;EAC5E,MAAM;IACJC,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,oBAAoB;QAAEC,YAAA,EAAcC;MAAiB;IAAE,CACzE;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGV,MAAA;EAEJ,IAAIE,YAAA,IAAgB,cAAcA,YAAA,EAAc;IAC9C,OAAOA,YAAA,CAAaS,QAAQ;EAC9B;EAEA,MAAMC,aAAA,GACJ,CAACX,KAAA,KAAUS,UAAA,GAAaT,KAAA,GAAQ,EAAC,KAChCY,MAAA,CAAOC,IAAI,CAACZ,YAAA,IAAgB,CAAC,GAAGa,MAAM,GAAG,IACtC,GAAGjB,EAAA,CAAGkB,SAAS,CAACd,YAAA,EAAc;IAAEe,cAAA,EAAgB;EAAK,IAAI,GACzD,EAAC;EAEP,MAAMC,UAAA,GAAarB,cAAA,CAAe;IAChCa,UAAA;IACAS,IAAA,EAAOhB,IAAA,GAAOM,iBAAA,GAAoBF;EACpC;EAEA,MAAMa,4BAAA,GAA+BtB,EAAA,CAAGuB,KAAK,CAACH,UAAA,CAAWI,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;EAE1E,MAAMC,wBAAA,GAA2B,GAAGzB,EAAA,CAAGkB,SAAS,CAC9C;IACE,GAAGI,4BAA4B;IAC/B,IAAIR,aAAA,GAAgB;MAAED,QAAA,EAAUC;IAAc,IAAI,CAAC,CAAC;EACtD,GACA;IAAEK,cAAA,EAAgB;EAAK,IACtB;EAEH,OAAO,GAAGC,UAAA,CAAWI,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,GAAGC,wBAAA,EAA0B;AACpE","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import type { PayloadRequest, TypedUser } from 'payload';
1
+ import type { PayloadRequest, User } from 'payload';
2
2
  type Args = {
3
3
  collectionSlug?: string;
4
4
  globalSlug?: string;
@@ -9,7 +9,7 @@ type Args = {
9
9
  type Result = {
10
10
  isLocked: boolean;
11
11
  lastEditedAt: string;
12
- user: TypedUser;
12
+ user: User;
13
13
  };
14
14
  export declare const handleFormStateLocking: ({ id, collectionSlug, globalSlug, req, updateLastEdited, }: Args) => Promise<Result>;
15
15
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"handleFormStateLocking.d.ts","sourceRoot":"","sources":["../../src/utilities/handleFormStateLocking.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAExD,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAID,eAAO,MAAM,sBAAsB,GAAU,4DAM1C,IAAI,KAAG,OAAO,CAAC,MAAM,CAsIvB,CAAA"}
1
+ {"version":3,"file":"handleFormStateLocking.d.ts","sourceRoot":"","sources":["../../src/utilities/handleFormStateLocking.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAEnD,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,KAAK,MAAM,GAAG;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,IAAI,CAAA;CACX,CAAA;AAID,eAAO,MAAM,sBAAsB,GAAU,4DAM1C,IAAI,KAAG,OAAO,CAAC,MAAM,CAsIvB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"handleFormStateLocking.js","names":["lockDurationDefault","handleFormStateLocking","id","collectionSlug","globalSlug","req","updateLastEdited","result","payload","collections","lockedDocumentQuery","and","equals","lockDocumentsProp","config","lockDocuments","globals","find","g","slug","lockDuration","duration","lockDurationInMilliseconds","now","Date","getTime","push","updatedAt","greater_than","toISOString","lockedDocument","collection","depth","limit","overrideAccess","pagination","user","where","docs","length","isLocked","lastEditedAt","value","lockOwnerID","db","updateOne","data","returning","deleteExpiredLocksQuery","less_than","deleteMany","create","document","relationTo","undefined"],"sources":["../../src/utilities/handleFormStateLocking.ts"],"sourcesContent":["import type { PayloadRequest, TypedUser } from 'payload'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n req: PayloadRequest\n updateLastEdited?: boolean\n}\n\ntype Result = {\n isLocked: boolean\n lastEditedAt: string\n user: TypedUser\n}\n\nconst lockDurationDefault = 300 // Default 5 minutes in seconds\n\nexport const handleFormStateLocking = async ({\n id,\n collectionSlug,\n globalSlug,\n req,\n updateLastEdited,\n}: Args): Promise<Result> => {\n let result: Result\n\n // Check if the locked-documents collection exists\n if (!req.payload.collections?.['payload-locked-documents']) {\n // If the collection doesn't exist, locking is not available\n return result\n }\n\n if (id || globalSlug) {\n let lockedDocumentQuery\n\n if (collectionSlug) {\n lockedDocumentQuery = {\n and: [\n { 'document.relationTo': { equals: collectionSlug } },\n { 'document.value': { equals: id } },\n ],\n }\n } else if (globalSlug) {\n lockedDocumentQuery = {\n and: [{ globalSlug: { equals: globalSlug } }],\n }\n }\n\n const lockDocumentsProp = collectionSlug\n ? req.payload.collections?.[collectionSlug]?.config.lockDocuments\n : req.payload.config.globals.find((g) => g.slug === globalSlug)?.lockDocuments\n\n const lockDuration =\n typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n const now = new Date().getTime()\n\n if (lockedDocumentQuery) {\n // Query where the lock is newer than the current time minus the lock duration\n lockedDocumentQuery.and.push({\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n })\n\n const lockedDocument = await req.payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: 1,\n overrideAccess: false,\n pagination: false,\n user: req.user,\n where: lockedDocumentQuery,\n })\n\n if (lockedDocument.docs && lockedDocument.docs.length > 0) {\n result = {\n isLocked: true,\n lastEditedAt: lockedDocument.docs[0]?.updatedAt,\n user: lockedDocument.docs[0]?.user?.value,\n }\n\n const lockOwnerID =\n typeof lockedDocument.docs[0]?.user?.value === 'object'\n ? lockedDocument.docs[0]?.user?.value?.id\n : lockedDocument.docs[0]?.user?.value\n // Should only update doc if the incoming / current user is also the owner of the locked doc\n if (updateLastEdited && req.user && lockOwnerID === req.user.id) {\n await req.payload.db.updateOne({\n id: lockedDocument.docs[0].id,\n collection: 'payload-locked-documents',\n data: {},\n returning: false,\n })\n }\n } else {\n // If NO ACTIVE lock document exists, first delete any expired locks and then create a fresh lock\n // Where updatedAt is older than the duration that is specified in the config\n let deleteExpiredLocksQuery\n\n if (collectionSlug) {\n deleteExpiredLocksQuery = {\n and: [\n { 'document.relationTo': { equals: collectionSlug } },\n {\n updatedAt: {\n less_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n },\n ],\n }\n } else if (globalSlug) {\n deleteExpiredLocksQuery = {\n and: [\n { globalSlug: { equals: globalSlug } },\n {\n updatedAt: {\n less_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n },\n ],\n }\n }\n\n await req.payload.db.deleteMany({\n collection: 'payload-locked-documents',\n where: deleteExpiredLocksQuery,\n })\n\n await req.payload.db.create({\n collection: 'payload-locked-documents',\n data: {\n document: collectionSlug\n ? {\n relationTo: collectionSlug,\n value: id,\n }\n : undefined,\n globalSlug: globalSlug ? globalSlug : undefined,\n user: {\n relationTo: req.user.collection,\n value: req.user.id,\n },\n },\n returning: false,\n })\n\n result = {\n isLocked: true,\n lastEditedAt: new Date().toISOString(),\n user: req.user,\n }\n }\n }\n }\n\n return result\n}\n"],"mappings":"AAgBA,MAAMA,mBAAA,GAAsB,IAAI;AAAA;AAEhC,OAAO,MAAMC,sBAAA,GAAyB,MAAAA,CAAO;EAC3CC,EAAE;EACFC,cAAc;EACdC,UAAU;EACVC,GAAG;EACHC;AAAgB,CACX;EACL,IAAIC,MAAA;EAEJ;EACA,IAAI,CAACF,GAAA,CAAIG,OAAO,CAACC,WAAW,GAAG,2BAA2B,EAAE;IAC1D;IACA,OAAOF,MAAA;EACT;EAEA,IAAIL,EAAA,IAAME,UAAA,EAAY;IACpB,IAAIM,mBAAA;IAEJ,IAAIP,cAAA,EAAgB;MAClBO,mBAAA,GAAsB;QACpBC,GAAA,EAAK,CACH;UAAE,uBAAuB;YAAEC,MAAA,EAAQT;UAAe;QAAE,GACpD;UAAE,kBAAkB;YAAES,MAAA,EAAQV;UAAG;QAAE;MAEvC;IACF,OAAO,IAAIE,UAAA,EAAY;MACrBM,mBAAA,GAAsB;QACpBC,GAAA,EAAK,CAAC;UAAEP,UAAA,EAAY;YAAEQ,MAAA,EAAQR;UAAW;QAAE;MAC7C;IACF;IAEA,MAAMS,iBAAA,GAAoBV,cAAA,GACtBE,GAAA,CAAIG,OAAO,CAACC,WAAW,GAAGN,cAAA,CAAe,EAAEW,MAAA,CAAOC,aAAA,GAClDV,GAAA,CAAIG,OAAO,CAACM,MAAM,CAACE,OAAO,CAACC,IAAI,CAAEC,CAAA,IAAMA,CAAA,CAAEC,IAAI,KAAKf,UAAA,GAAaW,aAAA;IAEnE,MAAMK,YAAA,GACJ,OAAOP,iBAAA,KAAsB,WAAWA,iBAAA,CAAkBQ,QAAQ,GAAGrB,mBAAA;IACvE,MAAMsB,0BAAA,GAA6BF,YAAA,GAAe;IAClD,MAAMG,GAAA,GAAM,IAAIC,IAAA,GAAOC,OAAO;IAE9B,IAAIf,mBAAA,EAAqB;MACvB;MACAA,mBAAA,CAAoBC,GAAG,CAACe,IAAI,CAAC;QAC3BC,SAAA,EAAW;UACTC,YAAA,EAAc,IAAIJ,IAAA,CAAKD,GAAA,GAAMD,0BAAA,EAA4BO,WAAW;QACtE;MACF;MAEA,MAAMC,cAAA,GAAiB,MAAMzB,GAAA,CAAIG,OAAO,CAACS,IAAI,CAAC;QAC5Cc,UAAA,EAAY;QACZC,KAAA,EAAO;QACPC,KAAA,EAAO;QACPC,cAAA,EAAgB;QAChBC,UAAA,EAAY;QACZC,IAAA,EAAM/B,GAAA,CAAI+B,IAAI;QACdC,KAAA,EAAO3B;MACT;MAEA,IAAIoB,cAAA,CAAeQ,IAAI,IAAIR,cAAA,CAAeQ,IAAI,CAACC,MAAM,GAAG,GAAG;QACzDhC,MAAA,GAAS;UACPiC,QAAA,EAAU;UACVC,YAAA,EAAcX,cAAA,CAAeQ,IAAI,CAAC,EAAE,EAAEX,SAAA;UACtCS,IAAA,EAAMN,cAAA,CAAeQ,IAAI,CAAC,EAAE,EAAEF,IAAA,EAAMM;QACtC;QAEA,MAAMC,WAAA,GACJ,OAAOb,cAAA,CAAeQ,IAAI,CAAC,EAAE,EAAEF,IAAA,EAAMM,KAAA,KAAU,WAC3CZ,cAAA,CAAeQ,IAAI,CAAC,EAAE,EAAEF,IAAA,EAAMM,KAAA,EAAOxC,EAAA,GACrC4B,cAAA,CAAeQ,IAAI,CAAC,EAAE,EAAEF,IAAA,EAAMM,KAAA;QACpC;QACA,IAAIpC,gBAAA,IAAoBD,GAAA,CAAI+B,IAAI,IAAIO,WAAA,KAAgBtC,GAAA,CAAI+B,IAAI,CAAClC,EAAE,EAAE;UAC/D,MAAMG,GAAA,CAAIG,OAAO,CAACoC,EAAE,CAACC,SAAS,CAAC;YAC7B3C,EAAA,EAAI4B,cAAA,CAAeQ,IAAI,CAAC,EAAE,CAACpC,EAAE;YAC7B6B,UAAA,EAAY;YACZe,IAAA,EAAM,CAAC;YACPC,SAAA,EAAW;UACb;QACF;MACF,OAAO;QACL;QACA;QACA,IAAIC,uBAAA;QAEJ,IAAI7C,cAAA,EAAgB;UAClB6C,uBAAA,GAA0B;YACxBrC,GAAA,EAAK,CACH;cAAE,uBAAuB;gBAAEC,MAAA,EAAQT;cAAe;YAAE,GACpD;cACEwB,SAAA,EAAW;gBACTsB,SAAA,EAAW,IAAIzB,IAAA,CAAKD,GAAA,GAAMD,0BAAA,EAA4BO,WAAW;cACnE;YACF;UAEJ;QACF,OAAO,IAAIzB,UAAA,EAAY;UACrB4C,uBAAA,GAA0B;YACxBrC,GAAA,EAAK,CACH;cAAEP,UAAA,EAAY;gBAAEQ,MAAA,EAAQR;cAAW;YAAE,GACrC;cACEuB,SAAA,EAAW;gBACTsB,SAAA,EAAW,IAAIzB,IAAA,CAAKD,GAAA,GAAMD,0BAAA,EAA4BO,WAAW;cACnE;YACF;UAEJ;QACF;QAEA,MAAMxB,GAAA,CAAIG,OAAO,CAACoC,EAAE,CAACM,UAAU,CAAC;UAC9BnB,UAAA,EAAY;UACZM,KAAA,EAAOW;QACT;QAEA,MAAM3C,GAAA,CAAIG,OAAO,CAACoC,EAAE,CAACO,MAAM,CAAC;UAC1BpB,UAAA,EAAY;UACZe,IAAA,EAAM;YACJM,QAAA,EAAUjD,cAAA,GACN;cACEkD,UAAA,EAAYlD,cAAA;cACZuC,KAAA,EAAOxC;YACT,IACAoD,SAAA;YACJlD,UAAA,EAAYA,UAAA,GAAaA,UAAA,GAAakD,SAAA;YACtClB,IAAA,EAAM;cACJiB,UAAA,EAAYhD,GAAA,CAAI+B,IAAI,CAACL,UAAU;cAC/BW,KAAA,EAAOrC,GAAA,CAAI+B,IAAI,CAAClC;YAClB;UACF;UACA6C,SAAA,EAAW;QACb;QAEAxC,MAAA,GAAS;UACPiC,QAAA,EAAU;UACVC,YAAA,EAAc,IAAIjB,IAAA,GAAOK,WAAW;UACpCO,IAAA,EAAM/B,GAAA,CAAI+B;QACZ;MACF;IACF;EACF;EAEA,OAAO7B,MAAA;AACT","ignoreList":[]}
1
+ {"version":3,"file":"handleFormStateLocking.js","names":["lockDurationDefault","handleFormStateLocking","id","collectionSlug","globalSlug","req","updateLastEdited","result","payload","collections","lockedDocumentQuery","and","equals","lockDocumentsProp","config","lockDocuments","globals","find","g","slug","lockDuration","duration","lockDurationInMilliseconds","now","Date","getTime","push","updatedAt","greater_than","toISOString","lockedDocument","collection","depth","limit","overrideAccess","pagination","user","where","docs","length","isLocked","lastEditedAt","value","lockOwnerID","db","updateOne","data","returning","deleteExpiredLocksQuery","less_than","deleteMany","create","document","relationTo","undefined"],"sources":["../../src/utilities/handleFormStateLocking.ts"],"sourcesContent":["import type { PayloadRequest, User } from 'payload'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n req: PayloadRequest\n updateLastEdited?: boolean\n}\n\ntype Result = {\n isLocked: boolean\n lastEditedAt: string\n user: User\n}\n\nconst lockDurationDefault = 300 // Default 5 minutes in seconds\n\nexport const handleFormStateLocking = async ({\n id,\n collectionSlug,\n globalSlug,\n req,\n updateLastEdited,\n}: Args): Promise<Result> => {\n let result: Result\n\n // Check if the locked-documents collection exists\n if (!req.payload.collections?.['payload-locked-documents']) {\n // If the collection doesn't exist, locking is not available\n return result\n }\n\n if (id || globalSlug) {\n let lockedDocumentQuery\n\n if (collectionSlug) {\n lockedDocumentQuery = {\n and: [\n { 'document.relationTo': { equals: collectionSlug } },\n { 'document.value': { equals: id } },\n ],\n }\n } else if (globalSlug) {\n lockedDocumentQuery = {\n and: [{ globalSlug: { equals: globalSlug } }],\n }\n }\n\n const lockDocumentsProp = collectionSlug\n ? req.payload.collections?.[collectionSlug]?.config.lockDocuments\n : req.payload.config.globals.find((g) => g.slug === globalSlug)?.lockDocuments\n\n const lockDuration =\n typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n const now = new Date().getTime()\n\n if (lockedDocumentQuery) {\n // Query where the lock is newer than the current time minus the lock duration\n lockedDocumentQuery.and.push({\n updatedAt: {\n greater_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n })\n\n const lockedDocument = await req.payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n limit: 1,\n overrideAccess: false,\n pagination: false,\n user: req.user,\n where: lockedDocumentQuery,\n })\n\n if (lockedDocument.docs && lockedDocument.docs.length > 0) {\n result = {\n isLocked: true,\n lastEditedAt: lockedDocument.docs[0]?.updatedAt,\n user: lockedDocument.docs[0]?.user?.value,\n }\n\n const lockOwnerID =\n typeof lockedDocument.docs[0]?.user?.value === 'object'\n ? lockedDocument.docs[0]?.user?.value?.id\n : lockedDocument.docs[0]?.user?.value\n // Should only update doc if the incoming / current user is also the owner of the locked doc\n if (updateLastEdited && req.user && lockOwnerID === req.user.id) {\n await req.payload.db.updateOne({\n id: lockedDocument.docs[0].id,\n collection: 'payload-locked-documents',\n data: {},\n returning: false,\n })\n }\n } else {\n // If NO ACTIVE lock document exists, first delete any expired locks and then create a fresh lock\n // Where updatedAt is older than the duration that is specified in the config\n let deleteExpiredLocksQuery\n\n if (collectionSlug) {\n deleteExpiredLocksQuery = {\n and: [\n { 'document.relationTo': { equals: collectionSlug } },\n {\n updatedAt: {\n less_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n },\n ],\n }\n } else if (globalSlug) {\n deleteExpiredLocksQuery = {\n and: [\n { globalSlug: { equals: globalSlug } },\n {\n updatedAt: {\n less_than: new Date(now - lockDurationInMilliseconds).toISOString(),\n },\n },\n ],\n }\n }\n\n await req.payload.db.deleteMany({\n collection: 'payload-locked-documents',\n where: deleteExpiredLocksQuery,\n })\n\n await req.payload.db.create({\n collection: 'payload-locked-documents',\n data: {\n document: collectionSlug\n ? {\n relationTo: collectionSlug,\n value: id,\n }\n : undefined,\n globalSlug: globalSlug ? globalSlug : undefined,\n user: {\n relationTo: req.user.collection,\n value: req.user.id,\n },\n },\n returning: false,\n })\n\n result = {\n isLocked: true,\n lastEditedAt: new Date().toISOString(),\n user: req.user,\n }\n }\n }\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
@@ -11,6 +11,7 @@ export declare const getLivePreviewConfig: ({ collectionConfig, config, globalCo
11
11
  name: string;
12
12
  width: number | string;
13
13
  }[];
14
+ openByDefault?: boolean;
14
15
  url?: ((args: {
15
16
  collectionConfig?: import("payload").SanitizedCollectionConfig;
16
17
  data: Record<string, any>;
@@ -1 +1 @@
1
- {"version":3,"file":"handleLivePreview.d.ts","sourceRoot":"","sources":["../../src/utilities/handleLivePreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,eAAe,EAChB,MAAM,SAAS,CAAA;AAEhB,eAAO,MAAM,oBAAoB,GAAI,mEAKlC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,oBAAoB,EAAE,OAAO,CAAA;CAC9B;;;;;;;;wBAsHktI,CAAC;;oBAAoF,CAAC;;;;;;;CAlHvyI,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,6CAIlC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,YAAY,CAAA;CAC5B,KAAG,OAcH,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAU,+DAOrC;IACD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,GAAG,EAAE,cAAc,CAAA;CACpB,KAAG,OAAO,CAAC;IACV,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,cAAc,CAAC,EAAE,kBAAkB,CAAA;CACpC,CAqDA,CAAA"}
1
+ {"version":3,"file":"handleLivePreview.d.ts","sourceRoot":"","sources":["../../src/utilities/handleLivePreview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,eAAe,EAChB,MAAM,SAAS,CAAA;AAEhB,eAAO,MAAM,oBAAoB,GAAI,mEAKlC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,YAAY,CAAA;IAC3B,oBAAoB,EAAE,OAAO,CAAA;CAC9B;;;;;;;;;wBAsHwhJ,CAAC;;oBAAoF,CAAC;;;;;;;CAlH7mJ,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,6CAIlC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,YAAY,CAAA;CAC5B,KAAG,OAcH,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAU,+DAOrC;IACD,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,GAAG,EAAE,cAAc,CAAA;CACpB,KAAG,OAAO,CAAC;IACV,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;IACrC,cAAc,CAAC,EAAE,kBAAkB,CAAA;CACpC,CAqDA,CAAA"}
@@ -0,0 +1,16 @@
1
+ import type { RecentlyViewedItem, RecentlyViewedPreferences } from 'payload';
2
+ /**
3
+ * Maximum number of documents retained in the `recently-viewed` preference. The dashboard widget
4
+ * typically shows fewer; the extra entries act as a buffer once excluded collections are filtered.
5
+ */
6
+ export declare const recentlyViewedMaxItems = 20;
7
+ /**
8
+ * Returns a new preference value with `item` moved to the front, deduped by collection + id, and
9
+ * capped at `max`. Pure so it can be unit tested and reused as `upsertPreferences`' customMerge.
10
+ */
11
+ export declare const addRecentlyViewedItem: ({ existing, item, max, }: {
12
+ existing: RecentlyViewedPreferences | undefined;
13
+ item: RecentlyViewedItem;
14
+ max?: number;
15
+ }) => RecentlyViewedPreferences;
16
+ //# sourceMappingURL=recentlyViewed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recentlyViewed.d.ts","sourceRoot":"","sources":["../../src/utilities/recentlyViewed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAE5E;;;GAGG;AACH,eAAO,MAAM,sBAAsB,KAAK,CAAA;AAKxC;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,0BAInC;IACD,QAAQ,EAAE,yBAAyB,GAAG,SAAS,CAAA;IAC/C,IAAI,EAAE,kBAAkB,CAAA;IACxB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,KAAG,yBASH,CAAA"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Maximum number of documents retained in the `recently-viewed` preference. The dashboard widget
3
+ * typically shows fewer; the extra entries act as a buffer once excluded collections are filtered.
4
+ */export const recentlyViewedMaxItems = 20;
5
+ const isSameDocument = (a, b) => a.collectionSlug === b.collectionSlug && String(a.id) === String(b.id);
6
+ /**
7
+ * Returns a new preference value with `item` moved to the front, deduped by collection + id, and
8
+ * capped at `max`. Pure so it can be unit tested and reused as `upsertPreferences`' customMerge.
9
+ */
10
+ export const addRecentlyViewedItem = ({
11
+ existing,
12
+ item,
13
+ max = recentlyViewedMaxItems
14
+ }) => {
15
+ const previousItems = Array.isArray(existing?.items) ? existing.items : [];
16
+ const withoutDuplicate = previousItems.filter(existingItem => !isSameDocument(existingItem, item));
17
+ return {
18
+ items: [item, ...withoutDuplicate].slice(0, max)
19
+ };
20
+ };
21
+ //# sourceMappingURL=recentlyViewed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recentlyViewed.js","names":["recentlyViewedMaxItems","isSameDocument","a","b","collectionSlug","String","id","addRecentlyViewedItem","existing","item","max","previousItems","Array","isArray","items","withoutDuplicate","filter","existingItem","slice"],"sources":["../../src/utilities/recentlyViewed.ts"],"sourcesContent":["import type { RecentlyViewedItem, RecentlyViewedPreferences } from 'payload'\n\n/**\n * Maximum number of documents retained in the `recently-viewed` preference. The dashboard widget\n * typically shows fewer; the extra entries act as a buffer once excluded collections are filtered.\n */\nexport const recentlyViewedMaxItems = 20\n\nconst isSameDocument = (a: RecentlyViewedItem, b: RecentlyViewedItem) =>\n a.collectionSlug === b.collectionSlug && String(a.id) === String(b.id)\n\n/**\n * Returns a new preference value with `item` moved to the front, deduped by collection + id, and\n * capped at `max`. Pure so it can be unit tested and reused as `upsertPreferences`' customMerge.\n */\nexport const addRecentlyViewedItem = ({\n existing,\n item,\n max = recentlyViewedMaxItems,\n}: {\n existing: RecentlyViewedPreferences | undefined\n item: RecentlyViewedItem\n max?: number\n}): RecentlyViewedPreferences => {\n const previousItems = Array.isArray(existing?.items) ? existing.items : []\n const withoutDuplicate = previousItems.filter(\n (existingItem) => !isSameDocument(existingItem, item),\n )\n\n return {\n items: [item, ...withoutDuplicate].slice(0, max),\n }\n}\n"],"mappings":"AAEA;;;GAIA,OAAO,MAAMA,sBAAA,GAAyB;AAEtC,MAAMC,cAAA,GAAiBA,CAACC,CAAA,EAAuBC,CAAA,KAC7CD,CAAA,CAAEE,cAAc,KAAKD,CAAA,CAAEC,cAAc,IAAIC,MAAA,CAAOH,CAAA,CAAEI,EAAE,MAAMD,MAAA,CAAOF,CAAA,CAAEG,EAAE;AAEvE;;;;AAIA,OAAO,MAAMC,qBAAA,GAAwBA,CAAC;EACpCC,QAAQ;EACRC,IAAI;EACJC,GAAA,GAAMV;AAAsB,CAK7B;EACC,MAAMW,aAAA,GAAgBC,KAAA,CAAMC,OAAO,CAACL,QAAA,EAAUM,KAAA,IAASN,QAAA,CAASM,KAAK,GAAG,EAAE;EAC1E,MAAMC,gBAAA,GAAmBJ,aAAA,CAAcK,MAAM,CAC1CC,YAAA,IAAiB,CAAChB,cAAA,CAAegB,YAAA,EAAcR,IAAA;EAGlD,OAAO;IACLK,KAAA,EAAO,CAACL,IAAA,E,GAASM,gBAAA,CAAiB,CAACG,KAAK,CAAC,GAAGR,GAAA;EAC9C;AACF","ignoreList":[]}