@payloadcms/ui 3.68.0-internal-debug.591ab42 → 3.68.0-internal-debug.e9b66ee

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 (770) hide show
  1. package/dist/elements/AddNewRelation/index.js +37 -126
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AnimateHeight/index.js +17 -33
  4. package/dist/elements/AnimateHeight/index.js.map +1 -1
  5. package/dist/elements/AppHeader/index.js +35 -147
  6. package/dist/elements/AppHeader/index.js.map +1 -1
  7. package/dist/elements/ArrayAction/index.js +57 -183
  8. package/dist/elements/ArrayAction/index.js.map +1 -1
  9. package/dist/elements/Autosave/index.js +12 -28
  10. package/dist/elements/Autosave/index.js.map +1 -1
  11. package/dist/elements/Banner/index.js +5 -34
  12. package/dist/elements/Banner/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/ActionsBar/index.js +56 -160
  14. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/AddFilesView/index.js +23 -80
  16. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddingFilesView/index.js +13 -78
  18. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +1 -14
  20. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +3 -17
  22. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  23. package/dist/elements/BulkUpload/EditForm/index.js +19 -89
  24. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  25. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +35 -134
  26. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  27. package/dist/elements/BulkUpload/EditMany/index.js +10 -44
  28. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  29. package/dist/elements/BulkUpload/FileSidebar/index.js +91 -326
  30. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  31. package/dist/elements/BulkUpload/FormsManager/index.js +25 -42
  32. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/Header/index.js +4 -26
  34. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  35. package/dist/elements/BulkUpload/index.js +43 -94
  36. package/dist/elements/BulkUpload/index.js.map +1 -1
  37. package/dist/elements/Button/index.js +38 -155
  38. package/dist/elements/Button/index.js.map +1 -1
  39. package/dist/elements/Card/index.js +5 -40
  40. package/dist/elements/Card/index.js.map +1 -1
  41. package/dist/elements/CheckboxPopup/index.js +15 -41
  42. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  43. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +3 -20
  44. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  45. package/dist/elements/ClipboardAction/index.js +14 -64
  46. package/dist/elements/ClipboardAction/index.js.map +1 -1
  47. package/dist/elements/CloseModalButton/index.js +8 -21
  48. package/dist/elements/CloseModalButton/index.js.map +1 -1
  49. package/dist/elements/CodeEditor/CodeEditor.js +27 -48
  50. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  51. package/dist/elements/CodeEditor/index.js +5 -21
  52. package/dist/elements/CodeEditor/index.js.map +1 -1
  53. package/dist/elements/Collapsible/index.js +40 -128
  54. package/dist/elements/Collapsible/index.js.map +1 -1
  55. package/dist/elements/Collapsible/provider.js +2 -10
  56. package/dist/elements/Collapsible/provider.js.map +1 -1
  57. package/dist/elements/ColumnSelector/index.js +12 -28
  58. package/dist/elements/ColumnSelector/index.js.map +1 -1
  59. package/dist/elements/Combobox/index.js +23 -71
  60. package/dist/elements/Combobox/index.js.map +1 -1
  61. package/dist/elements/ConfirmationModal/index.js +22 -81
  62. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  63. package/dist/elements/CopyLocaleData/index.js +56 -148
  64. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  65. package/dist/elements/CopyToClipboard/index.js +17 -41
  66. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  67. package/dist/elements/DatePicker/DatePicker.js +11 -56
  68. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  69. package/dist/elements/DatePicker/index.js +5 -23
  70. package/dist/elements/DatePicker/index.js.map +1 -1
  71. package/dist/elements/DefaultListViewTabs/index.js +22 -62
  72. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  73. package/dist/elements/DeleteDocument/index.js +19 -79
  74. package/dist/elements/DeleteDocument/index.js.map +1 -1
  75. package/dist/elements/DeleteMany/index.js +45 -131
  76. package/dist/elements/DeleteMany/index.js.map +1 -1
  77. package/dist/elements/DocumentControls/index.js +95 -442
  78. package/dist/elements/DocumentControls/index.js.map +1 -1
  79. package/dist/elements/DocumentDrawer/DrawerContent.js +4 -18
  80. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  81. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +15 -76
  82. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  83. package/dist/elements/DocumentDrawer/Provider.js +4 -12
  84. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  85. package/dist/elements/DocumentDrawer/index.js +14 -62
  86. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  87. package/dist/elements/DocumentFields/index.js +22 -86
  88. package/dist/elements/DocumentFields/index.js.map +1 -1
  89. package/dist/elements/DocumentLocked/index.js +41 -126
  90. package/dist/elements/DocumentLocked/index.js.map +1 -1
  91. package/dist/elements/DocumentTakeOver/index.js +24 -81
  92. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  93. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +16 -21
  94. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  95. package/dist/elements/DraggableSortable/index.js +8 -29
  96. package/dist/elements/DraggableSortable/index.js.map +1 -1
  97. package/dist/elements/Drawer/index.js +38 -135
  98. package/dist/elements/Drawer/index.js.map +1 -1
  99. package/dist/elements/DrawerActionHeader/index.js +18 -57
  100. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  101. package/dist/elements/DrawerContentContainer/index.js +4 -13
  102. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  103. package/dist/elements/Dropzone/index.js +15 -22
  104. package/dist/elements/Dropzone/index.js.map +1 -1
  105. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +22 -98
  106. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  107. package/dist/elements/DuplicateDocument/index.js +15 -46
  108. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  109. package/dist/elements/EditMany/DrawerContent.js +49 -204
  110. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  111. package/dist/elements/EditMany/index.js +18 -66
  112. package/dist/elements/EditMany/index.js.map +1 -1
  113. package/dist/elements/EditUpload/index.js +105 -388
  114. package/dist/elements/EditUpload/index.js.map +1 -1
  115. package/dist/elements/EmailAndUsername/index.js +25 -64
  116. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  117. package/dist/elements/ErrorPill/index.js +6 -27
  118. package/dist/elements/ErrorPill/index.js.map +1 -1
  119. package/dist/elements/FieldDiffContainer/index.js +17 -47
  120. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  121. package/dist/elements/FieldDiffLabel/index.js +1 -10
  122. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  123. package/dist/elements/FieldSelect/index.js +14 -37
  124. package/dist/elements/FieldSelect/index.js.map +1 -1
  125. package/dist/elements/FileDetails/DraggableFileDetails/index.js +26 -107
  126. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  127. package/dist/elements/FileDetails/FileMeta/index.js +19 -69
  128. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  129. package/dist/elements/FileDetails/StaticFileDetails/index.js +12 -72
  130. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  131. package/dist/elements/FileDetails/index.js +2 -16
  132. package/dist/elements/FileDetails/index.js.map +1 -1
  133. package/dist/elements/FolderView/Breadcrumbs/index.js +15 -51
  134. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  135. package/dist/elements/FolderView/BrowseByFolderButton/index.js +10 -26
  136. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  137. package/dist/elements/FolderView/Cell/index.client.js +4 -22
  138. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  139. package/dist/elements/FolderView/Cell/index.server.js +1 -14
  140. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  141. package/dist/elements/FolderView/ColoredFolderIcon/index.js +1 -8
  142. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  143. package/dist/elements/FolderView/CurrentFolderActions/index.js +58 -138
  144. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  145. package/dist/elements/FolderView/DragOverlaySelection/index.js +18 -56
  146. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  147. package/dist/elements/FolderView/DraggableTableRow/index.js +20 -47
  148. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  149. package/dist/elements/FolderView/DraggableWithClick/index.js +16 -28
  150. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  151. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +10 -24
  152. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  153. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +105 -327
  154. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  155. package/dist/elements/FolderView/FilterFolderTypePill/index.js +11 -39
  156. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  157. package/dist/elements/FolderView/FolderField/index.server.js +1 -10
  158. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  159. package/dist/elements/FolderView/FolderFileCard/index.js +50 -168
  160. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  161. package/dist/elements/FolderView/FolderFileTable/index.js +97 -166
  162. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  163. package/dist/elements/FolderView/FolderTypeField/index.js +1 -30
  164. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  165. package/dist/elements/FolderView/ItemCardGrid/index.js +10 -34
  166. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  167. package/dist/elements/FolderView/MoveDocToFolder/index.js +54 -104
  168. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  169. package/dist/elements/FolderView/SimpleTable/index.js +31 -98
  170. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  171. package/dist/elements/FolderView/SortByPill/index.js +46 -135
  172. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  173. package/dist/elements/FolderView/ToggleViewButtons/index.js +14 -45
  174. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  175. package/dist/elements/FullscreenModal/index.js +5 -15
  176. package/dist/elements/FullscreenModal/index.js.map +1 -1
  177. package/dist/elements/GenerateConfirmation/index.js +10 -48
  178. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  179. package/dist/elements/GroupByBuilder/index.js +54 -113
  180. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  181. package/dist/elements/Gutter/index.js +10 -18
  182. package/dist/elements/Gutter/index.js.map +1 -1
  183. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  184. package/dist/elements/HTMLDiff/index.js +6 -22
  185. package/dist/elements/HTMLDiff/index.js.map +1 -1
  186. package/dist/elements/Hamburger/index.js +9 -48
  187. package/dist/elements/Hamburger/index.js.map +1 -1
  188. package/dist/elements/IDLabel/index.js +8 -25
  189. package/dist/elements/IDLabel/index.js.map +1 -1
  190. package/dist/elements/LeaveWithoutSaving/index.js +2 -23
  191. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  192. package/dist/elements/Link/index.js +26 -36
  193. package/dist/elements/Link/index.js.map +1 -1
  194. package/dist/elements/ListControls/index.js +32 -199
  195. package/dist/elements/ListControls/index.js.map +1 -1
  196. package/dist/elements/ListDrawer/DrawerContent.js +6 -34
  197. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  198. package/dist/elements/ListDrawer/Provider.js +7 -13
  199. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  200. package/dist/elements/ListDrawer/index.js +12 -59
  201. package/dist/elements/ListDrawer/index.js.map +1 -1
  202. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +10 -34
  203. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  204. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +3 -16
  205. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  206. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +3 -12
  207. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  208. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +5 -17
  209. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  210. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +52 -110
  211. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  212. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +16 -64
  213. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  214. package/dist/elements/ListHeader/index.js +15 -64
  215. package/dist/elements/ListHeader/index.js.map +1 -1
  216. package/dist/elements/ListSelection/index.js +20 -79
  217. package/dist/elements/ListSelection/index.js.map +1 -1
  218. package/dist/elements/LivePreview/Device/index.js +13 -26
  219. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  220. package/dist/elements/LivePreview/DeviceContainer/index.js +8 -15
  221. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  222. package/dist/elements/LivePreview/IFrame/index.js +5 -18
  223. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  224. package/dist/elements/LivePreview/Toggler/index.js +8 -26
  225. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  226. package/dist/elements/LivePreview/Toolbar/Controls/index.js +50 -197
  227. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  228. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +1 -14
  229. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  230. package/dist/elements/LivePreview/Toolbar/index.js +23 -75
  231. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  232. package/dist/elements/LivePreview/ToolbarArea/index.js +3 -11
  233. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  234. package/dist/elements/LivePreview/Window/index.js +13 -53
  235. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  236. package/dist/elements/Loading/index.js +18 -79
  237. package/dist/elements/Loading/index.js.map +1 -1
  238. package/dist/elements/LoadingOverlay/index.js +8 -25
  239. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  240. package/dist/elements/Localizer/LocalizerLabel/index.js +12 -51
  241. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  242. package/dist/elements/Localizer/index.js +39 -88
  243. package/dist/elements/Localizer/index.js.map +1 -1
  244. package/dist/elements/Locked/index.js +8 -34
  245. package/dist/elements/Locked/index.js.map +1 -1
  246. package/dist/elements/Logout/index.js +6 -22
  247. package/dist/elements/Logout/index.js.map +1 -1
  248. package/dist/elements/Nav/NavToggler/index.js +16 -28
  249. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  250. package/dist/elements/Nav/context.js +10 -16
  251. package/dist/elements/Nav/context.js.map +1 -1
  252. package/dist/elements/NavGroup/index.js +19 -76
  253. package/dist/elements/NavGroup/index.js.map +1 -1
  254. package/dist/elements/NoListResults/index.js +6 -25
  255. package/dist/elements/NoListResults/index.js.map +1 -1
  256. package/dist/elements/PageControls/GroupByPageControls.js +2 -13
  257. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  258. package/dist/elements/PageControls/index.js +14 -73
  259. package/dist/elements/PageControls/index.js.map +1 -1
  260. package/dist/elements/Pagination/ClickableArrow/index.js +3 -17
  261. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  262. package/dist/elements/Pagination/Page/index.js +3 -12
  263. package/dist/elements/Pagination/Page/index.js.map +1 -1
  264. package/dist/elements/Pagination/Separator/index.js +1 -10
  265. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  266. package/dist/elements/Pagination/index.js +9 -30
  267. package/dist/elements/Pagination/index.js.map +1 -1
  268. package/dist/elements/PerPage/index.js +25 -90
  269. package/dist/elements/PerPage/index.js.map +1 -1
  270. package/dist/elements/PermanentlyDeleteButton/index.js +14 -53
  271. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  272. package/dist/elements/Pill/index.js +16 -68
  273. package/dist/elements/Pill/index.js.map +1 -1
  274. package/dist/elements/PillSelector/index.js +21 -63
  275. package/dist/elements/PillSelector/index.js.map +1 -1
  276. package/dist/elements/Popup/PopupButtonList/index.js +18 -50
  277. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  278. package/dist/elements/Popup/PopupDivider/index.js +1 -9
  279. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  280. package/dist/elements/Popup/PopupGroupLabel/index.js +1 -10
  281. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  282. package/dist/elements/Popup/PopupTrigger/index.js +13 -33
  283. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  284. package/dist/elements/Popup/index.js +40 -102
  285. package/dist/elements/Popup/index.js.map +1 -1
  286. package/dist/elements/PreviewButton/index.js +3 -19
  287. package/dist/elements/PreviewButton/index.js.map +1 -1
  288. package/dist/elements/PreviewSizes/index.js +43 -160
  289. package/dist/elements/PreviewSizes/index.js.map +1 -1
  290. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +24 -96
  291. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  292. package/dist/elements/PublishButton/ScheduleDrawer/index.js +44 -244
  293. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  294. package/dist/elements/PublishButton/index.js +26 -78
  295. package/dist/elements/PublishButton/index.js.map +1 -1
  296. package/dist/elements/PublishMany/DrawerContent.js +3 -16
  297. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  298. package/dist/elements/PublishMany/index.js +9 -43
  299. package/dist/elements/PublishMany/index.js.map +1 -1
  300. package/dist/elements/QueryPresets/QueryPresetBar/index.js +68 -202
  301. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  302. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +28 -75
  303. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  304. package/dist/elements/QueryPresets/cells/AccessCell/index.js +15 -40
  305. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  306. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +12 -25
  307. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  308. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +5 -21
  309. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  310. package/dist/elements/QueryPresets/cells/WhereCell/index.js +1 -9
  311. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  312. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +11 -40
  313. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  314. package/dist/elements/QueryPresets/fields/GroupByField/index.js +8 -49
  315. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  316. package/dist/elements/QueryPresets/fields/WhereField/index.js +21 -110
  317. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  318. package/dist/elements/ReactSelect/ClearIndicator/index.js +9 -27
  319. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  320. package/dist/elements/ReactSelect/Control/index.js +25 -36
  321. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  322. package/dist/elements/ReactSelect/DropdownIndicator/index.js +7 -24
  323. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  324. package/dist/elements/ReactSelect/Input/index.js +4 -16
  325. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  326. package/dist/elements/ReactSelect/MultiValue/index.js +19 -32
  327. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  328. package/dist/elements/ReactSelect/MultiValueLabel/index.js +7 -22
  329. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  330. package/dist/elements/ReactSelect/MultiValueRemove/index.js +16 -44
  331. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  332. package/dist/elements/ReactSelect/SingleValue/index.js +8 -19
  333. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  334. package/dist/elements/ReactSelect/ValueContainer/index.js +4 -28
  335. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  336. package/dist/elements/ReactSelect/index.js +36 -127
  337. package/dist/elements/ReactSelect/index.js.map +1 -1
  338. package/dist/elements/RelationshipTable/AddNewButton.js +20 -60
  339. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  340. package/dist/elements/RelationshipTable/Pagination.js +3 -19
  341. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  342. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +8 -37
  343. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  344. package/dist/elements/RelationshipTable/index.js +39 -189
  345. package/dist/elements/RelationshipTable/index.js.map +1 -1
  346. package/dist/elements/RenderComponent/index.js +3 -24
  347. package/dist/elements/RenderComponent/index.js.map +1 -1
  348. package/dist/elements/RenderIfInViewport/index.js +3 -10
  349. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  350. package/dist/elements/RenderServerComponent/index.js +2 -16
  351. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  352. package/dist/elements/RenderTitle/index.js +11 -36
  353. package/dist/elements/RenderTitle/index.js.map +1 -1
  354. package/dist/elements/RestoreButton/index.js +19 -80
  355. package/dist/elements/RestoreButton/index.js.map +1 -1
  356. package/dist/elements/RestoreMany/index.js +16 -62
  357. package/dist/elements/RestoreMany/index.js.map +1 -1
  358. package/dist/elements/SaveButton/index.js +4 -15
  359. package/dist/elements/SaveButton/index.js.map +1 -1
  360. package/dist/elements/SaveDraftButton/index.js +6 -19
  361. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  362. package/dist/elements/SearchBar/index.js +8 -35
  363. package/dist/elements/SearchBar/index.js.map +1 -1
  364. package/dist/elements/SearchFilter/index.js +7 -25
  365. package/dist/elements/SearchFilter/index.js.map +1 -1
  366. package/dist/elements/SelectAll/index.js +4 -18
  367. package/dist/elements/SelectAll/index.js.map +1 -1
  368. package/dist/elements/SelectMany/index.js +7 -20
  369. package/dist/elements/SelectMany/index.js.map +1 -1
  370. package/dist/elements/SelectRow/index.js +5 -21
  371. package/dist/elements/SelectRow/index.js.map +1 -1
  372. package/dist/elements/ShimmerEffect/index.js +18 -51
  373. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  374. package/dist/elements/SortColumn/index.js +28 -83
  375. package/dist/elements/SortColumn/index.js.map +1 -1
  376. package/dist/elements/SortComplex/index.js +16 -77
  377. package/dist/elements/SortComplex/index.js.map +1 -1
  378. package/dist/elements/SortHeader/index.js +13 -37
  379. package/dist/elements/SortHeader/index.js.map +1 -1
  380. package/dist/elements/SortRow/index.js +3 -18
  381. package/dist/elements/SortRow/index.js.map +1 -1
  382. package/dist/elements/Status/index.js +20 -99
  383. package/dist/elements/Status/index.js.map +1 -1
  384. package/dist/elements/StayLoggedIn/index.js +2 -15
  385. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  386. package/dist/elements/StepNav/context.js +8 -14
  387. package/dist/elements/StepNav/context.js.map +1 -1
  388. package/dist/elements/StepNav/index.js +36 -139
  389. package/dist/elements/StepNav/index.js.map +1 -1
  390. package/dist/elements/StickyToolbar/index.js +1 -10
  391. package/dist/elements/StickyToolbar/index.js.map +1 -1
  392. package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -9
  393. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  394. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -9
  395. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  396. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +3 -16
  397. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  398. package/dist/elements/Table/DefaultCell/fields/Code/index.js +3 -17
  399. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  400. package/dist/elements/Table/DefaultCell/fields/Date/index.js +8 -14
  401. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  402. package/dist/elements/Table/DefaultCell/fields/File/index.js +8 -37
  403. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  404. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +3 -16
  405. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  406. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +36 -62
  407. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  408. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -9
  409. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  410. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +1 -9
  411. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  412. package/dist/elements/Table/DefaultCell/index.js +20 -76
  413. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  414. package/dist/elements/Table/OrderableRow.js +18 -40
  415. package/dist/elements/Table/OrderableRow.js.map +1 -1
  416. package/dist/elements/Table/OrderableRowDragPreview.js +5 -23
  417. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  418. package/dist/elements/Table/OrderableTable.js +37 -120
  419. package/dist/elements/Table/OrderableTable.js.map +1 -1
  420. package/dist/elements/Table/RelationshipProvider/index.js +6 -14
  421. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  422. package/dist/elements/Table/index.js +28 -79
  423. package/dist/elements/Table/index.js.map +1 -1
  424. package/dist/elements/Thumbnail/index.js +18 -69
  425. package/dist/elements/Thumbnail/index.js.map +1 -1
  426. package/dist/elements/ThumbnailCard/index.js +4 -30
  427. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  428. package/dist/elements/TimezonePicker/index.js +8 -38
  429. package/dist/elements/TimezonePicker/index.js.map +1 -1
  430. package/dist/elements/Toasts/fieldErrors.js +8 -33
  431. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  432. package/dist/elements/Tooltip/index.js +21 -56
  433. package/dist/elements/Tooltip/index.js.map +1 -1
  434. package/dist/elements/Translation/index.js +16 -39
  435. package/dist/elements/Translation/index.js.map +1 -1
  436. package/dist/elements/TrashBanner/index.js +8 -25
  437. package/dist/elements/TrashBanner/index.js.map +1 -1
  438. package/dist/elements/UnpublishMany/DrawerContent.js +3 -14
  439. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  440. package/dist/elements/UnpublishMany/index.js +9 -43
  441. package/dist/elements/UnpublishMany/index.js.map +1 -1
  442. package/dist/elements/Upload/index.js +109 -401
  443. package/dist/elements/Upload/index.js.map +1 -1
  444. package/dist/elements/ViewDescription/index.js +2 -10
  445. package/dist/elements/ViewDescription/index.js.map +1 -1
  446. package/dist/elements/WhereBuilder/Condition/Date/index.js +3 -20
  447. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  448. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +6 -72
  449. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  450. package/dist/elements/WhereBuilder/Condition/Number/index.js +1 -28
  451. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  452. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +25 -52
  453. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  454. package/dist/elements/WhereBuilder/Condition/Select/index.js +4 -17
  455. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  456. package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -27
  457. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  458. package/dist/elements/WhereBuilder/Condition/index.js +30 -128
  459. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  460. package/dist/elements/WhereBuilder/index.js +54 -159
  461. package/dist/elements/WhereBuilder/index.js.map +1 -1
  462. package/dist/elements/WithServerSideProps/index.js +1 -9
  463. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  464. package/dist/elements/withMergedProps/index.js +1 -9
  465. package/dist/elements/withMergedProps/index.js.map +1 -1
  466. package/dist/fields/Array/ArrayRow.js +16 -100
  467. package/dist/fields/Array/ArrayRow.js.map +1 -1
  468. package/dist/fields/Array/index.js +69 -290
  469. package/dist/fields/Array/index.js.map +1 -1
  470. package/dist/fields/Blocks/BlockRow.js +22 -130
  471. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  472. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +4 -25
  473. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  474. package/dist/fields/Blocks/BlockSelector/index.js +29 -101
  475. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  476. package/dist/fields/Blocks/BlocksDrawer/index.js +8 -23
  477. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  478. package/dist/fields/Blocks/RowActions.js +12 -44
  479. package/dist/fields/Blocks/RowActions.js.map +1 -1
  480. package/dist/fields/Blocks/SectionTitle/index.js +3 -24
  481. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  482. package/dist/fields/Blocks/index.js +83 -326
  483. package/dist/fields/Blocks/index.js.map +1 -1
  484. package/dist/fields/Checkbox/Input.js +21 -83
  485. package/dist/fields/Checkbox/Input.js.map +1 -1
  486. package/dist/fields/Checkbox/index.js +13 -68
  487. package/dist/fields/Checkbox/index.js.map +1 -1
  488. package/dist/fields/Code/index.js +18 -92
  489. package/dist/fields/Code/index.js.map +1 -1
  490. package/dist/fields/Collapsible/index.js +21 -103
  491. package/dist/fields/Collapsible/index.js.map +1 -1
  492. package/dist/fields/ConfirmPassword/index.js +11 -54
  493. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  494. package/dist/fields/DateTime/index.js +19 -102
  495. package/dist/fields/DateTime/index.js.map +1 -1
  496. package/dist/fields/Email/index.js +19 -91
  497. package/dist/fields/Email/index.js.map +1 -1
  498. package/dist/fields/FieldDescription/index.js +8 -15
  499. package/dist/fields/FieldDescription/index.js.map +1 -1
  500. package/dist/fields/FieldError/index.js +3 -13
  501. package/dist/fields/FieldError/index.js.map +1 -1
  502. package/dist/fields/FieldLabel/index.js +7 -32
  503. package/dist/fields/FieldLabel/index.js.map +1 -1
  504. package/dist/fields/Group/index.js +31 -132
  505. package/dist/fields/Group/index.js.map +1 -1
  506. package/dist/fields/Group/provider.js +3 -11
  507. package/dist/fields/Group/provider.js.map +1 -1
  508. package/dist/fields/Hidden/index.js +2 -13
  509. package/dist/fields/Hidden/index.js.map +1 -1
  510. package/dist/fields/JSON/index.js +18 -93
  511. package/dist/fields/JSON/index.js.map +1 -1
  512. package/dist/fields/Join/index.js +20 -88
  513. package/dist/fields/Join/index.js.map +1 -1
  514. package/dist/fields/Number/index.js +36 -134
  515. package/dist/fields/Number/index.js.map +1 -1
  516. package/dist/fields/Password/index.js +4 -29
  517. package/dist/fields/Password/index.js.map +1 -1
  518. package/dist/fields/Password/input.js +21 -105
  519. package/dist/fields/Password/input.js.map +1 -1
  520. package/dist/fields/Point/index.js +33 -157
  521. package/dist/fields/Point/index.js.map +1 -1
  522. package/dist/fields/RadioGroup/Radio/index.js +13 -51
  523. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  524. package/dist/fields/RadioGroup/index.js +42 -124
  525. package/dist/fields/RadioGroup/index.js.map +1 -1
  526. package/dist/fields/Relationship/Input.js +119 -242
  527. package/dist/fields/Relationship/Input.js.map +1 -1
  528. package/dist/fields/Relationship/index.js +11 -44
  529. package/dist/fields/Relationship/index.js.map +1 -1
  530. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +33 -85
  531. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  532. package/dist/fields/Relationship/select-components/SingleValue/index.js +32 -88
  533. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  534. package/dist/fields/Row/index.js +9 -35
  535. package/dist/fields/Row/index.js.map +1 -1
  536. package/dist/fields/Row/provider.js +3 -11
  537. package/dist/fields/Row/provider.js.map +1 -1
  538. package/dist/fields/Select/Input.js +19 -98
  539. package/dist/fields/Select/Input.js.map +1 -1
  540. package/dist/fields/Select/index.js +1 -30
  541. package/dist/fields/Select/index.js.map +1 -1
  542. package/dist/fields/Slug/index.js +13 -58
  543. package/dist/fields/Slug/index.js.map +1 -1
  544. package/dist/fields/Tabs/Tab/index.js +12 -43
  545. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  546. package/dist/fields/Tabs/index.js +31 -117
  547. package/dist/fields/Tabs/index.js.map +1 -1
  548. package/dist/fields/Tabs/provider.js +3 -11
  549. package/dist/fields/Tabs/provider.js.map +1 -1
  550. package/dist/fields/Text/Input.js +31 -129
  551. package/dist/fields/Text/Input.js.map +1 -1
  552. package/dist/fields/Text/index.js +6 -36
  553. package/dist/fields/Text/index.js.map +1 -1
  554. package/dist/fields/Textarea/Input.js +20 -101
  555. package/dist/fields/Textarea/Input.js.map +1 -1
  556. package/dist/fields/Textarea/index.js +4 -29
  557. package/dist/fields/Textarea/index.js.map +1 -1
  558. package/dist/fields/Upload/HasMany/index.js +52 -117
  559. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  560. package/dist/fields/Upload/HasOne/index.js +6 -34
  561. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  562. package/dist/fields/Upload/Input.js +60 -248
  563. package/dist/fields/Upload/Input.js.map +1 -1
  564. package/dist/fields/Upload/RelationshipContent/index.js +23 -112
  565. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  566. package/dist/fields/Upload/UploadCard/index.js +7 -14
  567. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  568. package/dist/fields/Upload/index.js +3 -39
  569. package/dist/fields/Upload/index.js.map +1 -1
  570. package/dist/forms/Form/index.js +26 -87
  571. package/dist/forms/Form/index.js.map +1 -1
  572. package/dist/forms/NullifyField/index.js +6 -23
  573. package/dist/forms/NullifyField/index.js.map +1 -1
  574. package/dist/forms/RenderFields/RenderField.js +23 -203
  575. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  576. package/dist/forms/RenderFields/index.js +45 -72
  577. package/dist/forms/RenderFields/index.js.map +1 -1
  578. package/dist/forms/RowLabel/Context/index.js +2 -10
  579. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  580. package/dist/forms/RowLabel/index.js +10 -31
  581. package/dist/forms/RowLabel/index.js.map +1 -1
  582. package/dist/forms/Submit/index.js +5 -22
  583. package/dist/forms/Submit/index.js.map +1 -1
  584. package/dist/forms/fieldSchemasToFormState/renderField.js +26 -44
  585. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  586. package/dist/forms/useField/index.js +1 -1
  587. package/dist/forms/useField/index.js.map +1 -1
  588. package/dist/forms/withCondition/index.js +3 -16
  589. package/dist/forms/withCondition/index.js.map +1 -1
  590. package/dist/graphics/Account/Default/index.js +8 -46
  591. package/dist/graphics/Account/Default/index.js.map +1 -1
  592. package/dist/graphics/Account/Gravatar/index.js +3 -16
  593. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  594. package/dist/graphics/Account/index.js +2 -14
  595. package/dist/graphics/Account/index.js.map +1 -1
  596. package/dist/graphics/DefaultBlockImage/index.js +16 -115
  597. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  598. package/dist/graphics/File/index.js +6 -33
  599. package/dist/graphics/File/index.js.map +1 -1
  600. package/dist/graphics/Icon/index.js +4 -31
  601. package/dist/graphics/Icon/index.js.map +1 -1
  602. package/dist/graphics/Logo/index.js +17 -112
  603. package/dist/graphics/Logo/index.js.map +1 -1
  604. package/dist/icons/Calendar/index.js +3 -20
  605. package/dist/icons/Calendar/index.js.map +1 -1
  606. package/dist/icons/Check/index.js +3 -20
  607. package/dist/icons/Check/index.js.map +1 -1
  608. package/dist/icons/Chevron/index.js +9 -30
  609. package/dist/icons/Chevron/index.js.map +1 -1
  610. package/dist/icons/CloseMenu/index.js +3 -20
  611. package/dist/icons/CloseMenu/index.js.map +1 -1
  612. package/dist/icons/CodeBlock/index.js +3 -22
  613. package/dist/icons/CodeBlock/index.js.map +1 -1
  614. package/dist/icons/Copy/index.js +3 -24
  615. package/dist/icons/Copy/index.js.map +1 -1
  616. package/dist/icons/Document/index.js +3 -24
  617. package/dist/icons/Document/index.js.map +1 -1
  618. package/dist/icons/Dots/index.js +10 -32
  619. package/dist/icons/Dots/index.js.map +1 -1
  620. package/dist/icons/DragHandle/index.js +11 -70
  621. package/dist/icons/DragHandle/index.js.map +1 -1
  622. package/dist/icons/Edit/index.js +6 -23
  623. package/dist/icons/Edit/index.js.map +1 -1
  624. package/dist/icons/ExternalLink/index.js +6 -23
  625. package/dist/icons/ExternalLink/index.js.map +1 -1
  626. package/dist/icons/Eye/index.js +12 -53
  627. package/dist/icons/Eye/index.js.map +1 -1
  628. package/dist/icons/Folder/index.js +6 -25
  629. package/dist/icons/Folder/index.js.map +1 -1
  630. package/dist/icons/Gear/index.js +8 -34
  631. package/dist/icons/Gear/index.js.map +1 -1
  632. package/dist/icons/GridView/index.js +6 -56
  633. package/dist/icons/GridView/index.js.map +1 -1
  634. package/dist/icons/Line/index.js +3 -23
  635. package/dist/icons/Line/index.js.map +1 -1
  636. package/dist/icons/Link/index.js +3 -25
  637. package/dist/icons/Link/index.js.map +1 -1
  638. package/dist/icons/ListView/index.js +3 -24
  639. package/dist/icons/ListView/index.js.map +1 -1
  640. package/dist/icons/Lock/index.js +7 -41
  641. package/dist/icons/Lock/index.js.map +1 -1
  642. package/dist/icons/LogOut/index.js +3 -23
  643. package/dist/icons/LogOut/index.js.map +1 -1
  644. package/dist/icons/Menu/index.js +3 -23
  645. package/dist/icons/Menu/index.js.map +1 -1
  646. package/dist/icons/MinimizeMaximize/index.js +3 -27
  647. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  648. package/dist/icons/More/index.js +8 -43
  649. package/dist/icons/More/index.js.map +1 -1
  650. package/dist/icons/MoveFolder/index.js +10 -62
  651. package/dist/icons/MoveFolder/index.js.map +1 -1
  652. package/dist/icons/People/index.js +7 -28
  653. package/dist/icons/People/index.js.map +1 -1
  654. package/dist/icons/Plus/index.js +3 -22
  655. package/dist/icons/Plus/index.js.map +1 -1
  656. package/dist/icons/Search/index.js +3 -21
  657. package/dist/icons/Search/index.js.map +1 -1
  658. package/dist/icons/Sort/index.js +6 -48
  659. package/dist/icons/Sort/index.js.map +1 -1
  660. package/dist/icons/Swap/index.js +3 -20
  661. package/dist/icons/Swap/index.js.map +1 -1
  662. package/dist/icons/ThreeDots/index.js +5 -26
  663. package/dist/icons/ThreeDots/index.js.map +1 -1
  664. package/dist/icons/Trash/index.js +6 -27
  665. package/dist/icons/Trash/index.js.map +1 -1
  666. package/dist/icons/X/index.js +6 -25
  667. package/dist/icons/X/index.js.map +1 -1
  668. package/dist/providers/Actions/index.js +10 -16
  669. package/dist/providers/Actions/index.js.map +1 -1
  670. package/dist/providers/Auth/index.js +16 -22
  671. package/dist/providers/Auth/index.js.map +1 -1
  672. package/dist/providers/ClickOutside/index.js +6 -14
  673. package/dist/providers/ClickOutside/index.js.map +1 -1
  674. package/dist/providers/ClientFunction/index.js +8 -21
  675. package/dist/providers/ClientFunction/index.js.map +1 -1
  676. package/dist/providers/Config/index.js +4 -19
  677. package/dist/providers/Config/index.js.map +1 -1
  678. package/dist/providers/DocumentEvents/index.js +6 -14
  679. package/dist/providers/DocumentEvents/index.js.map +1 -1
  680. package/dist/providers/DocumentInfo/index.js +7 -29
  681. package/dist/providers/DocumentInfo/index.js.map +1 -1
  682. package/dist/providers/DocumentTitle/index.js +5 -13
  683. package/dist/providers/DocumentTitle/index.js.map +1 -1
  684. package/dist/providers/EditDepth/index.js +3 -11
  685. package/dist/providers/EditDepth/index.js.map +1 -1
  686. package/dist/providers/EntityVisibility/index.js +8 -14
  687. package/dist/providers/EntityVisibility/index.js.map +1 -1
  688. package/dist/providers/Folders/index.js +42 -48
  689. package/dist/providers/Folders/index.js.map +1 -1
  690. package/dist/providers/ListQuery/index.js +17 -30
  691. package/dist/providers/ListQuery/index.js.map +1 -1
  692. package/dist/providers/LivePreview/index.js +39 -51
  693. package/dist/providers/LivePreview/index.js.map +1 -1
  694. package/dist/providers/Locale/index.js +10 -21
  695. package/dist/providers/Locale/index.js.map +1 -1
  696. package/dist/providers/Operation/index.js +3 -11
  697. package/dist/providers/Operation/index.js.map +1 -1
  698. package/dist/providers/Params/index.js +3 -11
  699. package/dist/providers/Params/index.js.map +1 -1
  700. package/dist/providers/Preferences/index.js +3 -11
  701. package/dist/providers/Preferences/index.js.map +1 -1
  702. package/dist/providers/Root/index.js +54 -187
  703. package/dist/providers/Root/index.js.map +1 -1
  704. package/dist/providers/RouteCache/index.js +6 -14
  705. package/dist/providers/RouteCache/index.js.map +1 -1
  706. package/dist/providers/RouteTransition/ProgressBar/index.js +11 -25
  707. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  708. package/dist/providers/RouteTransition/index.js +8 -14
  709. package/dist/providers/RouteTransition/index.js.map +1 -1
  710. package/dist/providers/SearchParams/index.js +5 -13
  711. package/dist/providers/SearchParams/index.js.map +1 -1
  712. package/dist/providers/Selection/index.js +3 -11
  713. package/dist/providers/Selection/index.js.map +1 -1
  714. package/dist/providers/ServerFunctions/index.js +15 -21
  715. package/dist/providers/ServerFunctions/index.js.map +1 -1
  716. package/dist/providers/TableColumns/RenderDefaultCell/index.js +4 -16
  717. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  718. package/dist/providers/TableColumns/buildColumnState/index.js +1 -13
  719. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  720. package/dist/providers/TableColumns/buildColumnState/renderCell.js +1 -18
  721. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  722. package/dist/providers/TableColumns/index.js +11 -17
  723. package/dist/providers/TableColumns/index.js.map +1 -1
  724. package/dist/providers/Theme/index.js +7 -15
  725. package/dist/providers/Theme/index.js.map +1 -1
  726. package/dist/providers/ToastContainer/icons/Error.js +4 -33
  727. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  728. package/dist/providers/ToastContainer/icons/Info.js +4 -33
  729. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  730. package/dist/providers/ToastContainer/icons/Success.js +4 -33
  731. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  732. package/dist/providers/ToastContainer/icons/Warning.js +4 -33
  733. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  734. package/dist/providers/ToastContainer/index.js +19 -53
  735. package/dist/providers/ToastContainer/index.js.map +1 -1
  736. package/dist/providers/Translation/index.js +15 -21
  737. package/dist/providers/Translation/index.js.map +1 -1
  738. package/dist/providers/UploadControls/index.js +12 -18
  739. package/dist/providers/UploadControls/index.js.map +1 -1
  740. package/dist/providers/UploadEdits/index.js +9 -15
  741. package/dist/providers/UploadEdits/index.js.map +1 -1
  742. package/dist/providers/UploadHandlers/index.js +5 -13
  743. package/dist/providers/UploadHandlers/index.js.map +1 -1
  744. package/dist/utilities/combineFieldLabel.js +13 -51
  745. package/dist/utilities/combineFieldLabel.js.map +1 -1
  746. package/dist/utilities/getFolderResultsComponentAndData.js +10 -39
  747. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  748. package/dist/utilities/renderTable.js +23 -113
  749. package/dist/utilities/renderTable.js.map +1 -1
  750. package/dist/views/BrowseByFolder/index.js +74 -273
  751. package/dist/views/BrowseByFolder/index.js.map +1 -1
  752. package/dist/views/CollectionFolder/ListSelection/index.js +44 -130
  753. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  754. package/dist/views/CollectionFolder/index.js +84 -268
  755. package/dist/views/CollectionFolder/index.js.map +1 -1
  756. package/dist/views/Edit/Auth/APIKey.js +23 -103
  757. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  758. package/dist/views/Edit/Auth/index.js +48 -165
  759. package/dist/views/Edit/Auth/index.js.map +1 -1
  760. package/dist/views/Edit/index.js +85 -272
  761. package/dist/views/Edit/index.js.map +1 -1
  762. package/dist/views/List/GroupByHeader/index.js +10 -34
  763. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  764. package/dist/views/List/ListHeader/index.js +18 -103
  765. package/dist/views/List/ListHeader/index.js.map +1 -1
  766. package/dist/views/List/ListSelection/index.js +20 -93
  767. package/dist/views/List/ListSelection/index.js.map +1 -1
  768. package/dist/views/List/index.js +58 -243
  769. package/dist/views/List/index.js.map +1 -1
  770. package/package.json +5 -5
