@payloadcms/ui 4.0.0-internal.cea8867 → 4.0.0-internal.d21c039

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 (934) hide show
  1. package/dist/css/app.css +122 -0
  2. package/dist/css/colors.css +7 -6
  3. package/dist/css/forms.css +1 -6
  4. package/dist/css/preflight.css +1 -0
  5. package/dist/css/spacing.css +29 -3
  6. package/dist/css/typography.css +158 -14
  7. package/dist/css/z-index.css +10 -0
  8. package/dist/elements/APIKeyInput/index.d.ts +2 -0
  9. package/dist/elements/APIKeyInput/index.d.ts.map +1 -1
  10. package/dist/elements/APIKeyInput/index.js +27 -29
  11. package/dist/elements/APIKeyInput/index.js.map +1 -1
  12. package/dist/elements/AddNewRelation/index.css +0 -1
  13. package/dist/elements/AppHeader/EditViewWidthSettings/index.css +6 -0
  14. package/dist/elements/AppHeader/EditViewWidthSettings/index.d.ts +4 -0
  15. package/dist/elements/AppHeader/EditViewWidthSettings/index.d.ts.map +1 -0
  16. package/dist/elements/AppHeader/EditViewWidthSettings/index.js +96 -0
  17. package/dist/elements/AppHeader/EditViewWidthSettings/index.js.map +1 -0
  18. package/dist/elements/AppHeader/SettingsMenu/index.css +5 -0
  19. package/dist/elements/AppHeader/SettingsMenu/index.d.ts +4 -0
  20. package/dist/elements/AppHeader/SettingsMenu/index.d.ts.map +1 -0
  21. package/dist/elements/AppHeader/SettingsMenu/index.js +59 -0
  22. package/dist/elements/AppHeader/SettingsMenu/index.js.map +1 -0
  23. package/dist/elements/AppHeader/TypeSizeSettings/index.d.ts +3 -0
  24. package/dist/elements/AppHeader/TypeSizeSettings/index.d.ts.map +1 -0
  25. package/dist/elements/AppHeader/TypeSizeSettings/index.js +58 -0
  26. package/dist/elements/AppHeader/TypeSizeSettings/index.js.map +1 -0
  27. package/dist/elements/AppHeader/index.css +4 -3
  28. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  29. package/dist/elements/AppHeader/index.js +8 -3
  30. package/dist/elements/AppHeader/index.js.map +1 -1
  31. package/dist/elements/ArrayAction/index.d.ts +3 -0
  32. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  33. package/dist/elements/ArrayAction/index.js +83 -29
  34. package/dist/elements/ArrayAction/index.js.map +1 -1
  35. package/dist/elements/Autosave/index.d.ts.map +1 -1
  36. package/dist/elements/Autosave/index.js +2 -3
  37. package/dist/elements/Autosave/index.js.map +1 -1
  38. package/dist/elements/Banner/index.css +4 -0
  39. package/dist/elements/Banner/index.d.ts.map +1 -1
  40. package/dist/elements/Banner/index.js +1 -0
  41. package/dist/elements/Banner/index.js.map +1 -1
  42. package/dist/elements/BulkUpload/ActionsBar/index.css +1 -0
  43. package/dist/elements/BulkUpload/AddFilesView/index.css +10 -4
  44. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  45. package/dist/elements/BulkUpload/AddFilesView/index.js +71 -51
  46. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  47. package/dist/elements/BulkUpload/AddingFilesView/index.css +2 -4
  48. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  49. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  50. package/dist/elements/BulkUpload/FileSidebar/index.css +5 -0
  51. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  52. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  53. package/dist/elements/BulkUpload/FormsManager/createFormData.js +10 -17
  54. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  55. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  56. package/dist/elements/BulkUpload/FormsManager/index.js +19 -13
  57. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  58. package/dist/elements/BulkUpload/index.css +2 -0
  59. package/dist/elements/Button/index.css +2 -2
  60. package/dist/elements/Button/index.d.ts.map +1 -1
  61. package/dist/elements/Button/index.js +2 -0
  62. package/dist/elements/Button/index.js.map +1 -1
  63. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
  64. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
  65. package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
  66. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  67. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  68. package/dist/elements/ClipboardAction/index.js +17 -1
  69. package/dist/elements/ClipboardAction/index.js.map +1 -1
  70. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  71. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  72. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +65 -3
  73. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  74. package/dist/elements/ClipboardAction/types.d.ts +3 -0
  75. package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
  76. package/dist/elements/ClipboardAction/types.js.map +1 -1
  77. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
  78. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
  79. package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
  80. package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
  81. package/dist/elements/CodeEditor/index.css +0 -5
  82. package/dist/elements/Collapsible/index.css +1 -0
  83. package/dist/elements/CommandPalette/index.css +0 -7
  84. package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
  85. package/dist/elements/CopyLocaleData/index.js +8 -9
  86. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  87. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  88. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  89. package/dist/elements/CopyToClipboard/index.js +10 -8
  90. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  91. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  92. package/dist/elements/CreateDocumentButton/index.js +4 -1
  93. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  94. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  95. package/dist/elements/DatePicker/DatePicker.js +1 -0
  96. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  97. package/dist/elements/DatePicker/index.css +3 -1
  98. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  99. package/dist/elements/DeleteDocument/index.js +16 -1
  100. package/dist/elements/DeleteDocument/index.js.map +1 -1
  101. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  102. package/dist/elements/DeleteMany/index.js +2 -3
  103. package/dist/elements/DeleteMany/index.js.map +1 -1
  104. package/dist/elements/Dialog/index.css +1 -0
  105. package/dist/elements/DocumentControls/index.css +1 -0
  106. package/dist/elements/DocumentFields/index.css +2 -0
  107. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +4 -1
  108. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -1
  109. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -0
  110. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  111. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +3 -2
  112. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  113. package/dist/elements/DocumentHeader/Tabs/index.css +1 -0
  114. package/dist/elements/DocumentHeader/Tabs/index.d.ts +1 -0
  115. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  116. package/dist/elements/DocumentHeader/Tabs/index.js +5 -3
  117. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  118. package/dist/elements/DocumentHeader/index.css +22 -2
  119. package/dist/elements/DocumentHeader/index.d.ts +1 -0
  120. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  121. package/dist/elements/DocumentHeader/index.js +6 -3
  122. package/dist/elements/DocumentHeader/index.js.map +1 -1
  123. package/dist/elements/Drawer/index.css +10 -4
  124. package/dist/elements/Dropzone/index.css +10 -4
  125. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  126. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  127. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  128. package/dist/elements/DuplicateDocument/index.js +2 -3
  129. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  130. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  131. package/dist/elements/EditMany/DrawerContent.js +4 -5
  132. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  133. package/dist/elements/EditUpload/index.css +1 -1
  134. package/dist/elements/FieldDiffContainer/index.css +1 -0
  135. package/dist/elements/FieldDiffLabel/index.css +1 -0
  136. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  137. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  138. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  139. package/dist/elements/FileDetails/StaticFileDetails/index.css +10 -9
  140. package/dist/elements/FileManager/FilePreview/index.css +3 -3
  141. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  142. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  143. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  144. package/dist/elements/FileManager/index.css +35 -52
  145. package/dist/elements/FileManager/index.d.ts +1 -1
  146. package/dist/elements/FileManager/index.d.ts.map +1 -1
  147. package/dist/elements/FileManager/index.js +385 -282
  148. package/dist/elements/FileManager/index.js.map +1 -1
  149. package/dist/elements/HTMLDiff/index.css +1 -0
  150. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
  151. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  152. package/dist/elements/Hierarchy/MoveMany/index.js +2 -3
  153. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  154. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  155. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +2 -3
  156. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  157. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  158. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
  159. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  160. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  161. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  162. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  163. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
  164. package/dist/elements/IDLabel/index.css +6 -0
  165. package/dist/elements/IDLabel/index.d.ts +1 -1
  166. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  167. package/dist/elements/IDLabel/index.js +16 -21
  168. package/dist/elements/IDLabel/index.js.map +1 -1
  169. package/dist/elements/InputStepper/index.css +0 -1
  170. package/dist/elements/ItemsDrawer/index.css +3 -0
  171. package/dist/elements/ListControls/index.css +10 -4
  172. package/dist/elements/ListControls/index.d.ts.map +1 -1
  173. package/dist/elements/ListControls/index.js +7 -1
  174. package/dist/elements/ListControls/index.js.map +1 -1
  175. package/dist/elements/ListControls/types.d.ts +3 -1
  176. package/dist/elements/ListControls/types.d.ts.map +1 -1
  177. package/dist/elements/ListControls/types.js.map +1 -1
  178. package/dist/elements/ListControlsBar/index.css +8 -3
  179. package/dist/elements/ListControlsBar/index.js +4 -1
  180. package/dist/elements/ListControlsBar/index.js.map +1 -1
  181. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  182. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  183. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  184. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  185. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  186. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +3 -4
  187. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  188. package/dist/elements/ListHeader/index.css +6 -1
  189. package/dist/elements/LivePreview/Window/index.css +1 -0
  190. package/dist/elements/LivePreview/Window/index.js +1 -1
  191. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  192. package/dist/elements/Localizer/index.js +1 -1
  193. package/dist/elements/Localizer/index.js.map +1 -1
  194. package/dist/elements/Locked/index.css +0 -8
  195. package/dist/elements/Locked/index.d.ts.map +1 -1
  196. package/dist/elements/Locked/index.js +70 -64
  197. package/dist/elements/Locked/index.js.map +1 -1
  198. package/dist/elements/MiniCarousel/index.css +39 -37
  199. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  200. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  201. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  202. package/dist/elements/Nav/SidebarTabs/index.css +0 -5
  203. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  204. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  205. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +5 -3
  206. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  207. package/dist/elements/Nav/index.css +2 -0
  208. package/dist/elements/NavGroup/index.css +0 -1
  209. package/dist/elements/PageControls/index.css +1 -0
  210. package/dist/elements/PillSelector/index.css +1 -0
  211. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  212. package/dist/elements/Popup/index.js +1 -1
  213. package/dist/elements/Popup/index.js.map +1 -1
  214. package/dist/elements/PreviewButton/index.d.ts +1 -2
  215. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  216. package/dist/elements/PreviewButton/index.js +11 -5
  217. package/dist/elements/PreviewButton/index.js.map +1 -1
  218. package/dist/elements/PreviewSizes/index.css +10 -9
  219. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  220. package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
  221. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  222. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts +1 -1
  223. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts.map +1 -1
  224. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  225. package/dist/elements/PublishButton/index.css +1 -0
  226. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  227. package/dist/elements/PublishButton/index.js +16 -31
  228. package/dist/elements/PublishButton/index.js.map +1 -1
  229. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  230. package/dist/elements/PublishMany/DrawerContent.js +2 -3
  231. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  232. package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
  233. package/dist/elements/QueryPresets/QueryPresetBar/index.js +15 -4
  234. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  235. package/dist/elements/QueryPresets/fields/Heading/index.css +1 -0
  236. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  237. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts +7 -0
  238. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -0
  239. package/dist/elements/ReactSelect/DefaultMenuPortal.js +120 -0
  240. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -0
  241. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  242. package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
  243. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +1 -1
  244. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -1
  245. package/dist/elements/ReactSelect/getMenuListStyles.js +13 -5
  246. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -1
  247. package/dist/elements/ReactSelect/getMenuStyles.d.ts +10 -0
  248. package/dist/elements/ReactSelect/getMenuStyles.d.ts.map +1 -0
  249. package/dist/elements/ReactSelect/getMenuStyles.js +21 -0
  250. package/dist/elements/ReactSelect/getMenuStyles.js.map +1 -0
  251. package/dist/elements/ReactSelect/index.css +7 -3
  252. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  253. package/dist/elements/ReactSelect/index.js +24 -101
  254. package/dist/elements/ReactSelect/index.js.map +1 -1
  255. package/dist/elements/ReactSelect/types.d.ts +1 -2
  256. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  257. package/dist/elements/ReactSelect/types.js.map +1 -1
  258. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  259. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  260. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  261. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  262. package/dist/elements/RelationshipTable/index.css +0 -2
  263. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  264. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  265. package/dist/elements/RelationshipTable/index.js +41 -5
  266. package/dist/elements/RelationshipTable/index.js.map +1 -1
  267. package/dist/elements/RenderTitle/index.css +16 -0
  268. package/dist/elements/RenderTitle/index.d.ts +1 -0
  269. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  270. package/dist/elements/RenderTitle/index.js +36 -18
  271. package/dist/elements/RenderTitle/index.js.map +1 -1
  272. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  273. package/dist/elements/RestoreMany/index.js +2 -3
  274. package/dist/elements/RestoreMany/index.js.map +1 -1
  275. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  276. package/dist/elements/SaveDraftButton/index.js +2 -3
  277. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  278. package/dist/elements/SelectRow/index.d.ts +4 -3
  279. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  280. package/dist/elements/SelectRow/index.js +10 -7
  281. package/dist/elements/SelectRow/index.js.map +1 -1
  282. package/dist/elements/SidebarToggle/index.css +0 -17
  283. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  284. package/dist/elements/SortColumn/index.js +42 -38
  285. package/dist/elements/SortColumn/index.js.map +1 -1
  286. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  287. package/dist/elements/SortHeader/index.js +29 -26
  288. package/dist/elements/SortHeader/index.js.map +1 -1
  289. package/dist/elements/Status/index.d.ts.map +1 -1
  290. package/dist/elements/Status/index.js +2 -3
  291. package/dist/elements/Status/index.js.map +1 -1
  292. package/dist/elements/StepNav/index.css +64 -14
  293. package/dist/elements/StepNav/index.d.ts.map +1 -1
  294. package/dist/elements/StepNav/index.js +143 -69
  295. package/dist/elements/StepNav/index.js.map +1 -1
  296. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  297. package/dist/elements/Table/DefaultCell/index.js +3 -11
  298. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  299. package/dist/elements/Table/OrderableRow.d.ts +3 -1
  300. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  301. package/dist/elements/Table/OrderableRow.js +17 -1
  302. package/dist/elements/Table/OrderableRow.js.map +1 -1
  303. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  304. package/dist/elements/Table/OrderableTable.js +20 -4
  305. package/dist/elements/Table/OrderableTable.js.map +1 -1
  306. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  307. package/dist/elements/Table/RelationshipProvider/index.js +2 -3
  308. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  309. package/dist/elements/Table/index.css +2 -0
  310. package/dist/elements/TableSection/index.css +1 -1
  311. package/dist/elements/Tabs/index.css +1 -0
  312. package/dist/elements/Thumbnail/index.css +1 -0
  313. package/dist/elements/Thumbnail/index.d.ts +1 -1
  314. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  315. package/dist/elements/Thumbnail/index.js.map +1 -1
  316. package/dist/elements/TimezonePicker/index.css +1 -0
  317. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  318. package/dist/elements/TimezonePicker/index.js +5 -1
  319. package/dist/elements/TimezonePicker/index.js.map +1 -1
  320. package/dist/elements/Tooltip/index.css +22 -34
  321. package/dist/elements/Tooltip/index.d.ts +11 -3
  322. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  323. package/dist/elements/Tooltip/index.js +151 -85
  324. package/dist/elements/Tooltip/index.js.map +1 -1
  325. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  326. package/dist/elements/UnpublishButton/index.js +3 -4
  327. package/dist/elements/UnpublishButton/index.js.map +1 -1
  328. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  329. package/dist/elements/UnpublishMany/DrawerContent.js +2 -3
  330. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  331. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +1 -1
  332. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -1
  333. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  334. package/dist/elements/Upload/index.css +39 -37
  335. package/dist/elements/Upload/index.d.ts.map +1 -1
  336. package/dist/elements/Upload/index.js +37 -99
  337. package/dist/elements/Upload/index.js.map +1 -1
  338. package/dist/elements/Upload/usePasteFromClipboard.d.ts +14 -0
  339. package/dist/elements/Upload/usePasteFromClipboard.d.ts.map +1 -0
  340. package/dist/elements/Upload/usePasteFromClipboard.js +93 -0
  341. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -0
  342. package/dist/elements/Upload/useUploadFromUrl.d.ts +20 -0
  343. package/dist/elements/Upload/useUploadFromUrl.d.ts.map +1 -0
  344. package/dist/elements/Upload/useUploadFromUrl.js +201 -0
  345. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -0
  346. package/dist/elements/UploadDropzoneContent/index.css +31 -0
  347. package/dist/elements/UploadDropzoneContent/index.d.ts +17 -0
  348. package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -0
  349. package/dist/elements/UploadDropzoneContent/index.js +62 -0
  350. package/dist/elements/UploadDropzoneContent/index.js.map +1 -0
  351. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +1 -1
  352. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  353. package/dist/elements/WhereBuilder/Condition/index.css +1 -0
  354. package/dist/elements/WhereBuilder/conditionValue.d.ts +32 -0
  355. package/dist/elements/WhereBuilder/conditionValue.d.ts.map +1 -0
  356. package/dist/elements/WhereBuilder/conditionValue.js +32 -0
  357. package/dist/elements/WhereBuilder/conditionValue.js.map +1 -0
  358. package/dist/elements/WhereBuilder/index.css +2 -0
  359. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  360. package/dist/elements/WhereBuilder/index.js +15 -4
  361. package/dist/elements/WhereBuilder/index.js.map +1 -1
  362. package/dist/exports/client/index.d.ts +7 -1
  363. package/dist/exports/client/index.d.ts.map +1 -1
  364. package/dist/exports/client/index.js +1 -1
  365. package/dist/exports/client/index.js.map +3 -3
  366. package/dist/exports/layouts.d.ts +1 -0
  367. package/dist/exports/layouts.d.ts.map +1 -1
  368. package/dist/exports/layouts.js +1 -0
  369. package/dist/exports/layouts.js.map +1 -1
  370. package/dist/exports/rsc/index.d.ts +2 -0
  371. package/dist/exports/rsc/index.d.ts.map +1 -1
  372. package/dist/exports/rsc/index.js +2 -0
  373. package/dist/exports/rsc/index.js.map +1 -1
  374. package/dist/exports/shared/index.d.ts +1 -0
  375. package/dist/exports/shared/index.d.ts.map +1 -1
  376. package/dist/exports/shared/index.js +2 -2
  377. package/dist/exports/shared/index.js.map +4 -4
  378. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  379. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  380. package/dist/fields/Array/ArrayRow.js +99 -160
  381. package/dist/fields/Array/ArrayRow.js.map +1 -1
  382. package/dist/fields/Array/index.css +1 -0
  383. package/dist/fields/Array/index.d.ts.map +1 -1
  384. package/dist/fields/Array/index.js +40 -13
  385. package/dist/fields/Array/index.js.map +1 -1
  386. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  387. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  388. package/dist/fields/Blocks/BlockRow.js +136 -195
  389. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  390. package/dist/fields/Blocks/RowActions.d.ts +3 -0
  391. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  392. package/dist/fields/Blocks/RowActions.js +26 -20
  393. package/dist/fields/Blocks/RowActions.js.map +1 -1
  394. package/dist/fields/Blocks/index.css +1 -0
  395. package/dist/fields/Blocks/index.d.ts.map +1 -1
  396. package/dist/fields/Blocks/index.js +40 -13
  397. package/dist/fields/Blocks/index.js.map +1 -1
  398. package/dist/fields/Checkbox/Input.d.ts +4 -2
  399. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  400. package/dist/fields/Checkbox/Input.js +32 -26
  401. package/dist/fields/Checkbox/Input.js.map +1 -1
  402. package/dist/fields/Checkbox/index.css +62 -117
  403. package/dist/fields/FieldDescription/index.css +5 -0
  404. package/dist/fields/FieldError/index.css +0 -9
  405. package/dist/fields/FieldError/index.d.ts.map +1 -1
  406. package/dist/fields/FieldError/index.js +19 -9
  407. package/dist/fields/FieldError/index.js.map +1 -1
  408. package/dist/fields/FieldLabel/index.css +22 -28
  409. package/dist/fields/FieldLabel/index.js +7 -8
  410. package/dist/fields/FieldLabel/index.js.map +1 -1
  411. package/dist/fields/Group/index.css +11 -4
  412. package/dist/fields/Join/index.css +9 -0
  413. package/dist/fields/Join/index.d.ts.map +1 -1
  414. package/dist/fields/Join/index.js +13 -9
  415. package/dist/fields/Join/index.js.map +1 -1
  416. package/dist/fields/RadioGroup/Radio/index.css +42 -19
  417. package/dist/fields/RadioGroup/index.css +2 -27
  418. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  419. package/dist/fields/Relationship/Input.js +34 -17
  420. package/dist/fields/Relationship/Input.js.map +1 -1
  421. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  422. package/dist/fields/Row/index.css +2 -0
  423. package/dist/fields/Slug/index.css +0 -1
  424. package/dist/fields/Slug/index.d.ts.map +1 -1
  425. package/dist/fields/Slug/index.js +74 -111
  426. package/dist/fields/Slug/index.js.map +1 -1
  427. package/dist/fields/Tabs/index.css +9 -0
  428. package/dist/fields/Textarea/index.css +1 -1
  429. package/dist/fields/Upload/Input.d.ts.map +1 -1
  430. package/dist/fields/Upload/Input.js +46 -19
  431. package/dist/fields/Upload/Input.js.map +1 -1
  432. package/dist/fields/Upload/index.css +19 -4
  433. package/dist/fields/shared/index.d.ts +1 -1
  434. package/dist/fields/shared/index.d.ts.map +1 -1
  435. package/dist/fields/shared/index.js.map +1 -1
  436. package/dist/forms/Form/context.d.ts +3 -1
  437. package/dist/forms/Form/context.d.ts.map +1 -1
  438. package/dist/forms/Form/context.js +3 -1
  439. package/dist/forms/Form/context.js.map +1 -1
  440. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  441. package/dist/forms/Form/fieldReducer.js +3 -1
  442. package/dist/forms/Form/fieldReducer.js.map +1 -1
  443. package/dist/forms/Form/index.d.ts.map +1 -1
  444. package/dist/forms/Form/index.js +27 -22
  445. package/dist/forms/Form/index.js.map +1 -1
  446. package/dist/forms/Form/types.d.ts +1 -1
  447. package/dist/forms/Form/types.d.ts.map +1 -1
  448. package/dist/forms/Form/types.js.map +1 -1
  449. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  450. package/dist/forms/NullifyField/index.js +2 -3
  451. package/dist/forms/NullifyField/index.js.map +1 -1
  452. package/dist/forms/RenderFields/index.css +10 -2
  453. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  454. package/dist/forms/WatchChildErrors/index.js +2 -2
  455. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  456. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  457. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +2 -1
  458. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  459. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  460. package/dist/forms/fieldSchemasToFormState/renderField.js +4 -5
  461. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  462. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.d.ts +12 -0
  463. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.d.ts.map +1 -0
  464. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.js +42 -0
  465. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.js.map +1 -0
  466. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts +8 -6
  467. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +1 -1
  468. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +22 -9
  469. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  470. package/dist/forms/fieldSchemasToFormState/types.d.ts +1 -0
  471. package/dist/forms/fieldSchemasToFormState/types.d.ts.map +1 -1
  472. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  473. package/dist/hooks/useControllableState.js +3 -3
  474. package/dist/hooks/useControllableState.js.map +1 -1
  475. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  476. package/dist/hooks/usePayloadAPI.js +2 -3
  477. package/dist/hooks/usePayloadAPI.js.map +1 -1
  478. package/dist/icons/Edit/index.d.ts +0 -1
  479. package/dist/icons/Edit/index.d.ts.map +1 -1
  480. package/dist/icons/Edit/index.js +4 -4
  481. package/dist/icons/Edit/index.js.map +1 -1
  482. package/dist/layouts/Root/index.d.ts +1 -1
  483. package/dist/layouts/Root/index.d.ts.map +1 -1
  484. package/dist/layouts/Root/index.js +30 -7
  485. package/dist/layouts/Root/index.js.map +1 -1
  486. package/dist/layouts/Root/viewport.d.ts +1 -0
  487. package/dist/layouts/Root/viewport.d.ts.map +1 -1
  488. package/dist/layouts/Root/viewport.js +4 -1
  489. package/dist/layouts/Root/viewport.js.map +1 -1
  490. package/dist/providers/Actions/index.d.ts +1 -0
  491. package/dist/providers/Actions/index.d.ts.map +1 -1
  492. package/dist/providers/Actions/index.js +43 -11
  493. package/dist/providers/Actions/index.js.map +1 -1
  494. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  495. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  496. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  497. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  498. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  499. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  500. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  501. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  502. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  503. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  504. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  505. package/dist/providers/Auth/authSessionRequests.js +119 -0
  506. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  507. package/dist/providers/Auth/index.d.ts +2 -56
  508. package/dist/providers/Auth/index.d.ts.map +1 -1
  509. package/dist/providers/Auth/index.js +283 -135
  510. package/dist/providers/Auth/index.js.map +1 -1
  511. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  512. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  513. package/dist/providers/Auth/sessionActivity.js +49 -0
  514. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  515. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  516. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  517. package/dist/providers/Auth/sessionTiming.js +18 -0
  518. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  519. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  520. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  521. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  522. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  523. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  524. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  525. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  526. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  527. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  528. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  529. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  530. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  531. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  532. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  533. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  534. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  535. package/dist/providers/Auth/types.d.ts +65 -0
  536. package/dist/providers/Auth/types.d.ts.map +1 -0
  537. package/dist/providers/Auth/types.js +2 -0
  538. package/dist/providers/Auth/types.js.map +1 -0
  539. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  540. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  541. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  542. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  543. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  544. package/dist/providers/DocumentInfo/index.js +32 -22
  545. package/dist/providers/DocumentInfo/index.js.map +1 -1
  546. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  547. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  548. package/dist/providers/DocumentTitle/index.js +2 -0
  549. package/dist/providers/DocumentTitle/index.js.map +1 -1
  550. package/dist/providers/Embed/index.d.ts +24 -0
  551. package/dist/providers/Embed/index.d.ts.map +1 -0
  552. package/dist/providers/Embed/index.js +105 -0
  553. package/dist/providers/Embed/index.js.map +1 -0
  554. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  555. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  556. package/dist/providers/FormErrorHandler/index.js +6 -0
  557. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  558. package/dist/providers/LivePreview/index.d.ts.map +1 -1
  559. package/dist/providers/LivePreview/index.js +13 -6
  560. package/dist/providers/LivePreview/index.js.map +1 -1
  561. package/dist/providers/Locale/index.d.ts +1 -5
  562. package/dist/providers/Locale/index.d.ts.map +1 -1
  563. package/dist/providers/Locale/index.js +64 -138
  564. package/dist/providers/Locale/index.js.map +1 -1
  565. package/dist/providers/Root/index.d.ts +6 -1
  566. package/dist/providers/Root/index.d.ts.map +1 -1
  567. package/dist/providers/Root/index.js +49 -31
  568. package/dist/providers/Root/index.js.map +1 -1
  569. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  570. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  571. package/dist/providers/RouteTransition/index.d.ts +2 -0
  572. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  573. package/dist/providers/RouteTransition/index.js +42 -14
  574. package/dist/providers/RouteTransition/index.js.map +1 -1
  575. package/dist/providers/Selection/index.d.ts.map +1 -1
  576. package/dist/providers/Selection/index.js +2 -3
  577. package/dist/providers/Selection/index.js.map +1 -1
  578. package/dist/providers/ServerFunctions/index.d.ts +5 -1
  579. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  580. package/dist/providers/ServerFunctions/index.js +15 -0
  581. package/dist/providers/ServerFunctions/index.js.map +1 -1
  582. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  583. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  584. package/dist/providers/SidebarTabs/index.js.map +1 -1
  585. package/dist/providers/TableColumns/buildColumnState/index.js +1 -2
  586. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  587. package/dist/providers/Theme/index.d.ts +25 -1
  588. package/dist/providers/Theme/index.d.ts.map +1 -1
  589. package/dist/providers/Theme/index.js +331 -90
  590. package/dist/providers/Theme/index.js.map +1 -1
  591. package/dist/providers/Theme/shared.d.ts +8 -0
  592. package/dist/providers/Theme/shared.d.ts.map +1 -1
  593. package/dist/providers/Theme/shared.js +6 -0
  594. package/dist/providers/Theme/shared.js.map +1 -1
  595. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  596. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  597. package/dist/providers/UploadHandlers/index.js +102 -42
  598. package/dist/providers/UploadHandlers/index.js.map +1 -1
  599. package/dist/styles.css +208 -30
  600. package/dist/templates/Default/Wrapper/index.css +2 -0
  601. package/dist/templates/Default/index.css +1 -0
  602. package/dist/templates/Default/index.d.ts +1 -0
  603. package/dist/templates/Default/index.d.ts.map +1 -1
  604. package/dist/templates/Default/index.js +2 -0
  605. package/dist/templates/Default/index.js.map +1 -1
  606. package/dist/utilities/buildFormState.d.ts.map +1 -1
  607. package/dist/utilities/buildFormState.js +6 -2
  608. package/dist/utilities/buildFormState.js.map +1 -1
  609. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  610. package/dist/utilities/combineFieldLabel.js +5 -1
  611. package/dist/utilities/combineFieldLabel.js.map +1 -1
  612. package/dist/utilities/formatAbsoluteURL.d.ts +1 -1
  613. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  614. package/dist/utilities/formatAbsoluteURL.js +18 -8
  615. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  616. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  617. package/dist/utilities/formatMetadata.js +0 -5
  618. package/dist/utilities/formatMetadata.js.map +1 -1
  619. package/dist/utilities/generateFieldID.d.ts +1 -1
  620. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  621. package/dist/utilities/generateFieldID.js +2 -2
  622. package/dist/utilities/generateFieldID.js.map +1 -1
  623. package/dist/utilities/getFilesFromClipboard.d.ts +10 -0
  624. package/dist/utilities/getFilesFromClipboard.d.ts.map +1 -0
  625. package/dist/utilities/getFilesFromClipboard.js +49 -0
  626. package/dist/utilities/getFilesFromClipboard.js.map +1 -0
  627. package/dist/utilities/getHasScheduledPublish.d.ts +2 -3
  628. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  629. package/dist/utilities/getHasScheduledPublish.js +2 -5
  630. package/dist/utilities/getHasScheduledPublish.js.map +1 -1
  631. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  632. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  633. package/dist/utilities/getRequestEmbed.js +10 -0
  634. package/dist/utilities/getRequestEmbed.js.map +1 -0
  635. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  636. package/dist/utilities/handleAuthRedirect.js +4 -1
  637. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  638. package/dist/utilities/handleServerFunctions.d.ts +32 -8
  639. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  640. package/dist/utilities/handleServerFunctions.js +21 -39
  641. package/dist/utilities/handleServerFunctions.js.map +1 -1
  642. package/dist/utilities/initReq.d.ts.map +1 -1
  643. package/dist/utilities/initReq.js +40 -5
  644. package/dist/utilities/initReq.js.map +1 -1
  645. package/dist/utilities/isAbsoluteURL.d.ts +3 -0
  646. package/dist/utilities/isAbsoluteURL.d.ts.map +1 -0
  647. package/dist/utilities/isAbsoluteURL.js +15 -0
  648. package/dist/utilities/isAbsoluteURL.js.map +1 -0
  649. package/dist/utilities/isHttpURL.d.ts +3 -0
  650. package/dist/utilities/isHttpURL.d.ts.map +1 -0
  651. package/dist/utilities/isHttpURL.js +12 -0
  652. package/dist/utilities/isHttpURL.js.map +1 -0
  653. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  654. package/dist/utilities/isPathMatchingRoute.js +7 -5
  655. package/dist/utilities/isPathMatchingRoute.js.map +1 -1
  656. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  657. package/dist/utilities/isPublicAdminRoute.js +9 -6
  658. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  659. package/dist/utilities/renderTable.d.ts.map +1 -1
  660. package/dist/utilities/renderTable.js +18 -2
  661. package/dist/utilities/renderTable.js.map +1 -1
  662. package/dist/utilities/schedulePublishHandler.d.ts +8 -1
  663. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  664. package/dist/utilities/schedulePublishHandler.js +72 -5
  665. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  666. package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
  667. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  668. package/dist/utilities/serverFunctionRegistry.js +27 -8
  669. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  670. package/dist/utilities/slugify.d.ts.map +1 -1
  671. package/dist/utilities/slugify.js +52 -6
  672. package/dist/utilities/slugify.js.map +1 -1
  673. package/dist/views/API/index.client.d.ts.map +1 -1
  674. package/dist/views/API/index.client.js +2 -3
  675. package/dist/views/API/index.client.js.map +1 -1
  676. package/dist/views/API/index.css +9 -0
  677. package/dist/views/Account/index.d.ts +1 -1
  678. package/dist/views/Account/index.d.ts.map +1 -1
  679. package/dist/views/Account/index.js +8 -5
  680. package/dist/views/Account/index.js.map +1 -1
  681. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  682. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  683. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  684. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  685. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  686. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  687. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  688. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  689. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  690. package/dist/views/Dashboard/Default/ModularDashboard/index.css +31 -144
  691. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts.map +1 -1
  692. package/dist/views/Dashboard/Default/ModularDashboard/index.js +1 -0
  693. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  694. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  695. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  696. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.d.ts.map +1 -1
  697. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +3 -1
  698. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  699. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.d.ts.map +1 -1
  700. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +12 -10
  701. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  702. package/dist/views/Dashboard/index.d.ts.map +1 -1
  703. package/dist/views/Dashboard/index.js +2 -3
  704. package/dist/views/Dashboard/index.js.map +1 -1
  705. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  706. package/dist/views/Document/handleServerFunction.js +2 -0
  707. package/dist/views/Document/handleServerFunction.js.map +1 -1
  708. package/dist/views/Document/index.d.ts +1 -1
  709. package/dist/views/Document/index.d.ts.map +1 -1
  710. package/dist/views/Document/index.js +10 -6
  711. package/dist/views/Document/index.js.map +1 -1
  712. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  713. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  714. package/dist/views/Document/renderDocumentSlots.js +7 -4
  715. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  716. package/dist/views/Edit/Auth/APIKey.d.ts +1 -1
  717. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  718. package/dist/views/Edit/Auth/APIKey.js +233 -59
  719. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  720. package/dist/views/Edit/Auth/APIKeyGenerationModal.d.ts +12 -0
  721. package/dist/views/Edit/Auth/APIKeyGenerationModal.d.ts.map +1 -0
  722. package/dist/views/Edit/Auth/APIKeyGenerationModal.js +117 -0
  723. package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -0
  724. package/dist/views/Edit/Auth/index.css +91 -0
  725. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  726. package/dist/views/Edit/Auth/index.js +10 -28
  727. package/dist/views/Edit/Auth/index.js.map +1 -1
  728. package/dist/views/Edit/Auth/types.d.ts +3 -1
  729. package/dist/views/Edit/Auth/types.d.ts.map +1 -1
  730. package/dist/views/Edit/Auth/types.js.map +1 -1
  731. package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
  732. package/dist/views/Edit/SetDocumentTitle/index.js +4 -1
  733. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  734. package/dist/views/Edit/index.css +80 -53
  735. package/dist/views/Edit/index.d.ts.map +1 -1
  736. package/dist/views/Edit/index.js +16 -2
  737. package/dist/views/Edit/index.js.map +1 -1
  738. package/dist/views/Edit/useEditViewWidth.d.ts +8 -0
  739. package/dist/views/Edit/useEditViewWidth.d.ts.map +1 -0
  740. package/dist/views/Edit/useEditViewWidth.js +56 -0
  741. package/dist/views/Edit/useEditViewWidth.js.map +1 -0
  742. package/dist/views/ForgotPassword/ForgotPasswordForm/index.css +14 -0
  743. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  744. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +209 -161
  745. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  746. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  747. package/dist/views/ForgotPassword/index.js +2 -11
  748. package/dist/views/ForgotPassword/index.js.map +1 -1
  749. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +1 -0
  750. package/dist/views/HierarchyList/index.css +17 -1
  751. package/dist/views/List/ListHeader/index.css +6 -0
  752. package/dist/views/List/ListHeader/index.d.ts +1 -11
  753. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  754. package/dist/views/List/ListHeader/index.js +3 -9
  755. package/dist/views/List/ListHeader/index.js.map +1 -1
  756. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  757. package/dist/views/List/handleServerFunction.js +3 -1
  758. package/dist/views/List/handleServerFunction.js.map +1 -1
  759. package/dist/views/List/index.client.d.ts.map +1 -1
  760. package/dist/views/List/index.client.js +3 -16
  761. package/dist/views/List/index.client.js.map +1 -1
  762. package/dist/views/List/index.css +20 -1
  763. package/dist/views/List/index.d.ts.map +1 -1
  764. package/dist/views/List/index.js +6 -1
  765. package/dist/views/List/index.js.map +1 -1
  766. package/dist/views/Logout/index.d.ts.map +1 -1
  767. package/dist/views/Logout/index.js +11 -0
  768. package/dist/views/Logout/index.js.map +1 -1
  769. package/dist/views/NotFound/client.d.ts +2 -0
  770. package/dist/views/NotFound/client.d.ts.map +1 -0
  771. package/dist/views/NotFound/client.js +4 -0
  772. package/dist/views/NotFound/client.js.map +1 -0
  773. package/dist/views/NotFound/page.d.ts.map +1 -1
  774. package/dist/views/NotFound/page.js +4 -3
  775. package/dist/views/NotFound/page.js.map +1 -1
  776. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  777. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  778. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  779. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  780. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  781. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  782. package/dist/views/Root/index.d.ts +12 -1
  783. package/dist/views/Root/index.d.ts.map +1 -1
  784. package/dist/views/Root/index.js +42 -25
  785. package/dist/views/Root/index.js.map +1 -1
  786. package/dist/views/Verify/index.d.ts +1 -1
  787. package/dist/views/Verify/index.d.ts.map +1 -1
  788. package/dist/views/Verify/index.js +4 -4
  789. package/dist/views/Verify/index.js.map +1 -1
  790. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  791. package/dist/views/Version/Default/SetStepNav.js +10 -13
  792. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  793. package/dist/views/Version/Default/index.css +29 -9
  794. package/dist/views/Version/Default/index.d.ts.map +1 -1
  795. package/dist/views/Version/Default/index.js +16 -13
  796. package/dist/views/Version/Default/index.js.map +1 -1
  797. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +1 -0
  798. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  799. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +56 -50
  800. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  801. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  802. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +41 -27
  803. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  804. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.css +8 -0
  805. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  806. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +10 -0
  807. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  808. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +1 -0
  809. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +1 -0
  810. package/dist/views/Version/RenderFieldsToDiff/index.css +2 -0
  811. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  812. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +33 -1
  813. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  814. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts +8 -2
  815. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  816. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +17 -19
  817. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  818. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  819. package/dist/views/Version/Restore/index.js +9 -6
  820. package/dist/views/Version/Restore/index.js.map +1 -1
  821. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
  822. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.d.ts.map +1 -1
  823. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js +2 -3
  824. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  825. package/dist/views/Versions/VersionPillLabel/index.css +1 -0
  826. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
  827. package/dist/views/Versions/index.css +7 -0
  828. package/dist/widgets/CollectionCards/index.client.js +1 -1
  829. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  830. package/dist/widgets/CollectionCards/index.css +40 -35
  831. package/dist/widgets/CollectionCards/index.js +1 -1
  832. package/dist/widgets/CollectionCards/index.js.map +1 -1
  833. package/dist/widgets/RecentlyViewed/DocumentActivity/index.css +184 -0
  834. package/dist/widgets/RecentlyViewed/DocumentActivity/index.d.ts +5 -0
  835. package/dist/widgets/RecentlyViewed/DocumentActivity/index.d.ts.map +1 -0
  836. package/dist/widgets/RecentlyViewed/DocumentActivity/index.js +225 -0
  837. package/dist/widgets/RecentlyViewed/DocumentActivity/index.js.map +1 -0
  838. package/dist/widgets/RecentlyViewed/DocumentItem/index.css +180 -0
  839. package/dist/widgets/RecentlyViewed/DocumentItem/index.d.ts +11 -0
  840. package/dist/widgets/RecentlyViewed/DocumentItem/index.d.ts.map +1 -0
  841. package/dist/widgets/RecentlyViewed/DocumentItem/index.js +104 -0
  842. package/dist/widgets/RecentlyViewed/DocumentItem/index.js.map +1 -0
  843. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.d.ts +10 -0
  844. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.d.ts.map +1 -0
  845. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.js +85 -0
  846. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.js.map +1 -0
  847. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.d.ts +7 -0
  848. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.d.ts.map +1 -0
  849. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.js +206 -0
  850. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.js.map +1 -0
  851. package/dist/widgets/RecentlyViewed/index.d.ts +3 -5
  852. package/dist/widgets/RecentlyViewed/index.d.ts.map +1 -1
  853. package/dist/widgets/RecentlyViewed/index.js +10 -140
  854. package/dist/widgets/RecentlyViewed/index.js.map +1 -1
  855. package/dist/widgets/RecentlyViewed/shared.d.ts +38 -0
  856. package/dist/widgets/RecentlyViewed/shared.d.ts.map +1 -0
  857. package/dist/widgets/RecentlyViewed/shared.js +70 -0
  858. package/dist/widgets/RecentlyViewed/shared.js.map +1 -0
  859. package/dist/widgets/UploadDropzone/index.client.d.ts +7 -0
  860. package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -0
  861. package/dist/widgets/UploadDropzone/index.client.js +134 -0
  862. package/dist/widgets/UploadDropzone/index.client.js.map +1 -0
  863. package/dist/widgets/UploadDropzone/index.css +50 -0
  864. package/dist/widgets/UploadDropzone/index.d.ts +8 -0
  865. package/dist/widgets/UploadDropzone/index.d.ts.map +1 -0
  866. package/dist/widgets/UploadDropzone/index.js +29 -0
  867. package/dist/widgets/UploadDropzone/index.js.map +1 -0
  868. package/dist/widgets/Welcome/index.css +13 -0
  869. package/dist/widgets/Welcome/index.d.ts +5 -0
  870. package/dist/widgets/Welcome/index.d.ts.map +1 -0
  871. package/dist/widgets/Welcome/index.js +26 -0
  872. package/dist/widgets/Welcome/index.js.map +1 -0
  873. package/dist/widgets/WidgetIcon/assets/images.svg +3 -0
  874. package/dist/widgets/WidgetIcon/assets/pin-solid.svg +3 -0
  875. package/dist/widgets/WidgetIcon/assets/pin.svg +3 -0
  876. package/dist/widgets/WidgetIcon/assets/table.svg +3 -0
  877. package/dist/widgets/WidgetIcon/index.css +23 -0
  878. package/dist/widgets/WidgetIcon/index.d.ts +6 -0
  879. package/dist/widgets/WidgetIcon/index.d.ts.map +1 -0
  880. package/dist/widgets/WidgetIcon/index.js +10 -0
  881. package/dist/widgets/WidgetIcon/index.js.map +1 -0
  882. package/package.json +14 -12
  883. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +0 -541
  884. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +0 -1
  885. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js +0 -87
  886. package/dist/elements/ColumnSelection/matchesColumnSearch.spec.js.map +0 -1
  887. package/dist/elements/CommandPalette/buildActions.spec.js +0 -158
  888. package/dist/elements/CommandPalette/buildActions.spec.js.map +0 -1
  889. package/dist/elements/CommandPalette/highlightLabel.spec.js +0 -78
  890. package/dist/elements/CommandPalette/highlightLabel.spec.js.map +0 -1
  891. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  892. package/dist/elements/Toasts/fieldErrors.spec.js +0 -46
  893. package/dist/elements/Toasts/fieldErrors.spec.js.map +0 -1
  894. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.spec.js +0 -152
  895. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.spec.js.map +0 -1
  896. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.d.ts +0 -2
  897. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.d.ts.map +0 -1
  898. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +0 -67
  899. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +0 -1
  900. package/dist/layouts/Root/index.spec.js +0 -20
  901. package/dist/layouts/Root/index.spec.js.map +0 -1
  902. package/dist/scss/app.scss +0 -183
  903. package/dist/scss/colors.scss +0 -191
  904. package/dist/scss/custom.css +0 -1
  905. package/dist/scss/queries.scss +0 -27
  906. package/dist/scss/styles.scss +0 -9
  907. package/dist/scss/svg.scss +0 -10
  908. package/dist/scss/toastify.scss +0 -61
  909. package/dist/scss/vars.scss +0 -192
  910. package/dist/scss/z-index.scss +0 -9
  911. package/dist/utilities/appendCacheTag.spec.js +0 -34
  912. package/dist/utilities/appendCacheTag.spec.js.map +0 -1
  913. package/dist/utilities/formatMetadata.spec.js +0 -83
  914. package/dist/utilities/formatMetadata.spec.js.map +0 -1
  915. package/dist/utilities/fuzzyMatch.spec.js +0 -38
  916. package/dist/utilities/fuzzyMatch.spec.js.map +0 -1
  917. package/dist/utilities/isCustomAdminView.spec.js +0 -90
  918. package/dist/utilities/isCustomAdminView.spec.js.map +0 -1
  919. package/dist/utilities/isPathMatchingRoute.spec.js +0 -178
  920. package/dist/utilities/isPathMatchingRoute.spec.js.map +0 -1
  921. package/dist/utilities/normalizeRelationshipValue.spec.js +0 -373
  922. package/dist/utilities/normalizeRelationshipValue.spec.js.map +0 -1
  923. package/dist/utilities/recentlyViewed.spec.js +0 -92
  924. package/dist/utilities/recentlyViewed.spec.js.map +0 -1
  925. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js +0 -168
  926. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js.map +0 -1
  927. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +0 -861
  928. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +0 -1
  929. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +0 -47
  930. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +0 -1
  931. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +0 -135
  932. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +0 -1
  933. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +0 -100
  934. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","React","useState","useConfig","useTranslation","Button","DocumentDrawer","Popup","PopupList","baseClass","CreateDocumentButton","t0","$","buttonStyle","t1","collections","drawerSlug","label","onSave","size","t2","undefined","config","i18n","t","closeModal","openModal","selectedCollection","setSelectedCollection","length","t3","option","collectionConfig","find","slug","collectionSlug","labels","singular","getCollectionLabel","t4","collection","handleSelect","t5","args","handleSave","collection_0","t6","buttonLabel","t7","_jsxs","_Fragment","children","_jsx","className","margin","onClick","initialData","redirectAfterCreate","buttonLabel_0","collection_1","button","icon","horizontalAlign","ButtonGroup","map"],"sources":["../../../src/elements/CreateDocumentButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useState } from 'react'\n\nimport type { Props as ButtonProps } from '../Button/types.js'\nimport type { DocumentDrawerContextProps } from '../DocumentDrawer/Provider.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { DocumentDrawer } from '../DocumentDrawer/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\n\nconst baseClass = 'create-document-button'\n\nexport type CollectionOption = {\n collectionSlug: string\n /** Initial data to populate the form when creating */\n initialData?: Record<string, unknown>\n /** Optional label override (defaults to collection's singular label) */\n label?: string\n}\n\nexport type CreateDocumentButtonProps = {\n /** Button style */\n buttonStyle?: ButtonProps['buttonStyle']\n /** Collections available for creation */\n collections: CollectionOption[]\n /** Unique slug for the drawer modal */\n drawerSlug: string\n /** Custom button label (defaults to \"Create New\" for multiple, \"Create New {label}\" for single) */\n label?: string\n /** Called when a document is successfully saved */\n onSave?: DocumentDrawerContextProps['onSave']\n /** Button size */\n size?: ButtonProps['size']\n}\n\nexport function CreateDocumentButton({\n buttonStyle = 'pill',\n collections,\n drawerSlug,\n label,\n onSave,\n size = 'medium',\n}: CreateDocumentButtonProps) {\n const { config } = useConfig()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n\n const [selectedCollection, setSelectedCollection] = useState<CollectionOption | null>(null)\n\n if (collections.length === 0) {\n return null\n }\n\n const getCollectionLabel = (option: CollectionOption) => {\n if (option.label) {\n return option.label\n }\n const collectionConfig = config.collections.find((c) => c.slug === option.collectionSlug)\n return getTranslation(collectionConfig?.labels?.singular, i18n) || option.collectionSlug\n }\n\n const handleSelect = (collection: CollectionOption) => {\n setSelectedCollection(collection)\n openModal(drawerSlug)\n }\n\n const handleSave: DocumentDrawerContextProps['onSave'] = (args) => {\n closeModal(drawerSlug)\n return onSave?.(args)\n }\n\n // Single collection - render simple button\n if (collections.length === 1) {\n const collection = collections[0]\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Button\n buttonStyle={buttonStyle}\n className={baseClass}\n margin={false}\n onClick={() => handleSelect(collection)}\n size={size}\n >\n {buttonLabel}\n </Button>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n }\n\n // Multiple collections - render dropdown\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Popup\n button={\n <Button\n buttonStyle={buttonStyle}\n className={`${baseClass}__popup-button`}\n icon=\"chevron\"\n size={size}\n >\n {buttonLabel}\n </Button>\n }\n buttonType=\"custom\"\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n >\n <PopupList.ButtonGroup>\n {collections.map((collection) => (\n <PopupList.Button\n key={collection.collectionSlug}\n onClick={() => handleSelect(collection)}\n >\n {getCollectionLabel(collection)}\n </PopupList.Button>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","hasAutosaveEnabled","React","useState","useConfig","useTranslation","Button","DocumentDrawer","Popup","PopupList","baseClass","CreateDocumentButton","t0","$","buttonStyle","t1","collections","drawerSlug","label","onSave","size","t2","undefined","config","i18n","t","closeModal","openModal","selectedCollection","setSelectedCollection","length","t3","option","collectionConfig","find","slug","collectionSlug","labels","singular","getCollectionLabel","t4","collection","handleSelect","t5","args","handleSave","collection_0","t6","buttonLabel","t7","_jsxs","_Fragment","children","_jsx","className","margin","onClick","initialData","redirectAfterCreate","buttonLabel_0","collection_1","button","icon","horizontalAlign","ButtonGroup","map"],"sources":["../../../src/elements/CreateDocumentButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { hasAutosaveEnabled } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport type { Props as ButtonProps } from '../Button/types.js'\nimport type { DocumentDrawerContextProps } from '../DocumentDrawer/Provider.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { DocumentDrawer } from '../DocumentDrawer/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\n\nconst baseClass = 'create-document-button'\n\nexport type CollectionOption = {\n collectionSlug: string\n /** Initial data to populate the form when creating */\n initialData?: Record<string, unknown>\n /** Optional label override (defaults to collection's singular label) */\n label?: string\n}\n\nexport type CreateDocumentButtonProps = {\n /** Button style */\n buttonStyle?: ButtonProps['buttonStyle']\n /** Collections available for creation */\n collections: CollectionOption[]\n /** Unique slug for the drawer modal */\n drawerSlug: string\n /** Custom button label (defaults to \"Create New\" for multiple, \"Create New {label}\" for single) */\n label?: string\n /** Called when a document is successfully saved */\n onSave?: DocumentDrawerContextProps['onSave']\n /** Button size */\n size?: ButtonProps['size']\n}\n\nexport function CreateDocumentButton({\n buttonStyle = 'pill',\n collections,\n drawerSlug,\n label,\n onSave,\n size = 'medium',\n}: CreateDocumentButtonProps) {\n const { config } = useConfig()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n\n const [selectedCollection, setSelectedCollection] = useState<CollectionOption | null>(null)\n\n if (collections.length === 0) {\n return null\n }\n\n const getCollectionLabel = (option: CollectionOption) => {\n if (option.label) {\n return option.label\n }\n const collectionConfig = config.collections.find((c) => c.slug === option.collectionSlug)\n return getTranslation(collectionConfig?.labels?.singular, i18n) || option.collectionSlug\n }\n\n const handleSelect = (collection: CollectionOption) => {\n setSelectedCollection(collection)\n openModal(drawerSlug)\n }\n\n const handleSave: DocumentDrawerContextProps['onSave'] = (args) => {\n if (!hasAutosaveEnabled(args.collectionConfig)) {\n closeModal(drawerSlug)\n }\n\n return onSave?.(args)\n }\n\n // Single collection - render simple button\n if (collections.length === 1) {\n const collection = collections[0]\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Button\n buttonStyle={buttonStyle}\n className={baseClass}\n margin={false}\n onClick={() => handleSelect(collection)}\n size={size}\n >\n {buttonLabel}\n </Button>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n }\n\n // Multiple collections - render dropdown\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Popup\n button={\n <Button\n buttonStyle={buttonStyle}\n className={`${baseClass}__popup-button`}\n icon=\"chevron\"\n size={size}\n >\n {buttonLabel}\n </Button>\n }\n buttonType=\"custom\"\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n >\n <PopupList.ButtonGroup>\n {collections.map((collection) => (\n <PopupList.Button\n key={collection.collectionSlug}\n onClick={() => handleSelect(collection)}\n >\n {getCollectionLabel(collection)}\n </PopupList.Button>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/elements/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMvC,OAAO,aAAa,CAAA;AAIpB,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA2H/B,CAAA;eAGc,UAAU"}
1
+ {"version":3,"file":"DatePicker.d.ts","sourceRoot":"","sources":["../../../src/elements/DatePicker/DatePicker.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMvC,OAAO,aAAa,CAAA;AAIpB,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4H/B,CAAA;eAGc,UAAU"}
@@ -88,6 +88,7 @@ const DatePicker = props => {
88
88
  onChange,
89
89
  placeholderText,
90
90
  popperPlacement: "bottom-start",
91
+ portalId: "date-time-picker-portal",
91
92
  previousMonthButtonLabel: _jsx(ChevronIcon, {
92
93
  direction: "left"
93
94
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","names":["c","_c","React","ReactDatePickerDefaultImport","registerLocale","setDefaultLocale","ReactDatePicker","default","CalendarIcon","ChevronIcon","useTranslation","getFormattedLocale","baseClass","DatePicker","props","$","id","displayFormat","customDisplayFormat","maxDate","maxTime","minDate","minTime","monthsToShow","t0","onChange","onChangeFromProps","overrides","pickerAppearance","t1","placeholder","placeholderText","readOnly","timeFormat","t2","timeIntervals","t3","value","undefined","i18n","dateFormat","incomingDate","newDate","Date","includes","tzOffset","getTimezoneOffset","setHours","setMilliseconds","dateTimePickerProps","customInputRef","disabled","monthsShown","Math","min","nextMonthButtonLabel","_jsx","direction","popperPlacement","previousMonthButtonLabel","selected","shouldCloseOnSelect","showMonthYearPicker","showPopperArrow","showTimeSelect","showTimeSelectOnly","t4","t5","filter","Boolean","classes","join","t6","t7","dateFNS","language","datepickerLocale","t8","console","warn","useEffect","className","children","_jsxs","dropdownMode","showMonthDropdown","showYearDropdown"],"sources":["../../../src/elements/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client'\nimport type { DatePickerProps } from 'react-datepicker'\n\nimport React from 'react'\nimport ReactDatePickerDefaultImport, { registerLocale, setDefaultLocale } from 'react-datepicker'\nconst ReactDatePicker =\n 'default' in ReactDatePickerDefaultImport\n ? ReactDatePickerDefaultImport.default\n : ReactDatePickerDefaultImport\n\nimport type { Props } from './types.js'\n\nimport { CalendarIcon } from '../../icons/Calendar/index.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { getFormattedLocale } from './getFormattedLocale.js'\nimport './index.css'\n\nconst baseClass = 'date-time-picker'\n\nconst DatePicker: React.FC<Props> = (props) => {\n const {\n id,\n displayFormat: customDisplayFormat,\n maxDate,\n maxTime,\n minDate,\n minTime,\n monthsToShow = 1,\n onChange: onChangeFromProps,\n overrides,\n pickerAppearance = 'default',\n placeholder: placeholderText,\n readOnly,\n timeFormat = 'h:mm aa',\n timeIntervals = 30,\n value,\n } = props\n\n // Use the user's AdminUI language preference for the locale\n const { i18n } = useTranslation()\n\n let dateFormat = customDisplayFormat\n\n if (!customDisplayFormat) {\n // when no displayFormat is provided, determine format based on the picker appearance\n if (pickerAppearance === 'default') {\n dateFormat = 'MM/dd/yyyy'\n } else if (pickerAppearance === 'dayAndTime') {\n dateFormat = 'MMM d, yyy h:mm a'\n } else if (pickerAppearance === 'timeOnly') {\n dateFormat = 'h:mm a'\n } else if (pickerAppearance === 'dayOnly') {\n dateFormat = 'MMM dd'\n } else if (pickerAppearance === 'monthOnly') {\n dateFormat = 'MMMM'\n }\n }\n\n const onChange: Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never }\n >['onChange'] = (incomingDate) => {\n const newDate = incomingDate\n if (newDate instanceof Date && ['dayOnly', 'default', 'monthOnly'].includes(pickerAppearance)) {\n const tzOffset = incomingDate.getTimezoneOffset() / 60\n newDate.setHours(12 - tzOffset, 0)\n }\n\n if (newDate instanceof Date && !dateFormat.includes('SSS')) {\n // Unless the dateFormat includes milliseconds, set milliseconds to 0\n // This is to ensure that the timestamp is consistent with the displayFormat\n newDate.setMilliseconds(0)\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newDate)\n }\n }\n\n const dateTimePickerProps: Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never }\n > = {\n customInputRef: 'ref',\n dateFormat,\n disabled: readOnly,\n maxDate,\n maxTime,\n minDate,\n minTime,\n monthsShown: Math.min(2, monthsToShow),\n nextMonthButtonLabel: <ChevronIcon direction=\"right\" />,\n nextYearButtonLabel: '›',\n onChange,\n placeholderText,\n popperPlacement: 'bottom-start',\n previousMonthButtonLabel: <ChevronIcon direction=\"left\" />,\n previousYearButtonLabel: '‹',\n selected: value && new Date(value),\n shouldCloseOnSelect: false,\n showMonthYearPicker: pickerAppearance === 'monthOnly',\n showPopperArrow: false,\n showTimeSelect: pickerAppearance === 'dayAndTime' || pickerAppearance === 'timeOnly',\n showTimeSelectOnly: pickerAppearance === 'timeOnly',\n timeFormat,\n timeIntervals,\n ...(overrides as Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never } // to satisfy TypeScript. Overrides can enable selectsMultiple or selectsRange but then it's up to the user to ensure they pass in the correct onChange\n >),\n }\n\n const classes = [baseClass, `${baseClass}__appearance--${pickerAppearance}`]\n .filter(Boolean)\n .join(' ')\n\n React.useEffect(() => {\n if (i18n.dateFNS) {\n try {\n const datepickerLocale = getFormattedLocale(i18n.language)\n registerLocale(datepickerLocale, i18n.dateFNS)\n setDefaultLocale(datepickerLocale)\n } catch (_error) {\n // eslint-disable-next-line no-console\n console.warn(`Could not find DatePicker locale for ${i18n.language}`)\n }\n }\n }, [i18n.language, i18n.dateFNS])\n\n return (\n <div className={classes} id={id}>\n <div className={`${baseClass}__input-wrapper`}>\n <ReactDatePicker\n {...dateTimePickerProps}\n dropdownMode=\"select\"\n showMonthDropdown={pickerAppearance !== 'monthOnly'}\n showYearDropdown={pickerAppearance !== 'monthOnly'}\n />\n <CalendarIcon />\n </div>\n </div>\n )\n}\n\n// eslint-disable-next-line no-restricted-exports\nexport default DatePicker\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DatePicker.js","names":["c","_c","React","ReactDatePickerDefaultImport","registerLocale","setDefaultLocale","ReactDatePicker","default","CalendarIcon","ChevronIcon","useTranslation","getFormattedLocale","baseClass","DatePicker","props","$","id","displayFormat","customDisplayFormat","maxDate","maxTime","minDate","minTime","monthsToShow","t0","onChange","onChangeFromProps","overrides","pickerAppearance","t1","placeholder","placeholderText","readOnly","timeFormat","t2","timeIntervals","t3","value","undefined","i18n","dateFormat","incomingDate","newDate","Date","includes","tzOffset","getTimezoneOffset","setHours","setMilliseconds","dateTimePickerProps","customInputRef","disabled","monthsShown","Math","min","nextMonthButtonLabel","_jsx","direction","popperPlacement","portalId","previousMonthButtonLabel","selected","shouldCloseOnSelect","showMonthYearPicker","showPopperArrow","showTimeSelect","showTimeSelectOnly","t4","t5","filter","Boolean","classes","join","t6","t7","dateFNS","language","datepickerLocale","t8","console","warn","useEffect","className","children","_jsxs","dropdownMode","showMonthDropdown","showYearDropdown"],"sources":["../../../src/elements/DatePicker/DatePicker.tsx"],"sourcesContent":["'use client'\nimport type { DatePickerProps } from 'react-datepicker'\n\nimport React from 'react'\nimport ReactDatePickerDefaultImport, { registerLocale, setDefaultLocale } from 'react-datepicker'\nconst ReactDatePicker =\n 'default' in ReactDatePickerDefaultImport\n ? ReactDatePickerDefaultImport.default\n : ReactDatePickerDefaultImport\n\nimport type { Props } from './types.js'\n\nimport { CalendarIcon } from '../../icons/Calendar/index.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { getFormattedLocale } from './getFormattedLocale.js'\nimport './index.css'\n\nconst baseClass = 'date-time-picker'\n\nconst DatePicker: React.FC<Props> = (props) => {\n const {\n id,\n displayFormat: customDisplayFormat,\n maxDate,\n maxTime,\n minDate,\n minTime,\n monthsToShow = 1,\n onChange: onChangeFromProps,\n overrides,\n pickerAppearance = 'default',\n placeholder: placeholderText,\n readOnly,\n timeFormat = 'h:mm aa',\n timeIntervals = 30,\n value,\n } = props\n\n // Use the user's AdminUI language preference for the locale\n const { i18n } = useTranslation()\n\n let dateFormat = customDisplayFormat\n\n if (!customDisplayFormat) {\n // when no displayFormat is provided, determine format based on the picker appearance\n if (pickerAppearance === 'default') {\n dateFormat = 'MM/dd/yyyy'\n } else if (pickerAppearance === 'dayAndTime') {\n dateFormat = 'MMM d, yyy h:mm a'\n } else if (pickerAppearance === 'timeOnly') {\n dateFormat = 'h:mm a'\n } else if (pickerAppearance === 'dayOnly') {\n dateFormat = 'MMM dd'\n } else if (pickerAppearance === 'monthOnly') {\n dateFormat = 'MMMM'\n }\n }\n\n const onChange: Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never }\n >['onChange'] = (incomingDate) => {\n const newDate = incomingDate\n if (newDate instanceof Date && ['dayOnly', 'default', 'monthOnly'].includes(pickerAppearance)) {\n const tzOffset = incomingDate.getTimezoneOffset() / 60\n newDate.setHours(12 - tzOffset, 0)\n }\n\n if (newDate instanceof Date && !dateFormat.includes('SSS')) {\n // Unless the dateFormat includes milliseconds, set milliseconds to 0\n // This is to ensure that the timestamp is consistent with the displayFormat\n newDate.setMilliseconds(0)\n }\n\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(newDate)\n }\n }\n\n const dateTimePickerProps: Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never }\n > = {\n customInputRef: 'ref',\n dateFormat,\n disabled: readOnly,\n maxDate,\n maxTime,\n minDate,\n minTime,\n monthsShown: Math.min(2, monthsToShow),\n nextMonthButtonLabel: <ChevronIcon direction=\"right\" />,\n nextYearButtonLabel: '›',\n onChange,\n placeholderText,\n popperPlacement: 'bottom-start',\n portalId: 'date-time-picker-portal',\n previousMonthButtonLabel: <ChevronIcon direction=\"left\" />,\n previousYearButtonLabel: '‹',\n selected: value && new Date(value),\n shouldCloseOnSelect: false,\n showMonthYearPicker: pickerAppearance === 'monthOnly',\n showPopperArrow: false,\n showTimeSelect: pickerAppearance === 'dayAndTime' || pickerAppearance === 'timeOnly',\n showTimeSelectOnly: pickerAppearance === 'timeOnly',\n timeFormat,\n timeIntervals,\n ...(overrides as Extract<\n DatePickerProps,\n { selectsMultiple?: never; selectsRange?: never } // to satisfy TypeScript. Overrides can enable selectsMultiple or selectsRange but then it's up to the user to ensure they pass in the correct onChange\n >),\n }\n\n const classes = [baseClass, `${baseClass}__appearance--${pickerAppearance}`]\n .filter(Boolean)\n .join(' ')\n\n React.useEffect(() => {\n if (i18n.dateFNS) {\n try {\n const datepickerLocale = getFormattedLocale(i18n.language)\n registerLocale(datepickerLocale, i18n.dateFNS)\n setDefaultLocale(datepickerLocale)\n } catch (_error) {\n // eslint-disable-next-line no-console\n console.warn(`Could not find DatePicker locale for ${i18n.language}`)\n }\n }\n }, [i18n.language, i18n.dateFNS])\n\n return (\n <div className={classes} id={id}>\n <div className={`${baseClass}__input-wrapper`}>\n <ReactDatePicker\n {...dateTimePickerProps}\n dropdownMode=\"select\"\n showMonthDropdown={pickerAppearance !== 'monthOnly'}\n showYearDropdown={pickerAppearance !== 'monthOnly'}\n />\n <CalendarIcon />\n </div>\n </div>\n )\n}\n\n// eslint-disable-next-line no-restricted-exports\nexport default DatePicker\n"],"mappings":"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","ignoreList":[]}
@@ -23,6 +23,7 @@
23
23
  border-radius: var(--radius-large);
24
24
  display: inline-flex;
25
25
  position: relative;
26
+ /* stylelint-disable-next-line plugin/no-subpixel-values -- TODO: pre-existing; revisit this sub-pixel value */
26
27
  box-shadow:
27
28
  0 0 0.25px rgba(0, 0, 0, 0.08),
28
29
  0 2px 2.5px rgba(0, 0, 0, 0.15),
@@ -40,7 +41,7 @@
40
41
  }
41
42
 
42
43
  .react-datepicker-popper {
43
- z-index: 10;
44
+ z-index: var(--z-portal-element);
44
45
  line-height: 0;
45
46
  }
46
47
 
@@ -883,6 +884,7 @@
883
884
  position: relative;
884
885
  }
885
886
 
887
+ /* stylelint-disable-next-line plugin/no-max-width-media-query -- TODO: pre-existing; migrate to a mobile-first min-width query */
886
888
  @media (max-width: 768px) {
887
889
  .date-time-picker .react-datepicker {
888
890
  flex-direction: column;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAkB9E,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4K1C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAmB9E,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4L1C,CAAA"}
@@ -9,6 +9,7 @@ import { toast } from 'sonner';
9
9
  import { CheckboxInput } from '../../fields/Checkbox/Input.js';
10
10
  import { useForm } from '../../forms/Form/context.js';
11
11
  import { useConfig } from '../../providers/Config/index.js';
12
+ import { useDocumentEvents } from '../../providers/DocumentEvents/index.js';
12
13
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
13
14
  import { useDocumentTitle } from '../../providers/DocumentTitle/index.js';
14
15
  import { useRouter } from '../../providers/RouterAdapter/index.js';
@@ -63,6 +64,9 @@ export const DeleteDocument = props => {
63
64
  const {
64
65
  openModal
65
66
  } = useModal();
67
+ const {
68
+ reportUpdate
69
+ } = useDocumentEvents();
66
70
  const modalSlug = `delete-${id}`;
67
71
  const [deletePermanently, setDeletePermanently] = useState(false);
68
72
  const addDefaultError = useCallback(() => {
@@ -102,7 +106,17 @@ export const DeleteDocument = props => {
102
106
  label: getTranslation(singularLabel, i18n),
103
107
  title
104
108
  }) || json.message);
109
+ // A trashed document also disappears from default queries, so both permanent
110
+ // deletes and trashing report as a `delete` event.
111
+ const deleteEvent = {
112
+ id,
113
+ entitySlug: collectionSlug,
114
+ operation: 'delete',
115
+ updatedAt: new Date().toISOString()
116
+ };
105
117
  if (redirectAfterDelete) {
118
+ // Navigating away tears this surface down, so just notify other surfaces.
119
+ reportUpdate(deleteEvent);
106
120
  return startRouteTransition(() => router.push(formatAdminURL({
107
121
  adminRoute,
108
122
  path: `/collections/${collectionSlug}`
@@ -114,6 +128,7 @@ export const DeleteDocument = props => {
114
128
  collectionConfig
115
129
  });
116
130
  }
131
+ reportUpdate(deleteEvent);
117
132
  return;
118
133
  }
119
134
  if (json.errors) {
@@ -125,7 +140,7 @@ export const DeleteDocument = props => {
125
140
  } catch (_err) {
126
141
  return addDefaultError();
127
142
  }
128
- }, [deletePermanently, setModified, hasDeletePermission, hasTrashPermission, api, collectionSlug, id, t, singularLabel, addDefaultError, i18n, title, router, adminRoute, redirectAfterDelete, onDelete, collectionConfig, startRouteTransition]);
143
+ }, [deletePermanently, setModified, hasDeletePermission, hasTrashPermission, api, collectionSlug, id, t, singularLabel, addDefaultError, i18n, title, router, adminRoute, redirectAfterDelete, onDelete, collectionConfig, startRouteTransition, reportUpdate]);
129
144
  if (id) {
130
145
  return /*#__PURE__*/_jsxs(Fragment, {
131
146
  children: [/*#__PURE__*/_jsx(PopupList.Button, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","React","Fragment","useCallback","useState","toast","CheckboxInput","useForm","useConfig","useDocumentInfo","useDocumentTitle","useRouter","useRouteTransition","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","PopupList","Translation","baseClass","DeleteDocument","props","id","buttonId","collectionSlug","onDelete","redirectAfterDelete","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","getEntityConfig","collectionConfig","hasDeletePermission","hasTrashPermission","setModified","router","i18n","t","startRouteTransition","openModal","modalSlug","deletePermanently","setDeletePermanently","addDefaultError","error","handleDelete","permanentlyDelete","url","apiRoute","path","res","delete","headers","language","patch","body","JSON","stringify","deletedAt","Date","toISOString","json","status","success","label","message","push","errors","forEach","_err","_jsxs","_jsx","Button","onClick","elements","1","children","i18nKey","trash","variables","checked","name","onToggle","e","target","className","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly redirectAfterDelete?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n readonly useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onDelete,\n redirectAfterDelete = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { hasDeletePermission, hasTrashPermission } = useDocumentInfo()\n const { setModified } = useForm()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n\n const modalSlug = `delete-${id}`\n\n const [deletePermanently, setDeletePermanently] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setModified(false)\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n })\n\n try {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}`,\n })\n const res = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t(permanentlyDelete ? 'general:titleDeleted' : 'general:titleTrashed', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n if (redirectAfterDelete) {\n return startRouteTransition(() =>\n router.push(formatAdminURL({ adminRoute, path: `/collections/${collectionSlug}` })),\n )\n }\n\n if (typeof onDelete === 'function') {\n await onDelete({ id, collectionConfig })\n }\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n\n return\n } catch (_err) {\n return addDefaultError()\n }\n }, [\n deletePermanently,\n setModified,\n hasDeletePermission,\n hasTrashPermission,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterDelete,\n onDelete,\n collectionConfig,\n startRouteTransition,\n ])\n\n if (id) {\n return (\n <Fragment>\n <PopupList.Button\n id={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </PopupList.Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig.trash && hasTrashPermission\n ? 'general:aboutToTrash'\n : 'general:aboutToDelete'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig.trash && hasTrashPermission && hasDeletePermission && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","React","Fragment","useCallback","useState","toast","CheckboxInput","useForm","useConfig","useDocumentEvents","useDocumentInfo","useDocumentTitle","useRouter","useRouteTransition","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","PopupList","Translation","baseClass","DeleteDocument","props","id","buttonId","collectionSlug","onDelete","redirectAfterDelete","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","getEntityConfig","collectionConfig","hasDeletePermission","hasTrashPermission","setModified","router","i18n","t","startRouteTransition","openModal","reportUpdate","modalSlug","deletePermanently","setDeletePermanently","addDefaultError","error","handleDelete","permanentlyDelete","url","apiRoute","path","res","delete","headers","language","patch","body","JSON","stringify","deletedAt","Date","toISOString","json","status","success","label","message","deleteEvent","entitySlug","operation","updatedAt","push","errors","forEach","_err","_jsxs","_jsx","Button","onClick","elements","1","children","i18nKey","trash","variables","checked","name","onToggle","e","target","className","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly redirectAfterDelete?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n readonly useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onDelete,\n redirectAfterDelete = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { hasDeletePermission, hasTrashPermission } = useDocumentInfo()\n const { setModified } = useForm()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n const { reportUpdate } = useDocumentEvents()\n\n const modalSlug = `delete-${id}`\n\n const [deletePermanently, setDeletePermanently] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setModified(false)\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n })\n\n try {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}`,\n })\n const res = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t(permanentlyDelete ? 'general:titleDeleted' : 'general:titleTrashed', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n // A trashed document also disappears from default queries, so both permanent\n // deletes and trashing report as a `delete` event.\n const deleteEvent = {\n id,\n entitySlug: collectionSlug,\n operation: 'delete' as const,\n updatedAt: new Date().toISOString(),\n }\n\n if (redirectAfterDelete) {\n // Navigating away tears this surface down, so just notify other surfaces.\n reportUpdate(deleteEvent)\n\n return startRouteTransition(() =>\n router.push(formatAdminURL({ adminRoute, path: `/collections/${collectionSlug}` })),\n )\n }\n\n if (typeof onDelete === 'function') {\n await onDelete({ id, collectionConfig })\n }\n\n reportUpdate(deleteEvent)\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n\n return\n } catch (_err) {\n return addDefaultError()\n }\n }, [\n deletePermanently,\n setModified,\n hasDeletePermission,\n hasTrashPermission,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterDelete,\n onDelete,\n collectionConfig,\n startRouteTransition,\n reportUpdate,\n ])\n\n if (id) {\n return (\n <Fragment>\n <PopupList.Button\n id={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </PopupList.Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig.trash && hasTrashPermission\n ? 'general:aboutToTrash'\n : 'general:aboutToDelete'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig.trash && hasTrashPermission && hasDeletePermission && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,QAAQ,QAAQ;AACvD,SAASC,KAAK,QAAQ;AAItB,SAASC,aAAa,QAAQ;AAC9B,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,eAAe,QAAQ;AAChC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,SAAS,QAAQ;AAC1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,SAASC,uBAAuB,QAAQ;AACxC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,SAAS,QAAQ;AAC1B,SAASC,WAAW,QAAQ;AAE5B,MAAMC,SAAA,GAAY;AAalB,OAAO,MAAMC,cAAA,GAAmCC,KAAA;EAC9C,MAAM;IACJC,EAAE;IACFC,QAAQ;IACRC,cAAc;IACdC,QAAQ;IACRC,mBAAA,GAAsB,IAAI;IAC1BC,aAAa;IACbC,KAAA,EAAOC;EAAc,CACtB,GAAGR,KAAA;EAEJ,MAAM;IACJS,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,UAAU;QAAEC;MAAG;IAAE,CACnC;IACDC;EAAe,CAChB,GAAG5B,SAAA;EAEJ,MAAM6B,gBAAA,GAAmBD,eAAA,CAAgB;IAAEX;EAAe;EAE1D,MAAM;IAAEa,mBAAmB;IAAEC;EAAkB,CAAE,GAAG7B,eAAA;EACpD,MAAM;IAAE8B;EAAW,CAAE,GAAGjC,OAAA;EACxB,MAAMkC,MAAA,GAAS7B,SAAA;EACf,MAAM;IAAE8B,IAAI;IAAEC;EAAC,CAAE,GAAG7B,cAAA;EACpB,MAAM;IAAEe;EAAK,CAAE,GAAGlB,gBAAA;EAClB,MAAM;IAAEiC;EAAoB,CAAE,GAAG/B,kBAAA;EACjC,MAAM;IAAEgC;EAAS,CAAE,GAAG/C,QAAA;EACtB,MAAM;IAAEgD;EAAY,CAAE,GAAGrC,iBAAA;EAEzB,MAAMsC,SAAA,GAAY,UAAUxB,EAAA,EAAI;EAEhC,MAAM,CAACyB,iBAAA,EAAmBC,oBAAA,CAAqB,GAAG7C,QAAA,CAAS;EAE3D,MAAM8C,eAAA,GAAkB/C,WAAA,CAAY;IAClCE,KAAA,CAAM8C,KAAK,CAACR,CAAA,CAAE,uBAAuB;MAAEd;IAAM;EAC/C,GAAG,CAACc,CAAA,EAAGd,KAAA,CAAM;EAEb,MAAMuB,YAAA,GAAejD,WAAA,CAAY;IAC/BqC,WAAA,CAAY;IAEZ,MAAMa,iBAAA,GAAoBrC,uBAAA,CAAwB;MAChDgC,iBAAA;MACAV,mBAAA;MACAC;IACF;IAEA,IAAI;MACF,MAAMe,GAAA,GAAMtD,cAAA,CAAe;QACzBuD,QAAA,EAAUpB,GAAA;QACVqB,IAAA,EAAM,IAAI/B,cAAA,IAAkBF,EAAA;MAC9B;MACA,MAAMkC,GAAA,GAAMJ,iBAAA,GACR,MAAMtC,QAAA,CAAS2C,MAAM,CAACJ,GAAA,EAAK;QACzBK,OAAA,EAAS;UACP,mBAAmBjB,IAAA,CAAKkB,QAAQ;UAChC,gBAAgB;QAClB;MACF,KACA,MAAM7C,QAAA,CAAS8C,KAAK,CAACP,GAAA,EAAK;QACxBQ,IAAA,EAAMC,IAAA,CAAKC,SAAS,CAAC;UACnBC,SAAA,EAAW,IAAIC,IAAA,GAAOC,WAAW;QACnC;QACAR,OAAA,EAAS;UACP,mBAAmBjB,IAAA,CAAKkB,QAAQ;UAChC,gBAAgB;QAClB;MACF;MAEJ,MAAMQ,IAAA,GAAO,MAAMX,GAAA,CAAIW,IAAI;MAE3B,IAAIX,GAAA,CAAIY,MAAM,GAAG,KAAK;QACpBhE,KAAA,CAAMiE,OAAO,CACX3B,CAAA,CAAEU,iBAAA,GAAoB,yBAAyB,wBAAwB;UACrEkB,KAAA,EAAOxE,cAAA,CAAe6B,aAAA,EAAec,IAAA;UACrCb;QACF,MAAMuC,IAAA,CAAKI,OAAO;QAGpB;QACA;QACA,MAAMC,WAAA,GAAc;UAClBlD,EAAA;UACAmD,UAAA,EAAYjD,cAAA;UACZkD,SAAA,EAAW;UACXC,SAAA,EAAW,IAAIV,IAAA,GAAOC,WAAW;QACnC;QAEA,IAAIxC,mBAAA,EAAqB;UACvB;UACAmB,YAAA,CAAa2B,WAAA;UAEb,OAAO7B,oBAAA,CAAqB,MAC1BH,MAAA,CAAOoC,IAAI,CAAC7E,cAAA,CAAe;YAAEkC,UAAA;YAAYsB,IAAA,EAAM,gBAAgB/B,cAAA;UAAiB;QAEpF;QAEA,IAAI,OAAOC,QAAA,KAAa,YAAY;UAClC,MAAMA,QAAA,CAAS;YAAEH,EAAA;YAAIc;UAAiB;QACxC;QAEAS,YAAA,CAAa2B,WAAA;QAEb;MACF;MAEA,IAAIL,IAAA,CAAKU,MAAM,EAAE;QACfV,IAAA,CAAKU,MAAM,CAACC,OAAO,CAAE5B,KAAA,IAAU9C,KAAA,CAAM8C,KAAK,CAACA,KAAA,CAAMqB,OAAO;MAC1D,OAAO;QACLtB,eAAA;MACF;MAEA;IACF,EAAE,OAAO8B,IAAA,EAAM;MACb,OAAO9B,eAAA;IACT;EACF,GAAG,CACDF,iBAAA,EACAR,WAAA,EACAF,mBAAA,EACAC,kBAAA,EACAJ,GAAA,EACAV,cAAA,EACAF,EAAA,EACAoB,CAAA,EACAf,aAAA,EACAsB,eAAA,EACAR,IAAA,EACAb,KAAA,EACAY,MAAA,EACAP,UAAA,EACAP,mBAAA,EACAD,QAAA,EACAW,gBAAA,EACAO,oBAAA,EACAE,YAAA,CACD;EAED,IAAIvB,EAAA,EAAI;IACN,oBACE0D,KAAA,CAAC/E,QAAA;8BACCgF,IAAA,CAAChE,SAAA,CAAUiE,MAAM;QACf5D,EAAA,EAAIC,QAAA;QACJ4D,OAAA,EAASA,CAAA;UACPvC,SAAA,CAAUE,SAAA;QACZ;kBAECJ,CAAA,CAAE;uBAELuC,IAAA,CAACjE,iBAAA;QACC6C,IAAA,eACEmB,KAAA,CAAC/E,QAAA;kCACCgF,IAAA,CAAC/D,WAAA;YACCkE,QAAA,EAAU;cACR,KAAKC,CAAC;gBAAEC;cAAQ,CAAE,kBAAKL,IAAA,CAAC;0BAAQK;;YAClC;YACAC,OAAA,EACEnD,gBAAA,CAAiBoD,KAAK,IAAIlD,kBAAA,GACtB,yBACA;YAENI,CAAA,EAAGA,CAAA;YACH+C,SAAA,EAAW;cACTnB,KAAA,EAAOxE,cAAA,CAAe6B,aAAA,EAAec,IAAA;cACrCb,KAAA,EAAOC,cAAA,IAAkBD,KAAA,IAASN;YACpC;cAEDc,gBAAA,CAAiBoD,KAAK,IAAIlD,kBAAA,IAAsBD,mBAAA,iBAC/C4C,IAAA,CAAC5E,aAAA;YACCqF,OAAA,EAAS3C,iBAAA;YACTzB,EAAA,EAAG;YACHgD,KAAA,EAAO5B,CAAA,CAAE;YACTiD,IAAA,EAAK;YACLC,QAAA,EAAWC,CAAA,IAAM7C,oBAAA,CAAqB6C,CAAA,CAAEC,MAAM,CAACJ,OAAO;;;QAK9DK,SAAA,EAAW5E,SAAA;QACX6E,eAAA,EAAiBtD,CAAA,CAAE;QACnBuD,OAAA,EAASvD,CAAA,CAAE;QACXI,SAAA,EAAWA,SAAA;QACXoD,SAAA,EAAW/C;;;EAInB;EAEA,OAAO;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAM/C,OAAO,KAAK,MAAM,OAAO,CAAA;AAazB,KAAK,iBAAiB,GAAG;IACvB,CAAC,UAAU,EAAE,MAAM,GAAG;QACpB,YAAY,EAAE,MAAM,CAAA;QACpB,MAAM,EAAE,OAAO,EAAE,CAAA;QACjB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;QACxB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF,CAAA;AACD,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACjD;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;OAKG;IACH,UAAU,EAAE;QACV,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,GAAG,CAAC,EAAE,OAAO,CAAA;YACb,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;YACzB,UAAU,CAAC,EAAE,MAAM,CAAA;SACpB,CAAA;KACF,CAAA;IACD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,WAAW,EACX,mBAA2B,EAC3B,kBAA0B,EAC1B,WAAW,EACX,MAAM,EACN,UAAU,EACV,KAAK,EACL,QAAQ,EACR,KAAK,GACN,EAAE,eAAe,qBA4QjB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteMany/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAM/C,OAAO,KAAK,MAAM,OAAO,CAAA;AAazB,KAAK,iBAAiB,GAAG;IACvB,CAAC,UAAU,EAAE,MAAM,GAAG;QACpB,YAAY,EAAE,MAAM,CAAA;QACpB,MAAM,EAAE,OAAO,EAAE,CAAA;QACjB,GAAG,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;QACxB,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;CACF,CAAA;AACD,MAAM,MAAM,eAAe,GAAG;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,iBAAiB,KAAK,IAAI,CAAA;IACjD;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;OAKG;IACH,UAAU,EAAE;QACV,CAAC,UAAU,EAAE,MAAM,GAAG;YACpB,GAAG,CAAC,EAAE,OAAO,CAAA;YACb,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;YACzB,UAAU,CAAC,EAAE,MAAM,CAAA;SACpB,CAAA;KACF,CAAA;IACD,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,EACzB,WAAW,EACX,mBAA2B,EAC3B,kBAA0B,EAC1B,WAAW,EACX,MAAM,EACN,UAAU,EACV,KAAK,EACL,QAAQ,EACR,KAAK,GACN,EAAE,eAAe,qBA6QjB"}
@@ -43,9 +43,8 @@ export function DeleteMany({
43
43
  }
44
44
  }
45
45
  } = useConfig();
46
- const {
47
- code: locale
48
- } = useLocale();
46
+ const currentLocale = useLocale();
47
+ const locale = currentLocale?.code;
49
48
  const {
50
49
  i18n
51
50
  } = useTranslation();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","mergeListSearchAndWhere","qs","React","toast","CheckboxInput","useConfig","useLocale","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","ListSelectionButton","Translation","DeleteMany","afterDelete","hasDeletePermission","hasTrashPermission","modalPrefix","search","selections","trash","viewType","where","t","config","collections","routes","api","code","locale","i18n","openModal","deletePermanently","setDeletePermanently","useState","confirmManyDeleteDrawerSlug","handleDelete","useCallback","deletingOneCollection","Object","keys","length","result","relationTo","all","ids","entries","collectionConfig","find","slug","whereConstraint","and","Array","isArray","deletedAt","exists","id","not_equals","in","url","apiRoute","path","stringify","limit","select","addQueryPrefix","permanentlyDelete","Boolean","isTrashView","deleteManyResponse","delete","headers","language","patch","body","JSON","Date","toISOString","plural","singular","labels","json","deletedDocs","docs","successLabel","status","successKey","success","count","label","errors","error","message","description","map","join","deletedCount","doc","totalCount","totalDocs","_err","labelString","labelCount","reduce","acc","key","value","index","array","undefined","collectionLabel","newLabel","_jsxs","Fragment","_jsx","className","onClick","elements","0","children","1","i18nKey","variables","checked","name","onToggle","e","target","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/DeleteMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ViewTypes, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { ListSelectionButton } from '../ListSelection/index.js'\nimport { Translation } from '../Translation/index.js'\n\ntype AfterDeleteResult = {\n [relationTo: string]: {\n deletedCount: number\n errors: unknown[]\n ids: (number | string)[]\n totalCount: number\n }\n}\nexport type DeleteManyProps = {\n /**\n * A callback function to be called after the delete request is completed.\n */\n afterDelete?: (result: AfterDeleteResult) => void\n /**\n * Whether the user has permission to permanently delete documents.\n * When false, the \"delete permanently\" checkbox will be hidden.\n */\n hasDeletePermission?: boolean\n /**\n * Whether the user has permission to trash (soft delete) documents.\n * When false and hasDeletePermission is true, only permanent delete is available.\n */\n hasTrashPermission?: boolean\n /**\n * When multiple DeleteMany components are rendered on the page, this will differentiate them.\n */\n modalPrefix?: string\n /**\n * Optionally pass a search string to filter the documents to be deleted.\n *\n * This is intentionally passed as a prop so modals could pass in their own\n * search string that may not be stored in the URL.\n */\n search?: string\n /**\n * An object containing the relationTo as the key and an object with the following properties:\n * - all: boolean\n * - totalCount: number\n * - ids: (string | number)[]\n */\n selections: {\n [relationTo: string]: {\n all?: boolean\n ids?: (number | string)[]\n totalCount?: number\n }\n }\n trash?: boolean\n viewType?: ViewTypes\n /**\n * Optionally pass a where clause to filter the documents to be deleted.\n * This will be ignored if multiple relations are selected.\n *\n * This is intentionally passed as a prop so modals could pass in their own\n * where clause that may not be stored in the URL.\n */\n where?: Where\n}\n\n/**\n * Handles polymorphic document delete operations.\n *\n * If you are deleting monomorphic documents, shape your `selections` to match the polymorphic structure.\n */\nexport function DeleteMany({\n afterDelete,\n hasDeletePermission = false,\n hasTrashPermission = false,\n modalPrefix,\n search,\n selections,\n trash,\n viewType,\n where,\n}: DeleteManyProps) {\n const { t } = useTranslation()\n\n const {\n config: {\n collections,\n routes: { api },\n },\n } = useConfig()\n\n const { code: locale } = useLocale()\n const { i18n } = useTranslation()\n const { openModal } = useModal()\n\n const [deletePermanently, setDeletePermanently] = React.useState(false)\n const confirmManyDeleteDrawerSlug = `${modalPrefix ? `${modalPrefix}-` : ''}confirm-delete-many-docs`\n\n const handleDelete = React.useCallback(async () => {\n const deletingOneCollection = Object.keys(selections).length === 1\n const result: AfterDeleteResult = {}\n\n for (const [relationTo, { all, ids = [] }] of Object.entries(selections)) {\n const collectionConfig = collections.find(({ slug }) => slug === relationTo)\n\n if (collectionConfig) {\n let whereConstraint: Where\n\n if (all) {\n // selecting all documents with optional where filter\n if (deletingOneCollection && where) {\n whereConstraint =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(where.and) ? where.and : [where]),\n { deletedAt: { exists: true } },\n ],\n }\n : where\n } else {\n whereConstraint =\n viewType === 'trash'\n ? {\n and: [{ id: { not_equals: '' } }, { deletedAt: { exists: true } }],\n }\n : {\n id: { not_equals: '' },\n }\n }\n } else {\n // selecting specific documents\n whereConstraint = {\n and: [\n { id: { in: ids } },\n ...(viewType === 'trash' ? [{ deletedAt: { exists: true } }] : []),\n ],\n }\n }\n\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${relationTo}${qs.stringify(\n {\n limit: 0,\n locale,\n select: {},\n where: mergeListSearchAndWhere({\n collectionConfig,\n search,\n where: whereConstraint,\n }),\n ...(viewType === 'trash' ? { trash: true } : {}),\n },\n { addQueryPrefix: true },\n )}`,\n })\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission: Boolean(collectionConfig.trash) && hasTrashPermission,\n isTrashView: viewType === 'trash',\n })\n\n const deleteManyResponse = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n try {\n const { plural, singular } = collectionConfig.labels\n const json = await deleteManyResponse.json()\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (deleteManyResponse.status < 400 || deletedDocs > 0) {\n let successKey:\n | 'general:deletedCountSuccessfully'\n | 'general:permanentlyDeletedCountSuccessfully'\n | 'general:trashedCountSuccessfully'\n\n if (!permanentlyDelete) {\n successKey = 'general:trashedCountSuccessfully'\n } else if (viewType === 'trash' || (hasDeletePermission && deletePermanently)) {\n successKey = 'general:permanentlyDeletedCountSuccessfully'\n } else {\n successKey = 'general:deletedCountSuccessfully'\n }\n\n toast.success(\n t(successKey, {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n }\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n result[relationTo] = {\n deletedCount: deletedDocs,\n errors: json?.errors || null,\n ids: json?.docs.map((doc) => doc.id) || [],\n totalCount: json.totalDocs,\n }\n\n if (deleteManyResponse.status > 400 && json?.errors.length === 0) {\n toast.error(t('error:unknown'))\n result[relationTo].errors = [t('error:unknown')]\n }\n\n continue\n } catch (_err) {\n toast.error(t('error:unknown'))\n result[relationTo] = {\n deletedCount: 0,\n errors: [_err],\n ids: [],\n totalCount: 0,\n }\n continue\n }\n }\n }\n\n if (typeof afterDelete === 'function') {\n afterDelete(result)\n }\n }, [\n selections,\n afterDelete,\n collections,\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n locale,\n search,\n api,\n i18n,\n viewType,\n where,\n t,\n ])\n\n const { label: labelString, labelCount } = Object.entries(selections).reduce(\n (acc, [key, value], index, array) => {\n const collectionConfig = collections.find(({ slug }) => slug === key)\n if (collectionConfig) {\n const labelCount = acc.labelCount === undefined ? value.totalCount : acc.labelCount\n const collectionLabel = `${acc.labelCount !== undefined ? `${value.totalCount} ` : ''}${getTranslation(\n value.totalCount > 1 ? collectionConfig.labels.plural : collectionConfig.labels.singular,\n i18n,\n )}`\n\n let newLabel\n\n if (index === array.length - 1 && index !== 0) {\n newLabel = `${acc.label} and ${collectionLabel}`\n } else if (index > 0) {\n newLabel = `${acc.label}, ${collectionLabel}`\n } else {\n newLabel = collectionLabel\n }\n\n return {\n label: newLabel,\n labelCount,\n }\n }\n return acc\n },\n {\n label: '',\n labelCount: undefined,\n },\n )\n\n return (\n <React.Fragment>\n <ListSelectionButton\n aria-label={t('general:delete')}\n className=\"delete-documents__toggle\"\n onClick={() => {\n openModal(confirmManyDeleteDrawerSlug)\n }}\n >\n {t('general:delete')}\n </ListSelectionButton>\n <ConfirmationModal\n body={\n <React.Fragment>\n <p>\n {trash && hasTrashPermission ? (\n viewType === 'trash' ? (\n <Translation\n elements={{\n '0': ({ children }) => <strong>{children}</strong>,\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToPermanentlyDeleteTrash\"\n t={t}\n variables={{\n count: labelCount ?? 0,\n label: labelString,\n }}\n />\n ) : (\n t('general:aboutToTrashCount', { count: labelCount, label: labelString })\n )\n ) : (\n t('general:aboutToDeleteCount', { count: labelCount, label: labelString })\n )}\n </p>\n {trash && hasTrashPermission && hasDeletePermission && viewType !== 'trash' && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </React.Fragment>\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmManyDeleteDrawerSlug}\n onConfirm={handleDelete}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","mergeListSearchAndWhere","qs","React","toast","CheckboxInput","useConfig","useLocale","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","ListSelectionButton","Translation","DeleteMany","afterDelete","hasDeletePermission","hasTrashPermission","modalPrefix","search","selections","trash","viewType","where","t","config","collections","routes","api","currentLocale","locale","code","i18n","openModal","deletePermanently","setDeletePermanently","useState","confirmManyDeleteDrawerSlug","handleDelete","useCallback","deletingOneCollection","Object","keys","length","result","relationTo","all","ids","entries","collectionConfig","find","slug","whereConstraint","and","Array","isArray","deletedAt","exists","id","not_equals","in","url","apiRoute","path","stringify","limit","select","addQueryPrefix","permanentlyDelete","Boolean","isTrashView","deleteManyResponse","delete","headers","language","patch","body","JSON","Date","toISOString","plural","singular","labels","json","deletedDocs","docs","successLabel","status","successKey","success","count","label","errors","error","message","description","map","join","deletedCount","doc","totalCount","totalDocs","_err","labelString","labelCount","reduce","acc","key","value","index","array","undefined","collectionLabel","newLabel","_jsxs","Fragment","_jsx","className","onClick","elements","0","children","1","i18nKey","variables","checked","name","onToggle","e","target","confirmingLabel","heading","modalSlug","onConfirm"],"sources":["../../../src/elements/DeleteMany/index.tsx"],"sourcesContent":["'use client'\nimport type { ViewTypes, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, mergeListSearchAndWhere } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React from 'react'\nimport { toast } from 'sonner'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { ListSelectionButton } from '../ListSelection/index.js'\nimport { Translation } from '../Translation/index.js'\n\ntype AfterDeleteResult = {\n [relationTo: string]: {\n deletedCount: number\n errors: unknown[]\n ids: (number | string)[]\n totalCount: number\n }\n}\nexport type DeleteManyProps = {\n /**\n * A callback function to be called after the delete request is completed.\n */\n afterDelete?: (result: AfterDeleteResult) => void\n /**\n * Whether the user has permission to permanently delete documents.\n * When false, the \"delete permanently\" checkbox will be hidden.\n */\n hasDeletePermission?: boolean\n /**\n * Whether the user has permission to trash (soft delete) documents.\n * When false and hasDeletePermission is true, only permanent delete is available.\n */\n hasTrashPermission?: boolean\n /**\n * When multiple DeleteMany components are rendered on the page, this will differentiate them.\n */\n modalPrefix?: string\n /**\n * Optionally pass a search string to filter the documents to be deleted.\n *\n * This is intentionally passed as a prop so modals could pass in their own\n * search string that may not be stored in the URL.\n */\n search?: string\n /**\n * An object containing the relationTo as the key and an object with the following properties:\n * - all: boolean\n * - totalCount: number\n * - ids: (string | number)[]\n */\n selections: {\n [relationTo: string]: {\n all?: boolean\n ids?: (number | string)[]\n totalCount?: number\n }\n }\n trash?: boolean\n viewType?: ViewTypes\n /**\n * Optionally pass a where clause to filter the documents to be deleted.\n * This will be ignored if multiple relations are selected.\n *\n * This is intentionally passed as a prop so modals could pass in their own\n * where clause that may not be stored in the URL.\n */\n where?: Where\n}\n\n/**\n * Handles polymorphic document delete operations.\n *\n * If you are deleting monomorphic documents, shape your `selections` to match the polymorphic structure.\n */\nexport function DeleteMany({\n afterDelete,\n hasDeletePermission = false,\n hasTrashPermission = false,\n modalPrefix,\n search,\n selections,\n trash,\n viewType,\n where,\n}: DeleteManyProps) {\n const { t } = useTranslation()\n\n const {\n config: {\n collections,\n routes: { api },\n },\n } = useConfig()\n\n const currentLocale = useLocale()\n const locale = currentLocale?.code\n const { i18n } = useTranslation()\n const { openModal } = useModal()\n\n const [deletePermanently, setDeletePermanently] = React.useState(false)\n const confirmManyDeleteDrawerSlug = `${modalPrefix ? `${modalPrefix}-` : ''}confirm-delete-many-docs`\n\n const handleDelete = React.useCallback(async () => {\n const deletingOneCollection = Object.keys(selections).length === 1\n const result: AfterDeleteResult = {}\n\n for (const [relationTo, { all, ids = [] }] of Object.entries(selections)) {\n const collectionConfig = collections.find(({ slug }) => slug === relationTo)\n\n if (collectionConfig) {\n let whereConstraint: Where\n\n if (all) {\n // selecting all documents with optional where filter\n if (deletingOneCollection && where) {\n whereConstraint =\n viewType === 'trash'\n ? {\n and: [\n ...(Array.isArray(where.and) ? where.and : [where]),\n { deletedAt: { exists: true } },\n ],\n }\n : where\n } else {\n whereConstraint =\n viewType === 'trash'\n ? {\n and: [{ id: { not_equals: '' } }, { deletedAt: { exists: true } }],\n }\n : {\n id: { not_equals: '' },\n }\n }\n } else {\n // selecting specific documents\n whereConstraint = {\n and: [\n { id: { in: ids } },\n ...(viewType === 'trash' ? [{ deletedAt: { exists: true } }] : []),\n ],\n }\n }\n\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${relationTo}${qs.stringify(\n {\n limit: 0,\n locale,\n select: {},\n where: mergeListSearchAndWhere({\n collectionConfig,\n search,\n where: whereConstraint,\n }),\n ...(viewType === 'trash' ? { trash: true } : {}),\n },\n { addQueryPrefix: true },\n )}`,\n })\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission: Boolean(collectionConfig.trash) && hasTrashPermission,\n isTrashView: viewType === 'trash',\n })\n\n const deleteManyResponse = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n try {\n const { plural, singular } = collectionConfig.labels\n const json = await deleteManyResponse.json()\n\n const deletedDocs = json?.docs.length || 0\n const successLabel = deletedDocs > 1 ? plural : singular\n\n if (deleteManyResponse.status < 400 || deletedDocs > 0) {\n let successKey:\n | 'general:deletedCountSuccessfully'\n | 'general:permanentlyDeletedCountSuccessfully'\n | 'general:trashedCountSuccessfully'\n\n if (!permanentlyDelete) {\n successKey = 'general:trashedCountSuccessfully'\n } else if (viewType === 'trash' || (hasDeletePermission && deletePermanently)) {\n successKey = 'general:permanentlyDeletedCountSuccessfully'\n } else {\n successKey = 'general:deletedCountSuccessfully'\n }\n\n toast.success(\n t(successKey, {\n count: deletedDocs,\n label: getTranslation(successLabel, i18n),\n }),\n )\n }\n\n if (json?.errors.length > 0) {\n toast.error(json.message, {\n description: json.errors.map((error) => error.message).join('\\n'),\n })\n }\n\n result[relationTo] = {\n deletedCount: deletedDocs,\n errors: json?.errors || null,\n ids: json?.docs.map((doc) => doc.id) || [],\n totalCount: json.totalDocs,\n }\n\n if (deleteManyResponse.status > 400 && json?.errors.length === 0) {\n toast.error(t('error:unknown'))\n result[relationTo].errors = [t('error:unknown')]\n }\n\n continue\n } catch (_err) {\n toast.error(t('error:unknown'))\n result[relationTo] = {\n deletedCount: 0,\n errors: [_err],\n ids: [],\n totalCount: 0,\n }\n continue\n }\n }\n }\n\n if (typeof afterDelete === 'function') {\n afterDelete(result)\n }\n }, [\n selections,\n afterDelete,\n collections,\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n locale,\n search,\n api,\n i18n,\n viewType,\n where,\n t,\n ])\n\n const { label: labelString, labelCount } = Object.entries(selections).reduce(\n (acc, [key, value], index, array) => {\n const collectionConfig = collections.find(({ slug }) => slug === key)\n if (collectionConfig) {\n const labelCount = acc.labelCount === undefined ? value.totalCount : acc.labelCount\n const collectionLabel = `${acc.labelCount !== undefined ? `${value.totalCount} ` : ''}${getTranslation(\n value.totalCount > 1 ? collectionConfig.labels.plural : collectionConfig.labels.singular,\n i18n,\n )}`\n\n let newLabel\n\n if (index === array.length - 1 && index !== 0) {\n newLabel = `${acc.label} and ${collectionLabel}`\n } else if (index > 0) {\n newLabel = `${acc.label}, ${collectionLabel}`\n } else {\n newLabel = collectionLabel\n }\n\n return {\n label: newLabel,\n labelCount,\n }\n }\n return acc\n },\n {\n label: '',\n labelCount: undefined,\n },\n )\n\n return (\n <React.Fragment>\n <ListSelectionButton\n aria-label={t('general:delete')}\n className=\"delete-documents__toggle\"\n onClick={() => {\n openModal(confirmManyDeleteDrawerSlug)\n }}\n >\n {t('general:delete')}\n </ListSelectionButton>\n <ConfirmationModal\n body={\n <React.Fragment>\n <p>\n {trash && hasTrashPermission ? (\n viewType === 'trash' ? (\n <Translation\n elements={{\n '0': ({ children }) => <strong>{children}</strong>,\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToPermanentlyDeleteTrash\"\n t={t}\n variables={{\n count: labelCount ?? 0,\n label: labelString,\n }}\n />\n ) : (\n t('general:aboutToTrashCount', { count: labelCount, label: labelString })\n )\n ) : (\n t('general:aboutToDeleteCount', { count: labelCount, label: labelString })\n )}\n </p>\n {trash && hasTrashPermission && hasDeletePermission && viewType !== 'trash' && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </React.Fragment>\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmManyDeleteDrawerSlug}\n onConfirm={handleDelete}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -97,6 +97,7 @@
97
97
  padding-block: var(--spacer-2);
98
98
  padding-inline-start: var(--spacer-3);
99
99
  padding-inline-end: var(--spacer-2);
100
+ border-block-start: var(--stroke-width-small) solid var(--color-border);
100
101
  flex-shrink: 0;
101
102
  }
102
103
  }
@@ -144,6 +144,7 @@
144
144
  background: transparent;
145
145
  }
146
146
 
147
+ /* stylelint-disable-next-line plugin/no-max-width-media-query -- TODO: pre-existing; migrate to a mobile-first min-width query */
147
148
  @media (max-width: 1024px) {
148
149
  .doc-controls__controls-wrapper {
149
150
  margin-left: auto;
@@ -136,6 +136,7 @@
136
136
  padding-bottom: 0;
137
137
  }
138
138
 
139
+ /* stylelint-disable-next-line plugin/no-max-width-media-query -- TODO: pre-existing; migrate to a mobile-first min-width query */
139
140
  @media (max-width: 1024px) {
140
141
  .document-fields {
141
142
  display: block;
@@ -185,6 +186,7 @@
185
186
  }
186
187
  }
187
188
 
189
+ /* stylelint-disable-next-line plugin/no-max-width-media-query -- TODO: pre-existing; migrate to a mobile-first min-width query */
188
190
  @media (max-width: 768px) {
189
191
  .document-fields__sidebar-wrap {
190
192
  min-width: initial;
@@ -22,7 +22,10 @@ export const DocumentHeaderRoot = ({
22
22
  return /*#__PURE__*/_jsx("div", {
23
23
  className: baseClass,
24
24
  ref: ref,
25
- children: children
25
+ children: /*#__PURE__*/_jsx("div", {
26
+ className: `${baseClass}__content`,
27
+ children: children
28
+ })
26
29
  });
27
30
  };
28
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useRef","useElementHeightVariable","baseClass","DocumentHeaderRoot","children","ref","cssVar","_jsx","className"],"sources":["../../../../src/elements/DocumentHeader/DocumentHeaderRoot/index.tsx"],"sourcesContent":["'use client'\nimport React, { useRef } from 'react'\n\nimport { useElementHeightVariable } from '../../../hooks/useElementHeightVariable.js'\n\nconst baseClass = 'doc-header'\n\n/**\n * Client wrapper for the document header that publishes its rendered height as the\n * `--doc-header-height` CSS variable, mirroring how `AppHeader` and `DocumentControls`\n * expose their own heights for layout calculations.\n *\n * @internal\n */\nexport const DocumentHeaderRoot: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const ref = useRef<HTMLDivElement>(null)\n\n useElementHeightVariable({ cssVar: '--doc-header-height', ref })\n\n return (\n <div className={baseClass} ref={ref}>\n {children}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,IAASC,MAAM,QAAQ;AAE9B,SAASC,wBAAwB,QAAQ;AAEzC,MAAMC,SAAA,GAAY;AAElB;;;;;;;AAOA,OAAO,MAAMC,kBAAA,GAA8DA,CAAC;EAAEC;AAAQ,CAAE;EACtF,MAAMC,GAAA,GAAML,MAAA,CAAuB;EAEnCC,wBAAA,CAAyB;IAAEK,MAAA,EAAQ;IAAuBD;EAAI;EAE9D,oBACEE,IAAA,CAAC;IAAIC,SAAA,EAAWN,SAAA;IAAWG,GAAA,EAAKA,GAAA;cAC7BD;;AAGP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useRef","useElementHeightVariable","baseClass","DocumentHeaderRoot","children","ref","cssVar","_jsx","className"],"sources":["../../../../src/elements/DocumentHeader/DocumentHeaderRoot/index.tsx"],"sourcesContent":["'use client'\nimport React, { useRef } from 'react'\n\nimport { useElementHeightVariable } from '../../../hooks/useElementHeightVariable.js'\n\nconst baseClass = 'doc-header'\n\n/**\n * Client wrapper for the document header that publishes its rendered height as the\n * `--doc-header-height` CSS variable, mirroring how `AppHeader` and `DocumentControls`\n * expose their own heights for layout calculations.\n *\n * @internal\n */\nexport const DocumentHeaderRoot: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const ref = useRef<HTMLDivElement>(null)\n\n useElementHeightVariable({ cssVar: '--doc-header-height', ref })\n\n return (\n <div className={baseClass} ref={ref}>\n <div className={`${baseClass}__content`}>{children}</div>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,IAASC,MAAM,QAAQ;AAE9B,SAASC,wBAAwB,QAAQ;AAEzC,MAAMC,SAAA,GAAY;AAElB;;;;;;;AAOA,OAAO,MAAMC,kBAAA,GAA8DA,CAAC;EAAEC;AAAQ,CAAE;EACtF,MAAMC,GAAA,GAAML,MAAA,CAAuB;EAEnCC,wBAAA,CAAyB;IAAEK,MAAA,EAAQ;IAAuBD;EAAI;EAE9D,oBACEE,IAAA,CAAC;IAAIC,SAAA,EAAWN,SAAA;IAAWG,GAAA,EAAKA,GAAA;cAC9B,aAAAE,IAAA,CAAC;MAAIC,SAAA,EAAW,GAAGN,SAAA,WAAoB;gBAAGE;;;AAGhD","ignoreList":[]}
@@ -12,5 +12,6 @@ export declare const DefaultDocumentTab: React.FC<{
12
12
  tabConfig: {
13
13
  readonly Pill_Component?: React.FC;
14
14
  } & DocumentTabConfig;
15
+ user?: PayloadRequest['user'];
15
16
  }>;
16
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/DocumentHeader/Tabs/Tab/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAEjB,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,YAAY,CAAA;AAElC,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,EAAE,CAAA;KAAE,GAAG,iBAAiB,CAAA;CACtE,CAmEA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/DocumentHeader/Tabs/Tab/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAEjB,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,YAAY,CAAA;AAElC,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE;QAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,EAAE,CAAA;KAAE,GAAG,iBAAiB,CAAA;IACrE,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAC9B,CAoEA,CAAA"}
@@ -19,7 +19,8 @@ export const DefaultDocumentTab = props => {
19
19
  newTab,
20
20
  Pill,
21
21
  Pill_Component
22
- }
22
+ },
23
+ user
23
24
  } = props;
24
25
  let href = typeof tabHref === 'string' ? tabHref : '';
25
26
  let isActive = typeof tabIsActive === 'boolean' ? tabIsActive : false;
@@ -59,7 +60,7 @@ export const DefaultDocumentTab = props => {
59
60
  permissions,
60
61
  req,
61
62
  server: req.server,
62
- user: req.user
63
+ user
63
64
  }
64
65
  })]
65
66
  }) : null]
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Fragment","DocumentTabLink","RenderServerComponent","baseClass","DefaultDocumentTab","props","apiURL","collectionConfig","globalConfig","permissions","req","tabConfig","href","tabHref","isActive","tabIsActive","label","newTab","Pill","Pill_Component","collection","global","routes","payload","config","labelToRender","t","i18n","_jsx","adminRoute","admin","ariaLabel","_jsxs","className","Component","Fallback","importMap","serverProps","server","user"],"sources":["../../../../../src/elements/DocumentHeader/Tabs/Tab/index.tsx"],"sourcesContent":["import type {\n DocumentTabConfig,\n DocumentTabServerPropsOnly,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n SanitizedPermissions,\n} from 'payload'\nimport type React from 'react'\n\nimport { Fragment } from 'react'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- Server component must reference exports dir for proper client boundary\nimport { DocumentTabLink } from '../../../../exports/client/index.js'\nimport { RenderServerComponent } from '../../../RenderServerComponent/index.js'\nimport './index.css'\n\nexport const baseClass = 'doc-tab'\n\nexport const DefaultDocumentTab: React.FC<{\n apiURL?: string\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n path?: string\n permissions?: SanitizedPermissions\n req: PayloadRequest\n tabConfig: { readonly Pill_Component?: React.FC } & DocumentTabConfig\n}> = (props) => {\n const {\n apiURL,\n collectionConfig,\n globalConfig,\n permissions,\n req,\n tabConfig: { href: tabHref, isActive: tabIsActive, label, newTab, Pill, Pill_Component },\n } = props\n\n let href = typeof tabHref === 'string' ? tabHref : ''\n let isActive = typeof tabIsActive === 'boolean' ? tabIsActive : false\n\n if (typeof tabHref === 'function') {\n href = tabHref({\n apiURL,\n collection: collectionConfig,\n global: globalConfig,\n routes: req.payload.config.routes,\n })\n }\n\n if (typeof tabIsActive === 'function') {\n isActive = tabIsActive({\n href,\n })\n }\n\n const labelToRender =\n typeof label === 'function'\n ? label({\n t: req.i18n.t,\n })\n : label\n\n return (\n <DocumentTabLink\n adminRoute={req.payload.config.routes.admin}\n ariaLabel={labelToRender}\n baseClass={baseClass}\n href={href}\n isActive={isActive}\n newTab={newTab}\n >\n <span className={`${baseClass}__label`}>\n {labelToRender}\n {Pill || Pill_Component ? (\n <Fragment>\n &nbsp;\n {RenderServerComponent({\n Component: Pill,\n Fallback: Pill_Component,\n importMap: req.payload.importMap,\n serverProps: {\n i18n: req.i18n,\n payload: req.payload,\n permissions,\n req,\n server: req.server,\n user: req.user,\n } satisfies DocumentTabServerPropsOnly,\n })}\n </Fragment>\n ) : null}\n </span>\n </DocumentTabLink>\n )\n}\n"],"mappings":";AAUA,SAASA,QAAQ,QAAQ;AAEzB;AACA,SAASC,eAAe,QAAQ;AAChC,SAASC,qBAAqB,QAAQ;AACtC,OAAO;AAEP,OAAO,MAAMC,SAAA,GAAY;AAEzB,OAAO,MAAMC,kBAAA,GAQPC,KAAA;EACJ,MAAM;IACJC,MAAM;IACNC,gBAAgB;IAChBC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHC,SAAA,EAAW;MAAEC,IAAA,EAAMC,OAAO;MAAEC,QAAA,EAAUC,WAAW;MAAEC,KAAK;MAAEC,MAAM;MAAEC,IAAI;MAAEC;IAAc;EAAE,CACzF,GAAGd,KAAA;EAEJ,IAAIO,IAAA,GAAO,OAAOC,OAAA,KAAY,WAAWA,OAAA,GAAU;EACnD,IAAIC,QAAA,GAAW,OAAOC,WAAA,KAAgB,YAAYA,WAAA,GAAc;EAEhE,IAAI,OAAOF,OAAA,KAAY,YAAY;IACjCD,IAAA,GAAOC,OAAA,CAAQ;MACbP,MAAA;MACAc,UAAA,EAAYb,gBAAA;MACZc,MAAA,EAAQb,YAAA;MACRc,MAAA,EAAQZ,GAAA,CAAIa,OAAO,CAACC,MAAM,CAACF;IAC7B;EACF;EAEA,IAAI,OAAOP,WAAA,KAAgB,YAAY;IACrCD,QAAA,GAAWC,WAAA,CAAY;MACrBH;IACF;EACF;EAEA,MAAMa,aAAA,GACJ,OAAOT,KAAA,KAAU,aACbA,KAAA,CAAM;IACJU,CAAA,EAAGhB,GAAA,CAAIiB,IAAI,CAACD;EACd,KACAV,KAAA;EAEN,oBACEY,IAAA,CAAC3B,eAAA;IACC4B,UAAA,EAAYnB,GAAA,CAAIa,OAAO,CAACC,MAAM,CAACF,MAAM,CAACQ,KAAK;IAC3CC,SAAA,EAAWN,aAAA;IACXtB,SAAA,EAAWA,SAAA;IACXS,IAAA,EAAMA,IAAA;IACNE,QAAA,EAAUA,QAAA;IACVG,MAAA,EAAQA,MAAA;cAER,aAAAe,KAAA,CAAC;MAAKC,SAAA,EAAW,GAAG9B,SAAA,SAAkB;iBACnCsB,aAAA,EACAP,IAAA,IAAQC,cAAA,gBACPa,KAAA,CAAChC,QAAA;mBAAS,KAEPE,qBAAA,CAAsB;UACrBgC,SAAA,EAAWhB,IAAA;UACXiB,QAAA,EAAUhB,cAAA;UACViB,SAAA,EAAW1B,GAAA,CAAIa,OAAO,CAACa,SAAS;UAChCC,WAAA,EAAa;YACXV,IAAA,EAAMjB,GAAA,CAAIiB,IAAI;YACdJ,OAAA,EAASb,GAAA,CAAIa,OAAO;YACpBd,WAAA;YACAC,GAAA;YACA4B,MAAA,EAAQ5B,GAAA,CAAI4B,MAAM;YAClBC,IAAA,EAAM7B,GAAA,CAAI6B;UACZ;QACF;WAEA;;;AAIZ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Fragment","DocumentTabLink","RenderServerComponent","baseClass","DefaultDocumentTab","props","apiURL","collectionConfig","globalConfig","permissions","req","tabConfig","href","tabHref","isActive","tabIsActive","label","newTab","Pill","Pill_Component","user","collection","global","routes","payload","config","labelToRender","t","i18n","_jsx","adminRoute","admin","ariaLabel","_jsxs","className","Component","Fallback","importMap","serverProps","server"],"sources":["../../../../../src/elements/DocumentHeader/Tabs/Tab/index.tsx"],"sourcesContent":["import type {\n DocumentTabConfig,\n DocumentTabServerPropsOnly,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n SanitizedPermissions,\n} from 'payload'\nimport type React from 'react'\n\nimport { Fragment } from 'react'\n\n// eslint-disable-next-line payload/no-imports-from-exports-dir -- Server component must reference exports dir for proper client boundary\nimport { DocumentTabLink } from '../../../../exports/client/index.js'\nimport { RenderServerComponent } from '../../../RenderServerComponent/index.js'\nimport './index.css'\n\nexport const baseClass = 'doc-tab'\n\nexport const DefaultDocumentTab: React.FC<{\n apiURL?: string\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n path?: string\n permissions?: SanitizedPermissions\n req: PayloadRequest\n tabConfig: { readonly Pill_Component?: React.FC } & DocumentTabConfig\n user?: PayloadRequest['user']\n}> = (props) => {\n const {\n apiURL,\n collectionConfig,\n globalConfig,\n permissions,\n req,\n tabConfig: { href: tabHref, isActive: tabIsActive, label, newTab, Pill, Pill_Component },\n user,\n } = props\n\n let href = typeof tabHref === 'string' ? tabHref : ''\n let isActive = typeof tabIsActive === 'boolean' ? tabIsActive : false\n\n if (typeof tabHref === 'function') {\n href = tabHref({\n apiURL,\n collection: collectionConfig,\n global: globalConfig,\n routes: req.payload.config.routes,\n })\n }\n\n if (typeof tabIsActive === 'function') {\n isActive = tabIsActive({\n href,\n })\n }\n\n const labelToRender =\n typeof label === 'function'\n ? label({\n t: req.i18n.t,\n })\n : label\n\n return (\n <DocumentTabLink\n adminRoute={req.payload.config.routes.admin}\n ariaLabel={labelToRender}\n baseClass={baseClass}\n href={href}\n isActive={isActive}\n newTab={newTab}\n >\n <span className={`${baseClass}__label`}>\n {labelToRender}\n {Pill || Pill_Component ? (\n <Fragment>\n &nbsp;\n {RenderServerComponent({\n Component: Pill,\n Fallback: Pill_Component,\n importMap: req.payload.importMap,\n serverProps: {\n i18n: req.i18n,\n payload: req.payload,\n permissions,\n req,\n server: req.server,\n user,\n } satisfies DocumentTabServerPropsOnly,\n })}\n </Fragment>\n ) : null}\n </span>\n </DocumentTabLink>\n )\n}\n"],"mappings":";AAUA,SAASA,QAAQ,QAAQ;AAEzB;AACA,SAASC,eAAe,QAAQ;AAChC,SAASC,qBAAqB,QAAQ;AACtC,OAAO;AAEP,OAAO,MAAMC,SAAA,GAAY;AAEzB,OAAO,MAAMC,kBAAA,GASPC,KAAA;EACJ,MAAM;IACJC,MAAM;IACNC,gBAAgB;IAChBC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHC,SAAA,EAAW;MAAEC,IAAA,EAAMC,OAAO;MAAEC,QAAA,EAAUC,WAAW;MAAEC,KAAK;MAAEC,MAAM;MAAEC,IAAI;MAAEC;IAAc,CAAE;IACxFC;EAAI,CACL,GAAGf,KAAA;EAEJ,IAAIO,IAAA,GAAO,OAAOC,OAAA,KAAY,WAAWA,OAAA,GAAU;EACnD,IAAIC,QAAA,GAAW,OAAOC,WAAA,KAAgB,YAAYA,WAAA,GAAc;EAEhE,IAAI,OAAOF,OAAA,KAAY,YAAY;IACjCD,IAAA,GAAOC,OAAA,CAAQ;MACbP,MAAA;MACAe,UAAA,EAAYd,gBAAA;MACZe,MAAA,EAAQd,YAAA;MACRe,MAAA,EAAQb,GAAA,CAAIc,OAAO,CAACC,MAAM,CAACF;IAC7B;EACF;EAEA,IAAI,OAAOR,WAAA,KAAgB,YAAY;IACrCD,QAAA,GAAWC,WAAA,CAAY;MACrBH;IACF;EACF;EAEA,MAAMc,aAAA,GACJ,OAAOV,KAAA,KAAU,aACbA,KAAA,CAAM;IACJW,CAAA,EAAGjB,GAAA,CAAIkB,IAAI,CAACD;EACd,KACAX,KAAA;EAEN,oBACEa,IAAA,CAAC5B,eAAA;IACC6B,UAAA,EAAYpB,GAAA,CAAIc,OAAO,CAACC,MAAM,CAACF,MAAM,CAACQ,KAAK;IAC3CC,SAAA,EAAWN,aAAA;IACXvB,SAAA,EAAWA,SAAA;IACXS,IAAA,EAAMA,IAAA;IACNE,QAAA,EAAUA,QAAA;IACVG,MAAA,EAAQA,MAAA;cAER,aAAAgB,KAAA,CAAC;MAAKC,SAAA,EAAW,GAAG/B,SAAA,SAAkB;iBACnCuB,aAAA,EACAR,IAAA,IAAQC,cAAA,gBACPc,KAAA,CAACjC,QAAA;mBAAS,KAEPE,qBAAA,CAAsB;UACrBiC,SAAA,EAAWjB,IAAA;UACXkB,QAAA,EAAUjB,cAAA;UACVkB,SAAA,EAAW3B,GAAA,CAAIc,OAAO,CAACa,SAAS;UAChCC,WAAA,EAAa;YACXV,IAAA,EAAMlB,GAAA,CAAIkB,IAAI;YACdJ,OAAA,EAASd,GAAA,CAAIc,OAAO;YACpBf,WAAA;YACAC,GAAA;YACA6B,MAAA,EAAQ7B,GAAA,CAAI6B,MAAM;YAClBnB;UACF;QACF;WAEA;;;AAIZ","ignoreList":[]}
@@ -12,6 +12,7 @@
12
12
  padding: var(--spacer-1) 0;
13
13
  }
14
14
 
15
+ /* stylelint-disable-next-line plugin/no-max-width-media-query -- TODO: pre-existing; migrate to a mobile-first min-width query */
15
16
  @media (max-width: 768px) {
16
17
  .doc-tabs {
17
18
  width: 100%;
@@ -6,5 +6,6 @@ export declare const DocumentTabs: React.FC<{
6
6
  globalConfig: SanitizedGlobalConfig;
7
7
  permissions: SanitizedPermissions;
8
8
  req: PayloadRequest;
9
+ user?: PayloadRequest['user'];
9
10
  }>;
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/DocumentHeader/Tabs/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,YAAY,EAAE,qBAAqB,CAAA;IACnC,WAAW,EAAE,oBAAoB,CAAA;IACjC,GAAG,EAAE,cAAc,CAAA;CACpB,CA8DA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/DocumentHeader/Tabs/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC;IAClC,gBAAgB,EAAE,yBAAyB,CAAA;IAC3C,YAAY,EAAE,qBAAqB,CAAA;IACnC,WAAW,EAAE,oBAAoB,CAAA;IACjC,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,CAAC,EAAE,cAAc,CAAC,MAAM,CAAC,CAAA;CAC9B,CA+DA,CAAA"}
@@ -11,7 +11,8 @@ export const DocumentTabs = ({
11
11
  collectionConfig,
12
12
  globalConfig,
13
13
  permissions,
14
- req
14
+ req,
15
+ user
15
16
  }) => {
16
17
  const {
17
18
  config
@@ -60,7 +61,7 @@ export const DocumentTabs = ({
60
61
  permissions,
61
62
  req,
62
63
  server: req.server,
63
- user: req.user
64
+ user
64
65
  }
65
66
  });
66
67
  }
@@ -70,7 +71,8 @@ export const DocumentTabs = ({
70
71
  path: viewPath,
71
72
  permissions: permissions,
72
73
  req: req,
73
- tabConfig: tabConfig
74
+ tabConfig: tabConfig,
75
+ user: user
74
76
  }, `tab-${index}`);
75
77
  })
76
78
  })