@payloadcms/ui 4.0.0-internal.8001944 → 4.0.0-internal.8089ef7

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 (715) hide show
  1. package/dist/css/app.css +1 -1
  2. package/dist/css/forms.css +0 -1
  3. package/dist/css/spacing.css +1 -1
  4. package/dist/css/typography.css +161 -55
  5. package/dist/elements/APIKeyInput/index.css +2 -2
  6. package/dist/elements/AppHeader/index.css +1 -1
  7. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  8. package/dist/elements/AppHeader/index.js +9 -2
  9. package/dist/elements/AppHeader/index.js.map +1 -1
  10. package/dist/elements/Autosave/index.d.ts.map +1 -1
  11. package/dist/elements/Autosave/index.js +10 -3
  12. package/dist/elements/Autosave/index.js.map +1 -1
  13. package/dist/elements/Banner/index.css +3 -4
  14. package/dist/elements/BulkUpload/EditMany/index.css +4 -5
  15. package/dist/elements/BulkUpload/FileSidebar/index.css +0 -1
  16. package/dist/elements/BulkUpload/FileSidebar/index.js +1 -1
  17. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  18. package/dist/elements/Button/index.css +31 -1
  19. package/dist/elements/Button/types.d.ts +1 -1
  20. package/dist/elements/Button/types.d.ts.map +1 -1
  21. package/dist/elements/Button/types.js.map +1 -1
  22. package/dist/elements/Card/index.css +3 -4
  23. package/dist/elements/CardGrid/index.css +20 -0
  24. package/dist/elements/CardGrid/index.d.ts +13 -0
  25. package/dist/elements/CardGrid/index.d.ts.map +1 -0
  26. package/dist/elements/CardGrid/index.js +23 -0
  27. package/dist/elements/CardGrid/index.js.map +1 -0
  28. package/dist/elements/Chip/index.css +0 -1
  29. package/dist/elements/CloseModalOnRouteChange/index.d.ts.map +1 -1
  30. package/dist/elements/CloseModalOnRouteChange/index.js +27 -19
  31. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  32. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  33. package/dist/elements/CodeEditor/CodeEditor.js +5 -0
  34. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  35. package/dist/elements/Collapsible/index.css +4 -1
  36. package/dist/elements/ColumnSelection/Popup.css +6 -11
  37. package/dist/elements/CommandPalette/index.css +3 -8
  38. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  39. package/dist/elements/CopyToClipboard/index.js +62 -54
  40. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  41. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  42. package/dist/elements/CreateDocumentButton/index.js +56 -33
  43. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  44. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  45. package/dist/elements/DatePicker/DatePicker.js +88 -15
  46. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  47. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts +8 -0
  48. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts.map +1 -0
  49. package/dist/elements/DatePicker/hasAmbiguousYearInput.js +37 -0
  50. package/dist/elements/DatePicker/hasAmbiguousYearInput.js.map +1 -0
  51. package/dist/elements/DatePicker/index.css +27 -17
  52. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts +18 -0
  53. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts.map +1 -0
  54. package/dist/elements/DatePicker/useDatePickerKeyboard.js +212 -0
  55. package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -0
  56. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  57. package/dist/elements/DefaultListViewTabs/index.js +9 -7
  58. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  59. package/dist/elements/Dialog/DialogTitle/index.css +1 -1
  60. package/dist/elements/Dialog/index.css +1 -2
  61. package/dist/elements/DocumentCard/index.css +73 -0
  62. package/dist/elements/DocumentCard/index.d.ts +18 -0
  63. package/dist/elements/DocumentCard/index.d.ts.map +1 -0
  64. package/dist/elements/DocumentCard/index.js +182 -0
  65. package/dist/elements/DocumentCard/index.js.map +1 -0
  66. package/dist/elements/DocumentControls/index.css +14 -15
  67. package/dist/elements/DocumentControls/index.d.ts +4 -2
  68. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  69. package/dist/elements/DocumentControls/index.js.map +1 -1
  70. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +4 -7
  71. package/dist/elements/DocumentDrawer/types.d.ts +1 -5
  72. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  73. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  74. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.css +2 -2
  75. package/dist/elements/DocumentFields/index.css +5 -5
  76. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  77. package/dist/elements/DocumentFields/index.js +1 -2
  78. package/dist/elements/DocumentFields/index.js.map +1 -1
  79. package/dist/elements/DocumentHeader/index.css +1 -1
  80. package/dist/elements/Drawer/index.css +4 -5
  81. package/dist/elements/Drawer/types.d.ts +2 -2
  82. package/dist/elements/Drawer/types.d.ts.map +1 -1
  83. package/dist/elements/Drawer/types.js.map +1 -1
  84. package/dist/elements/EditMany/index.css +4 -5
  85. package/dist/elements/EditUpload/index.css +3 -4
  86. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  87. package/dist/elements/EditUpload/index.js +13 -2
  88. package/dist/elements/EditUpload/index.js.map +1 -1
  89. package/dist/elements/EditUpload/library.css +6 -13
  90. package/dist/elements/ErrorPill/index.css +0 -1
  91. package/dist/elements/FieldDiffContainer/index.css +0 -1
  92. package/dist/elements/FieldDiffLabel/index.css +4 -5
  93. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  94. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  95. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  96. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  97. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  98. package/dist/elements/FileDetails/FileMeta/index.js +41 -21
  99. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  100. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +1 -1
  101. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  102. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  103. package/dist/elements/FileDetails/index.d.ts +1 -1
  104. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  105. package/dist/elements/FileDetails/index.js.map +1 -1
  106. package/dist/elements/FileManager/FilePreview/index.css +2 -3
  107. package/dist/elements/FileManager/FilePreview/index.js +4 -4
  108. package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
  109. package/dist/elements/FileManager/FileToolbar/index.css +2 -3
  110. package/dist/elements/FileManager/index.css +0 -1
  111. package/dist/elements/FileManager/index.d.ts.map +1 -1
  112. package/dist/elements/FileManager/index.js +13 -6
  113. package/dist/elements/FileManager/index.js.map +1 -1
  114. package/dist/elements/FormHeader/index.css +0 -2
  115. package/dist/elements/GroupBy/Popup.css +3 -6
  116. package/dist/elements/HTMLDiff/index.css +0 -1
  117. package/dist/elements/Hierarchy/ActionsMenu/index.css +18 -0
  118. package/dist/elements/Hierarchy/ActionsMenu/index.d.ts +35 -0
  119. package/dist/elements/Hierarchy/ActionsMenu/index.d.ts.map +1 -0
  120. package/dist/elements/Hierarchy/ActionsMenu/index.js +99 -0
  121. package/dist/elements/Hierarchy/ActionsMenu/index.js.map +1 -0
  122. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +18 -16
  123. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  124. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
  125. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +40 -36
  126. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  127. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  128. package/dist/elements/Hierarchy/ColumnBrowser/index.js +15 -58
  129. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  130. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +2 -0
  131. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  132. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  133. package/dist/elements/Hierarchy/DocHeaderButton/index.css +12 -0
  134. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
  135. package/dist/elements/Hierarchy/DocHeaderButton/index.js +88 -13
  136. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  137. package/dist/elements/Hierarchy/EditButton/index.d.ts +8 -0
  138. package/dist/elements/Hierarchy/EditButton/index.d.ts.map +1 -0
  139. package/dist/elements/Hierarchy/EditButton/index.js +93 -0
  140. package/dist/elements/Hierarchy/EditButton/index.js.map +1 -0
  141. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts +9 -0
  142. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts.map +1 -0
  143. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js +41 -0
  144. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js.map +1 -0
  145. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  146. package/dist/elements/Hierarchy/Field/index.client.js +120 -105
  147. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  148. package/dist/elements/Hierarchy/Field/index.css +0 -1
  149. package/dist/elements/Hierarchy/Modal/Footer/index.css +33 -0
  150. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +21 -0
  151. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +1 -0
  152. package/dist/elements/Hierarchy/Modal/Footer/index.js +122 -0
  153. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -0
  154. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +8 -3
  155. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  156. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +38 -12
  157. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  158. package/dist/elements/Hierarchy/Modal/index.css +0 -56
  159. package/dist/elements/Hierarchy/Modal/index.d.ts +5 -3
  160. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  161. package/dist/elements/Hierarchy/Modal/index.js +90 -102
  162. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  163. package/dist/elements/Hierarchy/Modal/selection.d.ts +12 -0
  164. package/dist/elements/Hierarchy/Modal/selection.d.ts.map +1 -0
  165. package/dist/elements/Hierarchy/Modal/selection.js +40 -0
  166. package/dist/elements/Hierarchy/Modal/selection.js.map +1 -0
  167. package/dist/elements/Hierarchy/Modal/types.d.ts +4 -0
  168. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
  169. package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
  170. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  171. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js +1 -1
  172. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -1
  173. package/dist/elements/Hierarchy/MoveMany/index.d.ts +3 -3
  174. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  175. package/dist/elements/Hierarchy/MoveMany/index.js +79 -92
  176. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  177. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  178. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +7 -1
  179. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  180. package/dist/elements/Hierarchy/Tree/index.css +1 -1
  181. package/dist/elements/HydratePreferences/index.d.ts +8 -0
  182. package/dist/elements/HydratePreferences/index.d.ts.map +1 -0
  183. package/dist/elements/HydratePreferences/index.js +34 -0
  184. package/dist/elements/HydratePreferences/index.js.map +1 -0
  185. package/dist/elements/IDLabel/index.css +5 -7
  186. package/dist/elements/ItemsDrawer/ItemSearch/index.css +0 -1
  187. package/dist/elements/LLMInstructionsCell/index.css +11 -0
  188. package/dist/elements/LLMInstructionsCell/index.d.ts +5 -0
  189. package/dist/elements/LLMInstructionsCell/index.d.ts.map +1 -0
  190. package/dist/elements/LLMInstructionsCell/index.js +24 -0
  191. package/dist/elements/LLMInstructionsCell/index.js.map +1 -0
  192. package/dist/elements/LLMInstructionsDescription/index.css +79 -0
  193. package/dist/elements/LLMInstructionsDescription/index.d.ts +6 -0
  194. package/dist/elements/LLMInstructionsDescription/index.d.ts.map +1 -0
  195. package/dist/elements/LLMInstructionsDescription/index.js +40 -0
  196. package/dist/elements/LLMInstructionsDescription/index.js.map +1 -0
  197. package/dist/elements/LLMInstructionsMenuItem/index.d.ts +5 -0
  198. package/dist/elements/LLMInstructionsMenuItem/index.d.ts.map +1 -0
  199. package/dist/elements/LLMInstructionsMenuItem/index.js +46 -0
  200. package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -0
  201. package/dist/elements/LayoutToggle/index.d.ts +8 -0
  202. package/dist/elements/LayoutToggle/index.d.ts.map +1 -0
  203. package/dist/elements/LayoutToggle/index.js +56 -0
  204. package/dist/elements/LayoutToggle/index.js.map +1 -0
  205. package/dist/elements/Link/index.d.ts.map +1 -1
  206. package/dist/elements/Link/index.js +3 -0
  207. package/dist/elements/Link/index.js.map +1 -1
  208. package/dist/elements/ListControls/index.d.ts.map +1 -1
  209. package/dist/elements/ListControls/index.js +2 -1
  210. package/dist/elements/ListControls/index.js.map +1 -1
  211. package/dist/elements/ListControls/types.d.ts +1 -10
  212. package/dist/elements/ListControls/types.d.ts.map +1 -1
  213. package/dist/elements/ListControls/types.js.map +1 -1
  214. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  215. package/dist/elements/ListDrawer/DrawerContent.js +2 -3
  216. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  217. package/dist/elements/ListDrawer/Provider.d.ts +0 -6
  218. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  219. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  220. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  221. package/dist/elements/ListDrawer/index.js +1 -1
  222. package/dist/elements/ListDrawer/index.js.map +1 -1
  223. package/dist/elements/ListDrawer/types.d.ts +1 -0
  224. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  225. package/dist/elements/ListDrawer/types.js.map +1 -1
  226. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  227. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +24 -20
  228. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  229. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts +6 -0
  230. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts.map +1 -0
  231. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js +61 -0
  232. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -0
  233. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +1 -0
  234. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +1 -1
  235. package/dist/elements/ListHeader/DrawerTitleActions/index.js +1 -0
  236. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  237. package/dist/elements/ListHeader/index.css +4 -5
  238. package/dist/elements/MiniCarousel/index.d.ts +1 -1
  239. package/dist/elements/MiniCarousel/index.d.ts.map +1 -1
  240. package/dist/elements/MiniCarousel/index.js +6 -6
  241. package/dist/elements/MiniCarousel/index.js.map +1 -1
  242. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  243. package/dist/elements/Nav/NavWrapper/index.js +19 -14
  244. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  245. package/dist/elements/Nav/SidebarTabs/index.client.js +1 -1
  246. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  247. package/dist/elements/Nav/SidebarTabs/index.css +2 -1
  248. package/dist/elements/Nav/index.js +1 -2
  249. package/dist/elements/Nav/index.js.map +1 -1
  250. package/dist/elements/NavGroup/index.css +3 -4
  251. package/dist/elements/NoListResults/index.css +2 -3
  252. package/dist/elements/PageControls/index.css +4 -1
  253. package/dist/elements/PageControls/index.d.ts.map +1 -1
  254. package/dist/elements/PageControls/index.js +22 -8
  255. package/dist/elements/PageControls/index.js.map +1 -1
  256. package/dist/elements/Pagination/SimplePagination/index.css +0 -1
  257. package/dist/elements/Pagination/index.css +0 -2
  258. package/dist/elements/PerPage/index.css +0 -1
  259. package/dist/elements/Pill/index.css +0 -1
  260. package/dist/elements/Popup/PopupButtonList/index.css +4 -2
  261. package/dist/elements/Popup/PopupButtonList/index.d.ts +1 -0
  262. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  263. package/dist/elements/Popup/PopupButtonList/index.js +4 -0
  264. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  265. package/dist/elements/Popup/PopupGroupLabel/index.css +0 -1
  266. package/dist/elements/PreviewSizes/index.d.ts +1 -1
  267. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  268. package/dist/elements/PreviewSizes/index.js +9 -9
  269. package/dist/elements/PreviewSizes/index.js.map +1 -1
  270. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  271. package/dist/elements/PublishButton/index.js +71 -8
  272. package/dist/elements/PublishButton/index.js.map +1 -1
  273. package/dist/elements/PublishButton/validateAllLocales.d.ts +11 -0
  274. package/dist/elements/PublishButton/validateAllLocales.d.ts.map +1 -0
  275. package/dist/elements/PublishButton/validateAllLocales.js +263 -0
  276. package/dist/elements/PublishButton/validateAllLocales.js.map +1 -0
  277. package/dist/elements/QueryPresets/fields/Heading/index.css +0 -1
  278. package/dist/elements/ReactSelect/MultiValueLabel/index.css +0 -1
  279. package/dist/elements/ReactSelect/index.css +0 -3
  280. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  281. package/dist/elements/RelationshipTable/AddNewButton.js +3 -0
  282. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  283. package/dist/elements/RenderTitle/index.css +9 -7
  284. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  285. package/dist/elements/SaveDraftButton/index.js +15 -2
  286. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  287. package/dist/elements/Search/SearchInput/index.css +0 -1
  288. package/dist/elements/Search/SearchInput/index.js +1 -1
  289. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  290. package/dist/elements/SegmentedControl/index.css +9 -0
  291. package/dist/elements/SegmentedControl/index.d.ts +20 -0
  292. package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
  293. package/dist/elements/SegmentedControl/index.js +162 -0
  294. package/dist/elements/SegmentedControl/index.js.map +1 -0
  295. package/dist/elements/SidebarRow/index.css +1 -2
  296. package/dist/elements/SortColumn/index.css +1 -2
  297. package/dist/elements/Spinner/index.css +0 -2
  298. package/dist/elements/Status/index.css +3 -4
  299. package/dist/elements/StepNav/index.css +15 -9
  300. package/dist/elements/StepNav/index.d.ts.map +1 -1
  301. package/dist/elements/StepNav/index.js +7 -0
  302. package/dist/elements/StepNav/index.js.map +1 -1
  303. package/dist/elements/StepNav/types.d.ts +2 -0
  304. package/dist/elements/StepNav/types.d.ts.map +1 -1
  305. package/dist/elements/StepNav/types.js.map +1 -1
  306. package/dist/elements/Switch/index.css +0 -1
  307. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.css +0 -1
  308. package/dist/elements/Table/DefaultCell/fields/Code/index.css +0 -1
  309. package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -1
  310. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  311. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +0 -9
  312. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  313. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +100 -43
  314. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  315. package/dist/elements/Table/DefaultCell/fields/JSON/index.css +0 -1
  316. package/dist/elements/Table/DefaultCell/fields/Status/index.css +0 -1
  317. package/dist/elements/Table/index.css +1 -1
  318. package/dist/elements/TableSection/index.css +4 -5
  319. package/dist/elements/Tabs/index.css +5 -5
  320. package/dist/elements/Tabs/index.d.ts +4 -0
  321. package/dist/elements/Tabs/index.d.ts.map +1 -1
  322. package/dist/elements/Tabs/index.js +30 -1
  323. package/dist/elements/Tabs/index.js.map +1 -1
  324. package/dist/elements/ThumbnailCard/index.css +0 -1
  325. package/dist/elements/TimezonePicker/index.css +0 -3
  326. package/dist/elements/Tooltip/index.css +0 -1
  327. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  328. package/dist/elements/Tooltip/index.js +1 -0
  329. package/dist/elements/Tooltip/index.js.map +1 -1
  330. package/dist/elements/Upload/getEditorFileSrc.d.ts +11 -0
  331. package/dist/elements/Upload/getEditorFileSrc.d.ts.map +1 -0
  332. package/dist/elements/Upload/getEditorFileSrc.js +6 -0
  333. package/dist/elements/Upload/getEditorFileSrc.js.map +1 -0
  334. package/dist/elements/Upload/index.css +2 -3
  335. package/dist/elements/Upload/index.d.ts +1 -1
  336. package/dist/elements/Upload/index.d.ts.map +1 -1
  337. package/dist/elements/Upload/index.js +12 -7
  338. package/dist/elements/Upload/index.js.map +1 -1
  339. package/dist/elements/UserMenu/index.css +7 -10
  340. package/dist/exports/client/CodeEditor-S7MOGZSR.js +14 -0
  341. package/dist/exports/client/CodeEditor-S7MOGZSR.js.map +7 -0
  342. package/dist/exports/client/DatePicker-POZJVQP4.js +14 -0
  343. package/dist/exports/client/DatePicker-POZJVQP4.js.map +7 -0
  344. package/dist/exports/client/chunk-2AY67NFV.js +29 -0
  345. package/dist/exports/client/chunk-2AY67NFV.js.map +7 -0
  346. package/dist/exports/client/chunk-AVJIZPR3.js +14 -0
  347. package/dist/exports/client/chunk-AVJIZPR3.js.map +7 -0
  348. package/dist/exports/client/chunk-Z42OBP5U.js +27 -0
  349. package/dist/exports/client/chunk-Z42OBP5U.js.map +7 -0
  350. package/dist/exports/client/index.d.ts +19 -1
  351. package/dist/exports/client/index.d.ts.map +1 -1
  352. package/dist/exports/client/index.js +100 -1
  353. package/dist/exports/client/index.js.map +4 -4
  354. package/dist/exports/rsc/index.d.ts +1 -0
  355. package/dist/exports/rsc/index.d.ts.map +1 -1
  356. package/dist/exports/rsc/index.js +1 -0
  357. package/dist/exports/rsc/index.js.map +1 -1
  358. package/dist/exports/shared/index.js +2 -2
  359. package/dist/exports/shared/index.js.map +3 -3
  360. package/dist/fields/Array/index.css +4 -0
  361. package/dist/fields/Blocks/SectionTitle/index.css +3 -5
  362. package/dist/fields/Blocks/index.css +2 -2
  363. package/dist/fields/Checkbox/Input.js +1 -1
  364. package/dist/fields/Checkbox/Input.js.map +1 -1
  365. package/dist/fields/Checkbox/index.css +4 -0
  366. package/dist/fields/DateTime/index.d.ts.map +1 -1
  367. package/dist/fields/DateTime/index.js +9 -2
  368. package/dist/fields/DateTime/index.js.map +1 -1
  369. package/dist/fields/FieldLabel/index.css +1 -2
  370. package/dist/fields/Group/index.css +5 -8
  371. package/dist/fields/Join/index.css +3 -4
  372. package/dist/fields/RadioGroup/Radio/index.css +0 -1
  373. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  374. package/dist/fields/Relationship/Input.js +25 -17
  375. package/dist/fields/Relationship/Input.js.map +1 -1
  376. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  377. package/dist/fields/Relationship/optionsReducer.js +2 -0
  378. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  379. package/dist/fields/Relationship/types.d.ts +8 -0
  380. package/dist/fields/Relationship/types.d.ts.map +1 -1
  381. package/dist/fields/Relationship/types.js.map +1 -1
  382. package/dist/fields/Select/Input.d.ts.map +1 -1
  383. package/dist/fields/Select/Input.js +17 -15
  384. package/dist/fields/Select/Input.js.map +1 -1
  385. package/dist/fields/Select/index.css +7 -0
  386. package/dist/fields/Tabs/Tab/index.d.ts +2 -0
  387. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  388. package/dist/fields/Tabs/Tab/index.js +15 -9
  389. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  390. package/dist/fields/Tabs/index.css +14 -14
  391. package/dist/fields/Tabs/index.d.ts.map +1 -1
  392. package/dist/fields/Tabs/index.js +179 -116
  393. package/dist/fields/Tabs/index.js.map +1 -1
  394. package/dist/fields/Upload/HasMany/index.js +1 -1
  395. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  396. package/dist/fields/Upload/HasOne/index.js +1 -1
  397. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  398. package/dist/fields/Upload/Input.d.ts.map +1 -1
  399. package/dist/fields/Upload/Input.js +13 -4
  400. package/dist/fields/Upload/Input.js.map +1 -1
  401. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  402. package/dist/forms/Form/fieldReducer.js +6 -9
  403. package/dist/forms/Form/fieldReducer.js.map +1 -1
  404. package/dist/forms/Form/index.d.ts.map +1 -1
  405. package/dist/forms/Form/index.js +0 -1
  406. package/dist/forms/Form/index.js.map +1 -1
  407. package/dist/forms/Form/types.d.ts +0 -5
  408. package/dist/forms/Form/types.d.ts.map +1 -1
  409. package/dist/forms/Form/types.js.map +1 -1
  410. package/dist/forms/RenderFields/index.css +2 -5
  411. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +2 -2
  412. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  413. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  414. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -2
  415. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  416. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  417. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -2
  418. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  419. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  420. package/dist/forms/fieldSchemasToFormState/types.d.ts +2 -2
  421. package/dist/forms/fieldSchemasToFormState/types.d.ts.map +1 -1
  422. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  423. package/dist/forms/useField/types.d.ts +0 -4
  424. package/dist/forms/useField/types.d.ts.map +1 -1
  425. package/dist/forms/useField/types.js.map +1 -1
  426. package/dist/icons/Arrow/index.d.ts +1 -1
  427. package/dist/icons/Arrow/index.d.ts.map +1 -1
  428. package/dist/icons/Arrow/index.js +7 -1
  429. package/dist/icons/Arrow/index.js.map +1 -1
  430. package/dist/icons/Clock/index.d.ts +6 -0
  431. package/dist/icons/Clock/index.d.ts.map +1 -0
  432. package/dist/icons/Clock/index.js +18 -0
  433. package/dist/icons/Clock/index.js.map +1 -0
  434. package/dist/icons/Pin/index.d.ts +7 -0
  435. package/dist/icons/Pin/index.d.ts.map +1 -0
  436. package/dist/icons/Pin/index.js +23 -0
  437. package/dist/icons/Pin/index.js.map +1 -0
  438. package/dist/icons/Sidebar/index.d.ts.map +1 -1
  439. package/dist/icons/Sidebar/index.js +2 -0
  440. package/dist/icons/Sidebar/index.js.map +1 -1
  441. package/dist/icons/Table/index.css +1 -0
  442. package/dist/icons/Table/index.d.ts +7 -0
  443. package/dist/icons/Table/index.d.ts.map +1 -0
  444. package/dist/icons/Table/index.js +25 -0
  445. package/dist/icons/Table/index.js.map +1 -0
  446. package/dist/layouts/Root/getRootLayoutData.d.ts +3 -6
  447. package/dist/layouts/Root/getRootLayoutData.d.ts.map +1 -1
  448. package/dist/layouts/Root/getRootLayoutData.js +14 -13
  449. package/dist/layouts/Root/getRootLayoutData.js.map +1 -1
  450. package/dist/layouts/Root/index.d.ts +1 -1
  451. package/dist/layouts/Root/index.d.ts.map +1 -1
  452. package/dist/layouts/Root/index.js +11 -18
  453. package/dist/layouts/Root/index.js.map +1 -1
  454. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts +7 -0
  455. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts.map +1 -0
  456. package/dist/providers/ListQuery/getSearchWithListQuery.js +22 -0
  457. package/dist/providers/ListQuery/getSearchWithListQuery.js.map +1 -0
  458. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  459. package/dist/providers/ListQuery/index.js +11 -12
  460. package/dist/providers/ListQuery/index.js.map +1 -1
  461. package/dist/providers/ListQuery/types.d.ts +0 -4
  462. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  463. package/dist/providers/ListQuery/types.js.map +1 -1
  464. package/dist/providers/Preferences/index.d.ts +7 -1
  465. package/dist/providers/Preferences/index.d.ts.map +1 -1
  466. package/dist/providers/Preferences/index.js +62 -20
  467. package/dist/providers/Preferences/index.js.map +1 -1
  468. package/dist/providers/RouteCache/index.d.ts.map +1 -1
  469. package/dist/providers/RouteCache/index.js +38 -37
  470. package/dist/providers/RouteCache/index.js.map +1 -1
  471. package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -1
  472. package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -2
  473. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  474. package/dist/providers/TableColumns/buildColumnState/index.d.ts +1 -0
  475. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  476. package/dist/providers/TableColumns/buildColumnState/index.js +2 -0
  477. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  478. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +2 -1
  479. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  480. package/dist/providers/TableColumns/buildColumnState/renderCell.js +12 -28
  481. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  482. package/dist/providers/TableColumns/types.d.ts +1 -34
  483. package/dist/providers/TableColumns/types.d.ts.map +1 -1
  484. package/dist/providers/TableColumns/types.js.map +1 -1
  485. package/dist/providers/ToastContainer/index.css +6 -7
  486. package/dist/providers/Translation/index.d.ts.map +1 -1
  487. package/dist/providers/Translation/index.js +11 -1
  488. package/dist/providers/Translation/index.js.map +1 -1
  489. package/dist/styles.css +163 -58
  490. package/dist/utilities/appendCacheTag.d.ts +1 -0
  491. package/dist/utilities/appendCacheTag.d.ts.map +1 -1
  492. package/dist/utilities/appendCacheTag.js +2 -1
  493. package/dist/utilities/appendCacheTag.js.map +1 -1
  494. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  495. package/dist/utilities/buildClientFieldSchemaMap/index.js +9 -4
  496. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  497. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts +9 -0
  498. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts.map +1 -0
  499. package/dist/utilities/filterLLMInstructionsMenuItems.js +37 -0
  500. package/dist/utilities/filterLLMInstructionsMenuItems.js.map +1 -0
  501. package/dist/utilities/filterOutUploadFields.js +1 -1
  502. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  503. package/dist/utilities/getClientConfig.d.ts +5 -1
  504. package/dist/utilities/getClientConfig.d.ts.map +1 -1
  505. package/dist/utilities/getClientConfig.js +2 -1
  506. package/dist/utilities/getClientConfig.js.map +1 -1
  507. package/dist/utilities/getClientSchemaMap.d.ts.map +1 -1
  508. package/dist/utilities/getClientSchemaMap.js +2 -1
  509. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  510. package/dist/utilities/getDocumentThumbnail.d.ts +6 -0
  511. package/dist/utilities/getDocumentThumbnail.d.ts.map +1 -0
  512. package/dist/utilities/getDocumentThumbnail.js +27 -0
  513. package/dist/utilities/getDocumentThumbnail.js.map +1 -0
  514. package/dist/utilities/getDocumentThumbnailPopulate.d.ts +7 -0
  515. package/dist/utilities/getDocumentThumbnailPopulate.d.ts.map +1 -0
  516. package/dist/utilities/getDocumentThumbnailPopulate.js +23 -0
  517. package/dist/utilities/getDocumentThumbnailPopulate.js.map +1 -0
  518. package/dist/utilities/getDocumentThumbnailSelect.d.ts +7 -0
  519. package/dist/utilities/getDocumentThumbnailSelect.d.ts.map +1 -0
  520. package/dist/utilities/getDocumentThumbnailSelect.js +24 -0
  521. package/dist/utilities/getDocumentThumbnailSelect.js.map +1 -0
  522. package/dist/utilities/hierarchyCollectionRestrictions.d.ts +15 -0
  523. package/dist/utilities/hierarchyCollectionRestrictions.d.ts.map +1 -0
  524. package/dist/utilities/hierarchyCollectionRestrictions.js +17 -0
  525. package/dist/utilities/hierarchyCollectionRestrictions.js.map +1 -0
  526. package/dist/utilities/renderTable.d.ts +2 -1
  527. package/dist/utilities/renderTable.d.ts.map +1 -1
  528. package/dist/utilities/renderTable.js +2 -0
  529. package/dist/utilities/renderTable.js.map +1 -1
  530. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  531. package/dist/utilities/schedulePublishHandler.js +3 -0
  532. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  533. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  534. package/dist/utilities/serverFunctionRegistry.js +2 -0
  535. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  536. package/dist/utilities/traverseForLocalizedFields.d.ts +7 -2
  537. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  538. package/dist/utilities/traverseForLocalizedFields.js +22 -8
  539. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  540. package/dist/views/API/index.css +1 -2
  541. package/dist/views/CreateFirstUser/index.css +0 -2
  542. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  543. package/dist/views/CreateFirstUser/index.js +4 -2
  544. package/dist/views/CreateFirstUser/index.js.map +1 -1
  545. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  546. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +31 -21
  547. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  548. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +1 -2
  549. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  550. package/dist/views/Dashboard/Default/ModularDashboard/index.css +4 -3
  551. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts +1 -1
  552. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
  553. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +16 -4
  554. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  555. package/dist/views/Document/index.js +1 -1
  556. package/dist/views/Document/index.js.map +1 -1
  557. package/dist/views/Document/renderDocumentSlots.d.ts +1 -1
  558. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  559. package/dist/views/Document/renderDocumentSlots.js +10 -3
  560. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  561. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  562. package/dist/views/Edit/Auth/APIKey.js +1 -0
  563. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  564. package/dist/views/Edit/Auth/index.css +4 -5
  565. package/dist/views/Edit/index.css +26 -0
  566. package/dist/views/Edit/index.d.ts.map +1 -1
  567. package/dist/views/Edit/index.js +1 -1
  568. package/dist/views/Edit/index.js.map +1 -1
  569. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  570. package/dist/views/ForgotPassword/index.js +1 -3
  571. package/dist/views/ForgotPassword/index.js.map +1 -1
  572. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  573. package/dist/views/HierarchyList/DocumentListSelection/index.js +103 -105
  574. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  575. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +4 -1
  576. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
  577. package/dist/views/HierarchyList/HierarchyListHeader/index.js +26 -14
  578. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  579. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
  580. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +44 -86
  581. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  582. package/dist/views/HierarchyList/HierarchyTable/index.css +8 -31
  583. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +3 -1
  584. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  585. package/dist/views/HierarchyList/HierarchyTable/index.js +78 -5
  586. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  587. package/dist/views/HierarchyList/getHierarchyListURL.d.ts +7 -0
  588. package/dist/views/HierarchyList/getHierarchyListURL.d.ts.map +1 -0
  589. package/dist/views/HierarchyList/getHierarchyListURL.js +22 -0
  590. package/dist/views/HierarchyList/getHierarchyListURL.js.map +1 -0
  591. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  592. package/dist/views/HierarchyList/index.js +35 -11
  593. package/dist/views/HierarchyList/index.js.map +1 -1
  594. package/dist/views/List/DocumentGrid/index.d.ts +17 -0
  595. package/dist/views/List/DocumentGrid/index.d.ts.map +1 -0
  596. package/dist/views/List/DocumentGrid/index.js +117 -0
  597. package/dist/views/List/DocumentGrid/index.js.map +1 -0
  598. package/dist/views/List/GroupedDocumentGrid/index.css +17 -0
  599. package/dist/views/List/GroupedDocumentGrid/index.d.ts +14 -0
  600. package/dist/views/List/GroupedDocumentGrid/index.d.ts.map +1 -0
  601. package/dist/views/List/GroupedDocumentGrid/index.js +99 -0
  602. package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -0
  603. package/dist/views/List/ListHeader/index.css +4 -5
  604. package/dist/views/List/ListHeader/index.d.ts +3 -1
  605. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  606. package/dist/views/List/ListHeader/index.js +15 -4
  607. package/dist/views/List/ListHeader/index.js.map +1 -1
  608. package/dist/views/List/enrichDocsWithVersionStatus.d.ts.map +1 -1
  609. package/dist/views/List/enrichDocsWithVersionStatus.js +3 -1
  610. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  611. package/dist/views/List/getDocumentListItemURL.d.ts +9 -0
  612. package/dist/views/List/getDocumentListItemURL.d.ts.map +1 -0
  613. package/dist/views/List/getDocumentListItemURL.js +23 -0
  614. package/dist/views/List/getDocumentListItemURL.js.map +1 -0
  615. package/dist/views/List/handleGroupBy.d.ts +6 -2
  616. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  617. package/dist/views/List/handleGroupBy.js +13 -3
  618. package/dist/views/List/handleGroupBy.js.map +1 -1
  619. package/dist/views/List/index.client.d.ts.map +1 -1
  620. package/dist/views/List/index.client.js +63 -18
  621. package/dist/views/List/index.client.js.map +1 -1
  622. package/dist/views/List/index.css +1 -1
  623. package/dist/views/List/index.d.ts.map +1 -1
  624. package/dist/views/List/index.js +91 -11
  625. package/dist/views/List/index.js.map +1 -1
  626. package/dist/views/List/renderListViewSlots.d.ts +3 -2
  627. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  628. package/dist/views/List/renderListViewSlots.js +12 -4
  629. package/dist/views/List/renderListViewSlots.js.map +1 -1
  630. package/dist/views/List/resolveDocumentListItemURL.d.ts +11 -0
  631. package/dist/views/List/resolveDocumentListItemURL.d.ts.map +1 -0
  632. package/dist/views/List/resolveDocumentListItemURL.js +30 -0
  633. package/dist/views/List/resolveDocumentListItemURL.js.map +1 -0
  634. package/dist/views/NotFound/index.css +0 -2
  635. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  636. package/dist/views/ResetPassword/index.js +1 -3
  637. package/dist/views/ResetPassword/index.js.map +1 -1
  638. package/dist/views/Root/getRouteData.d.ts +1 -8
  639. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  640. package/dist/views/Root/getRouteData.js +3 -12
  641. package/dist/views/Root/getRouteData.js.map +1 -1
  642. package/dist/views/Unauthorized/index.css +0 -2
  643. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  644. package/dist/views/Unauthorized/index.js +2 -1
  645. package/dist/views/Unauthorized/index.js.map +1 -1
  646. package/dist/views/Version/Default/index.css +7 -11
  647. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.css +0 -1
  648. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +2 -12
  649. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  650. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.css +0 -1
  651. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +2 -2
  652. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  653. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +2 -2
  654. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  655. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +2 -2
  656. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  657. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +2 -2
  658. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  659. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.css +3 -4
  660. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +2 -2
  661. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  662. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +0 -1
  663. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +2 -2
  664. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  665. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  666. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +2 -2
  667. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  668. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +8 -8
  669. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  670. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +2 -2
  671. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  672. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +0 -1
  673. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
  674. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +2 -2
  675. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  676. package/dist/views/Versions/VersionPillLabel/index.css +1 -2
  677. package/dist/views/Versions/index.css +1 -1
  678. package/dist/widgets/CollectionCards/index.css +0 -1
  679. package/dist/widgets/CollectionQuery/index.css +4 -6
  680. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +1 -1
  681. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +31 -5
  682. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +1 -1
  683. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.css +41 -0
  684. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts +19 -0
  685. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts.map +1 -0
  686. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js +121 -0
  687. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js.map +1 -0
  688. package/dist/widgets/RecentlyViewed/getDocuments.d.ts +20 -0
  689. package/dist/widgets/RecentlyViewed/getDocuments.d.ts.map +1 -0
  690. package/dist/widgets/RecentlyViewed/getDocuments.js +251 -0
  691. package/dist/widgets/RecentlyViewed/getDocuments.js.map +1 -0
  692. package/dist/widgets/RecentlyViewed/index.client.d.ts +41 -0
  693. package/dist/widgets/RecentlyViewed/index.client.d.ts.map +1 -0
  694. package/dist/widgets/RecentlyViewed/index.client.js +404 -0
  695. package/dist/widgets/RecentlyViewed/index.client.js.map +1 -0
  696. package/dist/widgets/RecentlyViewed/index.css +352 -0
  697. package/dist/widgets/RecentlyViewed/index.d.ts +1 -1
  698. package/dist/widgets/RecentlyViewed/index.d.ts.map +1 -1
  699. package/dist/widgets/RecentlyViewed/index.js +33 -134
  700. package/dist/widgets/RecentlyViewed/index.js.map +1 -1
  701. package/dist/widgets/RecentlyViewed/pinnedPreferences.d.ts +18 -0
  702. package/dist/widgets/RecentlyViewed/pinnedPreferences.d.ts.map +1 -0
  703. package/dist/widgets/RecentlyViewed/pinnedPreferences.js +81 -0
  704. package/dist/widgets/RecentlyViewed/pinnedPreferences.js.map +1 -0
  705. package/dist/widgets/RecentlyViewed/recents.d.ts +8 -0
  706. package/dist/widgets/RecentlyViewed/recents.d.ts.map +1 -0
  707. package/dist/widgets/RecentlyViewed/recents.js +19 -0
  708. package/dist/widgets/RecentlyViewed/recents.js.map +1 -0
  709. package/dist/widgets/Welcome/index.css +16 -9
  710. package/dist/widgets/WidgetCard/index.css +4 -8
  711. package/package.json +8 -8
  712. package/dist/utilities/dateLocales.d.ts +0 -30
  713. package/dist/utilities/dateLocales.d.ts.map +0 -1
  714. package/dist/utilities/dateLocales.js +0 -57
  715. package/dist/utilities/dateLocales.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","isNumber","React","Pagination","PerPage","useTableID","useListQuery","useTranslation","baseClass","PageControlsComponent","t0","$","AfterPageControls","countLabel","data","handlePageChange","handlePerPageChange","limit","limits","tableId","i18n","resolvedTableID","t1","hasNextPage","hasPrevPage","nextPage","page","pagingCounter","prevPage","totalDocs","totalPages","label","t","_jsxs","className","children","_jsx","numberOfNeighbors","onChange","handleChange","resetPage","PageControls","collectionConfig","defaultLimit","initialLimit","query","t2","admin","pagination","t3"],"sources":["../../../src/elements/PageControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, PaginatedDocs } from 'payload'\n\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport type { IListQueryContext } from '../../providers/ListQuery/types.js'\n\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { useTableID } from '../../elements/Table/TableIdentity.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'page-controls'\n\n/**\n * @internal\n */\nexport const PageControlsComponent: React.FC<{\n AfterPageControls?: React.ReactNode\n countLabel?: string\n data: PaginatedDocs\n handlePageChange?: IListQueryContext['handlePageChange']\n handlePerPageChange?: IListQueryContext['handlePerPageChange']\n limit?: number\n limits?: number[]\n tableId?: string\n}> = ({\n AfterPageControls,\n countLabel,\n data,\n handlePageChange,\n handlePerPageChange,\n limit,\n limits,\n tableId,\n}) => {\n const { i18n } = useTranslation()\n const resolvedTableID = useTableID(tableId)\n const label = countLabel ?? i18n.t(data.totalDocs === 1 ? 'general:item' : 'general:items')\n\n return (\n <div className={baseClass}>\n {AfterPageControls}\n <div className={`${baseClass}__inner`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n tableId={resolvedTableID}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <div className={`${baseClass}__per-page-container`}>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n <span className=\"sr-only\"> {label}</span>\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={limit}\n limits={limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n tableId={resolvedTableID}\n />\n </div>\n )}\n </div>\n </div>\n )\n}\n\n/**\n * These page controls are controlled by the global ListQuery state.\n * To override thi behavior, build your own wrapper around PageControlsComponent.\n *\n * @internal\n */\nexport const PageControls: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n tableId?: string\n}> = ({ AfterPageControls, collectionConfig, tableId }) => {\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n\n return (\n <PageControlsComponent\n AfterPageControls={AfterPageControls}\n data={data}\n handlePageChange={handlePageChange}\n handlePerPageChange={handlePerPageChange}\n limit={isNumber(query.limit) ? query.limit : initialLimit}\n limits={collectionConfig?.admin?.pagination?.limits}\n tableId={tableId}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","isNumber","React","Pagination","PerPage","useTableID","useEmbed","useListQuery","useTranslation","baseClass","PageControlsComponent","t0","$","AfterPageControls","countLabel","data","handlePageChange","handlePerPageChange","limit","limits","tableId","isEmbedded","i18n","resolvedTableID","t1","hasNextPage","hasPrevPage","nextPage","page","pagingCounter","prevPage","totalDocs","totalPages","label","t","t2","t3","filter","Boolean","_jsxs","className","join","children","_jsx","numberOfNeighbors","onChange","handleChange","resetPage","PageControls","collectionConfig","defaultLimit","initialLimit","query","admin","pagination"],"sources":["../../../src/elements/PageControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, PaginatedDocs } from 'payload'\n\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport type { IListQueryContext } from '../../providers/ListQuery/types.js'\n\nimport { Pagination } from '../../elements/Pagination/index.js'\nimport { PerPage } from '../../elements/PerPage/index.js'\nimport { useTableID } from '../../elements/Table/TableIdentity.js'\nimport { useEmbed } from '../../providers/Embed/index.js'\nimport { useListQuery } from '../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'page-controls'\n\n/**\n * @internal\n */\nexport const PageControlsComponent: React.FC<{\n AfterPageControls?: React.ReactNode\n countLabel?: string\n data: PaginatedDocs\n handlePageChange?: IListQueryContext['handlePageChange']\n handlePerPageChange?: IListQueryContext['handlePerPageChange']\n limit?: number\n limits?: number[]\n tableId?: string\n}> = ({\n AfterPageControls,\n countLabel,\n data,\n handlePageChange,\n handlePerPageChange,\n limit,\n limits,\n tableId,\n}) => {\n const { isEmbedded } = useEmbed()\n const { i18n } = useTranslation()\n const resolvedTableID = useTableID(tableId)\n const label = countLabel ?? i18n.t(data.totalDocs === 1 ? 'general:item' : 'general:items')\n\n return (\n <div className={[baseClass, isEmbedded && `${baseClass}--embedded`].filter(Boolean).join(' ')}>\n {AfterPageControls}\n <div className={`${baseClass}__inner`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n tableId={resolvedTableID}\n totalPages={data.totalPages}\n />\n {data.totalDocs > 0 && (\n <div className={`${baseClass}__per-page-container`}>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n <span className=\"sr-only\"> {label}</span>\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={limit}\n limits={limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n tableId={resolvedTableID}\n />\n </div>\n )}\n </div>\n </div>\n )\n}\n\n/**\n * These page controls are controlled by the global ListQuery state.\n * To override thi behavior, build your own wrapper around PageControlsComponent.\n *\n * @internal\n */\nexport const PageControls: React.FC<{\n AfterPageControls?: React.ReactNode\n collectionConfig: ClientCollectionConfig\n tableId?: string\n}> = ({ AfterPageControls, collectionConfig, tableId }) => {\n const {\n data,\n defaultLimit: initialLimit,\n handlePageChange,\n handlePerPageChange,\n query,\n } = useListQuery()\n\n return (\n <PageControlsComponent\n AfterPageControls={AfterPageControls}\n data={data}\n handlePageChange={handlePageChange}\n handlePerPageChange={handlePerPageChange}\n limit={isNumber(query.limit) ? query.limit : initialLimit}\n limits={collectionConfig?.admin?.pagination?.limits}\n tableId={tableId}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -7,7 +7,6 @@
7
7
 
8
8
  .simple-pagination__info {
9
9
  color: var(--color-text-secondary);
10
- font-family: var(--text-body-medium-font-family);
11
10
  font-size: var(--text-body-medium-font-size);
12
11
  font-weight: var(--text-body-medium-font-weight);
13
12
  line-height: var(--text-body-medium-line-height);
@@ -20,7 +20,6 @@
20
20
  border-radius: var(--field-border-radius);
21
21
  background: var(--color-bg-secondary);
22
22
  color: var(--field-color-text);
23
- font-family: var(--text-body-medium-font-family);
24
23
  font-size: var(--text-body-medium-font-size);
25
24
  font-weight: var(--text-body-medium-font-weight);
26
25
  line-height: var(--text-body-medium-line-height);
@@ -46,7 +45,6 @@
46
45
 
47
46
  .paginator__page-total {
48
47
  color: var(--color-text);
49
- font-family: var(--text-body-medium-font-family);
50
48
  font-size: var(--text-body-medium-font-size);
51
49
  font-weight: var(--text-body-medium-font-weight);
52
50
  line-height: var(--text-body-medium-line-height);
@@ -12,7 +12,6 @@
12
12
 
13
13
  .per-page__label {
14
14
  color: var(--color-text-secondary);
15
- font-family: var(--text-body-medium-font-family);
16
15
  font-size: var(--text-body-medium-font-size);
17
16
  font-weight: var(--text-body-medium-font-weight);
18
17
  line-height: var(--text-body-medium-line-height);
@@ -6,7 +6,6 @@
6
6
  --pill-icon-size: var(--spacer-4);
7
7
  padding: var(--pill-padding-block) var(--pill-padding-inline-end) var(--pill-padding-block)
8
8
  var(--pill-padding-inline-start);
9
- font-family: var(--text-body-medium-font-family);
10
9
  font-size: var(--text-body-medium-font-size);
11
10
  font-style: normal;
12
11
  font-weight: var(--text-body-medium-font-weight);
@@ -10,6 +10,10 @@
10
10
  align-self: stretch;
11
11
  }
12
12
 
13
+ .popup-button-list > .popup-divider:first-child {
14
+ display: none;
15
+ }
16
+
13
17
  [dir='rtl'] .popup-button-list__text-align--left {
14
18
  text-align: right;
15
19
  }
@@ -41,7 +45,6 @@
41
45
  flex: 1;
42
46
  width: 100%;
43
47
  color: var(--popup-item-color, var(--color-text));
44
- font-family: var(--text-body-medium-font-family);
45
48
  font-size: var(--text-body-medium-font-size);
46
49
  font-weight: var(--text-body-medium-font-weight);
47
50
  line-height: var(--text-body-medium-line-height);
@@ -51,7 +54,6 @@
51
54
  .popup-button-list__label {
52
55
  display: flex;
53
56
  align-items: center;
54
- font-family: var(--text-body-medium-font-family);
55
57
  font-size: var(--text-body-medium-font-size);
56
58
  font-weight: var(--text-body-medium-font-weight);
57
59
  letter-spacing: var(--text-body-medium-letter-spacing);
@@ -34,6 +34,7 @@ export declare const CheckboxGroup: React.FC<{
34
34
  type MenuButtonProps = {
35
35
  active?: boolean;
36
36
  ariaChecked?: boolean;
37
+ ariaCurrent?: React.AriaAttributes['aria-current'];
37
38
  children: React.ReactNode;
38
39
  className?: string;
39
40
  disabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,aAAa,CAAA;AAcpB,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,mBAAmB,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;CACxC,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACzB,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAOA,CAAA;AAED,eAAO,MAAM,aAAa;cAXd,KAAK,CAAC,SAAS;gBACb,MAAM;EAUmB,CAAA;AAEvC,KAAK,eAAe,GAAG;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACxC,IAAI,CAAC,EAAE,UAAU,GAAG,kBAAkB,GAAG,eAAe,CAAA;CACzD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAyF5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAYlE,CAAA;AAED,gFAAgF;AAChF,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAYrE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,aAAa,CAAA;AAcpB,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,mBAAmB,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;CACxC,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACzB,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAOA,CAAA;AAED,eAAO,MAAM,aAAa;cAXd,KAAK,CAAC,SAAS;gBACb,MAAM;EAUmB,CAAA;AAEvC,KAAK,eAAe,GAAG;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;IAClD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;IACxC,IAAI,CAAC,EAAE,UAAU,GAAG,kBAAkB,GAAG,eAAe,CAAA;CACzD,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA6F5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAYlE,CAAA;AAED,gFAAgF;AAChF,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAYrE,CAAA"}
@@ -65,6 +65,7 @@ export const Button = ({
65
65
  id,
66
66
  active,
67
67
  ariaChecked,
68
+ ariaCurrent,
68
69
  children,
69
70
  className,
70
71
  disabled,
@@ -83,6 +84,7 @@ export const Button = ({
83
84
  if (href) {
84
85
  return /*#__PURE__*/_jsxs(Link, {
85
86
  "aria-checked": ariaChecked,
87
+ "aria-current": ariaCurrent,
86
88
  className: classes,
87
89
  href: href,
88
90
  id: id,
@@ -103,6 +105,7 @@ export const Button = ({
103
105
  if (onClick) {
104
106
  return /*#__PURE__*/_jsxs("button", {
105
107
  "aria-checked": ariaChecked,
108
+ "aria-current": ariaCurrent,
106
109
  className: classes,
107
110
  id: id,
108
111
  onClick: e => {
@@ -121,6 +124,7 @@ export const Button = ({
121
124
  }
122
125
  }
123
126
  return /*#__PURE__*/_jsxs("button", {
127
+ "aria-current": ariaCurrent,
124
128
  "aria-disabled": "true",
125
129
  className: classes,
126
130
  "data-popup-prevent-close": true,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","CheckIcon","Link","baseClass","Group","children","className","role","_jsx","PopupListDivider","Divider","PopupListGroupLabel","GroupLabel","SubmenuTrigger","ButtonGroup","buttonSize","textAlign","classes","filter","Boolean","join","MenuItem","size","RadioGroup","CheckboxGroup","Button","id","active","ariaChecked","disabled","href","icon","onClick","iconElement","_jsxs","e","prefetch","tabIndex","type","event","preventDefault","onKeyDown","key","RadioGroupItem","props","undefined","CheckboxGroupItem"],"sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"sourcesContent":["'use client'\nimport type { LinkAdapterProps } from 'payload'\n\nimport * as React from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { Link } from '../../Link/index.js'\nimport './index.css'\n\nconst baseClass = 'popup-button-list'\n\nconst Group: React.FC<{\n children: React.ReactNode\n className?: string\n role?: 'group'\n}> = ({ children, className, role }) => (\n <div className={className} role={role}>\n {children}\n </div>\n)\n\nexport { PopupListDivider as Divider } from '../PopupDivider/index.js'\nexport { PopupListGroupLabel as GroupLabel } from '../PopupGroupLabel/index.js'\nexport { SubmenuTrigger } from './SubmenuTrigger/index.js'\n\nexport const ButtonGroup: React.FC<{\n buttonSize?: 'default' | 'medium'\n children: React.ReactNode\n className?: string\n textAlign?: 'center' | 'left' | 'right'\n}> = ({ buttonSize = 'default', children, className, textAlign = 'left' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}__text-align--${textAlign}`,\n `${baseClass}__button-size--${buttonSize}`,\n ]\n .filter(Boolean)\n .join(' ')\n return <Group className={classes}>{children}</Group>\n}\n\n/**\n * A ButtonGroup variant for action menu items.\n * @param size - 'large' for 24px icons (default), 'small' for 16px icons\n */\nexport const MenuItem: React.FC<{\n children: React.ReactNode\n className?: string\n size?: 'large' | 'small'\n}> = ({ children, className, size = 'large' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}--with-actions`,\n size === 'large' && `${baseClass}--large`,\n ]\n .filter(Boolean)\n .join(' ')\n return <Group className={classes}>{children}</Group>\n}\n\n/**\n * A ButtonGroup variant for radio-style selection items.\n * Uses 16px icons with padding on label - ideal for checkbox/selection rows.\n */\nexport const RadioGroup: React.FC<{\n children: React.ReactNode\n className?: string\n}> = ({ children, className }) => {\n const classes = [baseClass, className, `${baseClass}--with-icons`].filter(Boolean).join(' ')\n return (\n <Group className={classes} role=\"group\">\n {children}\n </Group>\n )\n}\n\nexport const CheckboxGroup = RadioGroup\n\ntype MenuButtonProps = {\n active?: boolean\n ariaChecked?: boolean\n children: React.ReactNode\n className?: string\n disabled?: boolean\n href?: LinkAdapterProps['href']\n icon?: React.ReactNode\n id?: string\n onClick?: (e?: React.MouseEvent) => void\n role?: 'menuitem' | 'menuitemcheckbox' | 'menuitemradio'\n}\n\nexport const Button: React.FC<MenuButtonProps> = ({\n id,\n active,\n ariaChecked,\n children,\n className,\n disabled,\n href,\n icon,\n onClick,\n role,\n}) => {\n const classes = [\n `${baseClass}__button`,\n disabled && `${baseClass}__disabled`,\n active && `${baseClass}__button--selected`,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Always render icon element - CSS hides it outside RadioGroup/MenuItem\n const iconElement = <span className={`${baseClass}__icon`}>{icon}</span>\n\n if (!disabled) {\n if (href) {\n return (\n <Link\n aria-checked={ariaChecked}\n className={classes}\n href={href}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n prefetch={false}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </Link>\n )\n }\n\n if (onClick) {\n return (\n <button\n aria-checked={ariaChecked}\n className={classes}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n }\n }\n\n return (\n <button\n aria-disabled=\"true\"\n className={classes}\n data-popup-prevent-close\n id={id}\n onClick={(event) => event.preventDefault()}\n onKeyDown={(event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n }\n }}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n}\n\n/**\n * A Button variant for use within RadioGroup.\n * Automatically shows a checkmark icon when active.\n */\nexport const RadioGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return (\n <Button\n {...props}\n ariaChecked={Boolean(props.active)}\n className={[`${baseClass}__button--radio-group-item`, props.className]\n .filter(Boolean)\n .join(' ')}\n icon={props.active ? <CheckIcon size={16} /> : undefined}\n role=\"menuitemradio\"\n />\n )\n}\n\n/** A Button variant for independently selectable items within CheckboxGroup. */\nexport const CheckboxGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return (\n <Button\n {...props}\n ariaChecked={Boolean(props.active)}\n className={[`${baseClass}__button--radio-group-item`, props.className]\n .filter(Boolean)\n .join(' ')}\n icon={props.active ? <CheckIcon size={16} /> : undefined}\n role=\"menuitemcheckbox\"\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","CheckIcon","Link","baseClass","Group","children","className","role","_jsx","PopupListDivider","Divider","PopupListGroupLabel","GroupLabel","SubmenuTrigger","ButtonGroup","buttonSize","textAlign","classes","filter","Boolean","join","MenuItem","size","RadioGroup","CheckboxGroup","Button","id","active","ariaChecked","ariaCurrent","disabled","href","icon","onClick","iconElement","_jsxs","e","prefetch","tabIndex","type","event","preventDefault","onKeyDown","key","RadioGroupItem","props","undefined","CheckboxGroupItem"],"sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"sourcesContent":["'use client'\nimport type { LinkAdapterProps } from 'payload'\n\nimport * as React from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { Link } from '../../Link/index.js'\nimport './index.css'\n\nconst baseClass = 'popup-button-list'\n\nconst Group: React.FC<{\n children: React.ReactNode\n className?: string\n role?: 'group'\n}> = ({ children, className, role }) => (\n <div className={className} role={role}>\n {children}\n </div>\n)\n\nexport { PopupListDivider as Divider } from '../PopupDivider/index.js'\nexport { PopupListGroupLabel as GroupLabel } from '../PopupGroupLabel/index.js'\nexport { SubmenuTrigger } from './SubmenuTrigger/index.js'\n\nexport const ButtonGroup: React.FC<{\n buttonSize?: 'default' | 'medium'\n children: React.ReactNode\n className?: string\n textAlign?: 'center' | 'left' | 'right'\n}> = ({ buttonSize = 'default', children, className, textAlign = 'left' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}__text-align--${textAlign}`,\n `${baseClass}__button-size--${buttonSize}`,\n ]\n .filter(Boolean)\n .join(' ')\n return <Group className={classes}>{children}</Group>\n}\n\n/**\n * A ButtonGroup variant for action menu items.\n * @param size - 'large' for 24px icons (default), 'small' for 16px icons\n */\nexport const MenuItem: React.FC<{\n children: React.ReactNode\n className?: string\n size?: 'large' | 'small'\n}> = ({ children, className, size = 'large' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}--with-actions`,\n size === 'large' && `${baseClass}--large`,\n ]\n .filter(Boolean)\n .join(' ')\n return <Group className={classes}>{children}</Group>\n}\n\n/**\n * A ButtonGroup variant for radio-style selection items.\n * Uses 16px icons with padding on label - ideal for checkbox/selection rows.\n */\nexport const RadioGroup: React.FC<{\n children: React.ReactNode\n className?: string\n}> = ({ children, className }) => {\n const classes = [baseClass, className, `${baseClass}--with-icons`].filter(Boolean).join(' ')\n return (\n <Group className={classes} role=\"group\">\n {children}\n </Group>\n )\n}\n\nexport const CheckboxGroup = RadioGroup\n\ntype MenuButtonProps = {\n active?: boolean\n ariaChecked?: boolean\n ariaCurrent?: React.AriaAttributes['aria-current']\n children: React.ReactNode\n className?: string\n disabled?: boolean\n href?: LinkAdapterProps['href']\n icon?: React.ReactNode\n id?: string\n onClick?: (e?: React.MouseEvent) => void\n role?: 'menuitem' | 'menuitemcheckbox' | 'menuitemradio'\n}\n\nexport const Button: React.FC<MenuButtonProps> = ({\n id,\n active,\n ariaChecked,\n ariaCurrent,\n children,\n className,\n disabled,\n href,\n icon,\n onClick,\n role,\n}) => {\n const classes = [\n `${baseClass}__button`,\n disabled && `${baseClass}__disabled`,\n active && `${baseClass}__button--selected`,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Always render icon element - CSS hides it outside RadioGroup/MenuItem\n const iconElement = <span className={`${baseClass}__icon`}>{icon}</span>\n\n if (!disabled) {\n if (href) {\n return (\n <Link\n aria-checked={ariaChecked}\n aria-current={ariaCurrent}\n className={classes}\n href={href}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n prefetch={false}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </Link>\n )\n }\n\n if (onClick) {\n return (\n <button\n aria-checked={ariaChecked}\n aria-current={ariaCurrent}\n className={classes}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n }\n }\n\n return (\n <button\n aria-current={ariaCurrent}\n aria-disabled=\"true\"\n className={classes}\n data-popup-prevent-close\n id={id}\n onClick={(event) => event.preventDefault()}\n onKeyDown={(event) => {\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n }\n }}\n role={role ?? 'menuitem'}\n tabIndex={-1}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n}\n\n/**\n * A Button variant for use within RadioGroup.\n * Automatically shows a checkmark icon when active.\n */\nexport const RadioGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return (\n <Button\n {...props}\n ariaChecked={Boolean(props.active)}\n className={[`${baseClass}__button--radio-group-item`, props.className]\n .filter(Boolean)\n .join(' ')}\n icon={props.active ? <CheckIcon size={16} /> : undefined}\n role=\"menuitemradio\"\n />\n )\n}\n\n/** A Button variant for independently selectable items within CheckboxGroup. */\nexport const CheckboxGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return (\n <Button\n {...props}\n ariaChecked={Boolean(props.active)}\n className={[`${baseClass}__button--radio-group-item`, props.className]\n .filter(Boolean)\n .join(' ')}\n icon={props.active ? <CheckIcon size={16} /> : undefined}\n role=\"menuitemcheckbox\"\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,6 @@
1
1
  @layer payload-default {
2
2
  .popup-list-group-label {
3
3
  color: var(--color-text-secondary);
4
- font-family: var(--text-body-medium-font-family);
5
4
  font-size: var(--text-body-medium-font-size);
6
5
  font-weight: var(--text-body-medium-font-weight);
7
6
  letter-spacing: var(--text-body-medium-letter-spacing);
@@ -9,7 +9,7 @@ type FilesSizesWithUrl = {
9
9
  };
10
10
  export type PreviewSizesProps = {
11
11
  doc: {
12
- sizes?: FilesSizesWithUrl;
12
+ variants?: FilesSizesWithUrl;
13
13
  } & Data;
14
14
  imageCacheTag?: false | string;
15
15
  uploadConfig: SanitizedCollectionConfig['upload'];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PreviewSizes/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAyB,MAAM,SAAS,CAAA;AAE/F,OAAO,KAAuC,MAAM,OAAO,CAAA;AAI3D,OAAO,aAAa,CAAA;AAIpB,KAAK,QAAQ,GAAG;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,QAAQ,CAAA;AACZ,KAAK,iBAAiB,GAAG;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;CACxB,CAAA;AA8DD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE;QACH,KAAK,CAAC,EAAE,iBAAiB,CAAA;KAC1B,GAAG,IAAI,CAAA;IACR,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC9B,YAAY,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAA;CAClD,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoFpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PreviewSizes/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,yBAAyB,EAAyB,MAAM,SAAS,CAAA;AAE/F,OAAO,KAAuC,MAAM,OAAO,CAAA;AAI3D,OAAO,aAAa,CAAA;AAIpB,KAAK,QAAQ,GAAG;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,GAAG,QAAQ,CAAA;AACZ,KAAK,iBAAiB,GAAG;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;CACxB,CAAA;AA8DD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,GAAG,EAAE;QACH,QAAQ,CAAC,EAAE,iBAAiB,CAAA;KAC7B,GAAG,IAAI,CAAA;IACR,aAAa,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC9B,YAAY,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAA;CAClD,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAoFpD,CAAA"}
@@ -6,12 +6,12 @@ import { appendCacheTag } from '../../utilities/appendCacheTag.js';
6
6
  import { FileMeta } from '../FileDetails/FileMeta/index.js';
7
7
  import './index.css';
8
8
  const baseClass = 'preview-sizes';
9
- const sortSizes = (sizes, imageSizes) => {
10
- if (!imageSizes || imageSizes.length === 0) {
9
+ const sortSizes = (sizes, variants) => {
10
+ if (!variants || variants.length === 0) {
11
11
  return sizes;
12
12
  }
13
13
  const orderedSizes = {};
14
- imageSizes.forEach(({
14
+ variants.forEach(({
15
15
  name
16
16
  }) => {
17
17
  if (sizes[name]) {
@@ -64,13 +64,13 @@ export const PreviewSizes = ({
64
64
  uploadConfig
65
65
  }) => {
66
66
  const {
67
- imageSizes
67
+ variants
68
68
  } = uploadConfig;
69
69
  const {
70
- sizes
70
+ variants: sizes
71
71
  } = doc;
72
72
  const alt = doc?.alt || doc.filename || '';
73
- const [orderedSizes, setOrderedSizes] = useState(() => sortSizes(sizes, imageSizes));
73
+ const [orderedSizes, setOrderedSizes] = useState(() => sortSizes(sizes, variants));
74
74
  const [selectedSize, setSelectedSize] = useState(null);
75
75
  const generateImageUrl = doc_0 => {
76
76
  if (!doc_0.filename) {
@@ -81,9 +81,9 @@ export const PreviewSizes = ({
81
81
  }
82
82
  };
83
83
  useEffect(() => {
84
- setOrderedSizes(sortSizes(sizes, imageSizes));
85
- }, [sizes, imageSizes, imageCacheTag]);
86
- const mainPreviewSrc = selectedSize ? generateImageUrl(doc.sizes[selectedSize]) : generateImageUrl(doc);
84
+ setOrderedSizes(sortSizes(sizes, variants));
85
+ }, [sizes, variants, imageCacheTag]);
86
+ const mainPreviewSrc = selectedSize ? generateImageUrl(doc.variants[selectedSize]) : generateImageUrl(doc);
87
87
  const originalImage = useMemo(() => ({
88
88
  filename: doc.filename,
89
89
  filesize: doc.filesize,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useEffect","useMemo","useState","appendCacheTag","FileMeta","baseClass","sortSizes","sizes","imageSizes","length","orderedSizes","forEach","name","PreviewSizeCard","active","alt","meta","onClick","previewSrc","_jsxs","className","filter","Boolean","join","undefined","onKeyDown","e","key","role","tabIndex","_jsx","src","PreviewSizes","doc","imageCacheTag","uploadConfig","filename","setOrderedSizes","selectedSize","setSelectedSize","generateImageUrl","url","mainPreviewSrc","originalImage","filesize","height","mimeType","width","originalFilename","Object","entries","map","val","selected"],"sources":["../../../src/elements/PreviewSizes/index.tsx"],"sourcesContent":["'use client'\nimport type { Data, FileSize, SanitizedCollectionConfig, SanitizedUploadConfig } from 'payload'\n\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { appendCacheTag } from '../../utilities/appendCacheTag.js'\nimport { FileMeta } from '../FileDetails/FileMeta/index.js'\nimport './index.css'\n\nconst baseClass = 'preview-sizes'\n\ntype FileInfo = {\n url: string\n} & FileSize\ntype FilesSizesWithUrl = {\n [key: string]: FileInfo\n}\n\nconst sortSizes = (sizes: FilesSizesWithUrl, imageSizes: SanitizedUploadConfig['imageSizes']) => {\n if (!imageSizes || imageSizes.length === 0) {\n return sizes\n }\n\n const orderedSizes: FilesSizesWithUrl = {}\n\n imageSizes.forEach(({ name }) => {\n if (sizes[name]) {\n orderedSizes[name] = sizes[name]\n }\n })\n\n return orderedSizes\n}\n\ntype PreviewSizeCardProps = {\n active: boolean\n alt: string\n meta: FileInfo\n name: string\n onClick?: () => void\n previewSrc: string\n}\nconst PreviewSizeCard: React.FC<PreviewSizeCardProps> = ({\n name,\n active,\n alt,\n meta,\n onClick,\n previewSrc,\n}) => {\n return (\n <div\n className={[`${baseClass}__sizeOption`, active && `${baseClass}--selected`]\n .filter(Boolean)\n .join(' ')}\n onClick={typeof onClick === 'function' ? onClick : undefined}\n onKeyDown={(e) => {\n if (typeof onClick !== 'function') {\n return\n }\n if (e.key === 'Enter') {\n onClick()\n }\n }}\n role=\"button\"\n tabIndex={0}\n >\n <div className={`${baseClass}__image`}>\n <img alt={alt} src={previewSrc} />\n </div>\n <div className={`${baseClass}__sizeMeta`}>\n <div className={`${baseClass}__sizeName`}>{name}</div>\n <FileMeta {...meta} />\n </div>\n </div>\n )\n}\n\nexport type PreviewSizesProps = {\n doc: {\n sizes?: FilesSizesWithUrl\n } & Data\n imageCacheTag?: false | string\n uploadConfig: SanitizedCollectionConfig['upload']\n}\n\nexport const PreviewSizes: React.FC<PreviewSizesProps> = ({ doc, imageCacheTag, uploadConfig }) => {\n const { imageSizes } = uploadConfig\n const { sizes } = doc\n\n const alt = (doc as { alt?: string })?.alt || doc.filename || ''\n\n const [orderedSizes, setOrderedSizes] = useState<FilesSizesWithUrl>(() =>\n sortSizes(sizes, imageSizes),\n )\n const [selectedSize, setSelectedSize] = useState<null | string>(null)\n\n const generateImageUrl = (doc) => {\n if (!doc.filename) {\n return null\n }\n if (doc.url) {\n return appendCacheTag(doc.url, imageCacheTag)\n }\n }\n useEffect(() => {\n setOrderedSizes(sortSizes(sizes, imageSizes))\n }, [sizes, imageSizes, imageCacheTag])\n\n const mainPreviewSrc = selectedSize\n ? generateImageUrl(doc.sizes[selectedSize])\n : generateImageUrl(doc)\n\n const originalImage = useMemo(\n (): FileInfo => ({\n filename: doc.filename,\n filesize: doc.filesize,\n height: doc.height,\n mimeType: doc.mimeType,\n url: doc.url,\n width: doc.width,\n }),\n [doc],\n )\n const originalFilename = 'Original'\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__imageWrap`}>\n <div className={`${baseClass}__meta`}>\n <div className={`${baseClass}__sizeName`}>{selectedSize || originalFilename}</div>\n <FileMeta {...(selectedSize ? orderedSizes[selectedSize] : originalImage)} />\n </div>\n <img alt={alt} className={`${baseClass}__preview`} src={mainPreviewSrc} />\n </div>\n <div className={`${baseClass}__listWrap`}>\n <div className={`${baseClass}__list`}>\n <PreviewSizeCard\n active={!selectedSize}\n alt={alt}\n meta={originalImage}\n name={originalFilename}\n onClick={() => setSelectedSize(null)}\n previewSrc={generateImageUrl(doc)}\n />\n\n {Object.entries(orderedSizes).map(([key, val]) => {\n const selected = selectedSize === key\n const previewSrc = generateImageUrl(val)\n\n if (previewSrc) {\n return (\n <PreviewSizeCard\n active={selected}\n alt={alt}\n key={key}\n meta={val}\n name={key}\n onClick={() => setSelectedSize(key)}\n previewSrc={previewSrc}\n />\n )\n }\n\n return null\n })}\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useEffect","useMemo","useState","appendCacheTag","FileMeta","baseClass","sortSizes","sizes","variants","length","orderedSizes","forEach","name","PreviewSizeCard","active","alt","meta","onClick","previewSrc","_jsxs","className","filter","Boolean","join","undefined","onKeyDown","e","key","role","tabIndex","_jsx","src","PreviewSizes","doc","imageCacheTag","uploadConfig","filename","setOrderedSizes","selectedSize","setSelectedSize","generateImageUrl","url","mainPreviewSrc","originalImage","filesize","height","mimeType","width","originalFilename","Object","entries","map","val","selected"],"sources":["../../../src/elements/PreviewSizes/index.tsx"],"sourcesContent":["'use client'\nimport type { Data, FileSize, SanitizedCollectionConfig, SanitizedUploadConfig } from 'payload'\n\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { appendCacheTag } from '../../utilities/appendCacheTag.js'\nimport { FileMeta } from '../FileDetails/FileMeta/index.js'\nimport './index.css'\n\nconst baseClass = 'preview-sizes'\n\ntype FileInfo = {\n url: string\n} & FileSize\ntype FilesSizesWithUrl = {\n [key: string]: FileInfo\n}\n\nconst sortSizes = (sizes: FilesSizesWithUrl, variants: SanitizedUploadConfig['variants']) => {\n if (!variants || variants.length === 0) {\n return sizes\n }\n\n const orderedSizes: FilesSizesWithUrl = {}\n\n variants.forEach(({ name }) => {\n if (sizes[name]) {\n orderedSizes[name] = sizes[name]\n }\n })\n\n return orderedSizes\n}\n\ntype PreviewSizeCardProps = {\n active: boolean\n alt: string\n meta: FileInfo\n name: string\n onClick?: () => void\n previewSrc: string\n}\nconst PreviewSizeCard: React.FC<PreviewSizeCardProps> = ({\n name,\n active,\n alt,\n meta,\n onClick,\n previewSrc,\n}) => {\n return (\n <div\n className={[`${baseClass}__sizeOption`, active && `${baseClass}--selected`]\n .filter(Boolean)\n .join(' ')}\n onClick={typeof onClick === 'function' ? onClick : undefined}\n onKeyDown={(e) => {\n if (typeof onClick !== 'function') {\n return\n }\n if (e.key === 'Enter') {\n onClick()\n }\n }}\n role=\"button\"\n tabIndex={0}\n >\n <div className={`${baseClass}__image`}>\n <img alt={alt} src={previewSrc} />\n </div>\n <div className={`${baseClass}__sizeMeta`}>\n <div className={`${baseClass}__sizeName`}>{name}</div>\n <FileMeta {...meta} />\n </div>\n </div>\n )\n}\n\nexport type PreviewSizesProps = {\n doc: {\n variants?: FilesSizesWithUrl\n } & Data\n imageCacheTag?: false | string\n uploadConfig: SanitizedCollectionConfig['upload']\n}\n\nexport const PreviewSizes: React.FC<PreviewSizesProps> = ({ doc, imageCacheTag, uploadConfig }) => {\n const { variants } = uploadConfig\n const { variants: sizes } = doc\n\n const alt = (doc as { alt?: string })?.alt || doc.filename || ''\n\n const [orderedSizes, setOrderedSizes] = useState<FilesSizesWithUrl>(() =>\n sortSizes(sizes, variants),\n )\n const [selectedSize, setSelectedSize] = useState<null | string>(null)\n\n const generateImageUrl = (doc) => {\n if (!doc.filename) {\n return null\n }\n if (doc.url) {\n return appendCacheTag(doc.url, imageCacheTag)\n }\n }\n useEffect(() => {\n setOrderedSizes(sortSizes(sizes, variants))\n }, [sizes, variants, imageCacheTag])\n\n const mainPreviewSrc = selectedSize\n ? generateImageUrl(doc.variants[selectedSize])\n : generateImageUrl(doc)\n\n const originalImage = useMemo(\n (): FileInfo => ({\n filename: doc.filename,\n filesize: doc.filesize,\n height: doc.height,\n mimeType: doc.mimeType,\n url: doc.url,\n width: doc.width,\n }),\n [doc],\n )\n const originalFilename = 'Original'\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__imageWrap`}>\n <div className={`${baseClass}__meta`}>\n <div className={`${baseClass}__sizeName`}>{selectedSize || originalFilename}</div>\n <FileMeta {...(selectedSize ? orderedSizes[selectedSize] : originalImage)} />\n </div>\n <img alt={alt} className={`${baseClass}__preview`} src={mainPreviewSrc} />\n </div>\n <div className={`${baseClass}__listWrap`}>\n <div className={`${baseClass}__list`}>\n <PreviewSizeCard\n active={!selectedSize}\n alt={alt}\n meta={originalImage}\n name={originalFilename}\n onClick={() => setSelectedSize(null)}\n previewSrc={generateImageUrl(doc)}\n />\n\n {Object.entries(orderedSizes).map(([key, val]) => {\n const selected = selectedSize === key\n const previewSrc = generateImageUrl(val)\n\n if (previewSrc) {\n return (\n <PreviewSizeCard\n active={selected}\n alt={alt}\n key={key}\n meta={val}\n name={key}\n onClick={() => setSelectedSize(key)}\n previewSrc={previewSrc}\n />\n )\n }\n\n return null\n })}\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAKvD,OAAO,KAAsB,MAAM,OAAO,CAAA;AAa1C,OAAO,aAAa,CAAA;AAEpB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,wBAA6B,qBA8PpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAKvD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAiBpD,OAAO,aAAa,CAAA;AAEpB,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EAAE,SAAS,GACjB,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,wBAA6B,qBAqUpD"}
@@ -4,7 +4,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { getTranslation } from '@payloadcms/translations';
5
5
  import { formatAdminURL, hasAutosaveEnabled, hasLocalizeStatusEnabled } from 'payload/shared';
6
6
  import * as qs from 'qs-esm';
7
- import React, { useCallback } from 'react';
7
+ import React, { useCallback, useState } from 'react';
8
+ import { toast } from 'sonner';
8
9
  import { useForm, useFormModified } from '../../forms/Form/context.js';
9
10
  import { FormSubmit } from '../../forms/Submit/index.js';
10
11
  import { useHotkey } from '../../hooks/useHotkey.js';
@@ -14,8 +15,11 @@ import { useEditDepth } from '../../providers/EditDepth/index.js';
14
15
  import { useLocale } from '../../providers/Locale/index.js';
15
16
  import { useOperation } from '../../providers/Operation/index.js';
16
17
  import { useTranslation } from '../../providers/Translation/index.js';
18
+ import { useUploadEdits } from '../../providers/UploadEdits/index.js';
17
19
  import { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js';
18
20
  import { PopupList } from '../Popup/index.js';
21
+ import { FieldErrorsToast } from '../Toasts/fieldErrors.js';
22
+ import { validateDocumentLocales } from './validateAllLocales.js';
19
23
  import './index.css';
20
24
  export function PublishButton({
21
25
  label: labelProp
@@ -37,13 +41,18 @@ export function PublishButton({
37
41
  getEntityConfig
38
42
  } = useConfig();
39
43
  const {
44
+ getData,
40
45
  submit
41
46
  } = useForm();
47
+ const {
48
+ uploadEdits
49
+ } = useUploadEdits();
42
50
  const modified = useFormModified();
43
51
  const editDepth = useEditDepth();
44
52
  const locale = useLocale();
45
53
  const localeCode = locale?.code;
46
54
  const {
55
+ blocksMap,
47
56
  localization,
48
57
  routes: {
49
58
  api
@@ -69,7 +78,11 @@ export function PublishButton({
69
78
  }, [collectionSlug, globalSlug, getEntityConfig]);
70
79
  const hasNewerVersions = unpublishedVersionCount > 0;
71
80
  const canPublish = hasPublishPermission && (modified || hasNewerVersions || !hasPublishedDoc) && uploadStatus !== 'uploading';
72
- const hasLocalizedFields = React.useMemo(() => Boolean(entityConfig?.fields && traverseForLocalizedFields(entityConfig.fields)), [entityConfig?.fields]);
81
+ const [isValidatingLocales, setIsValidatingLocales] = useState(false);
82
+ const hasLocalizedFields = React.useMemo(() => Boolean(entityConfig?.fields && traverseForLocalizedFields({
83
+ blocksMap,
84
+ fields: entityConfig.fields
85
+ })), [blocksMap, entityConfig?.fields]);
73
86
  const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission;
74
87
  const operation = useOperation();
75
88
  const disabled = operation === 'update' && !modified;
@@ -83,7 +96,8 @@ export function PublishButton({
83
96
  depth: 0,
84
97
  draft: true,
85
98
  'fallback-locale': 'null',
86
- locale: localeCode
99
+ locale: localeCode,
100
+ uploadEdits: uploadEdits || undefined
87
101
  }, {
88
102
  addQueryPrefix: true
89
103
  });
@@ -112,7 +126,7 @@ export function PublishButton({
112
126
  },
113
127
  skipValidation: true
114
128
  });
115
- }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id]);
129
+ }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id, uploadEdits]);
116
130
  useHotkey({
117
131
  cmdCtrlKey: true,
118
132
  editDepth,
@@ -129,9 +143,56 @@ export function PublishButton({
129
143
  if (uploadStatus === 'uploading') {
130
144
  return;
131
145
  }
146
+ if (localization && hasLocalizedFields) {
147
+ setIsValidatingLocales(true);
148
+ let validation;
149
+ try {
150
+ const encodedID = id === undefined ? '' : `/${encodeURIComponent(String(id))}`;
151
+ let validationPath;
152
+ if (globalSlug) {
153
+ validationPath = `/globals/${encodeURIComponent(globalSlug)}/validate`;
154
+ } else if (collectionSlug) {
155
+ validationPath = `/${encodeURIComponent(collectionSlug)}${encodedID}/validate`;
156
+ } else {
157
+ throw new Error('Document validation requires a collection or global slug.');
158
+ }
159
+ validation = await validateDocumentLocales({
160
+ activeLocale: localeCode,
161
+ blocksMap,
162
+ data: {
163
+ ...getData(),
164
+ _status: 'published'
165
+ },
166
+ endpoint: formatAdminURL({
167
+ apiRoute: api,
168
+ path: validationPath
169
+ }),
170
+ fields: entityConfig?.fields ?? [],
171
+ locales: localization.locales.map(({
172
+ code
173
+ }) => code)
174
+ });
175
+ } catch {
176
+ toast.error(t('error:unknown'));
177
+ return;
178
+ } finally {
179
+ setIsValidatingLocales(false);
180
+ }
181
+ if (!validation.valid) {
182
+ const introMessage = t('error:followingFieldsInvalid', {
183
+ count: validation.errors.length
184
+ });
185
+ const fieldList = validation.errors.map(error => `${error.locale ? `[${error.locale}] ` : ''}${error.label ? getTranslation(error.label, i18n) : error.path}`).join(', ');
186
+ toast.error(/*#__PURE__*/_jsx(FieldErrorsToast, {
187
+ errorMessage: `${introMessage} ${fieldList}`
188
+ }));
189
+ return;
190
+ }
191
+ }
132
192
  const params_0 = qs.stringify({
133
193
  depth: 0,
134
194
  locale: localeCode,
195
+ uploadEdits: uploadEdits || undefined,
135
196
  ...(localizeStatusEnabled && {
136
197
  publishAllLocales: true
137
198
  })
@@ -153,14 +214,15 @@ export function PublishButton({
153
214
  setMostRecentVersionIsAutosaved(false);
154
215
  setHasPublishedDoc(true);
155
216
  }
156
- }, [localeCode, localizeStatusEnabled, api, collectionSlug, globalSlug, id, setHasPublishedDoc, submit, setUnpublishedVersionCount, uploadStatus, setMostRecentVersionIsAutosaved]);
217
+ }, [localeCode, localizeStatusEnabled, api, blocksMap, collectionSlug, entityConfig?.fields, getData, globalSlug, hasLocalizedFields, id, localization, i18n, setHasPublishedDoc, submit, setUnpublishedVersionCount, t, uploadStatus, setMostRecentVersionIsAutosaved, uploadEdits]);
157
218
  const publishLocale = useCallback(async locale_0 => {
158
219
  if (uploadStatus === 'uploading') {
159
220
  return;
160
221
  }
161
222
  const params_1 = qs.stringify({
162
223
  depth: 0,
163
- locale: locale_0
224
+ locale: locale_0,
225
+ uploadEdits: uploadEdits || undefined
164
226
  }, {
165
227
  addQueryPrefix: true
166
228
  });
@@ -180,7 +242,7 @@ export function PublishButton({
180
242
  setMostRecentVersionIsAutosaved(false);
181
243
  setHasPublishedDoc(true);
182
244
  }
183
- }, [api, collectionSlug, globalSlug, id, setHasPublishedDoc, setMostRecentVersionIsAutosaved, setUnpublishedVersionCount, submit, uploadStatus]);
245
+ }, [api, collectionSlug, globalSlug, id, setHasPublishedDoc, setMostRecentVersionIsAutosaved, setUnpublishedVersionCount, submit, uploadStatus, uploadEdits]);
184
246
  const activeLocale = localization && localization?.locales.find(locale_1 => typeof locale_1 === 'string' ? locale_1 === localeCode : locale_1.code === localeCode);
185
247
  const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n);
186
248
  if (!hasPublishPermission) {
@@ -189,7 +251,8 @@ export function PublishButton({
189
251
  return /*#__PURE__*/_jsx(React.Fragment, {
190
252
  children: /*#__PURE__*/_jsx(FormSubmit, {
191
253
  buttonId: "action-save",
192
- disabled: !canPublish,
254
+ disabled: !canPublish || isValidatingLocales,
255
+ loading: isValidatingLocales,
193
256
  onClick: isSpecificLocalePublishEnabled ? () => publishLocale(activeLocale.code) : publish,
194
257
  size: "medium",
195
258
  SubMenuPopupContent: isSpecificLocalePublishEnabled ? () => /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","hasAutosaveEnabled","hasLocalizeStatusEnabled","qs","React","useCallback","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","locale","localeCode","code","localization","routes","api","i18n","t","shortLabel","entityConfig","useMemo","hasNewerVersions","canPublish","hasLocalizedFields","Boolean","fields","isSpecificLocalePublishEnabled","operation","disabled","hasAutosave","saveDraft","params","stringify","depth","draft","addQueryPrefix","action","method","apiRoute","path","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","localizeStatusEnabled","publish","publishAllLocales","result","publishLocale","pathSegment","activeLocale","locales","find","activeLocaleLabel","_jsx","Fragment","buttonId","onClick","size","SubMenuPopupContent","ButtonGroup","Button","undefined","type","_jsxs","className"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasAutosaveEnabled, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport './index.css'\n\nexport function PublishButton({\n label: labelProp,\n}: { label?: string } & PublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const locale = useLocale()\n const localeCode = locale?.code\n const {\n localization,\n routes: { api },\n } = config\n\n const { i18n, t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n const shortLabel = labelProp || t('version:publish')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const hasLocalizedFields = React.useMemo(\n () => Boolean(entityConfig?.fields && traverseForLocalizedFields(entityConfig.fields)),\n [entityConfig?.fields],\n )\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n draft: true,\n 'fallback-locale': 'null',\n locale: localeCode,\n },\n { addQueryPrefix: true },\n )\n\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${id ? `/${id}` : ''}${params}`,\n })\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${params}`,\n })\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const localizeStatusEnabled = hasLocalizeStatusEnabled(entityConfig)\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale: localeCode,\n ...(localizeStatusEnabled && { publishAllLocales: true }),\n },\n { addQueryPrefix: true },\n )\n\n const action = formatAdminURL({\n apiRoute: api,\n path: `${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n localeCode,\n localizeStatusEnabled,\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale,\n },\n { addQueryPrefix: true },\n )\n\n const pathSegment = globalSlug\n ? `/globals/${globalSlug}`\n : `/${collectionSlug}${id ? `/${id}` : ''}`\n const action = formatAdminURL({\n apiRoute: api,\n path: `${pathSegment}${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n submit,\n uploadStatus,\n ],\n )\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n)\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n onClick={isSpecificLocalePublishEnabled ? () => publishLocale(activeLocale.code) : publish}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button id=\"publish-all-locales\" onClick={publish}>\n {t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : undefined\n }\n type=\"button\"\n >\n {isSpecificLocalePublishEnabled ? (\n t('version:publishIn', { locale: activeLocaleLabel })\n ) : (\n <React.Fragment>\n <span className=\"publish-button__label--full\">{label}</span>\n <span className=\"publish-button__label--short\">{shortLabel}</span>\n </React.Fragment>\n )}\n </FormSubmit>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","formatAdminURL","hasAutosaveEnabled","hasLocalizeStatusEnabled","qs","React","useCallback","useState","toast","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","useUploadEdits","traverseForLocalizedFields","PopupList","FieldErrorsToast","validateDocumentLocales","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","getData","submit","uploadEdits","modified","editDepth","locale","localeCode","code","blocksMap","localization","routes","api","i18n","t","shortLabel","entityConfig","useMemo","hasNewerVersions","canPublish","isValidatingLocales","setIsValidatingLocales","hasLocalizedFields","Boolean","fields","isSpecificLocalePublishEnabled","operation","disabled","hasAutosave","saveDraft","params","stringify","depth","draft","undefined","addQueryPrefix","action","method","apiRoute","path","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","localizeStatusEnabled","publish","validation","encodedID","encodeURIComponent","String","validationPath","Error","activeLocale","data","endpoint","locales","map","error","valid","introMessage","count","errors","length","fieldList","join","_jsx","errorMessage","publishAllLocales","result","publishLocale","pathSegment","find","activeLocaleLabel","Fragment","buttonId","loading","onClick","size","SubMenuPopupContent","ButtonGroup","Button","type","_jsxs","className"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL, hasAutosaveEnabled, hasLocalizeStatusEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useUploadEdits } from '../../providers/UploadEdits/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport { FieldErrorsToast } from '../Toasts/fieldErrors.js'\nimport { validateDocumentLocales } from './validateAllLocales.js'\nimport './index.css'\n\nexport function PublishButton({\n label: labelProp,\n}: { label?: string } & PublishButtonClientProps = {}) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { getData, submit } = useForm()\n const { uploadEdits } = useUploadEdits()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const locale = useLocale()\n const localeCode = locale?.code\n const {\n blocksMap,\n localization,\n routes: { api },\n } = config\n\n const { i18n, t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n const shortLabel = labelProp || t('version:publish')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const [isValidatingLocales, setIsValidatingLocales] = useState(false)\n\n const hasLocalizedFields = React.useMemo(\n () =>\n Boolean(\n entityConfig?.fields &&\n traverseForLocalizedFields({\n blocksMap,\n fields: entityConfig.fields,\n }),\n ),\n [blocksMap, entityConfig?.fields],\n )\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n draft: true,\n 'fallback-locale': 'null',\n locale: localeCode,\n uploadEdits: uploadEdits || undefined,\n },\n { addQueryPrefix: true },\n )\n\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${id ? `/${id}` : ''}${params}`,\n })\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = formatAdminURL({\n apiRoute: api,\n path: `/globals/${globalSlug}${params}`,\n })\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [disabled, localeCode, collectionSlug, globalSlug, submit, api, id, uploadEdits])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const localizeStatusEnabled = hasLocalizeStatusEnabled(entityConfig)\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n if (localization && hasLocalizedFields) {\n setIsValidatingLocales(true)\n let validation\n\n try {\n const encodedID = id === undefined ? '' : `/${encodeURIComponent(String(id))}`\n let validationPath: `/${string}`\n\n if (globalSlug) {\n validationPath = `/globals/${encodeURIComponent(globalSlug)}/validate`\n } else if (collectionSlug) {\n validationPath = `/${encodeURIComponent(collectionSlug)}${encodedID}/validate`\n } else {\n throw new Error('Document validation requires a collection or global slug.')\n }\n\n validation = await validateDocumentLocales({\n activeLocale: localeCode,\n blocksMap,\n data: { ...getData(), _status: 'published' },\n endpoint: formatAdminURL({ apiRoute: api, path: validationPath }),\n fields: entityConfig?.fields ?? [],\n locales: localization.locales.map(({ code }) => code),\n })\n } catch {\n toast.error(t('error:unknown'))\n return\n } finally {\n setIsValidatingLocales(false)\n }\n\n if (!validation.valid) {\n const introMessage = t('error:followingFieldsInvalid', { count: validation.errors.length })\n const fieldList = validation.errors\n .map(\n (error) =>\n `${error.locale ? `[${error.locale}] ` : ''}${\n error.label ? getTranslation(error.label, i18n) : error.path\n }`,\n )\n .join(', ')\n\n toast.error(<FieldErrorsToast errorMessage={`${introMessage} ${fieldList}`} />)\n return\n }\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale: localeCode,\n uploadEdits: uploadEdits || undefined,\n ...(localizeStatusEnabled && { publishAllLocales: true }),\n },\n { addQueryPrefix: true },\n )\n\n const action = formatAdminURL({\n apiRoute: api,\n path: `${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n localeCode,\n localizeStatusEnabled,\n api,\n blocksMap,\n collectionSlug,\n entityConfig?.fields,\n getData,\n globalSlug,\n hasLocalizedFields,\n id,\n localization,\n i18n,\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n t,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n uploadEdits,\n ])\n\n const publishLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify(\n {\n depth: 0,\n locale,\n uploadEdits: uploadEdits || undefined,\n },\n { addQueryPrefix: true },\n )\n\n const pathSegment = globalSlug\n ? `/globals/${globalSlug}`\n : `/${collectionSlug}${id ? `/${id}` : ''}`\n const action = formatAdminURL({\n apiRoute: api,\n path: `${pathSegment}${params}` as `/${string}`,\n })\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n },\n [\n api,\n collectionSlug,\n globalSlug,\n id,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n submit,\n uploadStatus,\n uploadEdits,\n ],\n )\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n)\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish || isValidatingLocales}\n loading={isValidatingLocales}\n onClick={isSpecificLocalePublishEnabled ? () => publishLocale(activeLocale.code) : publish}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button id=\"publish-all-locales\" onClick={publish}>\n {t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : undefined\n }\n type=\"button\"\n >\n {isSpecificLocalePublishEnabled ? (\n t('version:publishIn', { locale: activeLocaleLabel })\n ) : (\n <React.Fragment>\n <span className=\"publish-button__label--full\">{label}</span>\n <span className=\"publish-button__label--short\">{shortLabel}</span>\n </React.Fragment>\n )}\n </FormSubmit>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import type { ClientBlock, ClientField, Data, ValidationResult } from 'payload';
2
+ export declare function validateDocumentLocales({ activeLocale, blocksMap, data, endpoint, fields, locales, signal, }: {
3
+ activeLocale: string;
4
+ blocksMap: Record<string, ClientBlock>;
5
+ data: Data;
6
+ endpoint: string;
7
+ fields: ClientField[];
8
+ locales: string[];
9
+ signal?: AbortSignal;
10
+ }): Promise<ValidationResult>;
11
+ //# sourceMappingURL=validateAllLocales.d.ts.map