@@ -1,5 +1,4 @@
1
1
  /* eslint-disable no-console */ 'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
3
2
  import { TZDateMini as TZDate } from '@date-fns/tz/date/mini';
4
3
  import { useModal } from '@faceless-ui/modal';
5
4
  import { getTranslation } from '@payloadcms/translations';
@@ -251,249 +250,50 @@ export const ScheduleDrawer = ({ slug, defaultType, schedulePublishConfig })=>{
251
250
  }, [
252
251
  date
253
252
  ]);
254
- return /*#__PURE__*/ _jsxDEV(Drawer, {
255
- className: baseClass,
256
- gutter: false,
257
- Header: /*#__PURE__*/ _jsxDEV("div", {
258
- className: `${baseClass}__drawer-header`,
259
- children: [
260
- /*#__PURE__*/ _jsxDEV("h2", {
261
- title: modalTitle,
262
- children: modalTitle
263
- }, void 0, false, {
264
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
265
- lineNumber: 308,
266
- columnNumber: 11
267
- }, void 0),
268
- /*#__PURE__*/ _jsxDEV(DrawerCloseButton, {
269
- onClick: ()=>toggleModal(slug)
270
- }, void 0, false, {
271
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
272
- lineNumber: 309,
273
- columnNumber: 11
274
- }, void 0)
275
- ]
276
- }, void 0, true, {
277
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
278
- lineNumber: 307,
279
- columnNumber: 9
280
- }, void 0),
281
- slug: slug,
282
- children: [
283
- /*#__PURE__*/ _jsxDEV(Gutter, {
284
- className: `${baseClass}__scheduler`,
285
- children: [
286
- /*#__PURE__*/ _jsxDEV(FieldLabel, {
287
- label: t('version:type'),
288
- required: true
289
- }, void 0, false, {
290
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
291
- lineNumber: 315,
292
- columnNumber: 9
293
- }, this),
294
- /*#__PURE__*/ _jsxDEV("ul", {
295
- className: `${baseClass}__type`,
296
- children: [
297
- /*#__PURE__*/ _jsxDEV("li", {
298
- children: /*#__PURE__*/ _jsxDEV(Radio, {
299
- id: `${slug}-type`,
300
- isSelected: type === 'publish',
301
- onChange: ()=>setType('publish'),
302
- option: {
303
- label: t('version:publish'),
304
- value: 'publish'
305
- },
306
- path: `${slug}-type`,
307
- readOnly: processing
308
- }, void 0, false, {
309
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
310
- lineNumber: 318,
311
- columnNumber: 13
312
- }, this)
313
- }, void 0, false, {
314
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
315
- lineNumber: 317,
316
- columnNumber: 11
317
- }, this),
318
- /*#__PURE__*/ _jsxDEV("li", {
319
- children: /*#__PURE__*/ _jsxDEV(Radio, {
320
- id: `${slug}-type`,
321
- isSelected: type === 'unpublish',
322
- onChange: ()=>setType('unpublish'),
323
- option: {
324
- label: t('version:unpublish'),
325
- value: 'unpublish'
326
- },
327
- path: `${slug}-type`,
328
- readOnly: processing
329
- }, void 0, false, {
330
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
331
- lineNumber: 328,
332
- columnNumber: 13
333
- }, this)
334
- }, void 0, false, {
335
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
336
- lineNumber: 327,
337
- columnNumber: 11
338
- }, this)
339
- ]
340
- }, void 0, true, {
341
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
342
- lineNumber: 316,
343
- columnNumber: 9
344
- }, this),
345
- /*#__PURE__*/ _jsxDEV("br", {}, void 0, false, {
346
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
347
- lineNumber: 338,
348
- columnNumber: 9
349
- }, this),
350
- /*#__PURE__*/ _jsxDEV(FieldLabel, {
351
- label: t('general:time'),
352
- path: 'time',
353
- required: true
354
- }, void 0, false, {
355
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
356
- lineNumber: 339,
357
- columnNumber: 9
358
- }, this),
359
- /*#__PURE__*/ _jsxDEV(DatePickerField, {
360
- id: "time",
361
- maxTime: endOfToday(),
362
- minDate: new Date(),
363
- minTime: minTime,
364
- onChange: (e)=>onChangeDate(e),
365
- pickerAppearance: "dayAndTime",
366
- readOnly: processing,
367
- timeFormat: schedulePublishConfig?.timeFormat,
368
- timeIntervals: schedulePublishConfig?.timeIntervals ?? 5,
369
- value: displayedValue
370
- }, void 0, false, {
371
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
372
- lineNumber: 340,
373
- columnNumber: 9
374
- }, this),
375
- supportedTimezones.length > 0 && /*#__PURE__*/ _jsxDEV(TimezonePicker, {
376
- id: `timezone-picker`,
377
- onChange: setTimezone,
378
- options: supportedTimezones,
379
- selectedTimezone: timezone
380
- }, void 0, false, {
381
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
382
- lineNumber: 353,
383
- columnNumber: 11
384
- }, this),
385
- /*#__PURE__*/ _jsxDEV("br", {}, void 0, false, {
386
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
387
- lineNumber: 360,
388
- columnNumber: 9
389
- }, this),
390
- localeOptions.length > 0 && type === 'publish' && /*#__PURE__*/ _jsxDEV(React.Fragment, {
391
- children: [
392
- /*#__PURE__*/ _jsxDEV(FieldLabel, {
393
- label: t('localization:localeToPublish')
394
- }, void 0, false, {
395
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
396
- lineNumber: 363,
397
- columnNumber: 13
398
- }, this),
399
- /*#__PURE__*/ _jsxDEV(ReactSelect, {
400
- onChange: (e)=>setLocale(e),
401
- options: localeOptions,
402
- value: locale
403
- }, void 0, false, {
404
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
405
- lineNumber: 364,
406
- columnNumber: 13
407
- }, this),
408
- /*#__PURE__*/ _jsxDEV("br", {}, void 0, false, {
409
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
410
- lineNumber: 369,
411
- columnNumber: 13
412
- }, this)
413
- ]
414
- }, void 0, true, {
415
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
416
- lineNumber: 362,
417
- columnNumber: 11
418
- }, this),
419
- /*#__PURE__*/ _jsxDEV("div", {
420
- className: `${baseClass}__actions`,
421
- children: [
422
- /*#__PURE__*/ _jsxDEV(Button, {
423
- buttonStyle: "primary",
424
- disabled: processing,
425
- id: "scheduled-publish-save",
426
- onClick: handleSave,
427
- type: "button",
428
- children: t('general:save')
429
- }, void 0, false, {
430
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
431
- lineNumber: 373,
432
- columnNumber: 11
433
- }, this),
434
- processing ? /*#__PURE__*/ _jsxDEV("span", {
435
- children: t('general:saving')
436
- }, void 0, false, {
437
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
438
- lineNumber: 382,
439
- columnNumber: 25
440
- }, this) : null
441
- ]
442
- }, void 0, true, {
443
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
444
- lineNumber: 372,
445
- columnNumber: 9
446
- }, this)
447
- ]
448
- }, void 0, true, {
449
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
450
- lineNumber: 314,
451
- columnNumber: 7
452
- }, this),
453
- /*#__PURE__*/ _jsxDEV(Gutter, {
454
- className: `${baseClass}__upcoming`,
455
- children: [
456
- /*#__PURE__*/ _jsxDEV("h4", {
457
- children: t('general:upcomingEvents')
458
- }, void 0, false, {
459
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
460
- lineNumber: 386,
461
- columnNumber: 9
462
- }, this),
463
- !upcoming && /*#__PURE__*/ _jsxDEV(ShimmerEffect, {}, void 0, false, {
464
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
465
- lineNumber: 387,
466
- columnNumber: 23
467
- }, this),
468
- upcoming?.length === 0 && /*#__PURE__*/ _jsxDEV(Banner, {
469
- type: "info",
470
- children: t('general:noUpcomingEventsScheduled')
471
- }, void 0, false, {
472
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
473
- lineNumber: 389,
474
- columnNumber: 11
475
- }, this),
476
- upcoming?.length > 0 && /*#__PURE__*/ _jsxDEV(Table, {
477
- appearance: "condensed",
478
- columns: upcomingColumns,
479
- data: upcoming
480
- }, void 0, false, {
481
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
482
- lineNumber: 392,
483
- columnNumber: 11
484
- }, this)
485
- ]
486
- }, void 0, true, {
487
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
488
- lineNumber: 385,
489
- columnNumber: 7
490
- }, this)
491
- ]
492
- }, void 0, true, {
493
- fileName: "src/elements/PublishButton/ScheduleDrawer/index.tsx",
494
- lineNumber: 303,
495
- columnNumber: 5
496
- }, this);
253
+ return <Drawer className={baseClass} gutter={false} Header={<div className={`${baseClass}__drawer-header`}>
254
+ <h2 title={modalTitle}>{modalTitle}</h2>
255
+ <DrawerCloseButton onClick={()=>toggleModal(slug)}/>
256
+ </div>} slug={slug}>
257
+ <Gutter className={`${baseClass}__scheduler`}>
258
+ <FieldLabel label={t('version:type')} required/>
259
+ <ul className={`${baseClass}__type`}>
260
+ <li>
261
+ <Radio id={`${slug}-type`} isSelected={type === 'publish'} onChange={()=>setType('publish')} option={{
262
+ label: t('version:publish'),
263
+ value: 'publish'
264
+ }} path={`${slug}-type`} readOnly={processing}/>
265
+ </li>
266
+ <li>
267
+ <Radio id={`${slug}-type`} isSelected={type === 'unpublish'} onChange={()=>setType('unpublish')} option={{
268
+ label: t('version:unpublish'),
269
+ value: 'unpublish'
270
+ }} path={`${slug}-type`} readOnly={processing}/>
271
+ </li>
272
+ </ul>
273
+ <br/>
274
+ <FieldLabel label={t('general:time')} path={'time'} required/>
275
+ <DatePickerField id="time" maxTime={endOfToday()} minDate={new Date()} minTime={minTime} onChange={(e)=>onChangeDate(e)} pickerAppearance="dayAndTime" readOnly={processing} timeFormat={schedulePublishConfig?.timeFormat} timeIntervals={schedulePublishConfig?.timeIntervals ?? 5} value={displayedValue}/>
276
+ {supportedTimezones.length > 0 && <TimezonePicker id={`timezone-picker`} onChange={setTimezone} options={supportedTimezones} selectedTimezone={timezone}/>}
277
+ <br/>
278
+ {localeOptions.length > 0 && type === 'publish' && <React.Fragment>
279
+ <FieldLabel label={t('localization:localeToPublish')}/>
280
+ <ReactSelect onChange={(e)=>setLocale(e)} options={localeOptions} value={locale}/>
281
+ <br/>
282
+ </React.Fragment>}
283
+ <div className={`${baseClass}__actions`}>
284
+ <Button buttonStyle="primary" disabled={processing} id="scheduled-publish-save" onClick={handleSave} type="button">
285
+ {t('general:save')}
286
+ </Button>
287
+ {processing ? <span>{t('general:saving')}</span> : null}
288
+ </div>
289
+ </Gutter>
290
+ <Gutter className={`${baseClass}__upcoming`}>
291
+ <h4>{t('general:upcomingEvents')}</h4>
292
+ {!upcoming && <ShimmerEffect/>}
293
+ {upcoming?.length === 0 && <Banner type="info">{t('general:noUpcomingEventsScheduled')}</Banner>}
294
+ {upcoming?.length > 0 && <Table appearance="condensed" columns={upcomingColumns} data={upcoming}/>}
295
+ </Gutter>
296
+ </Drawer>;
497
297
  };
