@payloadcms/ui 4.0.0-internal.543da65 → 4.0.0-internal.567a487

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 (1042) hide show
  1. package/dist/css/app.css +121 -0
  2. package/dist/css/forms.css +0 -6
  3. package/dist/css/spacing.css +11 -3
  4. package/dist/css/z-index.css +10 -0
  5. package/dist/elements/APIKeyInput/index.css +4 -4
  6. package/dist/elements/AddNewRelation/index.css +0 -1
  7. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  8. package/dist/elements/AppHeader/index.css +7 -18
  9. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  10. package/dist/elements/AppHeader/index.js +12 -9
  11. package/dist/elements/AppHeader/index.js.map +1 -1
  12. package/dist/elements/ArrayAction/index.d.ts +3 -0
  13. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +83 -29
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.d.ts.map +1 -1
  17. package/dist/elements/Autosave/index.js +3 -0
  18. package/dist/elements/Autosave/index.js.map +1 -1
  19. package/dist/elements/BranchSelector/NewBranchModal/index.css +46 -0
  20. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts +12 -0
  21. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts.map +1 -0
  22. package/dist/elements/BranchSelector/NewBranchModal/index.js +174 -0
  23. package/dist/elements/BranchSelector/NewBranchModal/index.js.map +1 -0
  24. package/dist/elements/BranchSelector/index.css +172 -0
  25. package/dist/elements/BranchSelector/index.d.ts +13 -0
  26. package/dist/elements/BranchSelector/index.d.ts.map +1 -0
  27. package/dist/elements/BranchSelector/index.js +255 -0
  28. package/dist/elements/BranchSelector/index.js.map +1 -0
  29. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  30. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  31. package/dist/elements/BulkUpload/FileSidebar/index.css +4 -0
  32. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  33. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  34. package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
  35. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  36. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/FormsManager/index.js +7 -3
  38. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  39. package/dist/elements/Button/index.css +2 -2
  40. package/dist/elements/Button/index.d.ts.map +1 -1
  41. package/dist/elements/ChangeSummary/index.css +18 -0
  42. package/dist/elements/ChangeSummary/index.d.ts +28 -0
  43. package/dist/elements/ChangeSummary/index.d.ts.map +1 -0
  44. package/dist/elements/ChangeSummary/index.js +147 -0
  45. package/dist/elements/ChangeSummary/index.js.map +1 -0
  46. package/dist/elements/ClipboardAction/ClipboardActionLabel.d.ts.map +1 -1
  47. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
  48. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
  49. package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
  50. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  51. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +120 -0
  52. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +1 -0
  53. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  54. package/dist/elements/ClipboardAction/index.js +17 -1
  55. package/dist/elements/ClipboardAction/index.js.map +1 -1
  56. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +144 -0
  57. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +1 -0
  58. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  59. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  60. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
  61. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  62. package/dist/elements/ClipboardAction/types.d.ts +3 -0
  63. package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
  64. package/dist/elements/ClipboardAction/types.js.map +1 -1
  65. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
  66. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
  67. package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
  68. package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
  69. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  70. package/dist/elements/CodeEditor/index.css +5 -5
  71. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  72. package/dist/elements/ColumnSelection/Popup.js +5 -1
  73. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  74. package/dist/elements/Combobox/index.css +84 -23
  75. package/dist/elements/Combobox/index.d.ts +21 -0
  76. package/dist/elements/Combobox/index.d.ts.map +1 -1
  77. package/dist/elements/Combobox/index.js +66 -21
  78. package/dist/elements/Combobox/index.js.map +1 -1
  79. package/dist/elements/CommandPalette/index.css +0 -7
  80. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  81. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  82. package/dist/elements/CopyToClipboard/index.js +10 -8
  83. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  84. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  85. package/dist/elements/CreateDocumentButton/index.js +4 -1
  86. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  87. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  88. package/dist/elements/DatePicker/DatePicker.js +1 -0
  89. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  90. package/dist/elements/DatePicker/getFormattedLocale.d.ts.map +1 -1
  91. package/dist/elements/DatePicker/index.css +1 -1
  92. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  93. package/dist/elements/DeleteDocument/index.js +24 -2
  94. package/dist/elements/DeleteDocument/index.js.map +1 -1
  95. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  96. package/dist/elements/DeleteMany/index.js +4 -1
  97. package/dist/elements/DeleteMany/index.js.map +1 -1
  98. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -1
  99. package/dist/elements/DocumentControls/index.css +0 -2
  100. package/dist/elements/DocumentControls/index.d.ts +2 -2
  101. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  102. package/dist/elements/DocumentControls/index.js.map +1 -1
  103. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +2 -2
  104. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  105. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  106. package/dist/elements/DocumentHeader/Tabs/Tab/index.css +5 -3
  107. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.css +12 -0
  108. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts +12 -0
  109. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts.map +1 -0
  110. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js +83 -0
  111. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js.map +1 -0
  112. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts +14 -0
  113. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts.map +1 -0
  114. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js +28 -0
  115. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js.map +1 -0
  116. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  117. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +32 -1
  118. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  119. package/dist/elements/DocumentLocked/index.d.ts +2 -2
  120. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  121. package/dist/elements/DocumentLocked/index.js.map +1 -1
  122. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  123. package/dist/elements/Drawer/index.css +10 -4
  124. package/dist/elements/Drawer/index.d.ts.map +1 -1
  125. package/dist/elements/Drawer/index.js +1 -0
  126. package/dist/elements/Drawer/index.js.map +1 -1
  127. package/dist/elements/Drawer/useDrawerSlug.d.ts.map +1 -1
  128. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -1
  129. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  130. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  131. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  132. package/dist/elements/DuplicateDocument/index.js +6 -1
  133. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  134. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  135. package/dist/elements/EditMany/DrawerContent.js +6 -3
  136. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  137. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  138. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  139. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  140. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
  141. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
  142. package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
  143. package/dist/elements/FileManager/FilePreview/index.css +3 -3
  144. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  145. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  146. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  147. package/dist/elements/FileManager/index.css +36 -23
  148. package/dist/elements/FileManager/index.d.ts +1 -1
  149. package/dist/elements/FileManager/index.d.ts.map +1 -1
  150. package/dist/elements/FileManager/index.js +15 -4
  151. package/dist/elements/FileManager/index.js.map +1 -1
  152. package/dist/elements/HTMLDiff/diff/index.d.ts.map +1 -1
  153. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  154. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
  155. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  156. package/dist/elements/Hierarchy/ColumnBrowser/index.js +4 -1
  157. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  158. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  159. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +4 -1
  160. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  161. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +2 -1
  162. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  163. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +2 -0
  164. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  165. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  166. package/dist/elements/Hierarchy/Modal/index.js +3 -0
  167. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  168. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  169. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  170. package/dist/elements/Hierarchy/MoveMany/index.js +4 -1
  171. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  172. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  173. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +3 -0
  174. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  175. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  176. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
  177. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  178. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  179. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  180. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  181. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +1 -1
  182. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  183. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
  184. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  185. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  186. package/dist/elements/Hierarchy/Tree/useChildren.js +4 -1
  187. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  188. package/dist/elements/IDLabel/index.css +6 -0
  189. package/dist/elements/IDLabel/index.d.ts +1 -1
  190. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  191. package/dist/elements/IDLabel/index.js +16 -21
  192. package/dist/elements/IDLabel/index.js.map +1 -1
  193. package/dist/elements/InputStepper/index.css +0 -1
  194. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  195. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  196. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  197. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  198. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  199. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  200. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  201. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  202. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +6 -2
  203. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  204. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  205. package/dist/elements/Locked/index.css +0 -5
  206. package/dist/elements/Locked/index.d.ts +2 -2
  207. package/dist/elements/Locked/index.d.ts.map +1 -1
  208. package/dist/elements/Locked/index.js +38 -19
  209. package/dist/elements/Locked/index.js.map +1 -1
  210. package/dist/elements/MergeBranch/context.d.ts +67 -0
  211. package/dist/elements/MergeBranch/context.d.ts.map +1 -0
  212. package/dist/elements/MergeBranch/context.js +47 -0
  213. package/dist/elements/MergeBranch/context.js.map +1 -0
  214. package/dist/elements/MergeBranch/index.css +136 -0
  215. package/dist/elements/MergeBranch/index.d.ts +15 -0
  216. package/dist/elements/MergeBranch/index.d.ts.map +1 -0
  217. package/dist/elements/MergeBranch/index.js +545 -0
  218. package/dist/elements/MergeBranch/index.js.map +1 -0
  219. package/dist/elements/MergeBranch/provider.d.ts +12 -0
  220. package/dist/elements/MergeBranch/provider.d.ts.map +1 -0
  221. package/dist/elements/MergeBranch/provider.js +19 -0
  222. package/dist/elements/MergeBranch/provider.js.map +1 -0
  223. package/dist/elements/MergeBranch/slug.d.ts +9 -0
  224. package/dist/elements/MergeBranch/slug.d.ts.map +1 -0
  225. package/dist/elements/MergeBranch/slug.js +8 -0
  226. package/dist/elements/MergeBranch/slug.js.map +1 -0
  227. package/dist/elements/MiniCarousel/index.css +39 -37
  228. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  229. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  230. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  231. package/dist/elements/Nav/SidebarTabs/index.css +0 -5
  232. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  233. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  234. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
  235. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  236. package/dist/elements/Nav/context.js +2 -2
  237. package/dist/elements/Nav/context.js.map +1 -1
  238. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  239. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -1
  240. package/dist/elements/Nav/getNavPrefs.js +14 -46
  241. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  242. package/dist/elements/Nav/index.css +0 -5
  243. package/dist/elements/NavGroup/index.css +0 -1
  244. package/dist/elements/NavGroup/index.js +1 -1
  245. package/dist/elements/NavGroup/index.js.map +1 -1
  246. package/dist/elements/Pagination/index.css +5 -0
  247. package/dist/elements/Pagination/index.d.ts.map +1 -1
  248. package/dist/elements/Pagination/index.js +21 -21
  249. package/dist/elements/Pagination/index.js.map +1 -1
  250. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  251. package/dist/elements/PermanentlyDeleteButton/index.js +4 -1
  252. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  253. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  254. package/dist/elements/Popup/index.js +1 -1
  255. package/dist/elements/Popup/index.js.map +1 -1
  256. package/dist/elements/PreviewButton/index.d.ts +1 -2
  257. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  258. package/dist/elements/PreviewButton/index.js +11 -5
  259. package/dist/elements/PreviewButton/index.js.map +1 -1
  260. package/dist/elements/PreviewSizes/index.css +8 -9
  261. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  262. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -1
  263. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  264. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  265. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  266. package/dist/elements/PublishButton/index.js +6 -2
  267. package/dist/elements/PublishButton/index.js.map +1 -1
  268. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  269. package/dist/elements/PublishMany/DrawerContent.js +4 -1
  270. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  271. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  272. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  273. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  274. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts +7 -0
  275. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -0
  276. package/dist/elements/ReactSelect/DefaultMenuPortal.js +120 -0
  277. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -0
  278. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  279. package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
  280. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -1
  281. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +1 -1
  282. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -1
  283. package/dist/elements/ReactSelect/getMenuListStyles.js +13 -5
  284. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -1
  285. package/dist/elements/ReactSelect/getMenuStyles.d.ts +10 -0
  286. package/dist/elements/ReactSelect/getMenuStyles.d.ts.map +1 -0
  287. package/dist/elements/ReactSelect/getMenuStyles.js +21 -0
  288. package/dist/elements/ReactSelect/getMenuStyles.js.map +1 -0
  289. package/dist/elements/ReactSelect/index.css +8 -4
  290. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  291. package/dist/elements/ReactSelect/index.js +24 -101
  292. package/dist/elements/ReactSelect/index.js.map +1 -1
  293. package/dist/elements/ReactSelect/types.d.ts +1 -2
  294. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  295. package/dist/elements/ReactSelect/types.js.map +1 -1
  296. package/dist/elements/RelationshipTable/AddNewButton.d.ts +2 -2
  297. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  298. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  299. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  300. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  301. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  302. package/dist/elements/RelationshipTable/index.css +0 -2
  303. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  304. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  305. package/dist/elements/RelationshipTable/index.js +41 -5
  306. package/dist/elements/RelationshipTable/index.js.map +1 -1
  307. package/dist/elements/RenderTitle/index.css +4 -0
  308. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  309. package/dist/elements/RenderTitle/index.js +18 -13
  310. package/dist/elements/RenderTitle/index.js.map +1 -1
  311. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  312. package/dist/elements/RestoreButton/index.js +4 -1
  313. package/dist/elements/RestoreButton/index.js.map +1 -1
  314. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  315. package/dist/elements/RestoreMany/index.js +3 -0
  316. package/dist/elements/RestoreMany/index.js.map +1 -1
  317. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  318. package/dist/elements/SaveDraftButton/index.js +15 -2
  319. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  320. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  321. package/dist/elements/SchedulePublishButton/index.js +7 -1
  322. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  323. package/dist/elements/Search/ListSearchFilter/index.d.ts.map +1 -1
  324. package/dist/elements/Search/ListSearchFilter/index.js +1 -0
  325. package/dist/elements/Search/ListSearchFilter/index.js.map +1 -1
  326. package/dist/elements/Search/SearchInput/index.d.ts +2 -0
  327. package/dist/elements/Search/SearchInput/index.d.ts.map +1 -1
  328. package/dist/elements/Search/SearchInput/index.js +21 -18
  329. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  330. package/dist/elements/SelectAll/index.css +3 -1
  331. package/dist/elements/SelectRow/index.d.ts +5 -4
  332. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  333. package/dist/elements/SelectRow/index.js +10 -7
  334. package/dist/elements/SelectRow/index.js.map +1 -1
  335. package/dist/elements/SidebarToggle/index.css +0 -17
  336. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  337. package/dist/elements/SortColumn/index.js +42 -38
  338. package/dist/elements/SortColumn/index.js.map +1 -1
  339. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  340. package/dist/elements/SortHeader/index.js +29 -26
  341. package/dist/elements/SortHeader/index.js.map +1 -1
  342. package/dist/elements/Status/index.d.ts.map +1 -1
  343. package/dist/elements/Status/index.js +16 -3
  344. package/dist/elements/Status/index.js.map +1 -1
  345. package/dist/elements/StepNav/index.css +71 -14
  346. package/dist/elements/StepNav/index.d.ts.map +1 -1
  347. package/dist/elements/StepNav/index.js +135 -69
  348. package/dist/elements/StepNav/index.js.map +1 -1
  349. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.css +34 -0
  350. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts +13 -0
  351. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts.map +1 -0
  352. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js +51 -0
  353. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js.map +1 -0
  354. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  355. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  356. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  357. package/dist/elements/Table/DefaultCell/index.js +3 -11
  358. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  359. package/dist/elements/Table/OrderableRow.d.ts +3 -1
  360. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  361. package/dist/elements/Table/OrderableRow.js +17 -1
  362. package/dist/elements/Table/OrderableRow.js.map +1 -1
  363. package/dist/elements/Table/OrderableRowDragPreview.d.ts.map +1 -1
  364. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  365. package/dist/elements/Table/OrderableTable.js +22 -3
  366. package/dist/elements/Table/OrderableTable.js.map +1 -1
  367. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  368. package/dist/elements/Table/RelationshipProvider/index.js +29 -23
  369. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  370. package/dist/elements/Table/index.css +19 -0
  371. package/dist/elements/TableSection/index.css +0 -1
  372. package/dist/elements/Tabs/index.d.ts.map +1 -1
  373. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -1
  374. package/dist/elements/Thumbnail/index.d.ts +1 -1
  375. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  376. package/dist/elements/Thumbnail/index.js.map +1 -1
  377. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  378. package/dist/elements/TimezonePicker/index.js +5 -1
  379. package/dist/elements/TimezonePicker/index.js.map +1 -1
  380. package/dist/elements/Tooltip/index.css +15 -34
  381. package/dist/elements/Tooltip/index.d.ts +11 -3
  382. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  383. package/dist/elements/Tooltip/index.js +151 -85
  384. package/dist/elements/Tooltip/index.js.map +1 -1
  385. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  386. package/dist/elements/UnpublishButton/index.js +4 -1
  387. package/dist/elements/UnpublishButton/index.js.map +1 -1
  388. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  389. package/dist/elements/UnpublishMany/DrawerContent.js +4 -1
  390. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  391. package/dist/elements/Upload/index.css +0 -5
  392. package/dist/elements/Upload/index.d.ts.map +1 -1
  393. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -1
  394. package/dist/elements/UserMenu/SubMenuHeader/index.js +8 -9
  395. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -1
  396. package/dist/elements/UserMenu/index.css +26 -1
  397. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  398. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +3 -0
  399. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  400. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  401. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.d.ts.map +1 -1
  402. package/dist/elements/WhereBuilder/Condition/validOperators.d.ts.map +1 -1
  403. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  404. package/dist/exports/client/index.d.ts +22 -2
  405. package/dist/exports/client/index.d.ts.map +1 -1
  406. package/dist/exports/client/index.js +1 -1
  407. package/dist/exports/client/index.js.map +3 -3
  408. package/dist/exports/layouts.d.ts +1 -0
  409. package/dist/exports/layouts.d.ts.map +1 -1
  410. package/dist/exports/layouts.js +1 -0
  411. package/dist/exports/layouts.js.map +1 -1
  412. package/dist/exports/shared/index.d.ts +1 -0
  413. package/dist/exports/shared/index.d.ts.map +1 -1
  414. package/dist/exports/shared/index.js +2 -2
  415. package/dist/exports/shared/index.js.map +4 -4
  416. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  417. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  418. package/dist/fields/Array/ArrayRow.js +99 -160
  419. package/dist/fields/Array/ArrayRow.js.map +1 -1
  420. package/dist/fields/Array/index.d.ts +1 -1
  421. package/dist/fields/Array/index.d.ts.map +1 -1
  422. package/dist/fields/Array/index.js +45 -14
  423. package/dist/fields/Array/index.js.map +1 -1
  424. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  425. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  426. package/dist/fields/Blocks/BlockRow.js +136 -195
  427. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  428. package/dist/fields/Blocks/RowActions.d.ts +3 -0
  429. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  430. package/dist/fields/Blocks/RowActions.js +26 -20
  431. package/dist/fields/Blocks/RowActions.js.map +1 -1
  432. package/dist/fields/Blocks/index.d.ts +1 -1
  433. package/dist/fields/Blocks/index.d.ts.map +1 -1
  434. package/dist/fields/Blocks/index.js +44 -13
  435. package/dist/fields/Blocks/index.js.map +1 -1
  436. package/dist/fields/Checkbox/Input.d.ts +2 -0
  437. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  438. package/dist/fields/Checkbox/Input.js +32 -26
  439. package/dist/fields/Checkbox/Input.js.map +1 -1
  440. package/dist/fields/Checkbox/index.css +37 -73
  441. package/dist/fields/Checkbox/index.d.ts +1 -1
  442. package/dist/fields/Code/index.css +1 -1
  443. package/dist/fields/Code/index.d.ts +2 -2
  444. package/dist/fields/Collapsible/index.d.ts +1 -1
  445. package/dist/fields/DateTime/index.d.ts +1 -1
  446. package/dist/fields/Email/index.d.ts +1 -1
  447. package/dist/fields/FieldError/index.css +0 -9
  448. package/dist/fields/FieldError/index.d.ts.map +1 -1
  449. package/dist/fields/FieldError/index.js +19 -9
  450. package/dist/fields/FieldError/index.js.map +1 -1
  451. package/dist/fields/Group/index.d.ts +2 -2
  452. package/dist/fields/JSON/index.d.ts +1 -1
  453. package/dist/fields/Join/index.css +9 -0
  454. package/dist/fields/Join/index.d.ts +1 -1
  455. package/dist/fields/Join/index.d.ts.map +1 -1
  456. package/dist/fields/Join/index.js +13 -9
  457. package/dist/fields/Join/index.js.map +1 -1
  458. package/dist/fields/Number/index.d.ts +1 -1
  459. package/dist/fields/Password/types.d.ts +3 -3
  460. package/dist/fields/Password/types.d.ts.map +1 -1
  461. package/dist/fields/Password/types.js.map +1 -1
  462. package/dist/fields/Point/index.d.ts +1 -1
  463. package/dist/fields/RadioGroup/index.css +0 -7
  464. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  465. package/dist/fields/Relationship/Input.js +37 -15
  466. package/dist/fields/Relationship/Input.js.map +1 -1
  467. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  468. package/dist/fields/Relationship/index.d.ts +1 -1
  469. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  470. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  471. package/dist/fields/Row/index.d.ts +1 -1
  472. package/dist/fields/Select/index.d.ts +1 -1
  473. package/dist/fields/Select/index.d.ts.map +1 -1
  474. package/dist/fields/Slug/index.css +0 -1
  475. package/dist/fields/Slug/index.d.ts.map +1 -1
  476. package/dist/fields/Slug/index.js +75 -111
  477. package/dist/fields/Slug/index.js.map +1 -1
  478. package/dist/fields/Tabs/index.d.ts +1 -1
  479. package/dist/fields/Text/index.d.ts +1 -1
  480. package/dist/fields/Text/types.d.ts +2 -2
  481. package/dist/fields/Text/types.d.ts.map +1 -1
  482. package/dist/fields/Text/types.js.map +1 -1
  483. package/dist/fields/Textarea/index.d.ts +1 -1
  484. package/dist/fields/Upload/Input.d.ts.map +1 -1
  485. package/dist/fields/Upload/Input.js +4 -1
  486. package/dist/fields/Upload/Input.js.map +1 -1
  487. package/dist/fields/Upload/index.css +19 -4
  488. package/dist/fields/mergeFieldStyles.d.ts +1 -1
  489. package/dist/fields/mergeFieldStyles.d.ts.map +1 -1
  490. package/dist/forms/Form/context.d.ts.map +1 -1
  491. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  492. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  493. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  494. package/dist/forms/Form/fieldReducer.js +3 -1
  495. package/dist/forms/Form/fieldReducer.js.map +1 -1
  496. package/dist/forms/Form/index.d.ts.map +1 -1
  497. package/dist/forms/Form/index.js +12 -15
  498. package/dist/forms/Form/index.js.map +1 -1
  499. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  500. package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
  501. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  502. package/dist/forms/Form/rows.d.ts.map +1 -1
  503. package/dist/forms/Form/types.d.ts +1 -1
  504. package/dist/forms/Form/types.d.ts.map +1 -1
  505. package/dist/forms/Form/types.js.map +1 -1
  506. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  507. package/dist/forms/RenderFields/index.css +16 -2
  508. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  509. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  510. package/dist/forms/WatchChildErrors/index.js +2 -2
  511. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  512. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  513. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  514. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  515. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  516. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  517. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  518. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  519. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  520. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  521. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
  522. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  523. package/dist/forms/useField/index.d.ts.map +1 -1
  524. package/dist/forms/withCondition/index.d.ts +1 -1
  525. package/dist/forms/withCondition/index.d.ts.map +1 -1
  526. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  527. package/dist/hooks/useDelay.d.ts.map +1 -1
  528. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -1
  529. package/dist/hooks/useHotkey.d.ts.map +1 -1
  530. package/dist/hooks/useIntersect.d.ts.map +1 -1
  531. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  532. package/dist/hooks/usePayloadAPI.js +44 -40
  533. package/dist/hooks/usePayloadAPI.js.map +1 -1
  534. package/dist/hooks/usePopupWindow.d.ts +1 -1
  535. package/dist/hooks/usePopupWindow.d.ts.map +1 -1
  536. package/dist/hooks/useRelatedCollections.d.ts.map +1 -1
  537. package/dist/hooks/useResize.d.ts.map +1 -1
  538. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  539. package/dist/icons/Branch/index.css +5 -0
  540. package/dist/icons/Branch/index.d.ts +7 -0
  541. package/dist/icons/Branch/index.d.ts.map +1 -0
  542. package/dist/icons/Branch/index.js +25 -0
  543. package/dist/icons/Branch/index.js.map +1 -0
  544. package/dist/icons/Edit/index.d.ts +0 -1
  545. package/dist/icons/Edit/index.d.ts.map +1 -1
  546. package/dist/icons/Edit/index.js +4 -4
  547. package/dist/icons/Edit/index.js.map +1 -1
  548. package/dist/layouts/Root/index.d.ts +1 -1
  549. package/dist/layouts/Root/index.d.ts.map +1 -1
  550. package/dist/layouts/Root/index.js +15 -5
  551. package/dist/layouts/Root/index.js.map +1 -1
  552. package/dist/layouts/Root/index.spec.js +20 -0
  553. package/dist/layouts/Root/index.spec.js.map +1 -0
  554. package/dist/layouts/Root/viewport.d.ts +5 -0
  555. package/dist/layouts/Root/viewport.d.ts.map +1 -0
  556. package/dist/layouts/Root/viewport.js +17 -0
  557. package/dist/layouts/Root/viewport.js.map +1 -0
  558. package/dist/providers/Actions/index.d.ts +1 -0
  559. package/dist/providers/Actions/index.d.ts.map +1 -1
  560. package/dist/providers/Actions/index.js +43 -11
  561. package/dist/providers/Actions/index.js.map +1 -1
  562. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  563. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  564. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  565. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  566. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  567. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  568. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  569. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  570. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  571. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  572. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  573. package/dist/providers/Auth/authSessionRequests.js +119 -0
  574. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  575. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  576. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  577. package/dist/providers/Auth/index.d.ts +5 -59
  578. package/dist/providers/Auth/index.d.ts.map +1 -1
  579. package/dist/providers/Auth/index.js +283 -135
  580. package/dist/providers/Auth/index.js.map +1 -1
  581. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  582. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  583. package/dist/providers/Auth/sessionActivity.js +49 -0
  584. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  585. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  586. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  587. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  588. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  589. package/dist/providers/Auth/sessionTiming.js +18 -0
  590. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  591. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  592. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  593. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  594. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  595. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  596. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  597. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  598. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  599. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  600. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  601. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  602. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  603. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  604. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  605. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  606. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  607. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  608. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  609. package/dist/providers/Auth/types.d.ts +65 -0
  610. package/dist/providers/Auth/types.d.ts.map +1 -0
  611. package/dist/providers/Auth/types.js +2 -0
  612. package/dist/providers/Auth/types.js.map +1 -0
  613. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  614. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  615. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  616. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  617. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  618. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  619. package/dist/providers/Branch/index.d.ts +68 -0
  620. package/dist/providers/Branch/index.d.ts.map +1 -0
  621. package/dist/providers/Branch/index.js +193 -0
  622. package/dist/providers/Branch/index.js.map +1 -0
  623. package/dist/providers/Branch/index.server.d.ts +14 -0
  624. package/dist/providers/Branch/index.server.d.ts.map +1 -0
  625. package/dist/providers/Branch/index.server.js +125 -0
  626. package/dist/providers/Branch/index.server.js.map +1 -0
  627. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  628. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  629. package/dist/providers/DocumentInfo/index.js +5 -1
  630. package/dist/providers/DocumentInfo/index.js.map +1 -1
  631. package/dist/providers/DocumentInfo/types.d.ts +5 -5
  632. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  633. package/dist/providers/DocumentInfo/types.js.map +1 -1
  634. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +2 -1
  635. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  636. package/dist/providers/DocumentInfo/useGetDocPermissions.js +3 -1
  637. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  638. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  639. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  640. package/dist/providers/DocumentTitle/index.js +2 -0
  641. package/dist/providers/DocumentTitle/index.js.map +1 -1
  642. package/dist/providers/Embed/index.d.ts +24 -0
  643. package/dist/providers/Embed/index.d.ts.map +1 -0
  644. package/dist/providers/Embed/index.js +105 -0
  645. package/dist/providers/Embed/index.js.map +1 -0
  646. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  647. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  648. package/dist/providers/FormErrorHandler/index.js +6 -0
  649. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  650. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  651. package/dist/providers/Hierarchy/index.js +4 -1
  652. package/dist/providers/Hierarchy/index.js.map +1 -1
  653. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  654. package/dist/providers/ListQuery/index.js +8 -1
  655. package/dist/providers/ListQuery/index.js.map +1 -1
  656. package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
  657. package/dist/providers/ListQuery/sanitizeQuery.d.ts.map +1 -1
  658. package/dist/providers/LivePreview/sizeReducer.d.ts +1 -1
  659. package/dist/providers/LivePreview/sizeReducer.d.ts.map +1 -1
  660. package/dist/providers/Locale/index.d.ts.map +1 -1
  661. package/dist/providers/Locale/index.js +41 -36
  662. package/dist/providers/Locale/index.js.map +1 -1
  663. package/dist/providers/Preferences/index.d.ts +3 -1
  664. package/dist/providers/Preferences/index.d.ts.map +1 -1
  665. package/dist/providers/Preferences/index.js +9 -3
  666. package/dist/providers/Preferences/index.js.map +1 -1
  667. package/dist/providers/Root/index.d.ts +1 -0
  668. package/dist/providers/Root/index.d.ts.map +1 -1
  669. package/dist/providers/Root/index.js +37 -31
  670. package/dist/providers/Root/index.js.map +1 -1
  671. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  672. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  673. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  674. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  675. package/dist/providers/RouteTransition/index.d.ts +2 -0
  676. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  677. package/dist/providers/RouteTransition/index.js +42 -14
  678. package/dist/providers/RouteTransition/index.js.map +1 -1
  679. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  680. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  681. package/dist/providers/SidebarTabs/index.js.map +1 -1
  682. package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -1
  683. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.d.ts.map +1 -1
  684. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -1
  685. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  686. package/dist/providers/TableColumns/buildColumnState/index.js +1 -1
  687. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  688. package/dist/providers/TableColumns/buildColumnState/index.spec.js +40 -0
  689. package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +1 -0
  690. package/dist/providers/TableColumns/getInitialColumns.d.ts +1 -1
  691. package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -1
  692. package/dist/providers/Theme/index.d.ts +5 -2
  693. package/dist/providers/Theme/index.d.ts.map +1 -1
  694. package/dist/providers/Theme/index.js +109 -96
  695. package/dist/providers/Theme/index.js.map +1 -1
  696. package/dist/providers/Theme/shared.d.ts +3 -0
  697. package/dist/providers/Theme/shared.d.ts.map +1 -0
  698. package/dist/providers/Theme/shared.js +2 -0
  699. package/dist/providers/Theme/shared.js.map +1 -0
  700. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  701. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  702. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  703. package/dist/providers/UploadHandlers/index.js +102 -42
  704. package/dist/providers/UploadHandlers/index.js.map +1 -1
  705. package/dist/styles.css +23 -10
  706. package/dist/templates/Default/index.d.ts +1 -0
  707. package/dist/templates/Default/index.d.ts.map +1 -1
  708. package/dist/templates/Default/index.js +44 -36
  709. package/dist/templates/Default/index.js.map +1 -1
  710. package/dist/utilities/api.d.ts.map +1 -1
  711. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  712. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  713. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  714. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  715. package/dist/utilities/buildFormState.d.ts +2 -2
  716. package/dist/utilities/buildFormState.d.ts.map +1 -1
  717. package/dist/utilities/buildFormState.js.map +1 -1
  718. package/dist/utilities/checkDependencies.d.ts.map +1 -1
  719. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  720. package/dist/utilities/combineFieldLabel.js +5 -1
  721. package/dist/utilities/combineFieldLabel.js.map +1 -1
  722. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  723. package/dist/utilities/filterOutUploadFields.d.ts.map +1 -1
  724. package/dist/utilities/findLocaleFromCode.d.ts.map +1 -1
  725. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  726. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  727. package/dist/utilities/formatDocTitle/formatRelationshipTitle.d.ts.map +1 -1
  728. package/dist/utilities/formatDocTitle/index.d.ts +1 -1
  729. package/dist/utilities/formatDocTitle/index.d.ts.map +1 -1
  730. package/dist/utilities/formatDocTitle/index.js +1 -1
  731. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  732. package/dist/utilities/formatFields.d.ts.map +1 -1
  733. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  734. package/dist/utilities/generateFieldID.d.ts +1 -1
  735. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  736. package/dist/utilities/generateFieldID.js +2 -2
  737. package/dist/utilities/generateFieldID.js.map +1 -1
  738. package/dist/utilities/getAdminPreferences.d.ts +14 -0
  739. package/dist/utilities/getAdminPreferences.d.ts.map +1 -0
  740. package/dist/utilities/getAdminPreferences.js +22 -0
  741. package/dist/utilities/getAdminPreferences.js.map +1 -0
  742. package/dist/utilities/getColumns.d.ts.map +1 -1
  743. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
  744. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  745. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  746. package/dist/utilities/getDocumentPermissions.d.ts.map +1 -1
  747. package/dist/utilities/getGlobalData.d.ts +2 -2
  748. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  749. package/dist/utilities/getGlobalData.js.map +1 -1
  750. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  751. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  752. package/dist/utilities/getLanguageDir.d.ts +12 -0
  753. package/dist/utilities/getLanguageDir.d.ts.map +1 -0
  754. package/dist/utilities/getLanguageDir.js +12 -0
  755. package/dist/utilities/getLanguageDir.js.map +1 -0
  756. package/dist/utilities/getOffsetTop.d.ts.map +1 -1
  757. package/dist/utilities/getRequestBranch.d.ts +20 -0
  758. package/dist/utilities/getRequestBranch.d.ts.map +1 -0
  759. package/dist/utilities/getRequestBranch.js +35 -0
  760. package/dist/utilities/getRequestBranch.js.map +1 -0
  761. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  762. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  763. package/dist/utilities/getRequestEmbed.js +10 -0
  764. package/dist/utilities/getRequestEmbed.js.map +1 -0
  765. package/dist/utilities/getRequestHighContrast.d.ts.map +1 -1
  766. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  767. package/dist/utilities/getRequestTheme.d.ts +1 -1
  768. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  769. package/dist/utilities/getRequestTheme.js +1 -1
  770. package/dist/utilities/getRequestTheme.js.map +1 -1
  771. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -1
  772. package/dist/utilities/getSupportedMonacoLocale.d.ts.map +1 -1
  773. package/dist/utilities/getVersions.d.ts +6 -1
  774. package/dist/utilities/getVersions.d.ts.map +1 -1
  775. package/dist/utilities/getVersions.js +5 -0
  776. package/dist/utilities/getVersions.js.map +1 -1
  777. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  778. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  779. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  780. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  781. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  782. package/dist/utilities/handlePreview.d.ts.map +1 -1
  783. package/dist/utilities/handleServerFunctions.d.ts +32 -8
  784. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  785. package/dist/utilities/handleServerFunctions.js +17 -37
  786. package/dist/utilities/handleServerFunctions.js.map +1 -1
  787. package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -1
  788. package/dist/utilities/handleTakeOver.d.ts +5 -5
  789. package/dist/utilities/handleTakeOver.d.ts.map +1 -1
  790. package/dist/utilities/handleTakeOver.js.map +1 -1
  791. package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +1 -1
  792. package/dist/utilities/hasSavePermission.d.ts.map +1 -1
  793. package/dist/utilities/initReq.d.ts.map +1 -1
  794. package/dist/utilities/initReq.js +8 -0
  795. package/dist/utilities/initReq.js.map +1 -1
  796. package/dist/utilities/isClientUserObject.d.ts +2 -2
  797. package/dist/utilities/isClientUserObject.d.ts.map +1 -1
  798. package/dist/utilities/isClientUserObject.js.map +1 -1
  799. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  800. package/dist/utilities/isEditing.d.ts.map +1 -1
  801. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  802. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  803. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  804. package/dist/utilities/matchesSearchQuery.d.ts +12 -0
  805. package/dist/utilities/matchesSearchQuery.d.ts.map +1 -0
  806. package/dist/utilities/matchesSearchQuery.js +23 -0
  807. package/dist/utilities/matchesSearchQuery.js.map +1 -0
  808. package/dist/utilities/matchesSearchQuery.spec.js +87 -0
  809. package/dist/utilities/matchesSearchQuery.spec.js.map +1 -0
  810. package/dist/utilities/recentlyViewed.d.ts.map +1 -1
  811. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  812. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  813. package/dist/utilities/renderTable.d.ts +2 -2
  814. package/dist/utilities/renderTable.d.ts.map +1 -1
  815. package/dist/utilities/renderTable.js +18 -2
  816. package/dist/utilities/renderTable.js.map +1 -1
  817. package/dist/utilities/resolveFilterOptions.d.ts +1 -1
  818. package/dist/utilities/resolveFilterOptions.d.ts.map +1 -1
  819. package/dist/utilities/sanitizeFilterOptionsQuery.d.ts.map +1 -1
  820. package/dist/utilities/scheduleMergeHandler.d.ts +33 -0
  821. package/dist/utilities/scheduleMergeHandler.d.ts.map +1 -0
  822. package/dist/utilities/scheduleMergeHandler.js +119 -0
  823. package/dist/utilities/scheduleMergeHandler.js.map +1 -0
  824. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  825. package/dist/utilities/schedulePublishHandler.js +10 -0
  826. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  827. package/dist/utilities/scrollToID.d.ts.map +1 -1
  828. package/dist/utilities/selectiveCache.d.ts.map +1 -1
  829. package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
  830. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  831. package/dist/utilities/serverFunctionRegistry.js +31 -7
  832. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  833. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  834. package/dist/utilities/slugify.d.ts.map +1 -1
  835. package/dist/utilities/slugify.js +49 -6
  836. package/dist/utilities/slugify.js.map +1 -1
  837. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  838. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  839. package/dist/views/API/index.client.d.ts.map +1 -1
  840. package/dist/views/API/index.client.js +10 -2
  841. package/dist/views/API/index.client.js.map +1 -1
  842. package/dist/views/Branch/BranchChanges/index.d.ts +23 -0
  843. package/dist/views/Branch/BranchChanges/index.d.ts.map +1 -0
  844. package/dist/views/Branch/BranchChanges/index.js +150 -0
  845. package/dist/views/Branch/BranchChanges/index.js.map +1 -0
  846. package/dist/views/Branch/ChangedDocuments/index.css +118 -0
  847. package/dist/views/Branch/ChangedDocuments/index.d.ts +34 -0
  848. package/dist/views/Branch/ChangedDocuments/index.d.ts.map +1 -0
  849. package/dist/views/Branch/ChangedDocuments/index.js +233 -0
  850. package/dist/views/Branch/ChangedDocuments/index.js.map +1 -0
  851. package/dist/views/Branch/DiscardChangesButton/index.d.ts +16 -0
  852. package/dist/views/Branch/DiscardChangesButton/index.d.ts.map +1 -0
  853. package/dist/views/Branch/DiscardChangesButton/index.js +106 -0
  854. package/dist/views/Branch/DiscardChangesButton/index.js.map +1 -0
  855. package/dist/views/Branch/Manage/index.d.ts +11 -0
  856. package/dist/views/Branch/Manage/index.d.ts.map +1 -0
  857. package/dist/views/Branch/Manage/index.js +71 -0
  858. package/dist/views/Branch/Manage/index.js.map +1 -0
  859. package/dist/views/Branch/MergeChangesButton/index.d.ts +14 -0
  860. package/dist/views/Branch/MergeChangesButton/index.d.ts.map +1 -0
  861. package/dist/views/Branch/MergeChangesButton/index.js +55 -0
  862. package/dist/views/Branch/MergeChangesButton/index.js.map +1 -0
  863. package/dist/views/Branch/MergeLedger/index.css +137 -0
  864. package/dist/views/Branch/MergeLedger/index.d.ts +31 -0
  865. package/dist/views/Branch/MergeLedger/index.d.ts.map +1 -0
  866. package/dist/views/Branch/MergeLedger/index.js +211 -0
  867. package/dist/views/Branch/MergeLedger/index.js.map +1 -0
  868. package/dist/views/Branch/ScheduledMerges/index.css +83 -0
  869. package/dist/views/Branch/ScheduledMerges/index.d.ts +32 -0
  870. package/dist/views/Branch/ScheduledMerges/index.d.ts.map +1 -0
  871. package/dist/views/Branch/ScheduledMerges/index.js +183 -0
  872. package/dist/views/Branch/ScheduledMerges/index.js.map +1 -0
  873. package/dist/views/Branch/index.css +77 -0
  874. package/dist/views/Branch/index.d.ts +17 -0
  875. package/dist/views/Branch/index.d.ts.map +1 -0
  876. package/dist/views/Branch/index.js +188 -0
  877. package/dist/views/Branch/index.js.map +1 -0
  878. package/dist/views/Branch/renderBranchDiff.d.ts +29 -0
  879. package/dist/views/Branch/renderBranchDiff.d.ts.map +1 -0
  880. package/dist/views/Branch/renderBranchDiff.js +151 -0
  881. package/dist/views/Branch/renderBranchDiff.js.map +1 -0
  882. package/dist/views/Branch/renderMergeDiff.d.ts +24 -0
  883. package/dist/views/Branch/renderMergeDiff.d.ts.map +1 -0
  884. package/dist/views/Branch/renderMergeDiff.js +94 -0
  885. package/dist/views/Branch/renderMergeDiff.js.map +1 -0
  886. package/dist/views/Branches/index.d.ts +16 -0
  887. package/dist/views/Branches/index.d.ts.map +1 -0
  888. package/dist/views/Branches/index.js +54 -0
  889. package/dist/views/Branches/index.js.map +1 -0
  890. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts.map +1 -1
  891. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  892. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  893. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  894. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  895. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  896. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  897. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  898. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  899. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  900. package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
  901. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  902. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  903. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
  904. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  905. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  906. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  907. package/dist/views/Dashboard/Default/index.js.map +1 -1
  908. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +1 -1
  909. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -1
  910. package/dist/views/Document/getCustomViewByRoute.d.ts +1 -1
  911. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  912. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  913. package/dist/views/Document/getDocumentView.js +21 -2
  914. package/dist/views/Document/getDocumentView.js.map +1 -1
  915. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  916. package/dist/views/Document/getMetaBySegment.js +9 -0
  917. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  918. package/dist/views/Document/index.d.ts +3 -1
  919. package/dist/views/Document/index.d.ts.map +1 -1
  920. package/dist/views/Document/index.js +8 -1
  921. package/dist/views/Document/index.js.map +1 -1
  922. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -1
  923. package/dist/views/Edit/index.css +61 -53
  924. package/dist/views/Edit/index.d.ts.map +1 -1
  925. package/dist/views/Edit/index.js.map +1 -1
  926. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -2
  927. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  928. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  929. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  930. package/dist/views/HierarchyList/HierarchyTable/index.js +6 -2
  931. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  932. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +2 -2
  933. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  934. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  935. package/dist/views/HierarchyList/TypeFilter/index.d.ts.map +1 -1
  936. package/dist/views/HierarchyList/TypeFilter/index.js +3 -0
  937. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  938. package/dist/views/HierarchyList/index.css +1 -1
  939. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  940. package/dist/views/HierarchyList/index.js +2 -6
  941. package/dist/views/HierarchyList/index.js.map +1 -1
  942. package/dist/views/List/ListHeader/index.d.ts +1 -10
  943. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  944. package/dist/views/List/ListHeader/index.js +1 -3
  945. package/dist/views/List/ListHeader/index.js.map +1 -1
  946. package/dist/views/List/createSerializableValue.d.ts.map +1 -1
  947. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -1
  948. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -1
  949. package/dist/views/List/generateListViewMetadata.d.ts.map +1 -1
  950. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  951. package/dist/views/List/handleHierarchy.d.ts +1 -1
  952. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  953. package/dist/views/List/index.client.d.ts.map +1 -1
  954. package/dist/views/List/index.client.js +0 -14
  955. package/dist/views/List/index.client.js.map +1 -1
  956. package/dist/views/List/index.css +6 -1
  957. package/dist/views/List/index.d.ts.map +1 -1
  958. package/dist/views/List/index.js +4 -0
  959. package/dist/views/List/index.js.map +1 -1
  960. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  961. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
  962. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -1
  963. package/dist/views/Logout/index.d.ts.map +1 -1
  964. package/dist/views/Logout/index.js +11 -0
  965. package/dist/views/Logout/index.js.map +1 -1
  966. package/dist/views/NotFound/page.d.ts.map +1 -1
  967. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -1
  968. package/dist/views/Root/generatePageMetadata.d.ts.map +1 -1
  969. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts +1 -1
  970. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  971. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  972. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +1 -1
  973. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  974. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  975. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  976. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  977. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
  978. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  979. package/dist/views/Root/getRouteData.js +12 -4
  980. package/dist/views/Root/getRouteData.js.map +1 -1
  981. package/dist/views/Root/index.d.ts +12 -1
  982. package/dist/views/Root/index.d.ts.map +1 -1
  983. package/dist/views/Root/index.js +11 -3
  984. package/dist/views/Root/index.js.map +1 -1
  985. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  986. package/dist/views/Version/Default/index.css +26 -2
  987. package/dist/views/Version/Default/index.d.ts.map +1 -1
  988. package/dist/views/Version/Default/index.js +18 -6
  989. package/dist/views/Version/Default/index.js.map +1 -1
  990. package/dist/views/Version/Default/types.d.ts +9 -0
  991. package/dist/views/Version/Default/types.d.ts.map +1 -1
  992. package/dist/views/Version/Default/types.js.map +1 -1
  993. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  994. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  995. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +8 -0
  996. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  997. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  998. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  999. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  1000. package/dist/views/Version/Restore/index.js +6 -3
  1001. package/dist/views/Version/Restore/index.js.map +1 -1
  1002. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  1003. package/dist/views/Version/index.d.ts.map +1 -1
  1004. package/dist/views/Version/index.js +4 -0
  1005. package/dist/views/Version/index.js.map +1 -1
  1006. package/dist/views/Versions/buildColumns.d.ts +3 -2
  1007. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  1008. package/dist/views/Versions/buildColumns.js +21 -1
  1009. package/dist/views/Versions/buildColumns.js.map +1 -1
  1010. package/dist/views/Versions/cells/Branch/index.d.ts +12 -0
  1011. package/dist/views/Versions/cells/Branch/index.d.ts.map +1 -0
  1012. package/dist/views/Versions/cells/Branch/index.js +27 -0
  1013. package/dist/views/Versions/cells/Branch/index.js.map +1 -0
  1014. package/dist/views/Versions/fetchVersions.d.ts +4 -4
  1015. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  1016. package/dist/views/Versions/index.client.d.ts +0 -1
  1017. package/dist/views/Versions/index.client.d.ts.map +1 -1
  1018. package/dist/views/Versions/index.client.js.map +1 -1
  1019. package/dist/views/Versions/index.d.ts.map +1 -1
  1020. package/dist/views/Versions/index.js +2 -14
  1021. package/dist/views/Versions/index.js.map +1 -1
  1022. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts +2 -2
  1023. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts.map +1 -1
  1024. package/dist/widgets/CollectionCards/getCollectionCardsData.js.map +1 -1
  1025. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  1026. package/dist/widgets/WidgetCard/index.css +1 -1
  1027. package/package.json +6 -10
  1028. package/dist/elements/Nav/NavToggler/index.css +0 -12
  1029. package/dist/elements/Nav/NavToggler/index.d.ts +0 -9
  1030. package/dist/elements/Nav/NavToggler/index.d.ts.map +0 -1
  1031. package/dist/elements/Nav/NavToggler/index.js +0 -91
  1032. package/dist/elements/Nav/NavToggler/index.js.map +0 -1
  1033. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  1034. package/dist/scss/app.scss +0 -183
  1035. package/dist/scss/colors.scss +0 -191
  1036. package/dist/scss/custom.css +0 -1
  1037. package/dist/scss/queries.scss +0 -27
  1038. package/dist/scss/styles.scss +0 -9
  1039. package/dist/scss/svg.scss +0 -10
  1040. package/dist/scss/toastify.scss +0 -61
  1041. package/dist/scss/vars.scss +0 -192
  1042. package/dist/scss/z-index.scss +0 -9