498
298
 
499
299
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"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 { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { endOfToday, isToday, startOfDay } from 'date-fns'\nimport { transpose } from 'date-fns/transpose'\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 { DrawerCloseButton } from '../../BulkUpload/DrawerCloseButton/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 { ReactSelect } from '../../ReactSelect/index.js'\nimport './index.scss'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Table } from '../../Table/index.js'\nimport { TimezonePicker } from '../../TimezonePicker/index.js'\nimport { buildUpcomingColumns } from './buildUpcomingColumns.js'\n\nconst baseClass = 'schedule-publish'\n\ntype Props = {\n defaultType?: PublishType\n schedulePublishConfig?: SchedulePublish\n slug: string\n}\n\nconst defaultLocaleOption = {\n label: 'All',\n value: 'all',\n}\n\nexport const ScheduleDrawer: React.FC<Props> = ({ slug, defaultType, schedulePublishConfig }) => {\n const { toggleModal } = useModal()\n const {\n config: {\n admin: {\n dateFormat,\n timezones: { defaultTimezone, supportedTimezones },\n },\n localization,\n routes: { api },\n serverURL,\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: {\n and: [\n {\n taskSlug: {\n equals: 'schedulePublish',\n },\n },\n {\n waitUntil: {\n greater_than: new Date(),\n },\n },\n ],\n },\n }\n\n if (collectionSlug) {\n query.where.and.push({\n 'input.doc.value': {\n equals: String(id),\n },\n })\n query.where.and.push({\n 'input.doc.relationTo': {\n equals: collectionSlug,\n },\n })\n }\n\n if (globalSlug) {\n query.where.and.push({\n 'input.global': {\n equals: globalSlug,\n },\n })\n }\n\n const { docs } = await requests\n .post(`${serverURL}${api}/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 }, [\n collectionSlug,\n globalSlug,\n serverURL,\n api,\n i18n,\n dateFormat,\n localization,\n supportedTimezones,\n t,\n id,\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 publishSpecificLocale: string\n\n if (typeof locale === 'object' && locale.value !== 'all' && type === 'publish') {\n publishSpecificLocale = 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 locale: publishSpecificLocale,\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\n className={baseClass}\n gutter={false}\n Header={\n <div className={`${baseClass}__drawer-header`}>\n <h2 title={modalTitle}>{modalTitle}</h2>\n <DrawerCloseButton onClick={() => toggleModal(slug)} />\n </div>\n }\n slug={slug}\n >\n <Gutter className={`${baseClass}__scheduler`}>\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 <br />\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 <br />\n {localeOptions.length > 0 && type === 'publish' && (\n <React.Fragment>\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 <br />\n </React.Fragment>\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 && (\n <Banner type=\"info\">{t('general:noUpcomingEventsScheduled')}</Banner>\n )}\n {upcoming?.length > 0 && (\n <Table appearance=\"condensed\" columns={upcomingColumns} data={upcoming} />\n )}\n </Gutter>\n </Drawer>\n )\n}\n"],"names":["TZDateMini","TZDate","useModal","getTranslation","endOfToday","isToday","startOfDay","transpose","qs","React","useCallback","useMemo","toast","FieldLabel","Radio","useConfig","useDocumentInfo","useDocumentTitle","useServerFunctions","useTranslation","requests","Banner","DrawerCloseButton","Button","DatePickerField","Drawer","Gutter","ReactSelect","ShimmerEffect","Table","TimezonePicker","buildUpcomingColumns","baseClass","defaultLocaleOption","label","value","ScheduleDrawer","slug","defaultType","schedulePublishConfig","toggleModal","config","admin","dateFormat","timezones","defaultTimezone","supportedTimezones","localization","routes","api","serverURL","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","and","taskSlug","equals","waitUntil","greater_than","Date","push","String","docs","post","body","stringify","headers","language","then","res","json","deleteHandler","current","deleteID","success","err","console","error","message","useEffect","handleSave","publishSpecificLocale","doc","relationTo","undefined","global","displayedValue","DateWithOriginalTz","tz","DateWithUserTz","modifiedDate","withTimeZone","dateWithTimezone","dateWithUserTimezone","toISOString","onChangeDate","incomingDate","tzDateWithUTC","dateToUserTz","fetchInitialUpcoming","minTime","className","gutter","Header","div","h2","onClick","required","ul","li","isSelected","onChange","option","path","readOnly","br","maxTime","minDate","e","pickerAppearance","timeFormat","timeIntervals","length","selectedTimezone","Fragment","buttonStyle","disabled","span","h4","appearance","columns","data"],"mappings":"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"}
1
+ {"version":3,"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 { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { endOfToday, isToday, startOfDay } from 'date-fns'\nimport { transpose } from 'date-fns/transpose'\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 { DrawerCloseButton } from '../../BulkUpload/DrawerCloseButton/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 { ReactSelect } from '../../ReactSelect/index.js'\nimport './index.scss'\nimport { ShimmerEffect } from '../../ShimmerEffect/index.js'\nimport { Table } from '../../Table/index.js'\nimport { TimezonePicker } from '../../TimezonePicker/index.js'\nimport { buildUpcomingColumns } from './buildUpcomingColumns.js'\n\nconst baseClass = 'schedule-publish'\n\ntype Props = {\n defaultType?: PublishType\n schedulePublishConfig?: SchedulePublish\n slug: string\n}\n\nconst defaultLocaleOption = {\n label: 'All',\n value: 'all',\n}\n\nexport const ScheduleDrawer: React.FC<Props> = ({ slug, defaultType, schedulePublishConfig }) => {\n const { toggleModal } = useModal()\n const {\n config: {\n admin: {\n dateFormat,\n timezones: { defaultTimezone, supportedTimezones },\n },\n localization,\n routes: { api },\n serverURL,\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: {\n and: [\n {\n taskSlug: {\n equals: 'schedulePublish',\n },\n },\n {\n waitUntil: {\n greater_than: new Date(),\n },\n },\n ],\n },\n }\n\n if (collectionSlug) {\n query.where.and.push({\n 'input.doc.value': {\n equals: String(id),\n },\n })\n query.where.and.push({\n 'input.doc.relationTo': {\n equals: collectionSlug,\n },\n })\n }\n\n if (globalSlug) {\n query.where.and.push({\n 'input.global': {\n equals: globalSlug,\n },\n })\n }\n\n const { docs } = await requests\n .post(`${serverURL}${api}/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 }, [\n collectionSlug,\n globalSlug,\n serverURL,\n api,\n i18n,\n dateFormat,\n localization,\n supportedTimezones,\n t,\n id,\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 publishSpecificLocale: string\n\n if (typeof locale === 'object' && locale.value !== 'all' && type === 'publish') {\n publishSpecificLocale = 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 locale: publishSpecificLocale,\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\n className={baseClass}\n gutter={false}\n Header={\n <div className={`${baseClass}__drawer-header`}>\n <h2 title={modalTitle}>{modalTitle}</h2>\n <DrawerCloseButton onClick={() => toggleModal(slug)} />\n </div>\n }\n slug={slug}\n >\n <Gutter className={`${baseClass}__scheduler`}>\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 <br />\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 <br />\n {localeOptions.length > 0 && type === 'publish' && (\n <React.Fragment>\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 <br />\n </React.Fragment>\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 && (\n <Banner type=\"info\">{t('general:noUpcomingEventsScheduled')}</Banner>\n )}\n {upcoming?.length > 0 && (\n <Table appearance=\"condensed\" columns={upcomingColumns} data={upcoming} />\n )}\n </Gutter>\n </Drawer>\n )\n}\n"],"names":["TZDateMini","TZDate","useModal","getTranslation","endOfToday","isToday","startOfDay","transpose","qs","React","useCallback","useMemo","toast","FieldLabel","Radio","useConfig","useDocumentInfo","useDocumentTitle","useServerFunctions","useTranslation","requests","Banner","DrawerCloseButton","Button","DatePickerField","Drawer","Gutter","ReactSelect","ShimmerEffect","Table","TimezonePicker","buildUpcomingColumns","baseClass","defaultLocaleOption","label","value","ScheduleDrawer","slug","defaultType","schedulePublishConfig","toggleModal","config","admin","dateFormat","timezones","defaultTimezone","supportedTimezones","localization","routes","api","serverURL","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","and","taskSlug","equals","waitUntil","greater_than","Date","push","String","docs","post","body","stringify","headers","language","then","res","json","deleteHandler","current","deleteID","success","err","console","error","message","useEffect","handleSave","publishSpecificLocale","doc","relationTo","undefined","global","displayedValue","DateWithOriginalTz","tz","DateWithUserTz","modifiedDate","withTimeZone","dateWithTimezone","dateWithUserTimezone","toISOString","onChangeDate","incomingDate","tzDateWithUTC","dateToUserTz","fetchInitialUpcoming","minTime","className","gutter","Header","div","h2","onClick","required","ul","li","isSelected","onChange","option","path","readOnly","br","maxTime","minDate","e","pickerAppearance","timeFormat","timeIntervals","length","selectedTimezone","Fragment","buttonStyle","disabled","span","h4","appearance","columns","data"],"mappings":"AAAA,6BAA6B,GAC7B;AAIA,SAASA,cAAcC,MAAM,QAAQ,yBAAwB;AAC7D,SAASC,QAAQ,QAAQ,qBAAoB;AAC7C,SAASC,cAAc,QAAQ,2BAA0B;AACzD,SAASC,UAAU,EAAEC,OAAO,EAAEC,UAAU,QAAQ,WAAU;AAC1D,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,YAAYC,QAAQ,SAAQ;AAC5B,OAAOC,SAASC,WAAW,EAAEC,OAAO,QAAQ,QAAO;AACnD,SAASC,KAAK,QAAQ,SAAQ;AAI9B,SAASC,UAAU,QAAQ,sCAAqC;AAChE,SAASC,KAAK,QAAQ,4CAA2C;AACjE,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,eAAe,QAAQ,2CAA0C;AAC1E,SAASC,gBAAgB,QAAQ,4CAA2C;AAC5E,SAASC,kBAAkB,QAAQ,8CAA6C;AAChF,SAASC,cAAc,QAAQ,0CAAyC;AACxE,SAASC,QAAQ,QAAQ,4BAA2B;AACpD,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,iBAAiB,QAAQ,8CAA6C;AAC/E,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,eAAe,QAAQ,4BAA2B;AAC3D,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,MAAM,QAAQ,wBAAuB;AAC9C,SAASC,WAAW,QAAQ,6BAA4B;AACxD,OAAO,eAAc;AACrB,SAASC,aAAa,QAAQ,+BAA8B;AAC5D,SAASC,KAAK,QAAQ,uBAAsB;AAC5C,SAASC,cAAc,QAAQ,gCAA+B;AAC9D,SAASC,oBAAoB,QAAQ,4BAA2B;AAEhE,MAAMC,YAAY;AAQlB,MAAMC,sBAAsB;IAC1BC,OAAO;IACPC,OAAO;AACT;AAEA,OAAO,MAAMC,iBAAkC,CAAC,EAAEC,IAAI,EAAEC,WAAW,EAAEC,qBAAqB,EAAE;IAC1F,MAAM,EAAEC,WAAW,EAAE,GAAGtC;IACxB,MAAM,EACJuC,QAAQ,EACNC,OAAO,EACLC,UAAU,EACVC,WAAW,EAAEC,eAAe,EAAEC,kBAAkB,EAAE,EACnD,EACDC,YAAY,EACZC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,EACF,GAAGnC;IACJ,MAAM,EAAEoC,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGrC;IAC3C,MAAM,EAAEsC,KAAK,EAAE,GAAGrC;IAClB,MAAM,EAAEsC,IAAI,EAAEC,CAAC,EAAE,GAAGrC;IACpB,MAAM,EAAEsC,eAAe,EAAE,GAAGvC;IAC5B,MAAM,CAACwC,MAAMC,QAAQ,GAAGlD,MAAMmD,QAAQ,CAActB,eAAe;IACnE,MAAM,CAACuB,MAAMC,QAAQ,GAAGrD,MAAMmD,QAAQ;IACtC,MAAM,CAACG,UAAUC,YAAY,GAAGvD,MAAMmD,QAAQ,CAASf;IACvD,MAAM,CAACoB,QAAQC,UAAU,GAAGzD,MAAMmD,QAAQ,CAAmC3B;IAC7E,MAAM,CAACkC,YAAYC,cAAc,GAAG3D,MAAMmD,QAAQ,CAAC;IACnD,MAAMS,aAAab,EAAE,8BAA8B;QAAEF;IAAM;IAC3D,MAAM,CAACgB,UAAUC,YAAY,GAAG9D,MAAMmD,QAAQ;IAC9C,MAAM,CAACY,iBAAiBC,mBAAmB,GAAGhE,MAAMmD,QAAQ;IAC5D,MAAMc,mBAAmBjE,MAAMkE,MAAM,CAAkD,IAAM;IAE7F,wEAAwE;IACxE,MAAMC,eAAeC,KAAKC,cAAc,GAAGC,eAAe,GAAGC,QAAQ;IAErE,MAAMC,gBAAgBxE,MAAME,OAAO,CAAC;QAClC,IAAIoC,cAAc;YAChB,MAAMmC,UAAUnC,aAAaoC,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAEnD,KAAK,EAAE,GAAM,CAAA;oBAC7DA,OAAO/B,eAAe+B,OAAOqB;oBAC7BpB,OAAOkD;gBACT,CAAA;YAEAH,QAAQI,OAAO,CAACrD;YAEhB,OAAOiD;QACT;QAEA,OAAO,EAAE;IACX,GAAG;QAACnC;QAAcQ;KAAK;IAEvB,MAAMgC,gBAAgB9E,MAAMC,WAAW,CAAC;QACtC,MAAM8E,QAAwC;YAC5CC,MAAM;YACNC,OAAO;gBACLC,KAAK;oBACH;wBACEC,UAAU;4BACRC,QAAQ;wBACV;oBACF;oBACA;wBACEC,WAAW;4BACTC,cAAc,IAAIC;wBACpB;oBACF;iBACD;YACH;QACF;QAEA,IAAI5C,gBAAgB;YAClBoC,MAAME,KAAK,CAACC,GAAG,CAACM,IAAI,CAAC;gBACnB,mBAAmB;oBACjBJ,QAAQK,OAAO/C;gBACjB;YACF;YACAqC,MAAME,KAAK,CAACC,GAAG,CAACM,IAAI,CAAC;gBACnB,wBAAwB;oBACtBJ,QAAQzC;gBACV;YACF;QACF;QAEA,IAAIC,YAAY;YACdmC,MAAME,KAAK,CAACC,GAAG,CAACM,IAAI,CAAC;gBACnB,gBAAgB;oBACdJ,QAAQxC;gBACV;YACF;QACF;QAEA,MAAM,EAAE8C,IAAI,EAAE,GAAG,MAAM/E,SACpBgF,IAAI,CAAC,GAAGlD,YAAYD,IAAI,aAAa,CAAC,EAAE;YACvCoD,MAAM7F,GAAG8F,SAAS,CAACd;YACnBe,SAAS;gBACP,mBAAmBhD,KAAKiD,QAAQ;gBAChC,gBAAgB;gBAChB,kCAAkC;YACpC;QACF,GACCC,IAAI,CAAC,CAACC,MAAQA,IAAIC,IAAI;QAEzBlC,mBACE1C,qBAAqB;YACnBY;YACA,kEAAkE;YAClEiE,eAAelC,iBAAiBmC,OAAO;YACvCV;YACA5C;YACAR;YACAD;YACAU;QACF;QAEFe,YAAY4B;IACd,GAAG;QACD/C;QACAC;QACAH;QACAD;QACAM;QACAZ;QACAI;QACAD;QACAU;QACAL;KACD;IAED,MAAMyD,gBAAgBnG,MAAMC,WAAW,CACrC,OAAOyC;QACL,IAAI;YACF,MAAMM,gBAAgB;gBACpBqD,UAAU3D;YACZ;YACA,MAAMoC;YACN3E,MAAMmG,OAAO,CAACvD,EAAE;QAClB,EAAE,OAAOwD,KAAK;YACZC,QAAQC,KAAK,CAACF;YACdpG,MAAMsG,KAAK,CAACF,IAAIG,OAAO;QACzB;IACF,GACA;QAAC5B;QAAe9B;QAAiBD;KAAE;IAGrC/C,MAAM2G,SAAS,CAAC;QACd1C,iBAAiBmC,OAAO,GAAGD;IAC7B,GAAG;QAACA;KAAc;IAElB,MAAMS,aAAa5G,MAAMC,WAAW,CAAC;QACnC,IAAI,CAACmD,MAAM;YACT,OAAOjD,MAAMsG,KAAK,CAAC1D,EAAE;QACvB;QAEAY,cAAc;QAEd,IAAIkD;QAEJ,IAAI,OAAOrD,WAAW,YAAYA,OAAO9B,KAAK,KAAK,SAASuB,SAAS,WAAW;YAC9E4D,wBAAwBrD,OAAO9B,KAAK;QACtC;QAEA,IAAI;YACF,MAAMsB,gBAAgB;gBACpBC;gBACAG;gBACA0D,KAAKnE,iBACD;oBACEoE,YAAYpE;oBACZjB,OAAO+D,OAAO/C;gBAChB,IACAsE;gBACJC,QAAQrE,cAAcoE;gBACtBxD,QAAQqD;gBACRvD;YACF;YAEAD,QAAQ2D;YACR7G,MAAMmG,OAAO,CAACvD,EAAE;YAChB,KAAK+B;QACP,EAAE,OAAOyB,KAAK;YACZC,QAAQC,KAAK,CAACF;YACdpG,MAAMsG,KAAK,CAACF,IAAIG,OAAO;QACzB;QAEA/C,cAAc;IAChB,GAAG;QACDP;QACAI;QACAP;QACAF;QACAC;QACAL;QACAD;QACAE;QACAU;QACAwB;KACD;IAED,MAAMoC,iBAAiBhH,QAAQ;QAC7B,IAAIoD,YAAYa,gBAAgBf,MAAM;YACpC,4EAA4E;YAC5E,qGAAqG;YACrG,MAAM+D,qBAAqB3H,OAAO4H,EAAE,CAAC9D;YACrC,MAAM+D,iBAAiB7H,OAAO4H,EAAE,CAACjD;YAEjC,MAAMmD,eAAe,IAAI9H,OAAO4D,MAAMmE,YAAY,CAACjE;YAEnD,8CAA8C;YAC9C,MAAMkE,mBAAmB1H,UAAUwH,cAAcH;YAEjD,6JAA6J;YAC7J,MAAMM,uBAAuB3H,UAAU0H,kBAAkBH;YAEzD,OAAOI,qBAAqBC,WAAW;QACzC;QAEA,OAAOtE;IACT,GAAG;QAACE;QAAUF;QAAMe;KAAa;IAEjC,MAAMwD,eAAe1H,YACnB,CAAC2H;QACC,IAAItE,YAAYsE,cAAc;YAC5B,oDAAoD;YACpD,MAAMC,gBAAgBrI,OAAO4H,EAAE,CAAC9D;YAEhC,4HAA4H;YAC5H,MAAMwE,eAAe,IAAItI,OAAOoI;YAEhC,8CAA8C;YAC9C,MAAMJ,mBAAmB1H,UAAUgI,cAAcD;YAEjDxE,QAAQmE,oBAAoB;QAC9B,OAAO;YACLnE,QAAQuE,gBAAgB;QAC1B;IACF,GACA;QAACvE;QAASC;KAAS;IAGrBtD,MAAM2G,SAAS,CAAC;QACd,IAAI,CAAC9C,UAAU;YACb,MAAMkE,uBAAuB;gBAC3B,MAAMjD;YACR;YAEA,KAAKiD;QACP;IACF,GAAG;QAAClE;QAAUiB;KAAc;IAE5B,MAAMkD,UAAU9H,QAAQ;QACtB,IAAIkD,QAAQxD,QAAQwD,OAAO;YACzB,OAAO,IAAImC;QACb;QAEA,OAAO1F,WAAW,IAAI0F;IACxB,GAAG;QAACnC;KAAK;IAET,QACGpC,OACCiH,WAAW1G,WACX2G,QAAQ,OACRC,SACGC,IAAIH,WAAW,GAAG1G,UAAU,eAAe,CAAC,EAAE;UAC7C,CAAC8G,GAAGxF,OAAOe,aAAaA,aAAayE,GAAG;UACxC,CAACxH,kBAAkByH,SAAS,IAAMvG,YAAYH,QAAS;QACzD,EAAEwG,MAEJxG,MAAMA,MACP;MACC,CAACX,OAAOgH,WAAW,GAAG1G,UAAU,WAAW,CAAC,EAAE;QAC5C,CAACnB,WAAWqB,OAAOsB,EAAE,iBAAiBwF,UAAW;QACjD,CAACC,GAAGP,WAAW,GAAG1G,UAAU,MAAM,CAAC,EAAE;UACnC,CAACkH,GAAG;YACF,CAACpI,MACCqC,IAAI,GAAGd,KAAK,KAAK,CAAC,EAClB8G,YAAYzF,SAAS,WACrB0F,UAAU,IAAMzF,QAAQ,YACxB0F,QAAQ;QAAEnH,OAAOsB,EAAE;QAAoBrB,OAAO;IAAU,GACxDmH,MAAM,GAAGjH,KAAK,KAAK,CAAC,EACpBkH,UAAUpF,aACV;UACJ,EAAE+E,GAAG;UACL,CAACA,GAAG;YACF,CAACpI,MACCqC,IAAI,GAAGd,KAAK,KAAK,CAAC,EAClB8G,YAAYzF,SAAS,aACrB0F,UAAU,IAAMzF,QAAQ,cACxB0F,QAAQ;QAAEnH,OAAOsB,EAAE;QAAsBrB,OAAO;IAAY,GAC5DmH,MAAM,GAAGjH,KAAK,KAAK,CAAC,EACpBkH,UAAUpF,aACV;UACJ,EAAE+E,GAAG;QACP,EAAED,GAAG;QACL,CAACO,IAAK;QACN,CAAC3I,WAAWqB,OAAOsB,EAAE,iBAAiB8F,MAAM,QAAQN,UAAW;QAC/D,CAACxH,gBACC2B,GAAG,OACHsG,SAASrJ,cACTsJ,SAAS,IAAI1D,QACbyC,SAASA,SACTW,UAAU,CAACO,IAAMvB,aAAauB,IAC9BC,iBAAiB,aACjBL,UAAUpF,YACV0F,YAAYtH,uBAAuBsH,YACnCC,eAAevH,uBAAuBuH,iBAAiB,GACvD3H,OAAOwF,iBACP;QACF,CAAC7E,mBAAmBiH,MAAM,GAAG,MAC1BjI,eACCqB,IAAI,CAAC,eAAe,CAAC,EACrBiG,UAAUpF,aACVkB,SAASpC,oBACTkH,kBAAkBjG,YAEpB;QACF,CAACyF,IAAK;QACN,CAACvE,cAAc8E,MAAM,GAAG,KAAKrG,SAAS,cACnCjD,MAAMwJ,SAAS;YACd,CAACpJ,WAAWqB,OAAOsB,EAAE,kCAAmC;YACxD,CAAC7B,YACCyH,UAAU,CAACO,IAAMzF,UAAUyF,IAC3BzE,SAASD,eACT9C,OAAO8B,SACP;YACF,CAACuF,IAAK;UACR,EAAE/I,MAAMwJ,UACR;QACF,CAACpB,IAAIH,WAAW,GAAG1G,UAAU,SAAS,CAAC,EAAE;UACvC,CAACT,OACC2I,YAAY,UACZC,UAAUhG,YACVhB,GAAG,yBACH4F,SAAS1B,YACT3D,KAAK,SACN;YACC,CAACF,EAAE,gBAAgB;UACrB,EAAEjC,OAAO;UACT,CAAC4C,cAAciG,MAAM5G,EAAE,oBAAoB4G,QAAQ,KAAK;QAC1D,EAAEvB,IAAI;MACR,EAAEnH,OAAO;MACT,CAACA,OAAOgH,WAAW,GAAG1G,UAAU,UAAU,CAAC,EAAE;QAC3C,CAACqI,IAAI7G,EAAE,4BAA4B6G,GAAG;QACtC,CAAC,CAAC/F,aAAa1C,gBAAiB;QAChC,CAAC0C,UAAUyF,WAAW,MACnB1I,OAAOqC,KAAK,QAAQF,EAAE,uCAAuCnC,QAC9D;QACF,CAACiD,UAAUyF,SAAS,MACjBlI,MAAMyI,WAAW,YAAYC,SAAS/F,iBAAiBgG,MAAMlG,YAC9D;MACJ,EAAE5C,OAAO;IACX,EAAED;AAEN,EAAC"}
@@ -1,5 +1,4 @@
1
1
  'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
3
2
  import { useModal } from '@faceless-ui/modal';
4
3
  import { hasAutosaveEnabled, hasScheduledPublishEnabled } from 'payload/shared';
5
4
  import * as qs from 'qs-esm';
@@ -163,83 +162,32 @@ export function PublishButton({ label: labelProp }) {
163
162
  if (!hasPublishPermission) {
164
163
  return null;
165
164
  }
166
- return /*#__PURE__*/ _jsxDEV(React.Fragment, {
167
- children: [
168
- /*#__PURE__*/ _jsxDEV(FormSubmit, {
169
- buttonId: "action-save",
170
- disabled: !canPublish,
171
- enableSubMenu: canSchedulePublish,
172
- onClick: isDefaultPublishAll ? publish : ()=>publishSpecificLocale(activeLocale.code),
173
- size: "medium",
174
- SubMenuPopupContent: isSpecificLocalePublishEnabled || canSchedulePublish ? ({ close })=>{
175
- return /*#__PURE__*/ _jsxDEV(React.Fragment, {
176
- children: [
177
- canSchedulePublish && /*#__PURE__*/ _jsxDEV(PopupList.ButtonGroup, {
178
- children: /*#__PURE__*/ _jsxDEV(PopupList.Button, {
179
- id: "schedule-publish",
180
- onClick: ()=>[
181
- toggleModal(drawerSlug),
182
- close()
183
- ],
184
- children: t('version:schedulePublish')
185
- }, void 0, false, {
186
- fileName: "src/elements/PublishButton/index.tsx",
187
- lineNumber: 225,
188
- columnNumber: 25
189
- }, void 0)
190
- }, "schedule-publish", false, {
191
- fileName: "src/elements/PublishButton/index.tsx",
192
- lineNumber: 224,
193
- columnNumber: 23
194
- }, void 0),
195
- isSpecificLocalePublishEnabled && /*#__PURE__*/ _jsxDEV(PopupList.ButtonGroup, {
196
- children: /*#__PURE__*/ _jsxDEV(PopupList.Button, {
197
- id: "publish-locale",
198
- onClick: isDefaultPublishAll ? ()=>publishSpecificLocale(activeLocale.code) : publish,
199
- children: isDefaultPublishAll ? t('version:publishIn', {
200
- locale: activeLocaleLabel
201
- }) : t('version:publishAllLocales')
202
- }, void 0, false, {
203
- fileName: "src/elements/PublishButton/index.tsx",
204
- lineNumber: 235,
205
- columnNumber: 25
206
- }, void 0)
207
- }, void 0, false, {
208
- fileName: "src/elements/PublishButton/index.tsx",
209
- lineNumber: 234,
210
- columnNumber: 23
211
- }, void 0)
212
- ]
213
- }, void 0, true, {
214
- fileName: "src/elements/PublishButton/index.tsx",
215
- lineNumber: 222,
216
- columnNumber: 19
217
- }, void 0);
218
- } : undefined,
219
- type: "button",
220
- children: !isDefaultPublishAll ? t('version:publishIn', {
221
- locale: activeLocaleLabel
222
- }) : label
223
- }, void 0, false, {
224
- fileName: "src/elements/PublishButton/index.tsx",
225
- lineNumber: 212,
226
- columnNumber: 7
227
- }, this),
228
- canSchedulePublish && isModalOpen(drawerSlug) && /*#__PURE__*/ _jsxDEV(ScheduleDrawer, {
229
- defaultType: !hasNewerVersions ? 'unpublish' : 'publish',
230
- schedulePublishConfig: scheduledPublishEnabled && typeof entityConfig.versions.drafts.schedulePublish === 'object' ? entityConfig.versions.drafts.schedulePublish : undefined,
231
- slug: drawerSlug
232
- }, void 0, false, {
233
- fileName: "src/elements/PublishButton/index.tsx",
234
- lineNumber: 259,
235
- columnNumber: 9
236
- }, this)
237
- ]
238
- }, void 0, true, {
239
- fileName: "src/elements/PublishButton/index.tsx",
240
- lineNumber: 211,
241
- columnNumber: 5
242
- }, this);
165
+ return <React.Fragment>
166
+ <FormSubmit buttonId="action-save" disabled={!canPublish} enableSubMenu={canSchedulePublish} onClick={isDefaultPublishAll ? publish : ()=>publishSpecificLocale(activeLocale.code)} size="medium" SubMenuPopupContent={isSpecificLocalePublishEnabled || canSchedulePublish ? ({ close })=>{
167
+ return <React.Fragment>
168
+ {canSchedulePublish && <PopupList.ButtonGroup key="schedule-publish">
169
+ <PopupList.Button id="schedule-publish" onClick={()=>[
170
+ toggleModal(drawerSlug),
171
+ close()
172
+ ]}>
173
+ {t('version:schedulePublish')}
174
+ </PopupList.Button>
175
+ </PopupList.ButtonGroup>}
176
+ {isSpecificLocalePublishEnabled && <PopupList.ButtonGroup>
177
+ <PopupList.Button id="publish-locale" onClick={isDefaultPublishAll ? ()=>publishSpecificLocale(activeLocale.code) : publish}>
178
+ {isDefaultPublishAll ? t('version:publishIn', {
179
+ locale: activeLocaleLabel
180
+ }) : t('version:publishAllLocales')}
181
+ </PopupList.Button>
182
+ </PopupList.ButtonGroup>}
183
+ </React.Fragment>;
184
+ } : undefined} type="button">
185
+ {!isDefaultPublishAll ? t('version:publishIn', {
186
+ locale: activeLocaleLabel
187
+ }) : label}
188
+ </FormSubmit>
189
+ {canSchedulePublish && isModalOpen(drawerSlug) && <ScheduleDrawer defaultType={!hasNewerVersions ? 'unpublish' : 'publish'} schedulePublishConfig={scheduledPublishEnabled && typeof entityConfig.versions.drafts.schedulePublish === 'object' ? entityConfig.versions.drafts.schedulePublish : undefined} slug={drawerSlug}/>}
190
+ </React.Fragment>;
243
191
  }