@@ -1,7 +1,7 @@
1
1
  @layer payload-default {
2
2
  .preview-sizes {
3
3
  margin: var(--spacer-6) calc(var(--gutter-h) * -1) 0 calc(var(--gutter-h) * -1);
4
- border-top: var(--stroke-width-small) solid var(--theme-elevation-150);
4
+ border-top: var(--stroke-width-small) solid var(--color-border);
5
5
  max-height: calc(100vh - var(--spacer-6) * 3);
6
6
  height: 100%;
7
7
  display: flex;
@@ -10,7 +10,7 @@
10
10
 
11
11
  .preview-sizes__imageWrap {
12
12
  min-width: 60%;
13
- border-right: var(--stroke-width-small) solid var(--theme-elevation-150);
13
+ border-right: var(--stroke-width-small) solid var(--color-border);
14
14
  }
15
15
 
16
16
  .preview-sizes__preview {
@@ -20,7 +20,7 @@
20
20
  }
21
21
 
22
22
  .preview-sizes__meta {
23
- border-bottom: var(--stroke-width-small) solid var(--theme-elevation-150);
23
+ border-bottom: var(--stroke-width-small) solid var(--color-border);
24
24
  padding: var(--spacer-3) var(--gutter-h);
25
25
  display: flex;
26
26
  flex-wrap: wrap;
@@ -41,7 +41,7 @@
41
41
 
42
42
  .preview-sizes__sizeName,
43
43
  .preview-sizes .file-meta__size-type {
44
- color: var(--theme-elevation-600);
44
+ color: var(--color-text-secondary);
45
45
  }
46
46
 
47
47
  .preview-sizes__listWrap {
@@ -61,7 +61,7 @@
61
61
  left: 0;
62
62
  height: calc(var(--spacer-6) * 2);
63
63
  width: 100%;
64
- background: linear-gradient(180deg, transparent 0, var(--theme-bg) 100%);
64
+ background: linear-gradient(180deg, transparent 0, var(--color-bg) 100%);
65
65
  pointer-events: none;
66
66
  }
67
67
 
@@ -79,15 +79,14 @@
79
79
  display: flex;
80
80
  gap: var(--spacer-3);
81
81
  cursor: pointer;
82
- transition: background-color 0.2s ease-in-out;
83
82
  }
84
83
 
85
84
  .preview-sizes__sizeOption:hover {
86
- background-color: var(--theme-elevation-100);
85
+ background-color: var(--color-bg-hover);
87
86
  }
88
87
 
89
88
  .preview-sizes--selected {
90
- background-color: var(--theme-elevation-100);
89
+ background-color: var(--color-bg-secondary);
91
90
  }
92
91
 
93
92
  .preview-sizes__image {
@@ -142,7 +141,7 @@
142
141
  }
143
142
 
144
143
  .preview-sizes__listWrap {
145
- border-top: var(--stroke-width-small) solid var(--theme-elevation-150);
144
+ border-top: var(--stroke-width-small) solid var(--color-border);
146
145
  height: 40%;
147
146
  }
148
147
  }
@@ -1 +1 @@
1
- {"version":3,"file":"buildUpcomingColumns.d.ts","sourceRoot":"","sources":["../../../../src/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAM/C,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC5C,IAAI,EAAE,aAAa,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAA;IAC1C,kBAAkB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,CAAA;IAC5E,CAAC,EAAE,SAAS,CAAA;CACb,CAAA;AAED,eAAO,MAAM,oBAAoB,GAAI,iFAQlC,IAAI,KAAG,MAAM,EA4Gf,CAAA"}
1
+ {"version":3,"file":"buildUpcomingColumns.d.ts","sourceRoot":"","sources":["../../../../src/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEnD,OAAO,EAAkB,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAA;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAM/C,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;IAC5C,IAAI,EAAE,aAAa,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAA;IAC1C,kBAAkB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,CAAA;IAC5E,CAAC,EAAE,SAAS,CAAA;CACb,CAAA;AAED,eAAO,MAAM,oBAAoB,oFAQ9B,IAAI,KAAG,MAAM,EA4Gf,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"buildUpcomingScheduleWhere.d.ts","sourceRoot":"","sources":["../../../../src/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACrB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,oCAAoC,IAAI,KAAG,KAsCrF,CAAA"}
1
+ {"version":3,"file":"buildUpcomingScheduleWhere.d.ts","sourceRoot":"","sources":["../../../../src/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACrB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,uCAAwC,IAAI,KAAG,KAsCrF,CAAA"}
@@ -214,7 +214,7 @@ export const ScheduleDrawer = ({
214
214
  }
215
215
  }, [upcoming, fetchUpcoming]);
216
216
  const minTime = useMemo(() => {
217
- if (date && isToday(date)) {
217
+ if (!date || isToday(date)) {
218
218
  return new Date();
219
219
  }
220
220
  return startOfDay(new Date());
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["TZDateMini","TZDate","getTranslation","endOfToday","isToday","startOfDay","transpose","formatAdminURL","qs","React","useCallback","useMemo","toast","FieldLabel","Radio","useConfig","useDocumentInfo","useDocumentTitle","useServerFunctions","useTranslation","requests","Banner","Button","DatePickerField","Drawer","Gutter","ReactSelect","ShimmerEffect","Table","TimezonePicker","buildUpcomingColumns","buildUpcomingScheduleWhere","baseClass","defaultLocaleOption","label","value","ScheduleDrawer","slug","defaultType","onUpcomingChange","schedulePublishConfig","config","admin","dateFormat","timezones","defaultTimezone","supportedTimezones","localization","routes","api","id","collectionSlug","globalSlug","title","i18n","t","schedulePublish","type","setType","useState","date","setDate","timezone","setTimezone","locale","setLocale","processing","setProcessing","modalTitle","upcoming","setUpcoming","upcomingColumns","setUpcomingColumns","deleteHandlerRef","useRef","userTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","localeOptions","options","locales","map","code","unshift","fetchUpcoming","query","sort","where","docs","post","apiRoute","path","body","stringify","headers","language","then","res","json","deleteHandler","current","length","deleteID","success","err","console","error","message","useEffect","handleSave","localeToPublish","doc","relationTo","String","undefined","global","displayedValue","DateWithOriginalTz","tz","DateWithUserTz","modifiedDate","withTimeZone","dateWithTimezone","dateWithUserTimezone","toISOString","onChangeDate","incomingDate","tzDateWithUTC","dateToUserTz","fetchInitialUpcoming","minTime","Date","_jsxs","className","_jsx","required","isSelected","onChange","option","readOnly","maxTime","minDate","e","pickerAppearance","timeFormat","timeIntervals","selectedTimezone","buttonStyle","disabled","onClick","appearance","columns","data"],"sources":["../../../../src/elements/PublishButton/ScheduleDrawer/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\n'use client'\n\nimport type { Column, SchedulePublish, Where } from 'payload'\n\nimport { TZDateMini as TZDate } from '@date-fns/tz/date/mini'\nimport { getTranslation } from '@payloadcms/translations'\nimport { endOfToday, isToday, startOfDay } from 'date-fns'\nimport { transpose } from 'date-fns/transpose'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { PublishType, UpcomingEvent } from './types.js'\n\nimport { FieldLabel } from '../../../fields/FieldLabel/index.js'\nimport { Radio } from '../../../fields/RadioGroup/Radio/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../../providers/DocumentTitle/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { requests } from '../../../utilities/api.js'\nimport { Banner } from '../../Banner/index.js'\nimport { Button } from '../../Button/index.js'\nimport { DatePickerField } from '../../DatePicker/index.js'\nimport { Drawer } from '../../Drawer/index.js'\nimport { Gutter } from '../../Gutter/index.js'\nimport './index.css'\nimport { ReactSelect } from '../../ReactSelect/index.js'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Table } from '../../Table/index.js'\nimport { TimezonePicker } from '../../TimezonePicker/index.js'\nimport { buildUpcomingColumns } from './buildUpcomingColumns.js'\nimport { buildUpcomingScheduleWhere } from './buildUpcomingScheduleWhere.js'\n\nconst baseClass = 'schedule-publish'\n\ntype Props = {\n defaultType?: PublishType\n onUpcomingChange?: (hasUpcoming: boolean) => void\n schedulePublishConfig?: SchedulePublish\n slug: string\n}\n\nconst defaultLocaleOption = {\n label: 'All',\n value: 'all',\n}\n\nexport const ScheduleDrawer: React.FC<Props> = ({\n slug,\n defaultType,\n onUpcomingChange,\n schedulePublishConfig,\n}) => {\n const {\n config: {\n admin: {\n dateFormat,\n timezones: { defaultTimezone, supportedTimezones },\n },\n localization,\n routes: { api },\n },\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const { title } = useDocumentTitle()\n const { i18n, t } = useTranslation()\n const { schedulePublish } = useServerFunctions()\n const [type, setType] = React.useState<PublishType>(defaultType || 'publish')\n const [date, setDate] = React.useState<Date>()\n const [timezone, setTimezone] = React.useState<string>(defaultTimezone)\n const [locale, setLocale] = React.useState<{ label: string; value: string }>(defaultLocaleOption)\n const [processing, setProcessing] = React.useState(false)\n const modalTitle = t('general:schedulePublishFor', { title })\n const [upcoming, setUpcoming] = React.useState<UpcomingEvent[]>()\n const [upcomingColumns, setUpcomingColumns] = React.useState<Column[]>()\n const deleteHandlerRef = React.useRef<((id: number | string) => Promise<void>) | null>(() => null)\n\n // Get the user timezone so we can adjust the displayed value against it\n const userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone\n\n const localeOptions = React.useMemo(() => {\n if (localization) {\n const options = localization.locales.map(({ code, label }) => ({\n label: getTranslation(label, i18n),\n value: code,\n }))\n\n options.unshift(defaultLocaleOption)\n\n return options\n }\n\n return []\n }, [localization, i18n])\n\n const fetchUpcoming = React.useCallback(async () => {\n const query: { sort: string; where: Where } = {\n sort: 'waitUntil',\n where: buildUpcomingScheduleWhere({ id, collectionSlug, globalSlug }),\n }\n\n const { docs } = await requests\n .post(formatAdminURL({ apiRoute: api, path: `/payload-jobs` }), {\n body: qs.stringify(query),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-Payload-HTTP-Method-Override': 'GET',\n },\n })\n .then((res) => res.json())\n\n setUpcomingColumns(\n buildUpcomingColumns({\n dateFormat,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n deleteHandler: deleteHandlerRef.current,\n docs,\n i18n,\n localization,\n supportedTimezones,\n t,\n }),\n )\n setUpcoming(docs)\n onUpcomingChange?.(docs.length > 0)\n }, [\n collectionSlug,\n globalSlug,\n api,\n i18n,\n dateFormat,\n localization,\n supportedTimezones,\n t,\n id,\n onUpcomingChange,\n ])\n\n const deleteHandler = React.useCallback(\n async (id: number | string) => {\n try {\n await schedulePublish({\n deleteID: id,\n })\n await fetchUpcoming()\n toast.success(t('general:deletedSuccessfully'))\n } catch (err) {\n console.error(err)\n toast.error(err.message)\n }\n },\n [fetchUpcoming, schedulePublish, t],\n )\n\n React.useEffect(() => {\n deleteHandlerRef.current = deleteHandler\n }, [deleteHandler])\n\n const handleSave = React.useCallback(async () => {\n if (!date) {\n return toast.error(t('general:noDateSelected'))\n }\n\n setProcessing(true)\n\n let localeToPublish: string\n\n if (typeof locale === 'object' && locale.value !== 'all' && type === 'publish') {\n localeToPublish = locale.value\n }\n\n try {\n await schedulePublish({\n type,\n date,\n doc: collectionSlug\n ? {\n relationTo: collectionSlug,\n value: String(id),\n }\n : undefined,\n global: globalSlug || undefined,\n localeToPublish,\n timezone,\n })\n\n setDate(undefined)\n toast.success(t('version:scheduledSuccessfully'))\n void fetchUpcoming()\n } catch (err) {\n console.error(err)\n toast.error(err.message)\n }\n\n setProcessing(false)\n }, [\n date,\n locale,\n type,\n t,\n schedulePublish,\n collectionSlug,\n id,\n globalSlug,\n timezone,\n fetchUpcoming,\n ])\n\n const displayedValue = useMemo(() => {\n if (timezone && userTimezone && date) {\n // Create TZDate instances for the selected timezone and the user's timezone\n // These instances allow us to transpose the date between timezones while keeping the same time value\n const DateWithOriginalTz = TZDate.tz(timezone)\n const DateWithUserTz = TZDate.tz(userTimezone)\n\n const modifiedDate = new TZDate(date).withTimeZone(timezone)\n\n // Transpose the date to the selected timezone\n const dateWithTimezone = transpose(modifiedDate, DateWithOriginalTz)\n\n // Transpose the date to the user's timezone - this is necessary because the react-datepicker component insists on displaying the date in the user's timezone\n const dateWithUserTimezone = transpose(dateWithTimezone, DateWithUserTz)\n\n return dateWithUserTimezone.toISOString()\n }\n\n return date\n }, [timezone, date, userTimezone])\n\n const onChangeDate = useCallback(\n (incomingDate: Date) => {\n if (timezone && incomingDate) {\n // Create TZDate instances for the selected timezone\n const tzDateWithUTC = TZDate.tz(timezone)\n\n // Creates a TZDate instance for the user's timezone — this is default behaviour of TZDate as it wraps the Date constructor\n const dateToUserTz = new TZDate(incomingDate)\n\n // Transpose the date to the selected timezone\n const dateWithTimezone = transpose(dateToUserTz, tzDateWithUTC)\n\n setDate(dateWithTimezone || null)\n } else {\n setDate(incomingDate || null)\n }\n },\n [setDate, timezone],\n )\n\n React.useEffect(() => {\n if (!upcoming) {\n const fetchInitialUpcoming = async () => {\n await fetchUpcoming()\n }\n\n void fetchInitialUpcoming()\n }\n }, [upcoming, fetchUpcoming])\n\n const minTime = useMemo(() => {\n if (date && isToday(date)) {\n return new Date()\n }\n\n return startOfDay(new Date())\n }, [date])\n\n return (\n <Drawer className={baseClass} slug={slug} title={modalTitle}>\n <Gutter className={`${baseClass}__scheduler`}>\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('version:type')} required />\n <ul className={`${baseClass}__type`}>\n <li>\n <Radio\n id={`${slug}-type`}\n isSelected={type === 'publish'}\n onChange={() => setType('publish')}\n option={{ label: t('version:publish'), value: 'publish' }}\n path={`${slug}-type`}\n readOnly={processing}\n />\n </li>\n <li>\n <Radio\n id={`${slug}-type`}\n isSelected={type === 'unpublish'}\n onChange={() => setType('unpublish')}\n option={{ label: t('version:unpublish'), value: 'unpublish' }}\n path={`${slug}-type`}\n readOnly={processing}\n />\n </li>\n </ul>\n </div>\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('general:time')} path={'time'} required />\n <DatePickerField\n id=\"time\"\n maxTime={endOfToday()}\n minDate={new Date()}\n minTime={minTime}\n onChange={(e) => onChangeDate(e)}\n pickerAppearance=\"dayAndTime\"\n readOnly={processing}\n timeFormat={schedulePublishConfig?.timeFormat}\n timeIntervals={schedulePublishConfig?.timeIntervals ?? 5}\n value={displayedValue}\n />\n {supportedTimezones.length > 0 && (\n <TimezonePicker\n id={`timezone-picker`}\n onChange={setTimezone}\n options={supportedTimezones}\n selectedTimezone={timezone}\n />\n )}\n </div>\n {localeOptions.length > 0 && type === 'publish' && (\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('localization:localeToPublish')} />\n <ReactSelect\n onChange={(e) => setLocale(e as { label: string; value: string })}\n options={localeOptions}\n value={locale}\n />\n </div>\n )}\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"primary\"\n disabled={processing}\n id=\"scheduled-publish-save\"\n onClick={handleSave}\n type=\"button\"\n >\n {t('general:save')}\n </Button>\n {processing ? <span>{t('general:saving')}</span> : null}\n </div>\n </Gutter>\n <Gutter className={`${baseClass}__upcoming`}>\n <h4>{t('general:upcomingEvents')}</h4>\n {!upcoming && <ShimmerEffect />}\n {upcoming?.length === 0 && <Banner>{t('general:noUpcomingEventsScheduled')}</Banner>}\n {upcoming?.length > 0 && (\n <Table appearance=\"condensed\" columns={upcomingColumns} data={upcoming} />\n )}\n </Gutter>\n </Drawer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["TZDateMini","TZDate","getTranslation","endOfToday","isToday","startOfDay","transpose","formatAdminURL","qs","React","useCallback","useMemo","toast","FieldLabel","Radio","useConfig","useDocumentInfo","useDocumentTitle","useServerFunctions","useTranslation","requests","Banner","Button","DatePickerField","Drawer","Gutter","ReactSelect","ShimmerEffect","Table","TimezonePicker","buildUpcomingColumns","buildUpcomingScheduleWhere","baseClass","defaultLocaleOption","label","value","ScheduleDrawer","slug","defaultType","onUpcomingChange","schedulePublishConfig","config","admin","dateFormat","timezones","defaultTimezone","supportedTimezones","localization","routes","api","id","collectionSlug","globalSlug","title","i18n","t","schedulePublish","type","setType","useState","date","setDate","timezone","setTimezone","locale","setLocale","processing","setProcessing","modalTitle","upcoming","setUpcoming","upcomingColumns","setUpcomingColumns","deleteHandlerRef","useRef","userTimezone","Intl","DateTimeFormat","resolvedOptions","timeZone","localeOptions","options","locales","map","code","unshift","fetchUpcoming","query","sort","where","docs","post","apiRoute","path","body","stringify","headers","language","then","res","json","deleteHandler","current","length","deleteID","success","err","console","error","message","useEffect","handleSave","localeToPublish","doc","relationTo","String","undefined","global","displayedValue","DateWithOriginalTz","tz","DateWithUserTz","modifiedDate","withTimeZone","dateWithTimezone","dateWithUserTimezone","toISOString","onChangeDate","incomingDate","tzDateWithUTC","dateToUserTz","fetchInitialUpcoming","minTime","Date","_jsxs","className","_jsx","required","isSelected","onChange","option","readOnly","maxTime","minDate","e","pickerAppearance","timeFormat","timeIntervals","selectedTimezone","buttonStyle","disabled","onClick","appearance","columns","data"],"sources":["../../../../src/elements/PublishButton/ScheduleDrawer/index.tsx"],"sourcesContent":["/* eslint-disable no-console */\n'use client'\n\nimport type { Column, SchedulePublish, Where } from 'payload'\n\nimport { TZDateMini as TZDate } from '@date-fns/tz/date/mini'\nimport { getTranslation } from '@payloadcms/translations'\nimport { endOfToday, isToday, startOfDay } from 'date-fns'\nimport { transpose } from 'date-fns/transpose'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { PublishType, UpcomingEvent } from './types.js'\n\nimport { FieldLabel } from '../../../fields/FieldLabel/index.js'\nimport { Radio } from '../../../fields/RadioGroup/Radio/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../../providers/DocumentTitle/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { requests } from '../../../utilities/api.js'\nimport { Banner } from '../../Banner/index.js'\nimport { Button } from '../../Button/index.js'\nimport { DatePickerField } from '../../DatePicker/index.js'\nimport { Drawer } from '../../Drawer/index.js'\nimport { Gutter } from '../../Gutter/index.js'\nimport './index.css'\nimport { ReactSelect } from '../../ReactSelect/index.js'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Table } from '../../Table/index.js'\nimport { TimezonePicker } from '../../TimezonePicker/index.js'\nimport { buildUpcomingColumns } from './buildUpcomingColumns.js'\nimport { buildUpcomingScheduleWhere } from './buildUpcomingScheduleWhere.js'\n\nconst baseClass = 'schedule-publish'\n\ntype Props = {\n defaultType?: PublishType\n onUpcomingChange?: (hasUpcoming: boolean) => void\n schedulePublishConfig?: SchedulePublish\n slug: string\n}\n\nconst defaultLocaleOption = {\n label: 'All',\n value: 'all',\n}\n\nexport const ScheduleDrawer: React.FC<Props> = ({\n slug,\n defaultType,\n onUpcomingChange,\n schedulePublishConfig,\n}) => {\n const {\n config: {\n admin: {\n dateFormat,\n timezones: { defaultTimezone, supportedTimezones },\n },\n localization,\n routes: { api },\n },\n } = useConfig()\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n const { title } = useDocumentTitle()\n const { i18n, t } = useTranslation()\n const { schedulePublish } = useServerFunctions()\n const [type, setType] = React.useState<PublishType>(defaultType || 'publish')\n const [date, setDate] = React.useState<Date>()\n const [timezone, setTimezone] = React.useState<string>(defaultTimezone)\n const [locale, setLocale] = React.useState<{ label: string; value: string }>(defaultLocaleOption)\n const [processing, setProcessing] = React.useState(false)\n const modalTitle = t('general:schedulePublishFor', { title })\n const [upcoming, setUpcoming] = React.useState<UpcomingEvent[]>()\n const [upcomingColumns, setUpcomingColumns] = React.useState<Column[]>()\n const deleteHandlerRef = React.useRef<((id: number | string) => Promise<void>) | null>(() => null)\n\n // Get the user timezone so we can adjust the displayed value against it\n const userTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone\n\n const localeOptions = React.useMemo(() => {\n if (localization) {\n const options = localization.locales.map(({ code, label }) => ({\n label: getTranslation(label, i18n),\n value: code,\n }))\n\n options.unshift(defaultLocaleOption)\n\n return options\n }\n\n return []\n }, [localization, i18n])\n\n const fetchUpcoming = React.useCallback(async () => {\n const query: { sort: string; where: Where } = {\n sort: 'waitUntil',\n where: buildUpcomingScheduleWhere({ id, collectionSlug, globalSlug }),\n }\n\n const { docs } = await requests\n .post(formatAdminURL({ apiRoute: api, path: `/payload-jobs` }), {\n body: qs.stringify(query),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-Payload-HTTP-Method-Override': 'GET',\n },\n })\n .then((res) => res.json())\n\n setUpcomingColumns(\n buildUpcomingColumns({\n dateFormat,\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n deleteHandler: deleteHandlerRef.current,\n docs,\n i18n,\n localization,\n supportedTimezones,\n t,\n }),\n )\n setUpcoming(docs)\n onUpcomingChange?.(docs.length > 0)\n }, [\n collectionSlug,\n globalSlug,\n api,\n i18n,\n dateFormat,\n localization,\n supportedTimezones,\n t,\n id,\n onUpcomingChange,\n ])\n\n const deleteHandler = React.useCallback(\n async (id: number | string) => {\n try {\n await schedulePublish({\n deleteID: id,\n })\n await fetchUpcoming()\n toast.success(t('general:deletedSuccessfully'))\n } catch (err) {\n console.error(err)\n toast.error(err.message)\n }\n },\n [fetchUpcoming, schedulePublish, t],\n )\n\n React.useEffect(() => {\n deleteHandlerRef.current = deleteHandler\n }, [deleteHandler])\n\n const handleSave = React.useCallback(async () => {\n if (!date) {\n return toast.error(t('general:noDateSelected'))\n }\n\n setProcessing(true)\n\n let localeToPublish: string\n\n if (typeof locale === 'object' && locale.value !== 'all' && type === 'publish') {\n localeToPublish = locale.value\n }\n\n try {\n await schedulePublish({\n type,\n date,\n doc: collectionSlug\n ? {\n relationTo: collectionSlug,\n value: String(id),\n }\n : undefined,\n global: globalSlug || undefined,\n localeToPublish,\n timezone,\n })\n\n setDate(undefined)\n toast.success(t('version:scheduledSuccessfully'))\n void fetchUpcoming()\n } catch (err) {\n console.error(err)\n toast.error(err.message)\n }\n\n setProcessing(false)\n }, [\n date,\n locale,\n type,\n t,\n schedulePublish,\n collectionSlug,\n id,\n globalSlug,\n timezone,\n fetchUpcoming,\n ])\n\n const displayedValue = useMemo(() => {\n if (timezone && userTimezone && date) {\n // Create TZDate instances for the selected timezone and the user's timezone\n // These instances allow us to transpose the date between timezones while keeping the same time value\n const DateWithOriginalTz = TZDate.tz(timezone)\n const DateWithUserTz = TZDate.tz(userTimezone)\n\n const modifiedDate = new TZDate(date).withTimeZone(timezone)\n\n // Transpose the date to the selected timezone\n const dateWithTimezone = transpose(modifiedDate, DateWithOriginalTz)\n\n // Transpose the date to the user's timezone - this is necessary because the react-datepicker component insists on displaying the date in the user's timezone\n const dateWithUserTimezone = transpose(dateWithTimezone, DateWithUserTz)\n\n return dateWithUserTimezone.toISOString()\n }\n\n return date\n }, [timezone, date, userTimezone])\n\n const onChangeDate = useCallback(\n (incomingDate: Date) => {\n if (timezone && incomingDate) {\n // Create TZDate instances for the selected timezone\n const tzDateWithUTC = TZDate.tz(timezone)\n\n // Creates a TZDate instance for the user's timezone — this is default behaviour of TZDate as it wraps the Date constructor\n const dateToUserTz = new TZDate(incomingDate)\n\n // Transpose the date to the selected timezone\n const dateWithTimezone = transpose(dateToUserTz, tzDateWithUTC)\n\n setDate(dateWithTimezone || null)\n } else {\n setDate(incomingDate || null)\n }\n },\n [setDate, timezone],\n )\n\n React.useEffect(() => {\n if (!upcoming) {\n const fetchInitialUpcoming = async () => {\n await fetchUpcoming()\n }\n\n void fetchInitialUpcoming()\n }\n }, [upcoming, fetchUpcoming])\n\n const minTime = useMemo(() => {\n if (!date || isToday(date)) {\n return new Date()\n }\n\n return startOfDay(new Date())\n }, [date])\n\n return (\n <Drawer className={baseClass} slug={slug} title={modalTitle}>\n <Gutter className={`${baseClass}__scheduler`}>\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('version:type')} required />\n <ul className={`${baseClass}__type`}>\n <li>\n <Radio\n id={`${slug}-type`}\n isSelected={type === 'publish'}\n onChange={() => setType('publish')}\n option={{ label: t('version:publish'), value: 'publish' }}\n path={`${slug}-type`}\n readOnly={processing}\n />\n </li>\n <li>\n <Radio\n id={`${slug}-type`}\n isSelected={type === 'unpublish'}\n onChange={() => setType('unpublish')}\n option={{ label: t('version:unpublish'), value: 'unpublish' }}\n path={`${slug}-type`}\n readOnly={processing}\n />\n </li>\n </ul>\n </div>\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('general:time')} path={'time'} required />\n <DatePickerField\n id=\"time\"\n maxTime={endOfToday()}\n minDate={new Date()}\n minTime={minTime}\n onChange={(e) => onChangeDate(e)}\n pickerAppearance=\"dayAndTime\"\n readOnly={processing}\n timeFormat={schedulePublishConfig?.timeFormat}\n timeIntervals={schedulePublishConfig?.timeIntervals ?? 5}\n value={displayedValue}\n />\n {supportedTimezones.length > 0 && (\n <TimezonePicker\n id={`timezone-picker`}\n onChange={setTimezone}\n options={supportedTimezones}\n selectedTimezone={timezone}\n />\n )}\n </div>\n {localeOptions.length > 0 && type === 'publish' && (\n <div className={`${baseClass}__section`}>\n <FieldLabel label={t('localization:localeToPublish')} />\n <ReactSelect\n onChange={(e) => setLocale(e as { label: string; value: string })}\n options={localeOptions}\n value={locale}\n />\n </div>\n )}\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"primary\"\n disabled={processing}\n id=\"scheduled-publish-save\"\n onClick={handleSave}\n type=\"button\"\n >\n {t('general:save')}\n </Button>\n {processing ? <span>{t('general:saving')}</span> : null}\n </div>\n </Gutter>\n <Gutter className={`${baseClass}__upcoming`}>\n <h4>{t('general:upcomingEvents')}</h4>\n {!upcoming && <ShimmerEffect />}\n {upcoming?.length === 0 && <Banner>{t('general:noUpcomingEventsScheduled')}</Banner>}\n {upcoming?.length > 0 && (\n <Table appearance=\"condensed\" columns={upcomingColumns} data={upcoming} />\n )}\n </Gutter>\n </Drawer>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAKvD,OAAO,KAA2C,MAAM,OAAO,CAAA;AAa/D,OAAO,aAAa,CAAA;AAEpB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,wBAA6B,qBAiRpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAKvD,OAAO,KAA2C,MAAM,OAAO,CAAA;AAc/D,OAAO,aAAa,CAAA;AAEpB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,wBAA6B,qBAqRpD"}
@@ -8,6 +8,7 @@ import React, { useCallback, useEffect, useState } from 'react';
8
8
  import { useForm, useFormModified } from '../../forms/Form/context.js';
9
9
  import { FormSubmit } from '../../forms/Submit/index.js';
10
10
  import { useHotkey } from '../../hooks/useHotkey.js';
11
+ import { useBranchParam } from '../../providers/Branch/index.js';
11
12
  import { useConfig } from '../../providers/Config/index.js';
12
13
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
13
14
  import { useEditDepth } from '../../providers/EditDepth/index.js';
@@ -44,6 +45,7 @@ export function PublishButton({
44
45
  const {
45
46
  code: localeCode
46
47
  } = useLocale();
48
+ const branch = useBranchParam();
47
49
  const {
48
50
  localization,
49
51
  routes: {
@@ -85,6 +87,7 @@ export function PublishButton({
85
87
  return;
86
88
  }
87
89
  const params = qs.stringify({
90
+ branch,
88
91
  depth: 0,
89
92
  draft: true,
90
93
  'fallback-locale': 'null',
@@ -117,7 +120,7 @@ export function PublishButton({
117
120
  },
118
121
  skipValidation: true
119
122
  });
120
- }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id]);
123
+ }, [branch, disabled, localeCode, collectionSlug, globalSlug, submit, api, id]);
121
124
  useHotkey({
122
125
  cmdCtrlKey: true,
123
126
  editDepth,
@@ -135,6 +138,7 @@ export function PublishButton({
135
138
  return;
136
139
  }
137
140
  const params_0 = qs.stringify({
141
+ branch,
138
142
  depth: 0,
139
143
  locale: localeCode,
140
144
  ...(localizeStatusEnabled && {
@@ -158,7 +162,7 @@ export function PublishButton({
158
162
  setMostRecentVersionIsAutosaved(false);
159
163
  setHasPublishedDoc(true);
160
164
  }
161
- }, [localeCode, localizeStatusEnabled, api, collectionSlug, globalSlug, id, setHasPublishedDoc, submit, setUnpublishedVersionCount, uploadStatus, setMostRecentVersionIsAutosaved]);
165
+ }, [branch, localeCode, localizeStatusEnabled, api, collectionSlug, globalSlug, id, setHasPublishedDoc, submit, setUnpublishedVersionCount, uploadStatus, setMostRecentVersionIsAutosaved]);
162
166
  const publishLocale = useCallback(async locale => {
163
167
  if (uploadStatus === 'uploading') {
164
168
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","hasAutosaveEnabled","hasLocalizeStatusEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","localization","routes","api","i18n","t","shortLabel","entityConfig","useMemo","hasNewerVersions","canPublish","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","hasAutosave","saveDraft","params","stringify","depth","draft","locale","addQueryPrefix","action","method","apiRoute","path","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","localizeStatusEnabled","publish","publishAllLocales","result","publishLocale","pathSegment","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","_jsx","Fragment","buttonId","onClick","size","SubMenuPopupContent","close","ButtonGroup","Button","undefined","type","_jsxs","className"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasAutosaveEnabled, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport './index.css'\n\nexport function PublishButton({\n label: labelProp,\n}: { label?: string } & PublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: localeCode } = useLocale()\n const {\n localization,\n routes: { api },\n } = config\n\n const { i18n, t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n const shortLabel = labelProp || t('version:publish')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const [hasLocalizedFields, setHasLocalizedFields] = useState(false)\n\n useEffect(() => {\n const hasLocalizedField = traverseForLocalizedFields(entityConfig?.fields)\n setHasLocalizedFields(hasLocalizedField)\n }, [entityConfig?.fields])\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n draft: true,\n 'fallback-locale': 'null',\n locale: localeCode,\n },\n { addQueryPrefix: true },\n )\n\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${id ? `/${id}` : ''}${params}`,\n })\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${params}`,\n })\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const localizeStatusEnabled = hasLocalizeStatusEnabled(entityConfig)\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale: localeCode,\n ...(localizeStatusEnabled && { publishAllLocales: true }),\n },\n { addQueryPrefix: true },\n )\n\n const action = formatAdminURL({\n apiRoute: api,\n path: `${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n localeCode,\n localizeStatusEnabled,\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale,\n },\n { addQueryPrefix: true },\n )\n\n const pathSegment = globalSlug\n ? `/globals/${globalSlug}`\n : `/${collectionSlug}${id ? `/${id}` : ''}`\n const action = formatAdminURL({\n apiRoute: api,\n path: `${pathSegment}${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n submit,\n uploadStatus,\n ],\n )\n\n // Publish to all locales unless there are localized fields AND defaultLocalePublishOption is 'active'\n const isDefaultPublishAll =\n !isSpecificLocalePublishEnabled ||\n (localization && localization?.defaultLocalePublishOption !== 'active')\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n)\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={isDefaultPublishAll ? publish : () => publishLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled\n ? ({ close }) => {\n return (\n <React.Fragment>\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll ? () => publishLocale(activeLocale.code) : publish\n }\n >\n {isDefaultPublishAll\n ? t('version:publishIn', { locale: activeLocaleLabel })\n : t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n </React.Fragment>\n )\n }\n : undefined\n }\n type=\"button\"\n >\n {!isDefaultPublishAll ? (\n t('version:publishIn', { locale: activeLocaleLabel })\n ) : (\n <React.Fragment>\n <span className=\"publish-button__label--full\">{label}</span>\n <span className=\"publish-button__label--short\">{shortLabel}</span>\n </React.Fragment>\n )}\n </FormSubmit>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","hasAutosaveEnabled","hasLocalizeStatusEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useBranchParam","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","branch","localization","routes","api","i18n","t","shortLabel","entityConfig","useMemo","hasNewerVersions","canPublish","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","hasAutosave","saveDraft","params","stringify","depth","draft","locale","addQueryPrefix","action","method","apiRoute","path","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","localizeStatusEnabled","publish","publishAllLocales","result","publishLocale","pathSegment","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","_jsx","Fragment","buttonId","onClick","size","SubMenuPopupContent","close","ButtonGroup","Button","undefined","type","_jsxs","className"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasAutosaveEnabled, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useBranchParam } from '../../providers/Branch/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport './index.css'\n\nexport function PublishButton({\n label: labelProp,\n}: { label?: string } & PublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: localeCode } = useLocale()\n const branch = useBranchParam()\n const {\n localization,\n routes: { api },\n } = config\n\n const { i18n, t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n const shortLabel = labelProp || t('version:publish')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const [hasLocalizedFields, setHasLocalizedFields] = useState(false)\n\n useEffect(() => {\n const hasLocalizedField = traverseForLocalizedFields(entityConfig?.fields)\n setHasLocalizedFields(hasLocalizedField)\n }, [entityConfig?.fields])\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const params = qs.stringify(\n {\n branch,\n depth: 0,\n draft: true,\n 'fallback-locale': 'null',\n locale: localeCode,\n },\n { addQueryPrefix: true },\n )\n\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${id ? `/${id}` : ''}${params}`,\n })\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${params}`,\n })\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [branch, disabled, localeCode, collectionSlug, globalSlug, submit, api, id])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const localizeStatusEnabled = hasLocalizeStatusEnabled(entityConfig)\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n branch,\n depth: 0,\n locale: localeCode,\n ...(localizeStatusEnabled && { publishAllLocales: true }),\n },\n { addQueryPrefix: true },\n )\n\n const action = formatAdminURL({\n apiRoute: api,\n path: `${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n branch,\n localeCode,\n localizeStatusEnabled,\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale,\n },\n { addQueryPrefix: true },\n )\n\n const pathSegment = globalSlug\n ? `/globals/${globalSlug}`\n : `/${collectionSlug}${id ? `/${id}` : ''}`\n const action = formatAdminURL({\n apiRoute: api,\n path: `${pathSegment}${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n submit,\n uploadStatus,\n ],\n )\n\n // Publish to all locales unless there are localized fields AND defaultLocalePublishOption is 'active'\n const isDefaultPublishAll =\n !isSpecificLocalePublishEnabled ||\n (localization && localization?.defaultLocalePublishOption !== 'active')\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n)\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={isDefaultPublishAll ? publish : () => publishLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled\n ? ({ close }) => {\n return (\n <React.Fragment>\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll ? () => publishLocale(activeLocale.code) : publish\n }\n >\n {isDefaultPublishAll\n ? t('version:publishIn', { locale: activeLocaleLabel })\n : t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n </React.Fragment>\n )\n }\n : undefined\n }\n type=\"button\"\n >\n {!isDefaultPublishAll ? (\n t('version:publishIn', { locale: activeLocaleLabel })\n ) : (\n <React.Fragment>\n <span className=\"publish-button__label--full\">{label}</span>\n <span className=\"publish-button__label--short\">{shortLabel}</span>\n </React.Fragment>\n )}\n </FormSubmit>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishMany/DrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKpC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAWlD,KAAK,6BAA6B,GAAG;IACnC,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,qBA2K5E"}
1
+ {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishMany/DrawerContent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAKpC,OAAO,KAAsB,MAAM,OAAO,CAAA;AAG1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAYlD,KAAK,6BAA6B,GAAG;IACnC,UAAU,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAA;IAC1C,UAAU,EAAE,MAAM,CAAA;IAClB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,6BAA6B,qBA6K5E"}
@@ -4,6 +4,7 @@ import { combineWhereConstraints, formatAdminURL, mergeListSearchAndWhere } from
4
4
  import * as qs from 'qs-esm';
5
5
  import React, { useCallback } from 'react';
6
6
  import { toast } from 'sonner';
7
+ import { useBranchParam } from '../../providers/Branch/index.js';
7
8
  import { useConfig } from '../../providers/Config/index.js';
8
9
  import { useLocale } from '../../providers/Locale/index.js';
9
10
  import { useRouteCache } from '../../providers/RouteCache/index.js';
@@ -41,6 +42,7 @@ export function PublishManyDrawerContent(props) {
41
42
  const {
42
43
  code: locale
43
44
  } = useLocale();
45
+ const branch = useBranchParam();
44
46
  const router = useRouter();
45
47
  const searchParams = useSearchParams();
46
48
  const {
@@ -82,13 +84,14 @@ export function PublishManyDrawerContent(props) {
82
84
  });
83
85
  }
84
86
  return qs.stringify({
87
+ branch,
85
88
  locale,
86
89
  select: {},
87
90
  where: combineWhereConstraints(whereConstraints)
88
91
  }, {
89
92
  addQueryPrefix: true
90
93
  });
91
- }, [collection, searchParams, selectAll, ids, locale, where]);
94
+ }, [branch, collection, searchParams, selectAll, ids, locale, where]);
92
95
  const handlePublish = useCallback(async () => {
93
96
  const url = formatAdminURL({
94
97
  apiRoute: api,
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.js","names":["getTranslation","combineWhereConstraints","formatAdminURL","mergeListSearchAndWhere","qs","React","useCallback","toast","useConfig","useLocale","useRouteCache","useRouter","useSearchParams","useTranslation","requests","parseSearchParams","ConfirmationModal","PublishManyDrawerContent","props","collection","slug","labels","plural","singular","drawerSlug","ids","onSuccess","selectAll","where","clearRouteCache","config","routes","api","code","locale","router","searchParams","i18n","t","addDefaultError","error","queryString","useMemo","whereConstraints","_status","not_equals","push","queryWithSearch","collectionConfig","search","get","id","in","stringify","select","addQueryPrefix","handlePublish","url","apiRoute","path","patch","body","JSON","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","page","undefined","forEach","_err","_jsx","cancelLabel","confirmingLabel","confirmLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/PublishMany/DrawerContent.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { combineWhereConstraints, formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport type { PublishManyProps } from './index.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\ntype PublishManyDrawerContentProps = {\n collection: PublishManyProps['collection']\n drawerSlug: string\n ids: (number | string)[]\n onSuccess?: () => void\n selectAll: boolean\n where?: Where\n}\n\nexport function PublishManyDrawerContent(props: PublishManyDrawerContentProps) {\n const {\n collection,\n collection: { slug, labels: { plural, singular } } = {},\n drawerSlug,\n ids,\n onSuccess,\n selectAll,\n where,\n } = props\n\n const { clearRouteCache } = useRouteCache()\n\n const {\n config: {\n routes: { api },\n },\n } = useConfig()\n\n const { code: locale } = useLocale()\n\n const router = useRouter()\n const searchParams = useSearchParams()\n const { i18n, t } = useTranslation()\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const queryString = React.useMemo((): string => {\n const whereConstraints: Where[] = [\n {\n _status: {\n not_equals: 'published',\n },\n },\n ]\n\n if (where) {\n whereConstraints.push(where)\n }\n\n const queryWithSearch = mergeListSearchAndWhere({\n collectionConfig: collection,\n search: searchParams.get('search'),\n })\n\n if (queryWithSearch) {\n whereConstraints.push(queryWithSearch)\n }\n\n if (selectAll) {\n // Match the current filter/search, or default to all docs\n whereConstraints.push(\n (parseSearchParams(searchParams)?.where as Where) || {\n id: {\n not_equals: '',\n },\n },\n )\n } else {\n // If we're not selecting all, we need to select specific docs\n whereConstraints.push({\n id: {\n in: ids || [],\n },\n })\n }\n\n return qs.stringify(\n {\n locale,\n select: {},\n where: combineWhereConstraints(whereConstraints),\n },\n { addQueryPrefix: true },\n )\n }, [collection, searchParams, selectAll, ids, locale, where])\n\n const handlePublish = useCallback(async () => {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${slug}${queryString}&draft=true`,\n })\n await requests\n .patch(url, {\n body: JSON.stringify({\n _status: 'published',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:updatedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (_err) {\n return addDefaultError()\n }\n })\n }, [\n api,\n slug,\n queryString,\n i18n,\n plural,\n singular,\n t,\n router,\n searchParams,\n selectAll,\n clearRouteCache,\n addDefaultError,\n onSuccess,\n ])\n\n return (\n <ConfirmationModal\n body={t('version:aboutToPublishSelection', { label: getTranslation(plural, i18n) })}\n cancelLabel={t('general:cancel')}\n confirmingLabel={t('version:publishing')}\n confirmLabel={t('general:confirm')}\n heading={t('version:confirmPublish')}\n modalSlug={drawerSlug}\n onConfirm={handlePublish}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerContent.js","names":["getTranslation","combineWhereConstraints","formatAdminURL","mergeListSearchAndWhere","qs","React","useCallback","toast","useBranchParam","useConfig","useLocale","useRouteCache","useRouter","useSearchParams","useTranslation","requests","parseSearchParams","ConfirmationModal","PublishManyDrawerContent","props","collection","slug","labels","plural","singular","drawerSlug","ids","onSuccess","selectAll","where","clearRouteCache","config","routes","api","code","locale","branch","router","searchParams","i18n","t","addDefaultError","error","queryString","useMemo","whereConstraints","_status","not_equals","push","queryWithSearch","collectionConfig","search","get","id","in","stringify","select","addQueryPrefix","handlePublish","url","apiRoute","path","patch","body","JSON","headers","language","then","res","json","deletedDocs","docs","length","successLabel","status","success","count","label","errors","message","description","map","join","replace","page","undefined","forEach","_err","_jsx","cancelLabel","confirmingLabel","confirmLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/PublishMany/DrawerContent.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { combineWhereConstraints, formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\nimport { toast } from 'sonner'\n\nimport type { PublishManyProps } from './index.js'\n\nimport { useBranchParam } from '../../providers/Branch/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useRouteCache } from '../../providers/RouteCache/index.js'\nimport { useRouter, useSearchParams } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { parseSearchParams } from '../../utilities/parseSearchParams.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\ntype PublishManyDrawerContentProps = {\n collection: PublishManyProps['collection']\n drawerSlug: string\n ids: (number | string)[]\n onSuccess?: () => void\n selectAll: boolean\n where?: Where\n}\n\nexport function PublishManyDrawerContent(props: PublishManyDrawerContentProps) {\n const {\n collection,\n collection: { slug, labels: { plural, singular } } = {},\n drawerSlug,\n ids,\n onSuccess,\n selectAll,\n where,\n } = props\n\n const { clearRouteCache } = useRouteCache()\n\n const {\n config: {\n routes: { api },\n },\n } = useConfig()\n\n const { code: locale } = useLocale()\n const branch = useBranchParam()\n\n const router = useRouter()\n const searchParams = useSearchParams()\n const { i18n, t } = useTranslation()\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:unknown'))\n }, [t])\n\n const queryString = React.useMemo((): string => {\n const whereConstraints: Where[] = [\n {\n _status: {\n not_equals: 'published',\n },\n },\n ]\n\n if (where) {\n whereConstraints.push(where)\n }\n\n const queryWithSearch = mergeListSearchAndWhere({\n collectionConfig: collection,\n search: searchParams.get('search'),\n })\n\n if (queryWithSearch) {\n whereConstraints.push(queryWithSearch)\n }\n\n if (selectAll) {\n // Match the current filter/search, or default to all docs\n whereConstraints.push(\n (parseSearchParams(searchParams)?.where as Where) || {\n id: {\n not_equals: '',\n },\n },\n )\n } else {\n // If we're not selecting all, we need to select specific docs\n whereConstraints.push({\n id: {\n in: ids || [],\n },\n })\n }\n\n return qs.stringify(\n {\n branch,\n locale,\n select: {},\n where: combineWhereConstraints(whereConstraints),\n },\n { addQueryPrefix: true },\n )\n }, [branch, collection, searchParams, selectAll, ids, locale, where])\n\n const handlePublish = useCallback(async () => {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${slug}${queryString}&draft=true`,\n })\n await requests\n .patch(url, {\n body: JSON.stringify({\n _status: 'published',\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n .then(async (res) => {\n try {\n const json = await res.json()\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (res.status < 400 || deletedDocs > 0) {\n toast.success(\n t('general:updatedCountSuccessfully', {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n router.replace(\n qs.stringify(\n {\n ...parseSearchParams(searchParams),\n page: selectAll ? '1' : undefined,\n },\n { addQueryPrefix: true },\n ),\n )\n\n clearRouteCache()\n\n if (typeof onSuccess === 'function') {\n onSuccess()\n }\n\n return null\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n return false\n } catch (_err) {\n return addDefaultError()\n }\n })\n }, [\n api,\n slug,\n queryString,\n i18n,\n plural,\n singular,\n t,\n router,\n searchParams,\n selectAll,\n clearRouteCache,\n addDefaultError,\n onSuccess,\n ])\n\n return (\n <ConfirmationModal\n body={t('version:aboutToPublishSelection', { label: getTranslation(plural, i18n) })}\n cancelLabel={t('general:cancel')}\n confirmingLabel={t('version:publishing')}\n confirmLabel={t('general:confirm')}\n heading={t('version:confirmPublish')}\n modalSlug={drawerSlug}\n onConfirm={handlePublish}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -285,9 +285,7 @@ export const QueryPresetBar = ({
285
285
  },
286
286
  children: activePreset?.isShared ? t('general:updateForEveryone') : t('fields:saveChanges')
287
287
  }), queryPresetPermissions?.update && /*#__PURE__*/_jsx(PopupList.Button, {
288
- icon: /*#__PURE__*/_jsx(EditIcon, {
289
- size: 16
290
- }),
288
+ icon: /*#__PURE__*/_jsx(EditIcon, {}),
291
289
  id: "edit-preset",
292
290
  onClick: () => {
293
291
  close();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","transformColumnsToPreferences","transformColumnsToSearchParams","qs","React","Fragment","useCallback","useEffect","useMemo","useState","CheckIcon","EditIcon","GearIcon","PlusIcon","RefreshIcon","TrashIcon","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","FilterTrigger","useListDrawer","useModal","Popup","PopupList","Translation","deletePresetModalSlug","queryPresetsSlug","baseClass","QueryPresetBar","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","openModal","presets","setPresets","i18n","t","config","routes","api","apiRoute","serverURL","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openPresetDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","openListDrawer","collectionSlugs","selectedCollection","fetchPresets","where","and","queryString","stringify","limit","addQueryPrefix","url","path","response","fetch","credentials","ok","data","json","docs","_error","handlePresetChange","preset","columns","undefined","groupBy","buttonLabel","title","label","labels","singular","handleClearPreset","e","stopPropagation","handleDeletePreset","method","handleResetPreset","saveCurrentChanges","body","JSON","headers","presetColumns","presetWhere","presetGroupBy","queryColumns","parse","columnsMatch","whereMatch","groupByMatch","isModified","hasModifiedPreset","_jsxs","_jsx","className","horizontalAlign","portalClassName","render","close","RadioGroup","map","isActive","RadioGroupItem","active","onClick","Divider","MenuItem","size","Button","icon","update","isShared","delete","length","create","plural","renderButton","onKeyDown","Boolean","onClear","popupActive","showBadge","verticalAlign","initialData","onSave","doc","redirectAfterCreate","onDelete","onDuplicate","allowCreate","disableQueryPresets","onSelect","elements","1","children","i18nKey","variables","confirmLabel","heading","modalSlug","onConfirm"],"sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"sourcesContent":["'use client'\nimport type { QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n formatAdminURL,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { EditIcon } from '../../../icons/Edit/index.js'\nimport { GearIcon } from '../../../icons/Gear/index.js'\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { RefreshIcon } from '../../../icons/Refresh/index.js'\nimport { TrashIcon } from '../../../icons/Trash/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useListQuery } from '../../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { FilterTrigger } from '../../FilterTrigger/index.js'\nimport { useListDrawer } from '../../ListDrawer/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\nimport { Translation } from '../../Translation/index.js'\nimport './index.css'\n\nconst deletePresetModalSlug = 'delete-preset-confirmation'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nconst baseClass = 'query-preset-bar'\n\nexport const QueryPresetBar: React.FC<{\n activePreset: QueryPreset\n collectionSlug?: string\n queryPresetPermissions: SanitizedCollectionPermission\n}> = ({ activePreset, collectionSlug, queryPresetPermissions }) => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n const { openModal } = useModal()\n const [presets, setPresets] = useState<QueryPreset[]>([])\n\n const { i18n, t } = useTranslation()\n\n const {\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openPresetDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { openDrawer: openListDrawer }] = useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n // Fetch presets for the popup\n const fetchPresets = useCallback(async () => {\n try {\n const where = {\n and: [{ isTemp: { not_equals: true } }, { relatedCollection: { equals: collectionSlug } }],\n }\n const queryString = qs.stringify({ limit: 50, where }, { addQueryPrefix: true })\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (response.ok) {\n const data = await response.json()\n setPresets(data.docs || [])\n }\n } catch (_error) {\n // Silently fail - presets will remain empty\n }\n }, [apiRoute, collectionSlug, serverURL])\n\n useEffect(() => {\n void fetchPresets()\n }, [fetchPresets])\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n groupBy: preset.groupBy || '',\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const buttonLabel =\n activePreset?.title ||\n t('general:selectLabel', { label: getTranslation(presetConfig?.labels?.singular, i18n) })\n\n const handleClearPreset = useCallback(\n async (e: React.MouseEvent) => {\n e.stopPropagation()\n await refineListData(\n {\n columns: undefined,\n groupBy: '',\n preset: '',\n where: undefined,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const handleDeletePreset = useCallback(async () => {\n if (!activePreset?.id) {\n return\n }\n\n try {\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n })\n\n const response = await fetch(url, {\n credentials: 'include',\n method: 'DELETE',\n })\n\n if (response.ok) {\n // Clear the active preset and refresh the list\n await refineListData(\n {\n columns: undefined,\n groupBy: '',\n preset: '',\n where: undefined,\n },\n false,\n )\n void fetchPresets()\n }\n } catch (_error) {\n // Silently fail\n }\n }, [activePreset?.id, apiRoute, fetchPresets, refineListData, serverURL])\n\n const handleResetPreset = useCallback(async () => {\n if (!activePreset) {\n return\n }\n // Use the same pattern as handlePresetChange for consistency\n await refineListData(\n {\n columns: activePreset.columns ? transformColumnsToSearchParams(activePreset.columns) : [], // explicitly empty to clear user preferences fallback\n groupBy: activePreset.groupBy || '',\n preset: activePreset.id,\n where: activePreset.where,\n },\n false, // not modified - we're resetting to preset's original state\n )\n }, [activePreset, refineListData])\n\n const saveCurrentChanges = useCallback(async () => {\n if (!activePreset?.id) {\n return\n }\n try {\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n })\n\n const response = await fetch(url, {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n })\n\n if (response.ok) {\n setQueryModified(false)\n void fetchPresets()\n }\n } catch (_error) {\n // Silently fail\n }\n }, [\n activePreset?.id,\n apiRoute,\n fetchPresets,\n query.columns,\n query.groupBy,\n query.where,\n serverURL,\n setQueryModified,\n ])\n\n // Detect if current query differs from preset on initial load\n useEffect(() => {\n if (!activePreset) {\n return\n }\n\n const presetColumns = activePreset.columns\n ? transformColumnsToSearchParams(activePreset.columns)\n : []\n const presetWhere = activePreset.where\n const presetGroupBy = activePreset.groupBy || ''\n\n // Normalize query.columns - it may be a JSON string from URL or an array\n let queryColumns = query.columns || []\n if (typeof queryColumns === 'string') {\n try {\n queryColumns = JSON.parse(queryColumns)\n } catch {\n queryColumns = []\n }\n }\n\n // Compare current query with preset values\n const columnsMatch = JSON.stringify(queryColumns) === JSON.stringify(presetColumns)\n const whereMatch = JSON.stringify(query.where) === JSON.stringify(presetWhere)\n const groupByMatch = (query.groupBy || '') === presetGroupBy\n\n const isModified = !columnsMatch || !whereMatch || !groupByMatch\n setQueryModified(isModified)\n }, [activePreset, query.columns, query.where, query.groupBy, setQueryModified])\n\n const hasModifiedPreset = activePreset && modified\n\n return (\n <Fragment>\n <div className={baseClass}>\n <Popup\n className={`${baseClass}__popup`}\n horizontalAlign=\"left\"\n portalClassName={`${baseClass}__popup-content`}\n render={({ close }) => (\n <Fragment>\n <PopupList.RadioGroup>\n {presets.map((preset) => {\n const isActive = activePreset?.id === preset.id\n return (\n <PopupList.RadioGroupItem\n active={isActive}\n key={preset.id}\n onClick={async () => {\n close()\n await handlePresetChange(preset)\n }}\n >\n {preset.title}\n </PopupList.RadioGroupItem>\n )\n })}\n </PopupList.RadioGroup>\n {activePreset && (\n <Fragment>\n <PopupList.Divider />\n <PopupList.MenuItem size=\"small\">\n {hasModifiedPreset && (\n <PopupList.Button\n icon={<RefreshIcon size={16} />}\n id=\"reset-preset\"\n onClick={async () => {\n close()\n await handleResetPreset()\n }}\n >\n {t('general:reset')}\n </PopupList.Button>\n )}\n {hasModifiedPreset && queryPresetPermissions?.update && (\n <PopupList.Button\n icon={<CheckIcon size={16} />}\n id=\"save-preset\"\n onClick={async () => {\n close()\n await saveCurrentChanges()\n }}\n >\n {activePreset?.isShared\n ? t('general:updateForEveryone')\n : t('fields:saveChanges')}\n </PopupList.Button>\n )}\n {queryPresetPermissions?.update && (\n <PopupList.Button\n icon={<EditIcon size={16} />}\n id=\"edit-preset\"\n onClick={() => {\n close()\n openPresetDrawer()\n }}\n >\n {t('general:editLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n {queryPresetPermissions?.delete && (\n <PopupList.Button\n className={`${baseClass}__delete`}\n icon={<TrashIcon size={16} />}\n id=\"delete-preset\"\n onClick={() => {\n close()\n openModal(deletePresetModalSlug)\n }}\n >\n {t('general:deleteLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n </PopupList.MenuItem>\n </Fragment>\n )}\n {(presets.length > 0 || activePreset) && <PopupList.Divider />}\n <PopupList.MenuItem size=\"small\">\n {queryPresetPermissions?.create && (\n <PopupList.Button\n icon={<PlusIcon size={16} />}\n id=\"create-new-preset\"\n onClick={() => {\n close()\n openCreateNewDrawer()\n }}\n >\n {t('general:createNewLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n <PopupList.Button\n icon={<GearIcon size={16} />}\n id=\"manage-presets\"\n onClick={() => {\n close()\n openListDrawer()\n }}\n >\n {t('general:manageLabel', {\n label: getTranslation(presetConfig?.labels?.plural, i18n),\n })}\n </PopupList.Button>\n </PopupList.MenuItem>\n </Fragment>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <FilterTrigger\n className={`${baseClass}__trigger`}\n id=\"select-preset\"\n isActive={Boolean(activePreset)}\n onClear={handleClearPreset}\n onClick={onClick}\n onKeyDown={onKeyDown}\n popupActive={active}\n showBadge={hasModifiedPreset}\n >\n {buttonLabel}\n </FilterTrigger>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n </div>\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n redirectAfterCreate={false}\n />\n <PresetDocumentDrawer\n onDelete={() => {\n void fetchPresets()\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n />\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset?.title,\n }}\n />\n }\n confirmLabel={t('general:delete')}\n heading={t('general:confirmDeletion')}\n modalSlug={deletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n </Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,cAAc,QAAQ;AAC/B,SACEC,cAAc,EACdC,6BAA6B,EAC7BC,8BAA8B,QACzB;AACP,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ;AAE3E,SAASC,SAAS,QAAQ;AAC1B,SAASC,QAAQ,QAAQ;AACzB,SAASC,QAAQ,QAAQ;AACzB,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,aAAa,QAAQ;AAC9B,SAASC,QAAQ,QAAQ;AACzB,SAASC,KAAK,EAAEC,SAAS,QAAQ;AACjC,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAEP,MAAMC,qBAAA,GAAwB;AAE9B,MAAMC,gBAAA,GAAmB;AAEzB,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,cAAA,GAIRA,CAAC;EAAEC,YAAY;EAAEC,cAAc;EAAEC;AAAsB,CAAE;EAC5D,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,cAAc;IAAEC,WAAA,EAAaC;EAAgB,CAAE,GAAGrB,YAAA;EAC3E,MAAM;IAAEsB;EAAS,CAAE,GAAGhB,QAAA;EACtB,MAAM,CAACiB,OAAA,EAASC,UAAA,CAAW,GAAGhC,QAAA,CAAwB,EAAE;EAExD,MAAM;IAAEiC,IAAI;IAAEC;EAAC,CAAE,GAAGzB,cAAA;EAEpB,MAAM;IACJ0B,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,GAAA,EAAKC;MAAQ,CAAE;MACzBC;IAAS,CACV;IACDC;EAAe,CAChB,GAAGjC,SAAA;EAEJ,MAAMkC,YAAA,GAAeD,eAAA,CAAgB;IAAEjB,cAAA,EAAgBJ;EAAiB;EAExE,MAAM,CAACuB,oBAAA,GAAwB;IAAEC,UAAA,EAAYC;EAAgB,CAAE,CAAC,GAAGjC,iBAAA,CAAkB;IACnFkC,EAAA,EAAIvB,YAAA,EAAcuB,EAAA;IAClBtB,cAAA,EAAgBJ;EAClB;EAEA,MAAM,CACJ2B,qBAAA,GAEA;IAAEC,WAAA,EAAaC,oBAAoB;IAAEL,UAAA,EAAYM;EAAmB,CAAE,CACvE,GAAGtC,iBAAA,CAAkB;IACpBY,cAAA,EAAgBJ;EAClB;EAEA,MAAM+B,aAAA,GAAgBnD,OAAA,CACpB,OAAO;IACL,yBAAyB;MACvBoD,MAAA,EAAQ;QACNC,UAAA,EAAY;MACd;MACAC,iBAAA,EAAmB;QACjBC,MAAA,EAAQ/B;MACV;IACF;EACF,IACA,CAACA,cAAA,CAAe;EAGlB,MAAM,CAACgC,UAAA,GAAc;IAAEZ,UAAA,EAAYa;EAAc,CAAE,CAAC,GAAG3C,aAAA,CAAc;IACnE4C,eAAA,EAAiB,CAACtC,gBAAA,CAAiB;IACnC+B,aAAA;IACAQ,kBAAA,EAAoBvC;EACtB;EAEA;EACA,MAAMwC,YAAA,GAAe9D,WAAA,CAAY;IAC/B,IAAI;MACF,MAAM+D,KAAA,GAAQ;QACZC,GAAA,EAAK,CAAC;UAAEV,MAAA,EAAQ;YAAEC,UAAA,EAAY;UAAK;QAAE,GAAG;UAAEC,iBAAA,EAAmB;YAAEC,MAAA,EAAQ/B;UAAe;QAAE;MAC1F;MACA,MAAMuC,WAAA,GAAcpE,EAAA,CAAGqE,SAAS,CAAC;QAAEC,KAAA,EAAO;QAAIJ;MAAM,GAAG;QAAEK,cAAA,EAAgB;MAAK;MAC9E,MAAMC,GAAA,GAAM3E,cAAA,CAAe;QACzB+C,QAAA;QACA6B,IAAA,EAAM,IAAIhD,gBAAA,GAAmB2C,WAAA,EAAa;QAC1CvB;MACF;MAEA,MAAM6B,QAAA,GAAW,MAAMC,KAAA,CAAMH,GAAA,EAAK;QAAEI,WAAA,EAAa;MAAU;MAE3D,IAAIF,QAAA,CAASG,EAAE,EAAE;QACf,MAAMC,IAAA,GAAO,MAAMJ,QAAA,CAASK,IAAI;QAChCzC,UAAA,CAAWwC,IAAA,CAAKE,IAAI,IAAI,EAAE;MAC5B;IACF,EAAE,OAAOC,MAAA,EAAQ;MACf;IAAA;EAEJ,GAAG,CAACrC,QAAA,EAAUf,cAAA,EAAgBgB,SAAA,CAAU;EAExCzC,SAAA,CAAU;IACR,KAAK6D,YAAA;EACP,GAAG,CAACA,YAAA,CAAa;EAEjB,MAAMiB,kBAAA,GAAqB/E,WAAA,CACzB,MAAOgF,MAAA;IACL,MAAMlD,cAAA,CACJ;MACEmD,OAAA,EAASD,MAAA,CAAOC,OAAO,GAAGrF,8BAAA,CAA+BoF,MAAA,CAAOC,OAAO,IAAIC,SAAA;MAC3EC,OAAA,EAASH,MAAA,CAAOG,OAAO,IAAI;MAC3BH,MAAA,EAAQA,MAAA,CAAOhC,EAAE;MACjBe,KAAA,EAAOiB,MAAA,CAAOjB;IAChB,GACA;EAEJ,GACA,CAACjC,cAAA,CAAe;EAGlB,MAAMsD,WAAA,GACJ3D,YAAA,EAAc4D,KAAA,IACdhD,CAAA,CAAE,uBAAuB;IAAEiD,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQC,QAAA,EAAUpD,IAAA;EAAM;EAEzF,MAAMqD,iBAAA,GAAoBzF,WAAA,CACxB,MAAO0F,CAAA;IACLA,CAAA,CAAEC,eAAe;IACjB,MAAM7D,cAAA,CACJ;MACEmD,OAAA,EAASC,SAAA;MACTC,OAAA,EAAS;MACTH,MAAA,EAAQ;MACRjB,KAAA,EAAOmB;IACT,GACA;EAEJ,GACA,CAACpD,cAAA,CAAe;EAGlB,MAAM8D,kBAAA,GAAqB5F,WAAA,CAAY;IACrC,IAAI,CAACyB,YAAA,EAAcuB,EAAA,EAAI;MACrB;IACF;IAEA,IAAI;MACF,MAAMqB,KAAA,GAAM3E,cAAA,CAAe;QACzB+C,QAAA;QACA6B,IAAA,EAAM,IAAIhD,gBAAA,IAAoBG,YAAA,CAAauB,EAAE,EAAE;QAC/CN;MACF;MAEA,MAAM6B,UAAA,GAAW,MAAMC,KAAA,CAAMH,KAAA,EAAK;QAChCI,WAAA,EAAa;QACboB,MAAA,EAAQ;MACV;MAEA,IAAItB,UAAA,CAASG,EAAE,EAAE;QACf;QACA,MAAM5C,cAAA,CACJ;UACEmD,OAAA,EAASC,SAAA;UACTC,OAAA,EAAS;UACTH,MAAA,EAAQ;UACRjB,KAAA,EAAOmB;QACT,GACA;QAEF,KAAKpB,YAAA;MACP;IACF,EAAE,OAAOgB,QAAA,EAAQ;MACf;IAAA;EAEJ,GAAG,CAACrD,YAAA,EAAcuB,EAAA,EAAIP,QAAA,EAAUqB,YAAA,EAAchC,cAAA,EAAgBY,SAAA,CAAU;EAExE,MAAMoD,iBAAA,GAAoB9F,WAAA,CAAY;IACpC,IAAI,CAACyB,YAAA,EAAc;MACjB;IACF;IACA;IACA,MAAMK,cAAA,CACJ;MACEmD,OAAA,EAASxD,YAAA,CAAawD,OAAO,GAAGrF,8BAAA,CAA+B6B,YAAA,CAAawD,OAAO,IAAI,EAAE;MACzFE,OAAA,EAAS1D,YAAA,CAAa0D,OAAO,IAAI;MACjCH,MAAA,EAAQvD,YAAA,CAAauB,EAAE;MACvBe,KAAA,EAAOtC,YAAA,CAAasC;IACtB,GACA;EAEJ,GAAG,CAACtC,YAAA,EAAcK,cAAA,CAAe;EAEjC,MAAMiE,kBAAA,GAAqB/F,WAAA,CAAY;IACrC,IAAI,CAACyB,YAAA,EAAcuB,EAAA,EAAI;MACrB;IACF;IACA,IAAI;MACF,MAAMqB,KAAA,GAAM3E,cAAA,CAAe;QACzB+C,QAAA;QACA6B,IAAA,EAAM,IAAIhD,gBAAA,IAAoBG,YAAA,CAAauB,EAAE,EAAE;QAC/CN;MACF;MAEA,MAAM6B,UAAA,GAAW,MAAMC,KAAA,CAAMH,KAAA,EAAK;QAChC2B,IAAA,EAAMC,IAAA,CAAK/B,SAAS,CAAC;UACnBe,OAAA,EAAStF,6BAAA,CAA8BkC,KAAA,CAAMoD,OAAO;UACpDE,OAAA,EAAStD,KAAA,CAAMsD,OAAO;UACtBpB,KAAA,EAAOlC,KAAA,CAAMkC;QACf;QACAU,WAAA,EAAa;QACbyB,OAAA,EAAS;UACP,gBAAgB;QAClB;QACAL,MAAA,EAAQ;MACV;MAEA,IAAItB,UAAA,CAASG,EAAE,EAAE;QACf1C,gBAAA,CAAiB;QACjB,KAAK8B,YAAA;MACP;IACF,EAAE,OAAOgB,QAAA,EAAQ;MACf;IAAA;EAEJ,GAAG,CACDrD,YAAA,EAAcuB,EAAA,EACdP,QAAA,EACAqB,YAAA,EACAjC,KAAA,CAAMoD,OAAO,EACbpD,KAAA,CAAMsD,OAAO,EACbtD,KAAA,CAAMkC,KAAK,EACXrB,SAAA,EACAV,gBAAA,CACD;EAED;EACA/B,SAAA,CAAU;IACR,IAAI,CAACwB,YAAA,EAAc;MACjB;IACF;IAEA,MAAM0E,aAAA,GAAgB1E,YAAA,CAAawD,OAAO,GACtCrF,8BAAA,CAA+B6B,YAAA,CAAawD,OAAO,IACnD,EAAE;IACN,MAAMmB,WAAA,GAAc3E,YAAA,CAAasC,KAAK;IACtC,MAAMsC,aAAA,GAAgB5E,YAAA,CAAa0D,OAAO,IAAI;IAE9C;IACA,IAAImB,YAAA,GAAezE,KAAA,CAAMoD,OAAO,IAAI,EAAE;IACtC,IAAI,OAAOqB,YAAA,KAAiB,UAAU;MACpC,IAAI;QACFA,YAAA,GAAeL,IAAA,CAAKM,KAAK,CAACD,YAAA;MAC5B,EAAE,MAAM;QACNA,YAAA,GAAe,EAAE;MACnB;IACF;IAEA;IACA,MAAME,YAAA,GAAeP,IAAA,CAAK/B,SAAS,CAACoC,YAAA,MAAkBL,IAAA,CAAK/B,SAAS,CAACiC,aAAA;IACrE,MAAMM,UAAA,GAAaR,IAAA,CAAK/B,SAAS,CAACrC,KAAA,CAAMkC,KAAK,MAAMkC,IAAA,CAAK/B,SAAS,CAACkC,WAAA;IAClE,MAAMM,YAAA,GAAe,CAAC7E,KAAA,CAAMsD,OAAO,IAAI,EAAC,MAAOkB,aAAA;IAE/C,MAAMM,UAAA,GAAa,CAACH,YAAA,IAAgB,CAACC,UAAA,IAAc,CAACC,YAAA;IACpD1E,gBAAA,CAAiB2E,UAAA;EACnB,GAAG,CAAClF,YAAA,EAAcI,KAAA,CAAMoD,OAAO,EAAEpD,KAAA,CAAMkC,KAAK,EAAElC,KAAA,CAAMsD,OAAO,EAAEnD,gBAAA,CAAiB;EAE9E,MAAM4E,iBAAA,GAAoBnF,YAAA,IAAgBG,QAAA;EAE1C,oBACEiF,KAAA,CAAC9G,QAAA;4BACC+G,IAAA,CAAC;MAAIC,SAAA,EAAWxF,SAAA;gBACd,aAAAuF,IAAA,CAAC5F,KAAA;QACC6F,SAAA,EAAW,GAAGxF,SAAA,SAAkB;QAChCyF,eAAA,EAAgB;QAChBC,eAAA,EAAiB,GAAG1F,SAAA,iBAA0B;QAC9C2F,MAAA,EAAQA,CAAC;UAAEC;QAAK,CAAE,kBAChBN,KAAA,CAAC9G,QAAA;kCACC+G,IAAA,CAAC3F,SAAA,CAAUiG,UAAU;sBAClBlF,OAAA,CAAQmF,GAAG,CAAErC,QAAA;cACZ,MAAMsC,QAAA,GAAW7F,YAAA,EAAcuB,EAAA,KAAOgC,QAAA,CAAOhC,EAAE;cAC/C,oBACE8D,IAAA,CAAC3F,SAAA,CAAUoG,cAAc;gBACvBC,MAAA,EAAQF,QAAA;gBAERG,OAAA,EAAS,MAAAA,CAAA;kBACPN,KAAA;kBACA,MAAMpC,kBAAA,CAAmBC,QAAA;gBAC3B;0BAECA,QAAA,CAAOK;iBANHL,QAAA,CAAOhC,EAAE;YASpB;cAEDvB,YAAA,iBACCoF,KAAA,CAAC9G,QAAA;oCACC+G,IAAA,CAAC3F,SAAA,CAAUuG,OAAO,O,aAClBb,KAAA,CAAC1F,SAAA,CAAUwG,QAAQ;cAACC,IAAA,EAAK;yBACtBhB,iBAAA,iBACCE,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;gBACfC,IAAA,eAAMhB,IAAA,CAACtG,WAAA;kBAAYoH,IAAA,EAAM;;gBACzB5E,EAAA,EAAG;gBACHyE,OAAA,EAAS,MAAAA,CAAA;kBACPN,KAAA;kBACA,MAAMrB,iBAAA;gBACR;0BAECzD,CAAA,CAAE;kBAGNuE,iBAAA,IAAqBjF,sBAAA,EAAwBoG,MAAA,iBAC5CjB,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;gBACfC,IAAA,eAAMhB,IAAA,CAAC1G,SAAA;kBAAUwH,IAAA,EAAM;;gBACvB5E,EAAA,EAAG;gBACHyE,OAAA,EAAS,MAAAA,CAAA;kBACPN,KAAA;kBACA,MAAMpB,kBAAA;gBACR;0BAECtE,YAAA,EAAcuG,QAAA,GACX3F,CAAA,CAAE,+BACFA,CAAA,CAAE;kBAGTV,sBAAA,EAAwBoG,MAAA,iBACvBjB,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;gBACfC,IAAA,eAAMhB,IAAA,CAACzG,QAAA;kBAASuH,IAAA,EAAM;;gBACtB5E,EAAA,EAAG;gBACHyE,OAAA,EAASA,CAAA;kBACPN,KAAA;kBACApE,gBAAA;gBACF;0BAECV,CAAA,CAAE,qBAAqB;kBACtBiD,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQC,QAAA,EAAUpD,IAAA;gBACxD;kBAGHT,sBAAA,EAAwBsG,MAAA,iBACvBnB,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;gBACfd,SAAA,EAAW,GAAGxF,SAAA,UAAmB;gBACjCuG,IAAA,eAAMhB,IAAA,CAACrG,SAAA;kBAAUmH,IAAA,EAAM;;gBACvB5E,EAAA,EAAG;gBACHyE,OAAA,EAASA,CAAA;kBACPN,KAAA;kBACAlF,SAAA,CAAUZ,qBAAA;gBACZ;0BAECgB,CAAA,CAAE,uBAAuB;kBACxBiD,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQC,QAAA,EAAUpD,IAAA;gBACxD;;;cAMR,CAAAF,OAAA,CAAQgG,MAAM,GAAG,KAAKzG,YAAW,kBAAMqF,IAAA,CAAC3F,SAAA,CAAUuG,OAAO,O,aAC3Db,KAAA,CAAC1F,SAAA,CAAUwG,QAAQ;YAACC,IAAA,EAAK;uBACtBjG,sBAAA,EAAwBwG,MAAA,iBACvBrB,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;cACfC,IAAA,eAAMhB,IAAA,CAACvG,QAAA;gBAASqH,IAAA,EAAM;;cACtB5E,EAAA,EAAG;cACHyE,OAAA,EAASA,CAAA;gBACPN,KAAA;gBACA/D,mBAAA;cACF;wBAECf,CAAA,CAAE,0BAA0B;gBAC3BiD,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQC,QAAA,EAAUpD,IAAA;cACxD;6BAGJ0E,IAAA,CAAC3F,SAAA,CAAU0G,MAAM;cACfC,IAAA,eAAMhB,IAAA,CAACxG,QAAA;gBAASsH,IAAA,EAAM;;cACtB5E,EAAA,EAAG;cACHyE,OAAA,EAASA,CAAA;gBACPN,KAAA;gBACAxD,cAAA;cACF;wBAECtB,CAAA,CAAE,uBAAuB;gBACxBiD,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQ6C,MAAA,EAAQhG,IAAA;cACtD;;;;QAKRiG,YAAA,EAAcA,CAAC;UAAEb,MAAM;UAAEC,OAAO;UAAEa;QAAS,CAAE,kBAC3CxB,IAAA,CAAC/F,aAAA;UACCgG,SAAA,EAAW,GAAGxF,SAAA,WAAoB;UAClCyB,EAAA,EAAG;UACHsE,QAAA,EAAUiB,OAAA,CAAQ9G,YAAA;UAClB+G,OAAA,EAAS/C,iBAAA;UACTgC,OAAA,EAASA,OAAA;UACTa,SAAA,EAAWA,SAAA;UACXG,WAAA,EAAajB,MAAA;UACbkB,SAAA,EAAW9B,iBAAA;oBAEVxB;;QAGLwC,IAAA,EAAK;QACLe,aAAA,EAAc;;qBAGlB7B,IAAA,CAAC7D,qBAAA;MACC2F,WAAA,EAAa;QACX3D,OAAA,EAAStF,6BAAA,CAA8BkC,KAAA,CAAMoD,OAAO;QACpDE,OAAA,EAAStD,KAAA,CAAMsD,OAAO;QACtB3B,iBAAA,EAAmB9B,cAAA;QACnBqC,KAAA,EAAOlC,KAAA,CAAMkC;MACf;MACA8E,MAAA,EAAQ,MAAAA,CAAO;QAAEC;MAAG,CAAE;QACpB3F,oBAAA;QACA,MAAM4B,kBAAA,CAAmB+D,GAAA;QACzB,KAAKhF,YAAA;MACP;MACAiF,mBAAA,EAAqB;qBAEvBjC,IAAA,CAACjE,oBAAA;MACCmG,QAAA,EAAUA,CAAA;QACR,KAAKlF,YAAA;MACP;MACAmF,WAAA,EAAa,MAAAA,CAAO;QAAEH,GAAG,EAAHA;MAAG,CAAE;QACzB,MAAM/D,kBAAA,CAAmB+D,KAAA;QACzB,KAAKhF,YAAA;MACP;MACA+E,MAAA,EAAQ,MAAAA,CAAO;QAAEC,GAAG,EAAHA;MAAG,CAAE;QACpB,MAAM/D,kBAAA,CAAmB+D,KAAA;QACzB,KAAKhF,YAAA;MACP;qBAEFgD,IAAA,CAACpD,UAAA;MACCwF,WAAA,EAAa;MACbC,mBAAmB;MACnBC,QAAA,EAAU,MAAAA,CAAO;QAAEN,GAAG,EAAHA;MAAG,CAAE;QACtB,MAAM/D,kBAAA,CAAmB+D,KAAA;MAC3B;qBAEFhC,IAAA,CAACjG,iBAAA;MACCmF,IAAA,eACEc,IAAA,CAAC1F,WAAA;QACCiI,QAAA,EAAU;UACR,KAAKC,CAAC;YAAEC;UAAQ,CAAE,kBAAKzC,IAAA,CAAC;sBAAQyC;;QAClC;QACAC,OAAA,EAAQ;QACRnH,CAAA,EAAGA,CAAA;QACHoH,SAAA,EAAW;UACTnE,KAAA,EAAO7F,cAAA,CAAemD,YAAA,EAAc2C,MAAA,EAAQC,QAAA,EAAUpD,IAAA;UACtDiD,KAAA,EAAO5D,YAAA,EAAc4D;QACvB;;MAGJqE,YAAA,EAAcrH,CAAA,CAAE;MAChBsH,OAAA,EAAStH,CAAA,CAAE;MACXuH,SAAA,EAAWvI,qBAAA;MACXwI,SAAA,EAAWjE;;;AAInB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","transformColumnsToPreferences","transformColumnsToSearchParams","qs","React","Fragment","useCallback","useEffect","useMemo","useState","CheckIcon","EditIcon","GearIcon","PlusIcon","RefreshIcon","TrashIcon","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","FilterTrigger","useListDrawer","useModal","Popup","PopupList","Translation","deletePresetModalSlug","queryPresetsSlug","baseClass","QueryPresetBar","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","openModal","presets","setPresets","i18n","t","config","routes","api","apiRoute","serverURL","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openPresetDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","openListDrawer","collectionSlugs","selectedCollection","fetchPresets","where","and","queryString","stringify","limit","addQueryPrefix","url","path","response","fetch","credentials","ok","data","json","docs","_error","handlePresetChange","preset","columns","undefined","groupBy","buttonLabel","title","label","labels","singular","handleClearPreset","e","stopPropagation","handleDeletePreset","method","handleResetPreset","saveCurrentChanges","body","JSON","headers","presetColumns","presetWhere","presetGroupBy","queryColumns","parse","columnsMatch","whereMatch","groupByMatch","isModified","hasModifiedPreset","_jsxs","_jsx","className","horizontalAlign","portalClassName","render","close","RadioGroup","map","isActive","RadioGroupItem","active","onClick","Divider","MenuItem","size","Button","icon","update","isShared","delete","length","create","plural","renderButton","onKeyDown","Boolean","onClear","popupActive","showBadge","verticalAlign","initialData","onSave","doc","redirectAfterCreate","onDelete","onDuplicate","allowCreate","disableQueryPresets","onSelect","elements","1","children","i18nKey","variables","confirmLabel","heading","modalSlug","onConfirm"],"sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"sourcesContent":["'use client'\nimport type { QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n formatAdminURL,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { EditIcon } from '../../../icons/Edit/index.js'\nimport { GearIcon } from '../../../icons/Gear/index.js'\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { RefreshIcon } from '../../../icons/Refresh/index.js'\nimport { TrashIcon } from '../../../icons/Trash/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useListQuery } from '../../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { FilterTrigger } from '../../FilterTrigger/index.js'\nimport { useListDrawer } from '../../ListDrawer/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { Popup, PopupList } from '../../Popup/index.js'\nimport { Translation } from '../../Translation/index.js'\nimport './index.css'\n\nconst deletePresetModalSlug = 'delete-preset-confirmation'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nconst baseClass = 'query-preset-bar'\n\nexport const QueryPresetBar: React.FC<{\n activePreset: QueryPreset\n collectionSlug?: string\n queryPresetPermissions: SanitizedCollectionPermission\n}> = ({ activePreset, collectionSlug, queryPresetPermissions }) => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n const { openModal } = useModal()\n const [presets, setPresets] = useState<QueryPreset[]>([])\n\n const { i18n, t } = useTranslation()\n\n const {\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openPresetDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { openDrawer: openListDrawer }] = useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n // Fetch presets for the popup\n const fetchPresets = useCallback(async () => {\n try {\n const where = {\n and: [{ isTemp: { not_equals: true } }, { relatedCollection: { equals: collectionSlug } }],\n }\n const queryString = qs.stringify({ limit: 50, where }, { addQueryPrefix: true })\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}${queryString}`,\n serverURL,\n })\n\n const response = await fetch(url, { credentials: 'include' })\n\n if (response.ok) {\n const data = await response.json()\n setPresets(data.docs || [])\n }\n } catch (_error) {\n // Silently fail - presets will remain empty\n }\n }, [apiRoute, collectionSlug, serverURL])\n\n useEffect(() => {\n void fetchPresets()\n }, [fetchPresets])\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n groupBy: preset.groupBy || '',\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const buttonLabel =\n activePreset?.title ||\n t('general:selectLabel', { label: getTranslation(presetConfig?.labels?.singular, i18n) })\n\n const handleClearPreset = useCallback(\n async (e: React.MouseEvent) => {\n e.stopPropagation()\n await refineListData(\n {\n columns: undefined,\n groupBy: '',\n preset: '',\n where: undefined,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const handleDeletePreset = useCallback(async () => {\n if (!activePreset?.id) {\n return\n }\n\n try {\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n })\n\n const response = await fetch(url, {\n credentials: 'include',\n method: 'DELETE',\n })\n\n if (response.ok) {\n // Clear the active preset and refresh the list\n await refineListData(\n {\n columns: undefined,\n groupBy: '',\n preset: '',\n where: undefined,\n },\n false,\n )\n void fetchPresets()\n }\n } catch (_error) {\n // Silently fail\n }\n }, [activePreset?.id, apiRoute, fetchPresets, refineListData, serverURL])\n\n const handleResetPreset = useCallback(async () => {\n if (!activePreset) {\n return\n }\n // Use the same pattern as handlePresetChange for consistency\n await refineListData(\n {\n columns: activePreset.columns ? transformColumnsToSearchParams(activePreset.columns) : [], // explicitly empty to clear user preferences fallback\n groupBy: activePreset.groupBy || '',\n preset: activePreset.id,\n where: activePreset.where,\n },\n false, // not modified - we're resetting to preset's original state\n )\n }, [activePreset, refineListData])\n\n const saveCurrentChanges = useCallback(async () => {\n if (!activePreset?.id) {\n return\n }\n try {\n const url = formatAdminURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n })\n\n const response = await fetch(url, {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n })\n\n if (response.ok) {\n setQueryModified(false)\n void fetchPresets()\n }\n } catch (_error) {\n // Silently fail\n }\n }, [\n activePreset?.id,\n apiRoute,\n fetchPresets,\n query.columns,\n query.groupBy,\n query.where,\n serverURL,\n setQueryModified,\n ])\n\n // Detect if current query differs from preset on initial load\n useEffect(() => {\n if (!activePreset) {\n return\n }\n\n const presetColumns = activePreset.columns\n ? transformColumnsToSearchParams(activePreset.columns)\n : []\n const presetWhere = activePreset.where\n const presetGroupBy = activePreset.groupBy || ''\n\n // Normalize query.columns - it may be a JSON string from URL or an array\n let queryColumns = query.columns || []\n if (typeof queryColumns === 'string') {\n try {\n queryColumns = JSON.parse(queryColumns)\n } catch {\n queryColumns = []\n }\n }\n\n // Compare current query with preset values\n const columnsMatch = JSON.stringify(queryColumns) === JSON.stringify(presetColumns)\n const whereMatch = JSON.stringify(query.where) === JSON.stringify(presetWhere)\n const groupByMatch = (query.groupBy || '') === presetGroupBy\n\n const isModified = !columnsMatch || !whereMatch || !groupByMatch\n setQueryModified(isModified)\n }, [activePreset, query.columns, query.where, query.groupBy, setQueryModified])\n\n const hasModifiedPreset = activePreset && modified\n\n return (\n <Fragment>\n <div className={baseClass}>\n <Popup\n className={`${baseClass}__popup`}\n horizontalAlign=\"left\"\n portalClassName={`${baseClass}__popup-content`}\n render={({ close }) => (\n <Fragment>\n <PopupList.RadioGroup>\n {presets.map((preset) => {\n const isActive = activePreset?.id === preset.id\n return (\n <PopupList.RadioGroupItem\n active={isActive}\n key={preset.id}\n onClick={async () => {\n close()\n await handlePresetChange(preset)\n }}\n >\n {preset.title}\n </PopupList.RadioGroupItem>\n )\n })}\n </PopupList.RadioGroup>\n {activePreset && (\n <Fragment>\n <PopupList.Divider />\n <PopupList.MenuItem size=\"small\">\n {hasModifiedPreset && (\n <PopupList.Button\n icon={<RefreshIcon size={16} />}\n id=\"reset-preset\"\n onClick={async () => {\n close()\n await handleResetPreset()\n }}\n >\n {t('general:reset')}\n </PopupList.Button>\n )}\n {hasModifiedPreset && queryPresetPermissions?.update && (\n <PopupList.Button\n icon={<CheckIcon size={16} />}\n id=\"save-preset\"\n onClick={async () => {\n close()\n await saveCurrentChanges()\n }}\n >\n {activePreset?.isShared\n ? t('general:updateForEveryone')\n : t('fields:saveChanges')}\n </PopupList.Button>\n )}\n {queryPresetPermissions?.update && (\n <PopupList.Button\n icon={<EditIcon />}\n id=\"edit-preset\"\n onClick={() => {\n close()\n openPresetDrawer()\n }}\n >\n {t('general:editLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n {queryPresetPermissions?.delete && (\n <PopupList.Button\n className={`${baseClass}__delete`}\n icon={<TrashIcon size={16} />}\n id=\"delete-preset\"\n onClick={() => {\n close()\n openModal(deletePresetModalSlug)\n }}\n >\n {t('general:deleteLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n </PopupList.MenuItem>\n </Fragment>\n )}\n {(presets.length > 0 || activePreset) && <PopupList.Divider />}\n <PopupList.MenuItem size=\"small\">\n {queryPresetPermissions?.create && (\n <PopupList.Button\n icon={<PlusIcon size={16} />}\n id=\"create-new-preset\"\n onClick={() => {\n close()\n openCreateNewDrawer()\n }}\n >\n {t('general:createNewLabel', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n })}\n </PopupList.Button>\n )}\n <PopupList.Button\n icon={<GearIcon size={16} />}\n id=\"manage-presets\"\n onClick={() => {\n close()\n openListDrawer()\n }}\n >\n {t('general:manageLabel', {\n label: getTranslation(presetConfig?.labels?.plural, i18n),\n })}\n </PopupList.Button>\n </PopupList.MenuItem>\n </Fragment>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <FilterTrigger\n className={`${baseClass}__trigger`}\n id=\"select-preset\"\n isActive={Boolean(activePreset)}\n onClear={handleClearPreset}\n onClick={onClick}\n onKeyDown={onKeyDown}\n popupActive={active}\n showBadge={hasModifiedPreset}\n >\n {buttonLabel}\n </FilterTrigger>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n </div>\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n redirectAfterCreate={false}\n />\n <PresetDocumentDrawer\n onDelete={() => {\n void fetchPresets()\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n void fetchPresets()\n }}\n />\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset?.title,\n }}\n />\n }\n confirmLabel={t('general:delete')}\n heading={t('general:confirmDeletion')}\n modalSlug={deletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}