244
192
 
245
193
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { hasAutosaveEnabled, hasScheduledPublishEnabled } 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 { ScheduleDrawer } from './ScheduleDrawer/index.js'\n\nexport function PublishButton({ label: labelProp }: 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 { isModalOpen, toggleModal } = useModal()\n\n const drawerSlug = `schedule-publish-${id}`\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\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 scheduledPublishEnabled = hasScheduledPublishEnabled(entityConfig)\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 canSchedulePublish = Boolean(\n scheduledPublishEnabled &&\n hasPublishPermission &&\n (globalSlug || (collectionSlug && id)) &&\n (hasAutosave || !modified),\n )\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 const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const search = `?locale=${localeCode}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, localeCode, id, disabled])\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 publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const result = await submit({\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishSpecificLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify({\n depth: 0,\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params ? '?' + params : ''}`\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setHasPublishedDoc(true)\n }\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit, uploadStatus],\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 =\n activeLocale &&\n (typeof activeLocale.label === 'string'\n ? activeLocale.label\n : (activeLocale.label?.[localeCode] ?? undefined))\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n enableSubMenu={canSchedulePublish}\n onClick={isDefaultPublishAll ? publish : () => publishSpecificLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled || canSchedulePublish\n ? ({ close }) => {\n return (\n <React.Fragment>\n {canSchedulePublish && (\n <PopupList.ButtonGroup key=\"schedule-publish\">\n <PopupList.Button\n id=\"schedule-publish\"\n onClick={() => [toggleModal(drawerSlug), close()]}\n >\n {t('version:schedulePublish')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll\n ? () => publishSpecificLocale(activeLocale.code)\n : 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 ? t('version:publishIn', { locale: activeLocaleLabel }) : label}\n </FormSubmit>\n {canSchedulePublish && isModalOpen(drawerSlug) && (\n <ScheduleDrawer\n defaultType={!hasNewerVersions ? 'unpublish' : 'publish'}\n schedulePublishConfig={\n scheduledPublishEnabled &&\n typeof entityConfig.versions.drafts.schedulePublish === 'object'\n ? entityConfig.versions.drafts.schedulePublish\n : undefined\n }\n slug={drawerSlug}\n />\n )}\n </React.Fragment>\n )\n}\n"],"names":["useModal","hasAutosaveEnabled","hasScheduledPublishEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","ScheduleDrawer","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","isModalOpen","toggleModal","drawerSlug","localization","routes","api","serverURL","t","entityConfig","useMemo","hasNewerVersions","canPublish","scheduledPublishEnabled","hasAutosave","canSchedulePublish","Boolean","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","publish","result","publishSpecificLocale","locale","params","stringify","depth","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","undefined","Fragment","buttonId","enableSubMenu","onClick","size","SubMenuPopupContent","close","ButtonGroup","Button","type","defaultType","schedulePublishConfig","versions","drafts","schedulePublish","slug"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { hasAutosaveEnabled, hasScheduledPublishEnabled } 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 { ScheduleDrawer } from './ScheduleDrawer/index.js'\n\nexport function PublishButton({ label: labelProp }: 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 { isModalOpen, toggleModal } = useModal()\n\n const drawerSlug = `schedule-publish-${id}`\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\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 scheduledPublishEnabled = hasScheduledPublishEnabled(entityConfig)\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 canSchedulePublish = Boolean(\n scheduledPublishEnabled &&\n hasPublishPermission &&\n (globalSlug || (collectionSlug && id)) &&\n (hasAutosave || !modified),\n )\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 const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const search = `?locale=${localeCode}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, localeCode, id, disabled])\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 publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const result = await submit({\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishSpecificLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify({\n depth: 0,\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params ? '?' + params : ''}`\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setHasPublishedDoc(true)\n }\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit, uploadStatus],\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 =\n activeLocale &&\n (typeof activeLocale.label === 'string'\n ? activeLocale.label\n : (activeLocale.label?.[localeCode] ?? undefined))\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n enableSubMenu={canSchedulePublish}\n onClick={isDefaultPublishAll ? publish : () => publishSpecificLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled || canSchedulePublish\n ? ({ close }) => {\n return (\n <React.Fragment>\n {canSchedulePublish && (\n <PopupList.ButtonGroup key=\"schedule-publish\">\n <PopupList.Button\n id=\"schedule-publish\"\n onClick={() => [toggleModal(drawerSlug), close()]}\n >\n {t('version:schedulePublish')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll\n ? () => publishSpecificLocale(activeLocale.code)\n : 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 ? t('version:publishIn', { locale: activeLocaleLabel }) : label}\n </FormSubmit>\n {canSchedulePublish && isModalOpen(drawerSlug) && (\n <ScheduleDrawer\n defaultType={!hasNewerVersions ? 'unpublish' : 'publish'}\n schedulePublishConfig={\n scheduledPublishEnabled &&\n typeof entityConfig.versions.drafts.schedulePublish === 'object'\n ? entityConfig.versions.drafts.schedulePublish\n : undefined\n }\n slug={drawerSlug}\n />\n )}\n </React.Fragment>\n )\n}\n"],"names":["useModal","hasAutosaveEnabled","hasScheduledPublishEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","ScheduleDrawer","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","isModalOpen","toggleModal","drawerSlug","localization","routes","api","serverURL","t","entityConfig","useMemo","hasNewerVersions","canPublish","scheduledPublishEnabled","hasAutosave","canSchedulePublish","Boolean","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","publish","result","publishSpecificLocale","locale","params","stringify","depth","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","undefined","Fragment","buttonId","enableSubMenu","onClick","size","SubMenuPopupContent","close","ButtonGroup","key","Button","type","defaultType","schedulePublishConfig","versions","drafts","schedulePublish","slug"],"mappings":"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"}