@payloadcms/ui 3.39.0-internal.32c7661 → 3.39.0

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 (461) hide show
  1. package/dist/elements/BulkUpload/ActionsBar/index.js +1 -1
  2. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  3. package/dist/elements/BulkUpload/AddFilesView/index.js +1 -1
  4. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  5. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  6. package/dist/elements/BulkUpload/EditForm/index.js +9 -0
  7. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  8. package/dist/elements/Button/index.d.ts.map +1 -1
  9. package/dist/elements/Button/index.js +3 -3
  10. package/dist/elements/Button/index.js.map +1 -1
  11. package/dist/elements/Button/index.scss +144 -83
  12. package/dist/elements/Button/types.d.ts +2 -1
  13. package/dist/elements/Button/types.d.ts.map +1 -1
  14. package/dist/elements/Button/types.js.map +1 -1
  15. package/dist/elements/CheckboxPopup/index.d.ts +17 -0
  16. package/dist/elements/CheckboxPopup/index.d.ts.map +1 -0
  17. package/dist/elements/CheckboxPopup/index.js +42 -0
  18. package/dist/elements/CheckboxPopup/index.js.map +1 -0
  19. package/dist/elements/CheckboxPopup/index.scss +19 -0
  20. package/dist/elements/CloseModalButton/index.d.ts +6 -0
  21. package/dist/elements/CloseModalButton/index.d.ts.map +1 -0
  22. package/dist/elements/CloseModalButton/index.js +27 -0
  23. package/dist/elements/CloseModalButton/index.js.map +1 -0
  24. package/dist/elements/CloseModalButton/index.scss +25 -0
  25. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  26. package/dist/elements/ColumnSelector/index.js +3 -2
  27. package/dist/elements/ColumnSelector/index.js.map +1 -1
  28. package/dist/elements/DeleteMany/index.d.ts +50 -2
  29. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  30. package/dist/elements/DeleteMany/index.js +230 -82
  31. package/dist/elements/DeleteMany/index.js.map +1 -1
  32. package/dist/elements/DocumentControls/index.d.ts +2 -2
  33. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  34. package/dist/elements/DocumentControls/index.js +25 -26
  35. package/dist/elements/DocumentControls/index.js.map +1 -1
  36. package/dist/elements/DocumentControls/index.scss +13 -3
  37. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  38. package/dist/elements/DocumentDrawer/DrawerContent.js +1 -3
  39. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  40. package/dist/elements/DrawerActionHeader/index.d.ts +12 -0
  41. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -0
  42. package/dist/elements/DrawerActionHeader/index.js +77 -0
  43. package/dist/elements/DrawerActionHeader/index.js.map +1 -0
  44. package/dist/elements/DrawerActionHeader/index.scss +24 -0
  45. package/dist/elements/DrawerContentContainer/index.d.ts +9 -0
  46. package/dist/elements/DrawerContentContainer/index.d.ts.map +1 -0
  47. package/dist/elements/DrawerContentContainer/index.js +14 -0
  48. package/dist/elements/DrawerContentContainer/index.js.map +1 -0
  49. package/dist/elements/DrawerContentContainer/index.scss +6 -0
  50. package/dist/elements/EditMany/DrawerContent.d.ts +25 -2
  51. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  52. package/dist/elements/EditMany/DrawerContent.js +37 -13
  53. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  54. package/dist/elements/EditMany/index.d.ts +5 -0
  55. package/dist/elements/EditMany/index.d.ts.map +1 -1
  56. package/dist/elements/EditMany/index.js +68 -34
  57. package/dist/elements/EditMany/index.js.map +1 -1
  58. package/dist/elements/EditMany/index.scss +0 -16
  59. package/dist/elements/FolderView/Breadcrumbs/index.d.ts +19 -0
  60. package/dist/elements/FolderView/Breadcrumbs/index.d.ts.map +1 -0
  61. package/dist/elements/FolderView/Breadcrumbs/index.js +96 -0
  62. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -0
  63. package/dist/elements/FolderView/Breadcrumbs/index.scss +56 -0
  64. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts +6 -0
  65. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +1 -0
  66. package/dist/elements/FolderView/BrowseByFolderButton/index.js +40 -0
  67. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -0
  68. package/dist/elements/FolderView/BrowseByFolderButton/index.scss +30 -0
  69. package/dist/elements/FolderView/Cell/index.client.d.ts +11 -0
  70. package/dist/elements/FolderView/Cell/index.client.d.ts.map +1 -0
  71. package/dist/elements/FolderView/Cell/index.client.js +84 -0
  72. package/dist/elements/FolderView/Cell/index.client.js.map +1 -0
  73. package/dist/elements/FolderView/Cell/index.server.d.ts +4 -0
  74. package/dist/elements/FolderView/Cell/index.server.d.ts.map +1 -0
  75. package/dist/elements/FolderView/Cell/index.server.js +13 -0
  76. package/dist/elements/FolderView/Cell/index.server.js.map +1 -0
  77. package/dist/elements/FolderView/CollectionTypePill/index.d.ts +4 -0
  78. package/dist/elements/FolderView/CollectionTypePill/index.d.ts.map +1 -0
  79. package/dist/elements/FolderView/CollectionTypePill/index.js +97 -0
  80. package/dist/elements/FolderView/CollectionTypePill/index.js.map +1 -0
  81. package/dist/elements/FolderView/CollectionTypePill/index.scss +16 -0
  82. package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts +3 -0
  83. package/dist/elements/FolderView/ColoredFolderIcon/index.d.ts.map +1 -0
  84. package/dist/elements/FolderView/ColoredFolderIcon/index.js +9 -0
  85. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -0
  86. package/dist/elements/FolderView/ColoredFolderIcon/index.scss +5 -0
  87. package/dist/elements/FolderView/CurrentFolderActions/index.d.ts +7 -0
  88. package/dist/elements/FolderView/CurrentFolderActions/index.d.ts.map +1 -0
  89. package/dist/elements/FolderView/CurrentFolderActions/index.js +146 -0
  90. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -0
  91. package/dist/elements/FolderView/DragOverlaySelection/index.d.ts +12 -0
  92. package/dist/elements/FolderView/DragOverlaySelection/index.d.ts.map +1 -0
  93. package/dist/elements/FolderView/DragOverlaySelection/index.js +67 -0
  94. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -0
  95. package/dist/elements/FolderView/DragOverlaySelection/index.scss +35 -0
  96. package/dist/elements/FolderView/DraggableTableRow/index.d.ts +18 -0
  97. package/dist/elements/FolderView/DraggableTableRow/index.d.ts.map +1 -0
  98. package/dist/elements/FolderView/DraggableTableRow/index.js +64 -0
  99. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -0
  100. package/dist/elements/FolderView/DraggableTableRow/index.scss +135 -0
  101. package/dist/elements/FolderView/DraggableWithClick/index.d.ts +15 -0
  102. package/dist/elements/FolderView/DraggableWithClick/index.d.ts.map +1 -0
  103. package/dist/elements/FolderView/DraggableWithClick/index.js +81 -0
  104. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -0
  105. package/dist/elements/FolderView/DraggableWithClick/index.scss +5 -0
  106. package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts +10 -0
  107. package/dist/elements/FolderView/Drawers/DrawerHeader/index.d.ts.map +1 -0
  108. package/dist/elements/FolderView/Drawers/DrawerHeader/index.js +55 -0
  109. package/dist/elements/FolderView/Drawers/DrawerHeader/index.js.map +1 -0
  110. package/dist/elements/FolderView/Drawers/DrawerHeader/index.scss +30 -0
  111. package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts +32 -0
  112. package/dist/elements/FolderView/Drawers/MoveToFolder/index.d.ts.map +1 -0
  113. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +493 -0
  114. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -0
  115. package/dist/elements/FolderView/Drawers/MoveToFolder/index.scss +26 -0
  116. package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts +9 -0
  117. package/dist/elements/FolderView/Drawers/NewFolder/index.d.ts.map +1 -0
  118. package/dist/elements/FolderView/Drawers/NewFolder/index.js +157 -0
  119. package/dist/elements/FolderView/Drawers/NewFolder/index.js.map +1 -0
  120. package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts +13 -0
  121. package/dist/elements/FolderView/Drawers/RenameFolder/index.d.ts.map +1 -0
  122. package/dist/elements/FolderView/Drawers/RenameFolder/index.js +140 -0
  123. package/dist/elements/FolderView/Drawers/RenameFolder/index.js.map +1 -0
  124. package/dist/elements/FolderView/Field/index.scss +12 -0
  125. package/dist/elements/FolderView/Field/index.server.d.ts +4 -0
  126. package/dist/elements/FolderView/Field/index.server.d.ts.map +1 -0
  127. package/dist/elements/FolderView/Field/index.server.js +11 -0
  128. package/dist/elements/FolderView/Field/index.server.js.map +1 -0
  129. package/dist/elements/FolderView/FolderFileCard/index.d.ts +21 -0
  130. package/dist/elements/FolderView/FolderFileCard/index.d.ts.map +1 -0
  131. package/dist/elements/FolderView/FolderFileCard/index.js +94 -0
  132. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -0
  133. package/dist/elements/FolderView/FolderFileCard/index.scss +213 -0
  134. package/dist/elements/FolderView/FolderFileTable/index.d.ts +29 -0
  135. package/dist/elements/FolderView/FolderFileTable/index.d.ts.map +1 -0
  136. package/dist/elements/FolderView/FolderFileTable/index.js +189 -0
  137. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -0
  138. package/dist/elements/FolderView/FolderFileTable/index.scss +11 -0
  139. package/dist/elements/FolderView/ItemCardGrid/index.d.ts +22 -0
  140. package/dist/elements/FolderView/ItemCardGrid/index.d.ts.map +1 -0
  141. package/dist/elements/FolderView/ItemCardGrid/index.js +100 -0
  142. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -0
  143. package/dist/elements/FolderView/ItemCardGrid/index.scss +16 -0
  144. package/dist/elements/FolderView/MoveDocToFolder/index.d.ts +34 -0
  145. package/dist/elements/FolderView/MoveDocToFolder/index.d.ts.map +1 -0
  146. package/dist/elements/FolderView/MoveDocToFolder/index.js +287 -0
  147. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -0
  148. package/dist/elements/FolderView/MoveDocToFolder/index.scss +12 -0
  149. package/dist/elements/FolderView/SimpleTable/index.d.ts +19 -0
  150. package/dist/elements/FolderView/SimpleTable/index.d.ts.map +1 -0
  151. package/dist/elements/FolderView/SimpleTable/index.js +95 -0
  152. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -0
  153. package/dist/elements/FolderView/SimpleTable/index.scss +59 -0
  154. package/dist/elements/FolderView/SortByPill/index.d.ts +4 -0
  155. package/dist/elements/FolderView/SortByPill/index.d.ts.map +1 -0
  156. package/dist/elements/FolderView/SortByPill/index.js +108 -0
  157. package/dist/elements/FolderView/SortByPill/index.js.map +1 -0
  158. package/dist/elements/FolderView/SortByPill/index.scss +16 -0
  159. package/dist/elements/FolderView/ToggleViewButtons/index.d.ts +8 -0
  160. package/dist/elements/FolderView/ToggleViewButtons/index.d.ts.map +1 -0
  161. package/dist/elements/FolderView/ToggleViewButtons/index.js +31 -0
  162. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -0
  163. package/dist/elements/FolderView/ToggleViewButtons/index.scss +17 -0
  164. package/dist/elements/Gutter/index.d.ts.map +1 -1
  165. package/dist/elements/Gutter/index.js +1 -1
  166. package/dist/elements/Gutter/index.js.map +1 -1
  167. package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts.map +1 -1
  168. package/dist/elements/ListControls/ActiveQueryPreset/index.js +93 -67
  169. package/dist/elements/ListControls/ActiveQueryPreset/index.js.map +1 -1
  170. package/dist/elements/ListControls/ActiveQueryPreset/index.scss +17 -5
  171. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -1
  172. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  173. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +5 -2
  174. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  175. package/dist/elements/ListControls/index.d.ts.map +1 -1
  176. package/dist/elements/ListControls/index.js +13 -15
  177. package/dist/elements/ListControls/index.js.map +1 -1
  178. package/dist/elements/ListControls/index.scss +1 -1
  179. package/dist/elements/ListControls/types.d.ts +1 -0
  180. package/dist/elements/ListControls/types.d.ts.map +1 -1
  181. package/dist/elements/ListControls/types.js.map +1 -1
  182. package/dist/elements/ListControls/useQueryPresets.d.ts.map +1 -1
  183. package/dist/elements/ListControls/useQueryPresets.js +19 -27
  184. package/dist/elements/ListControls/useQueryPresets.js.map +1 -1
  185. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  186. package/dist/elements/ListDrawer/DrawerContent.js +34 -22
  187. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  188. package/dist/elements/ListFolderPills/index.d.ts +9 -0
  189. package/dist/elements/ListFolderPills/index.d.ts.map +1 -0
  190. package/dist/elements/ListFolderPills/index.js +93 -0
  191. package/dist/elements/ListFolderPills/index.js.map +1 -0
  192. package/dist/elements/ListFolderPills/index.scss +7 -0
  193. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts +2 -0
  194. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -0
  195. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +98 -0
  196. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -0
  197. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts +6 -0
  198. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.d.ts.map +1 -0
  199. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +39 -0
  200. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -0
  201. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +2 -0
  202. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +1 -0
  203. package/dist/elements/ListHeader/DrawerTitleActions/index.js +2 -0
  204. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -0
  205. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +15 -0
  206. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -0
  207. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +85 -0
  208. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -0
  209. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts +8 -0
  210. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.d.ts.map +1 -0
  211. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +48 -0
  212. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -0
  213. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts +12 -0
  214. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.d.ts.map +1 -0
  215. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +168 -0
  216. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -0
  217. package/dist/elements/ListHeader/TitleActions/index.d.ts +4 -0
  218. package/dist/elements/ListHeader/TitleActions/index.d.ts.map +1 -0
  219. package/dist/elements/ListHeader/TitleActions/index.js +4 -0
  220. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -0
  221. package/dist/elements/ListHeader/index.d.ts +13 -0
  222. package/dist/elements/ListHeader/index.d.ts.map +1 -0
  223. package/dist/elements/ListHeader/index.js +29 -0
  224. package/dist/elements/ListHeader/index.js.map +1 -0
  225. package/dist/elements/ListHeader/index.scss +48 -0
  226. package/dist/elements/ListSelection/index.d.ts +22 -7
  227. package/dist/elements/ListSelection/index.d.ts.map +1 -1
  228. package/dist/elements/ListSelection/index.js +58 -60
  229. package/dist/elements/ListSelection/index.js.map +1 -1
  230. package/dist/elements/ListSelection/index.scss +10 -1
  231. package/dist/elements/NoListResults/index.d.ts +9 -0
  232. package/dist/elements/NoListResults/index.d.ts.map +1 -0
  233. package/dist/elements/NoListResults/index.js +19 -0
  234. package/dist/elements/NoListResults/index.js.map +1 -0
  235. package/dist/elements/NoListResults/index.scss +20 -0
  236. package/dist/elements/Pagination/index.js +2 -2
  237. package/dist/elements/Pagination/index.js.map +1 -1
  238. package/dist/elements/Pill/index.scss +25 -9
  239. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  240. package/dist/elements/Popup/PopupButtonList/index.js +1 -1
  241. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  242. package/dist/elements/Popup/PopupButtonList/index.scss +12 -1
  243. package/dist/elements/Popup/PopupDivider/index.scss +1 -0
  244. package/dist/elements/Popup/PopupGroupLabel/index.scss +4 -1
  245. package/dist/elements/Popup/PopupTrigger/index.js +92 -26
  246. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  247. package/dist/elements/Popup/index.d.ts +1 -0
  248. package/dist/elements/Popup/index.d.ts.map +1 -1
  249. package/dist/elements/Popup/index.js +18 -7
  250. package/dist/elements/Popup/index.js.map +1 -1
  251. package/dist/elements/Popup/index.scss +1 -0
  252. package/dist/elements/PublishMany/DrawerContent.d.ts +10 -0
  253. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -0
  254. package/dist/elements/PublishMany/DrawerContent.js +143 -0
  255. package/dist/elements/PublishMany/DrawerContent.js.map +1 -0
  256. package/dist/elements/PublishMany/index.d.ts +7 -1
  257. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  258. package/dist/elements/PublishMany/index.js +75 -110
  259. package/dist/elements/PublishMany/index.js.map +1 -1
  260. package/dist/elements/SearchBar/index.d.ts +12 -0
  261. package/dist/elements/SearchBar/index.d.ts.map +1 -0
  262. package/dist/elements/SearchBar/index.js +26 -0
  263. package/dist/elements/SearchBar/index.js.map +1 -0
  264. package/dist/elements/SearchBar/index.scss +26 -0
  265. package/dist/elements/SearchFilter/index.d.ts +23 -0
  266. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  267. package/dist/elements/SearchFilter/index.js +9 -7
  268. package/dist/elements/SearchFilter/index.js.map +1 -1
  269. package/dist/elements/SortColumn/index.scss +1 -1
  270. package/dist/elements/StepNav/types.d.ts +2 -1
  271. package/dist/elements/StepNav/types.d.ts.map +1 -1
  272. package/dist/elements/StepNav/types.js.map +1 -1
  273. package/dist/elements/Table/index.scss +33 -7
  274. package/dist/elements/UnpublishMany/DrawerContent.d.ts +10 -0
  275. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -0
  276. package/dist/elements/UnpublishMany/DrawerContent.js +134 -0
  277. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -0
  278. package/dist/elements/UnpublishMany/index.d.ts +5 -1
  279. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  280. package/dist/elements/UnpublishMany/index.js +79 -112
  281. package/dist/elements/UnpublishMany/index.js.map +1 -1
  282. package/dist/elements/Upload/index.d.ts.map +1 -1
  283. package/dist/elements/Upload/index.js +29 -16
  284. package/dist/elements/Upload/index.js.map +1 -1
  285. package/dist/elements/Upload/index.scss +0 -15
  286. package/dist/exports/client/index.d.ts +16 -2
  287. package/dist/exports/client/index.d.ts.map +1 -1
  288. package/dist/exports/client/index.js +22 -23
  289. package/dist/exports/client/index.js.map +4 -4
  290. package/dist/exports/rsc/index.d.ts +2 -0
  291. package/dist/exports/rsc/index.d.ts.map +1 -1
  292. package/dist/exports/rsc/index.js +2 -0
  293. package/dist/exports/rsc/index.js.map +1 -1
  294. package/dist/exports/shared/index.d.ts +1 -1
  295. package/dist/exports/shared/index.d.ts.map +1 -1
  296. package/dist/exports/shared/index.js +2 -2
  297. package/dist/exports/shared/index.js.map +2 -2
  298. package/dist/fields/Group/index.d.ts.map +1 -1
  299. package/dist/fields/Group/index.js +4 -4
  300. package/dist/fields/Group/index.js.map +1 -1
  301. package/dist/fields/Join/index.d.ts.map +1 -1
  302. package/dist/fields/Join/index.js +3 -1
  303. package/dist/fields/Join/index.js.map +1 -1
  304. package/dist/fields/Upload/index.scss +0 -4
  305. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
  306. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  307. package/dist/hooks/useClickOutside.d.ts +2 -0
  308. package/dist/hooks/useClickOutside.d.ts.map +1 -0
  309. package/dist/hooks/useClickOutside.js +20 -0
  310. package/dist/hooks/useClickOutside.js.map +1 -0
  311. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  312. package/dist/hooks/useUseAsTitle.js +25 -5
  313. package/dist/hooks/useUseAsTitle.js.map +1 -1
  314. package/dist/icons/Document/index.d.ts +4 -0
  315. package/dist/icons/Document/index.d.ts.map +1 -0
  316. package/dist/icons/Document/index.js +20 -0
  317. package/dist/icons/Document/index.js.map +1 -0
  318. package/dist/icons/Document/index.scss +6 -0
  319. package/dist/icons/Dots/index.scss +3 -3
  320. package/dist/icons/Folder/index.d.ts +6 -0
  321. package/dist/icons/Folder/index.d.ts.map +1 -0
  322. package/dist/icons/Folder/index.js +20 -0
  323. package/dist/icons/Folder/index.js.map +1 -0
  324. package/dist/icons/Folder/index.scss +6 -0
  325. package/dist/icons/GridView/index.d.ts +4 -0
  326. package/dist/icons/GridView/index.d.ts.map +1 -0
  327. package/dist/icons/GridView/index.js +35 -0
  328. package/dist/icons/GridView/index.js.map +1 -0
  329. package/dist/icons/GridView/index.scss +3 -0
  330. package/dist/icons/ListView/index.d.ts +4 -0
  331. package/dist/icons/ListView/index.d.ts.map +1 -0
  332. package/dist/icons/ListView/index.js +20 -0
  333. package/dist/icons/ListView/index.js.map +1 -0
  334. package/dist/icons/ListView/index.scss +3 -0
  335. package/dist/icons/MoveFolder/index.d.ts +4 -0
  336. package/dist/icons/MoveFolder/index.d.ts.map +1 -0
  337. package/dist/icons/MoveFolder/index.js +39 -0
  338. package/dist/icons/MoveFolder/index.js.map +1 -0
  339. package/dist/icons/MoveFolder/index.scss +6 -0
  340. package/dist/icons/People/index.d.ts.map +1 -1
  341. package/dist/icons/People/index.js +7 -5
  342. package/dist/icons/People/index.js.map +1 -1
  343. package/dist/icons/ThreeDots/index.d.ts +6 -0
  344. package/dist/icons/ThreeDots/index.d.ts.map +1 -0
  345. package/dist/icons/ThreeDots/index.js +12 -0
  346. package/dist/icons/ThreeDots/index.js.map +1 -0
  347. package/dist/icons/ThreeDots/index.scss +17 -0
  348. package/dist/providers/ClickOutside/index.d.ts +14 -0
  349. package/dist/providers/ClickOutside/index.d.ts.map +1 -0
  350. package/dist/providers/ClickOutside/index.js +39 -0
  351. package/dist/providers/ClickOutside/index.js.map +1 -0
  352. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  353. package/dist/providers/DocumentInfo/index.js +10 -4
  354. package/dist/providers/DocumentInfo/index.js.map +1 -1
  355. package/dist/providers/Folders/index.d.ts +119 -0
  356. package/dist/providers/Folders/index.d.ts.map +1 -0
  357. package/dist/providers/Folders/index.js +856 -0
  358. package/dist/providers/Folders/index.js.map +1 -0
  359. package/dist/providers/Folders/selection.d.ts +11 -0
  360. package/dist/providers/Folders/selection.d.ts.map +1 -0
  361. package/dist/providers/Folders/selection.js +38 -0
  362. package/dist/providers/Folders/selection.js.map +1 -0
  363. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  364. package/dist/providers/ListQuery/index.js +31 -25
  365. package/dist/providers/ListQuery/index.js.map +1 -1
  366. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  367. package/dist/providers/ListQuery/types.js.map +1 -1
  368. package/dist/providers/Preferences/index.d.ts +3 -2
  369. package/dist/providers/Preferences/index.d.ts.map +1 -1
  370. package/dist/providers/Preferences/index.js +1 -0
  371. package/dist/providers/Preferences/index.js.map +1 -1
  372. package/dist/providers/Root/index.d.ts.map +1 -1
  373. package/dist/providers/Root/index.js +99 -67
  374. package/dist/providers/Root/index.js.map +1 -1
  375. package/dist/providers/RouteCache/index.d.ts +2 -0
  376. package/dist/providers/RouteCache/index.d.ts.map +1 -1
  377. package/dist/providers/RouteCache/index.js +38 -29
  378. package/dist/providers/RouteCache/index.js.map +1 -1
  379. package/dist/providers/Selection/index.d.ts +1 -0
  380. package/dist/providers/Selection/index.d.ts.map +1 -1
  381. package/dist/providers/Selection/index.js +15 -5
  382. package/dist/providers/Selection/index.js.map +1 -1
  383. package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -1
  384. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  385. package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -0
  386. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -0
  387. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts +12 -0
  388. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -0
  389. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +13 -0
  390. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -0
  391. package/dist/providers/TableColumns/buildColumnState/index.d.ts +31 -0
  392. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -0
  393. package/dist/providers/TableColumns/buildColumnState/index.js +143 -0
  394. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -0
  395. package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts +8 -0
  396. package/dist/providers/TableColumns/buildColumnState/isColumnActive.d.ts.map +1 -0
  397. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +16 -0
  398. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -0
  399. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +18 -0
  400. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -0
  401. package/dist/providers/TableColumns/buildColumnState/renderCell.js +110 -0
  402. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -0
  403. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts +3 -0
  404. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.d.ts.map +1 -0
  405. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +20 -0
  406. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -0
  407. package/dist/scss/app.scss +6 -2
  408. package/dist/scss/resets.scss +2 -0
  409. package/dist/styles.css +1 -1
  410. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts +3 -3
  411. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  412. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  413. package/dist/utilities/renderTable.d.ts +2 -3
  414. package/dist/utilities/renderTable.d.ts.map +1 -1
  415. package/dist/utilities/renderTable.js +52 -33
  416. package/dist/utilities/renderTable.js.map +1 -1
  417. package/dist/views/BrowseByFolder/index.d.ts +8 -0
  418. package/dist/views/BrowseByFolder/index.d.ts.map +1 -0
  419. package/dist/views/BrowseByFolder/index.js +312 -0
  420. package/dist/views/BrowseByFolder/index.js.map +1 -0
  421. package/dist/views/BrowseByFolder/index.scss +174 -0
  422. package/dist/views/CollectionFolder/ListSelection/index.d.ts +7 -0
  423. package/dist/views/CollectionFolder/ListSelection/index.d.ts.map +1 -0
  424. package/dist/views/CollectionFolder/ListSelection/index.js +201 -0
  425. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -0
  426. package/dist/views/CollectionFolder/index.d.ts +5 -0
  427. package/dist/views/CollectionFolder/index.d.ts.map +1 -0
  428. package/dist/views/CollectionFolder/index.js +306 -0
  429. package/dist/views/CollectionFolder/index.js.map +1 -0
  430. package/dist/views/CollectionFolder/index.scss +162 -0
  431. package/dist/views/Edit/index.js +1 -1
  432. package/dist/views/Edit/index.js.map +1 -1
  433. package/dist/views/List/ListHeader/index.d.ts +13 -2
  434. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  435. package/dist/views/List/ListHeader/index.js +52 -113
  436. package/dist/views/List/ListHeader/index.js.map +1 -1
  437. package/dist/views/List/ListHeader/index.scss +10 -77
  438. package/dist/views/List/ListSelection/index.d.ts +10 -0
  439. package/dist/views/List/ListSelection/index.d.ts.map +1 -0
  440. package/dist/views/List/ListSelection/index.js +87 -0
  441. package/dist/views/List/ListSelection/index.js.map +1 -0
  442. package/dist/views/List/index.d.ts.map +1 -1
  443. package/dist/views/List/index.js +7 -11
  444. package/dist/views/List/index.js.map +1 -1
  445. package/dist/views/List/index.scss +0 -7
  446. package/package.json +5 -4
  447. package/dist/elements/DeleteMany/index.scss +0 -27
  448. package/dist/elements/PublishMany/index.scss +0 -21
  449. package/dist/elements/UnpublishMany/index.scss +0 -21
  450. package/dist/providers/TableColumns/buildColumnState.d.ts +0 -21
  451. package/dist/providers/TableColumns/buildColumnState.d.ts.map +0 -1
  452. package/dist/providers/TableColumns/buildColumnState.js +0 -201
  453. package/dist/providers/TableColumns/buildColumnState.js.map +0 -1
  454. package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts +0 -20
  455. package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
  456. package/dist/providers/TableColumns/buildPolymorphicColumnState.js +0 -200
  457. package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +0 -1
  458. package/dist/providers/TableColumns/filterFields.d.ts.map +0 -1
  459. package/dist/providers/TableColumns/filterFields.js.map +0 -1
  460. /package/dist/providers/TableColumns/{filterFields.d.ts → buildColumnState/filterFields.d.ts} +0 -0
  461. /package/dist/providers/TableColumns/{filterFields.js → buildColumnState/filterFields.js} +0 -0
@@ -69,7 +69,7 @@ export function ActionsBar(t0) {
69
69
  className: `${baseClass}__locationText`,
70
70
  children: [_jsx("strong", {
71
71
  children: t1
72
- }), " of ", _jsx("strong", {
72
+ }), ` ${t("general:of")} `, _jsx("strong", {
73
73
  children: forms.length
74
74
  })]
75
75
  }), _jsxs("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","useConfig","useTranslation","Button","EditManyBulkUploads","useFormsManager","baseClass","ActionsBar","t0","$","collectionConfig","activeIndex","forms","setActiveIndex","t","t1","t2","length","t3","nextIndex","t4","nextIndex_0","_jsxs","className","children","_jsx","buttonStyle","onClick","type","direction","collection","Actions","getEntityConfig","collectionSlug","hasPublishPermission","hasSavePermission","saveAllDocs","filter","Boolean","join","versions","drafts","overrides","_status"],"sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { EditManyBulkUploads } from '../EditMany/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--actions-bar'\n\ntype Props = {\n readonly collectionConfig: ClientCollectionConfig\n}\n\nexport function ActionsBar({ collectionConfig }: Props) {\n const { activeIndex, forms, setActiveIndex } = useFormsManager()\n const { t } = useTranslation()\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__navigation`}>\n <p className={`${baseClass}__locationText`}>\n <strong>{activeIndex + 1}</strong>\n {' of '}\n <strong>{forms.length}</strong>\n </p>\n\n <div className={`${baseClass}__controls`}>\n <Button\n aria-label={t('general:previous')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex - 1\n if (nextIndex < 0) {\n setActiveIndex(forms.length - 1)\n } else {\n setActiveIndex(nextIndex)\n }\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"left\" />\n </Button>\n <Button\n aria-label={t('general:next')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex + 1\n if (nextIndex === forms.length) {\n setActiveIndex(0)\n } else {\n setActiveIndex(nextIndex)\n }\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"right\" />\n </Button>\n </div>\n <EditManyBulkUploads collection={collectionConfig} />\n </div>\n\n <Actions className={`${baseClass}__saveButtons`} />\n </div>\n )\n}\n\ntype ActionsProps = {\n readonly className?: string\n}\nexport function Actions({ className }: ActionsProps) {\n const { getEntityConfig } = useConfig()\n const { t } = useTranslation()\n const { collectionSlug, hasPublishPermission, hasSavePermission, saveAllDocs } = useFormsManager()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n return (\n <div className={[`${baseClass}__buttons`, className].filter(Boolean).join(' ')}>\n {collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button\n buttonStyle=\"secondary\"\n onClick={() => void saveAllDocs({ overrides: { _status: 'draft' } })}\n >\n {t('version:saveDraft')}\n </Button>\n ) : null}\n {collectionConfig?.versions?.drafts && hasPublishPermission ? (\n <Button onClick={() => void saveAllDocs({ overrides: { _status: 'published' } })}>\n {t('version:publish')}\n </Button>\n ) : null}\n\n {!collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button onClick={() => void saveAllDocs()}>{t('general:save')}</Button>\n ) : null}\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,OAAOC,KAAA,MAAW;AAElB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,eAAe,QAAQ;AAChC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAMlB,OAAO,SAAAC,WAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAoB;IAAAY;EAAA,IAAAF,EAA2B;EACpD;IAAAG,WAAA;IAAAC,KAAA;IAAAC;EAAA,IAA+CR,eAAA;EAC/C;IAAAS;EAAA,IAAcZ,cAAA;EAMG,MAAAa,EAAA,GAAAJ,WAAA,IAAc;EAAA,IAAAK,EAAA;EAAA,IAAAP,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAC,gBAAA,IAAAD,CAAA,QAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,QAAAI,cAAA,IAAAJ,CAAA,QAAAK,CAAA,IAAAL,CAAA,QAAAM,EAAA;IAAA,IAAAG,EAAA;IAAA,IAAAT,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,QAAAI,cAAA;MASZK,EAAA,GAAAA,CAAA;QACP,MAAAC,SAAA,GAAkBR,WAAA,IAAc;QAAA,IAC5BQ,SAAA,IAAY;UACdN,cAAA,CAAeD,KAAA,CAAAK,MAAA,IAAe;QAAA;UAE9BJ,cAAA,CAAeM,SAAA;QAAA;MAAA;MAEnBV,CAAA,MAAAE,WAAA;MAAAF,CAAA,MAAAG,KAAA,CAAAK,MAAA;MAAAR,CAAA,MAAAI,cAAA;MAAAJ,CAAA,OAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IAAA,IAAAW,EAAA;IAAA,IAAAX,CAAA,SAAAE,WAAA,IAAAF,CAAA,SAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,SAAAI,cAAA;MAQSO,EAAA,GAAAA,CAAA;QACP,MAAAC,WAAA,GAAkBV,WAAA,IAAc;QAAA,IAC5BQ,WAAA,KAAcP,KAAA,CAAAK,MAAY;UAC5BJ,cAAA,EAAe;QAAA;UAEfA,cAAA,CAAeM,WAAA;QAAA;MAAA;MAEnBV,CAAA,OAAAE,WAAA;MAAAF,CAAA,OAAAG,KAAA,CAAAK,MAAA;MAAAR,CAAA,OAAAI,cAAA;MAAAJ,CAAA,OAAAW,EAAA;IAAA;MAAAA,EAAA,GAAAX,CAAA;IAAA;IAlCRO,EAAA,GAAAM,KAAA,CAAC;MAAAC,SAAA,EAAAjB,SAAA;MAAAkB,QAAA,GACCF,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAjB,SAAA,cAA0B;QAAAkB,QAAA,GACxCF,KAAA,CAAC;UAAAC,SAAA,EAAa,GAAAjB,SAAA,gBAA4B;UAAAkB,QAAA,GACxCC,IAAA,CAAC;YAAAD,QAAA,EAAQT;UAAc,C,GACtB,QACDU,IAAA,CAAC;YAAAD,QAAA,EAAQZ,KAAA,CAAAK;UAAA,C;YAGXK,KAAA,CAAC;UAAAC,SAAA,EAAe,GAAAjB,SAAA,YAAwB;UAAAkB,QAAA,GACtCC,IAAA,CAAAtB,MAAA;YAAA,cACcW,CAAA,CAAE;YAAAY,WAAA,EACF;YAAAC,OAAA,EACHT,EAOT;YAAAU,IAAA,EACK;YAAAJ,QAAA,EAELC,IAAA,CAAAzB,WAAA;cAAA6B,SAAA,EAAuB;YAAA,C;cAEzBJ,IAAA,CAAAtB,MAAA;YAAA,cACcW,CAAA,CAAE;YAAAY,WAAA,EACF;YAAAC,OAAA,EACHP,EAOT;YAAAQ,IAAA,EACK;YAAAJ,QAAA,EAELC,IAAA,CAAAzB,WAAA;cAAA6B,SAAA,EAAuB;YAAA,C;;YAG3BJ,IAAA,CAAArB,mBAAA;UAAA0B,UAAA,EAAiCpB;QAAA,C;UAGnCe,IAAA,CAAAM,OAAA;QAAAR,SAAA,EAAoB,GAAAjB,SAAA;MAA2B,C;;;;;;;;;;;;SA3CjDU,E;;AAmDJ,OAAO,SAAAe,QAAAvB,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAiB;IAAAyB;EAAA,IAAAf,EAA2B;EACjD;IAAAwB;EAAA,IAA4B/B,SAAA;EAC5B;IAAAa;EAAA,IAAcZ,cAAA;EACd;IAAA+B,cAAA;IAAAC,oBAAA;IAAAC,iBAAA;IAAAC;EAAA,IAAiF/B,eAAA;EAAA,IAAAU,EAAA;EAAA,IAAAN,CAAA,QAAAwB,cAAA,IAAAxB,CAAA,QAAAuB,eAAA;IAExDjB,EAAA,GAAAiB,eAAA;MAAAC;IAAA,CAAiC;IAAAxB,CAAA,MAAAwB,cAAA;IAAAxB,CAAA,MAAAuB,eAAA;IAAAvB,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAA1D,MAAAC,gBAAA,GAAyBK,EAAiC;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAc,SAAA;IAGxCP,EAAA,IAAC,GAAAV,SAAA,WAAuB,EAAEiB,SAAA,EAAAc,MAAA,CAAAC,OAAkB;IAAA7B,CAAA,MAAAc,SAAA;IAAAd,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAA5C,MAAAS,EAAA,GAAAF,EAA4C,CAAAuB,IAAA,CAAc;EAAA,IAAAnB,EAAA;EAAA,IAAAX,CAAA,QAAAC,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAAhC,CAAA,QAAAyB,oBAAA,IAAAzB,CAAA,QAAA0B,iBAAA,IAAA1B,CAAA,QAAA2B,WAAA,IAAA3B,CAAA,QAAAK,CAAA,IAAAL,CAAA,SAAAS,EAAA;IAA1EE,EAAA,GAAAE,KAAA,CAAC;MAAAC,SAAA,EAAeL,EAA0D;MAAAM,QAAA,GACvEd,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCN,iBAAA,GACrCV,IAAA,CAAAtB,MAAA;QAAAuB,WAAA,EACc;QAAAC,OAAA,EAAAA,CAAA,UACQS,WAAA;UAAAM,SAAA;YAAAC,OAAA,EAAoC;UAAA;QAAA,CAAU;QAAAnB,QAAA,EAEjEV,CAAA,CAAE;MAAA,C,QAEH,EACHJ,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCP,oBAAA,GACrCT,IAAA,CAAAtB,MAAA;QAAAwB,OAAA,EAAAA,CAAA,UAA4BS,WAAA;UAAAM,SAAA;YAAAC,OAAA,EAAoC;UAAA;QAAA,CAAc;QAAAnB,QAAA,EAC3EV,CAAA,CAAE;MAAA,C,QAEH,EAEH,CAACJ,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCN,iBAAA,GACtCV,IAAA,CAAAtB,MAAA;QAAAwB,OAAA,EAAAA,CAAA,UAA4BS,WAAA;QAAAZ,QAAA,EAAgBV,CAAA,CAAE;MAAA,C,QAC5C;IAAA,C;;;;;;;;;;;SAjBNM,E","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","useConfig","useTranslation","Button","EditManyBulkUploads","useFormsManager","baseClass","ActionsBar","t0","$","collectionConfig","activeIndex","forms","setActiveIndex","t","t1","t2","length","t3","nextIndex","t4","nextIndex_0","_jsxs","className","children","_jsx","buttonStyle","onClick","type","direction","collection","Actions","getEntityConfig","collectionSlug","hasPublishPermission","hasSavePermission","saveAllDocs","filter","Boolean","join","versions","drafts","overrides","_status"],"sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { EditManyBulkUploads } from '../EditMany/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--actions-bar'\n\ntype Props = {\n readonly collectionConfig: ClientCollectionConfig\n}\n\nexport function ActionsBar({ collectionConfig }: Props) {\n const { activeIndex, forms, setActiveIndex } = useFormsManager()\n const { t } = useTranslation()\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__navigation`}>\n <p className={`${baseClass}__locationText`}>\n <strong>{activeIndex + 1}</strong>\n {` ${t('general:of')} `}\n <strong>{forms.length}</strong>\n </p>\n\n <div className={`${baseClass}__controls`}>\n <Button\n aria-label={t('general:previous')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex - 1\n if (nextIndex < 0) {\n setActiveIndex(forms.length - 1)\n } else {\n setActiveIndex(nextIndex)\n }\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"left\" />\n </Button>\n <Button\n aria-label={t('general:next')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex + 1\n if (nextIndex === forms.length) {\n setActiveIndex(0)\n } else {\n setActiveIndex(nextIndex)\n }\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"right\" />\n </Button>\n </div>\n <EditManyBulkUploads collection={collectionConfig} />\n </div>\n\n <Actions className={`${baseClass}__saveButtons`} />\n </div>\n )\n}\n\ntype ActionsProps = {\n readonly className?: string\n}\nexport function Actions({ className }: ActionsProps) {\n const { getEntityConfig } = useConfig()\n const { t } = useTranslation()\n const { collectionSlug, hasPublishPermission, hasSavePermission, saveAllDocs } = useFormsManager()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n return (\n <div className={[`${baseClass}__buttons`, className].filter(Boolean).join(' ')}>\n {collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button\n buttonStyle=\"secondary\"\n onClick={() => void saveAllDocs({ overrides: { _status: 'draft' } })}\n >\n {t('version:saveDraft')}\n </Button>\n ) : null}\n {collectionConfig?.versions?.drafts && hasPublishPermission ? (\n <Button onClick={() => void saveAllDocs({ overrides: { _status: 'published' } })}>\n {t('version:publish')}\n </Button>\n ) : null}\n\n {!collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button onClick={() => void saveAllDocs()}>{t('general:save')}</Button>\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -28,7 +28,7 @@ export function AddFilesView({
28
28
  multipleFiles: true,
29
29
  onChange: onDrop,
30
30
  children: [/*#__PURE__*/_jsx(Button, {
31
- buttonStyle: "pill",
31
+ buttonStyle: "subtle",
32
32
  iconPosition: "left",
33
33
  onClick: () => {
34
34
  if (inputRef.current) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useTranslation","Button","Dropzone","DrawerHeader","baseClass","AddFilesView","acceptMimeTypes","onCancel","onDrop","t","inputRef","useRef","_jsxs","className","_jsx","onClose","title","multipleFiles","onChange","buttonStyle","iconPosition","onClick","current","click","size","accept","hidden","multiple","e","target","files","length","ref","type"],"sources":["../../../../src/elements/BulkUpload/AddFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { Dropzone } from '../../Dropzone/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--add-files'\n\ntype Props = {\n readonly acceptMimeTypes?: string\n readonly onCancel: () => void\n readonly onDrop: (acceptedFiles: FileList) => void\n}\nexport function AddFilesView({ acceptMimeTypes, onCancel, onDrop }: Props) {\n const { t } = useTranslation()\n\n const inputRef = React.useRef(null)\n\n return (\n <div className={baseClass}>\n <DrawerHeader onClose={onCancel} title={t('upload:addFiles')} />\n <div className={`${baseClass}__dropArea`}>\n <Dropzone multipleFiles onChange={onDrop}>\n <Button\n buttonStyle=\"pill\"\n iconPosition=\"left\"\n onClick={() => {\n if (inputRef.current) {\n inputRef.current.click()\n }\n }}\n size=\"small\"\n >\n {t('upload:selectFile')}\n </Button>\n <input\n accept={acceptMimeTypes}\n aria-hidden=\"true\"\n className={`${baseClass}__hidden-input`}\n hidden\n multiple\n onChange={(e) => {\n if (e.target.files && e.target.files.length > 0) {\n onDrop(e.target.files)\n }\n }}\n ref={inputRef}\n type=\"file\"\n />\n\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n </Dropzone>\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,QAAQ;AAC7B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAOlB,OAAO,SAASC,aAAa;EAAEC,eAAe;EAAEC,QAAQ;EAAEC;AAAM,CAAS;EACvE,MAAM;IAAEC;EAAC,CAAE,GAAGT,cAAA;EAEd,MAAMU,QAAA,GAAWX,KAAA,CAAMY,MAAM,CAAC;EAE9B,oBACEC,KAAA,CAAC;IAAIC,SAAA,EAAWT,SAAA;4BACdU,IAAA,CAACX,YAAA;MAAaY,OAAA,EAASR,QAAA;MAAUS,KAAA,EAAOP,CAAA,CAAE;qBAC1CK,IAAA,CAAC;MAAID,SAAA,EAAW,GAAGT,SAAA,YAAqB;gBACtC,aAAAQ,KAAA,CAACV,QAAA;QAASe,aAAa;QAACC,QAAA,EAAUV,MAAA;gCAChCM,IAAA,CAACb,MAAA;UACCkB,WAAA,EAAY;UACZC,YAAA,EAAa;UACbC,OAAA,EAASA,CAAA;YACP,IAAIX,QAAA,CAASY,OAAO,EAAE;cACpBZ,QAAA,CAASY,OAAO,CAACC,KAAK;YACxB;UACF;UACAC,IAAA,EAAK;oBAEJf,CAAA,CAAE;yBAELK,IAAA,CAAC;UACCW,MAAA,EAAQnB,eAAA;UACR,eAAY;UACZO,SAAA,EAAW,GAAGT,SAAA,gBAAyB;UACvCsB,MAAM;UACNC,QAAQ;UACRT,QAAA,EAAWU,CAAA;YACT,IAAIA,CAAA,CAAEC,MAAM,CAACC,KAAK,IAAIF,CAAA,CAAEC,MAAM,CAACC,KAAK,CAACC,MAAM,GAAG,GAAG;cAC/CvB,MAAA,CAAOoB,CAAA,CAAEC,MAAM,CAACC,KAAK;YACvB;UACF;UACAE,GAAA,EAAKtB,QAAA;UACLuB,IAAA,EAAK;yBAGPrB,KAAA,CAAC;UAAEC,SAAA,EAAW,GAAGT,SAAA,mBAA4B;qBAC1CK,CAAA,CAAE,eAAc,KAAEA,CAAA,CAAE;;;;;AAMjC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useTranslation","Button","Dropzone","DrawerHeader","baseClass","AddFilesView","acceptMimeTypes","onCancel","onDrop","t","inputRef","useRef","_jsxs","className","_jsx","onClose","title","multipleFiles","onChange","buttonStyle","iconPosition","onClick","current","click","size","accept","hidden","multiple","e","target","files","length","ref","type"],"sources":["../../../../src/elements/BulkUpload/AddFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { Dropzone } from '../../Dropzone/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--add-files'\n\ntype Props = {\n readonly acceptMimeTypes?: string\n readonly onCancel: () => void\n readonly onDrop: (acceptedFiles: FileList) => void\n}\nexport function AddFilesView({ acceptMimeTypes, onCancel, onDrop }: Props) {\n const { t } = useTranslation()\n\n const inputRef = React.useRef(null)\n\n return (\n <div className={baseClass}>\n <DrawerHeader onClose={onCancel} title={t('upload:addFiles')} />\n <div className={`${baseClass}__dropArea`}>\n <Dropzone multipleFiles onChange={onDrop}>\n <Button\n buttonStyle=\"subtle\"\n iconPosition=\"left\"\n onClick={() => {\n if (inputRef.current) {\n inputRef.current.click()\n }\n }}\n size=\"small\"\n >\n {t('upload:selectFile')}\n </Button>\n <input\n accept={acceptMimeTypes}\n aria-hidden=\"true\"\n className={`${baseClass}__hidden-input`}\n hidden\n multiple\n onChange={(e) => {\n if (e.target.files && e.target.files.length > 0) {\n onDrop(e.target.files)\n }\n }}\n ref={inputRef}\n type=\"file\"\n />\n\n <p className={`${baseClass}__dragAndDropText`}>\n {t('general:or')} {t('upload:dragAndDrop')}\n </p>\n </Dropzone>\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,QAAQ;AAC7B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAOlB,OAAO,SAASC,aAAa;EAAEC,eAAe;EAAEC,QAAQ;EAAEC;AAAM,CAAS;EACvE,MAAM;IAAEC;EAAC,CAAE,GAAGT,cAAA;EAEd,MAAMU,QAAA,GAAWX,KAAA,CAAMY,MAAM,CAAC;EAE9B,oBACEC,KAAA,CAAC;IAAIC,SAAA,EAAWT,SAAA;4BACdU,IAAA,CAACX,YAAA;MAAaY,OAAA,EAASR,QAAA;MAAUS,KAAA,EAAOP,CAAA,CAAE;qBAC1CK,IAAA,CAAC;MAAID,SAAA,EAAW,GAAGT,SAAA,YAAqB;gBACtC,aAAAQ,KAAA,CAACV,QAAA;QAASe,aAAa;QAACC,QAAA,EAAUV,MAAA;gCAChCM,IAAA,CAACb,MAAA;UACCkB,WAAA,EAAY;UACZC,YAAA,EAAa;UACbC,OAAA,EAASA,CAAA;YACP,IAAIX,QAAA,CAASY,OAAO,EAAE;cACpBZ,QAAA,CAASY,OAAO,CAACC,KAAK;YACxB;UACF;UACAC,IAAA,EAAK;oBAEJf,CAAA,CAAE;yBAELK,IAAA,CAAC;UACCW,MAAA,EAAQnB,eAAA;UACR,eAAY;UACZO,SAAA,EAAW,GAAGT,SAAA,gBAAyB;UACvCsB,MAAM;UACNC,QAAQ;UACRT,QAAA,EAAWU,CAAA;YACT,IAAIA,CAAA,CAAEC,MAAM,CAACC,KAAK,IAAIF,CAAA,CAAEC,MAAM,CAACC,KAAK,CAACC,MAAM,GAAG,GAAG;cAC/CvB,MAAA,CAAOoB,CAAA,CAAEC,MAAM,CAACC,KAAK;YACvB;UACF;UACAE,GAAA,EAAKtB,QAAA;UACLuB,IAAA,EAAK;yBAGPrB,KAAA,CAAC;UAAEC,SAAA,EAAW,GAAGT,SAAA,mBAA4B;qBAC1CK,CAAA,CAAE,eAAc,KAAEA,CAAA,CAAE;;;;;AAMjC","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAkB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EACvB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,EAAE,aAAa,qBAsJf"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAmB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EACvB,gBAAgB,EAChB,SAAS,EACT,iBAAiB,EACjB,WAAW,GACZ,EAAE,aAAa,qBAmKf"}
@@ -16,6 +16,7 @@ import { useServerFunctions } from '../../../providers/ServerFunctions/index.js'
16
16
  import { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js';
17
17
  import { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js';
18
18
  import { DocumentFields } from '../../DocumentFields/index.js';
19
+ import { MoveDocToFolder } from '../../FolderView/MoveDocToFolder/index.js';
19
20
  import { Upload_v4 } from '../../Upload/index.js';
20
21
  import { useFormsManager } from '../FormsManager/index.js';
21
22
  import { BulkUploadProvider } from '../index.js';
@@ -49,6 +50,7 @@ export function EditForm({
49
50
  } = useServerFunctions();
50
51
  const {
51
52
  config: {
53
+ folders,
52
54
  routes: {
53
55
  admin: adminRoute
54
56
  }
@@ -137,6 +139,13 @@ export function EditForm({
137
139
  BeforeFields: /*#__PURE__*/_jsx(React.Fragment, {
138
140
  children: CustomUpload || /*#__PURE__*/_jsx(Upload_v4, {
139
141
  collectionSlug: collectionConfig.slug,
142
+ customActions: [collectionConfig.admin.folders && /*#__PURE__*/_jsx(MoveDocToFolder, {
143
+ buttonProps: {
144
+ buttonStyle: 'pill',
145
+ size: 'small'
146
+ },
147
+ folderFieldName: folders.fieldName
148
+ }, "move-doc-to-folder")].filter(Boolean),
140
149
  initialState: initialState,
141
150
  resetUploadEdits: resetUploadEdits,
142
151
  updateUploadEdits: updateUploadEdits,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useRouter","useSearchParams","formatAdminURL","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useRouteTransition","useServerFunctions","abortAndIgnore","handleAbortRef","useDocumentDrawerContext","DocumentFields","Upload_v4","useFormsManager","BulkUploadProvider","baseClass","EditForm","resetUploadEdits","submitted","updateUploadEdits","uploadEdits","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","Upload","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","startRouteTransition","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","skipValidation","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload_v4 } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({\n resetUploadEdits,\n submitted,\n updateUploadEdits,\n uploadEdits,\n}: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { startRouteTransition } = useRouteTransition()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n startRouteTransition,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload_v4\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n resetUploadEdits={resetUploadEdits}\n updateUploadEdits={updateUploadEdits}\n uploadConfig={collectionConfig.upload}\n uploadEdits={uploadEdits}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n useEffect(() => {\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useRouter","useSearchParams","formatAdminURL","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useRouteTransition","useServerFunctions","abortAndIgnore","handleAbortRef","useDocumentDrawerContext","DocumentFields","MoveDocToFolder","Upload_v4","useFormsManager","BulkUploadProvider","baseClass","EditForm","resetUploadEdits","submitted","updateUploadEdits","uploadEdits","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","Upload","CustomUpload","onSave","onSaveFromContext","getFormState","config","folders","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","startRouteTransition","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","skipValidation","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","customActions","buttonProps","buttonStyle","size","folderFieldName","fieldName","filter","Boolean","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { MoveDocToFolder } from '../../FolderView/MoveDocToFolder/index.js'\nimport { Upload_v4 } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({\n resetUploadEdits,\n submitted,\n updateUploadEdits,\n uploadEdits,\n}: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n folders,\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { startRouteTransition } = useRouteTransition()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n startRouteTransition,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload_v4\n collectionSlug={collectionConfig.slug}\n customActions={[\n collectionConfig.admin.folders && (\n <MoveDocToFolder\n buttonProps={{\n buttonStyle: 'pill',\n size: 'small',\n }}\n folderFieldName={folders.fieldName}\n key=\"move-doc-to-folder\"\n />\n ),\n ].filter(Boolean)}\n initialState={initialState}\n resetUploadEdits={resetUploadEdits}\n updateUploadEdits={updateUploadEdits}\n uploadConfig={collectionConfig.upload}\n uploadEdits={uploadEdits}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n useEffect(() => {\n // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmC,MAAM,OAAO,CAAA;AAEvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAWvC,OAAO,cAAc,CAAA;AAarB,eAAO,MAAM,cAAc;;;;;uBAqB1B,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoJlC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Button/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmC,MAAM,OAAO,CAAA;AAEvD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAUvC,OAAO,cAAc,CAAA;AAcrB,eAAO,MAAM,cAAc;;;;;uBAqB1B,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAsJlC,CAAA"}
@@ -10,8 +10,8 @@ import { SwapIcon } from '../../icons/Swap/index.js';
10
10
  import { XIcon } from '../../icons/X/index.js';
11
11
  import { Link } from '../Link/index.js';
12
12
  import { Popup } from '../Popup/index.js';
13
- import { Tooltip } from '../Tooltip/index.js';
14
13
  import './index.scss';
14
+ import { Tooltip } from '../Tooltip/index.js';
15
15
  const icons = {
16
16
  chevron: ChevronIcon,
17
17
  edit: EditIcon,
@@ -59,6 +59,7 @@ export const Button = props => {
59
59
  icon,
60
60
  iconPosition = 'right',
61
61
  iconStyle = 'without-border',
62
+ margin = true,
62
63
  newTab,
63
64
  onClick,
64
65
  onMouseDown,
@@ -71,7 +72,7 @@ export const Button = props => {
71
72
  url
72
73
  } = props;
73
74
  const [showTooltip, setShowTooltip] = React.useState(false);
74
- const classes = [baseClass, className && className, icon && `${baseClass}--icon`, iconStyle && `${baseClass}--icon-style-${iconStyle}`, icon && !children && `${baseClass}--icon-only`, size && `${baseClass}--size-${size}`, icon && iconPosition && `${baseClass}--icon-position-${iconPosition}`, tooltip && `${baseClass}--has-tooltip`, !SubMenuPopupContent && `${baseClass}--withoutPopup`].filter(Boolean).join(' ');
75
+ const classes = [baseClass, className && className, icon && `${baseClass}--icon`, iconStyle && `${baseClass}--icon-style-${iconStyle}`, icon && !children && `${baseClass}--icon-only`, size && `${baseClass}--size-${size}`, icon && iconPosition && `${baseClass}--icon-position-${iconPosition}`, tooltip && `${baseClass}--has-tooltip`, !SubMenuPopupContent && `${baseClass}--withoutPopup`, !margin && `${baseClass}--no-margin`].filter(Boolean).join(' ');
75
76
  function handleClick(event) {
76
77
  setShowTooltip(false);
77
78
  if (type !== 'submit' && onClick) {
@@ -141,7 +142,6 @@ export const Button = props => {
141
142
  ;
142
143
  buttonElement = /*#__PURE__*/_jsx(Tag, {
143
144
  ref: ref,
144
- type: "submit",
145
145
  ...buttonProps,
146
146
  children: /*#__PURE__*/_jsx(ButtonContents, {
147
147
  icon: icon,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","Fragment","isValidElement","ChevronIcon","EditIcon","LinkIcon","PlusIcon","SwapIcon","XIcon","Link","Popup","Tooltip","icons","chevron","edit","link","plus","swap","x","baseClass","ButtonContents","children","icon","showTooltip","tooltip","BuiltInIcon","_jsxs","_jsx","className","show","Button","props","id","type","ariaLabel","buttonStyle","disabled","el","enableSubMenu","iconPosition","iconStyle","newTab","onClick","onMouseDown","ref","round","size","SubMenuPopupContent","to","url","setShowTooltip","useState","classes","filter","Boolean","join","handleClick","event","preventDefault","styleClasses","buttonProps","undefined","onPointerEnter","onPointerLeave","rel","target","buttonElement","prefetch","href","Tag","button","buttonSize","horizontalAlign","noBackground","render","close","verticalAlign"],"sources":["../../../src/elements/Button/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment, isValidElement } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { EditIcon } from '../../icons/Edit/index.js'\nimport { LinkIcon } from '../../icons/Link/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { SwapIcon } from '../../icons/Swap/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { Link } from '../Link/index.js'\nimport { Popup } from '../Popup/index.js'\nimport { Tooltip } from '../Tooltip/index.js'\nimport './index.scss'\n\nconst icons = {\n chevron: ChevronIcon,\n edit: EditIcon,\n link: LinkIcon,\n plus: PlusIcon,\n swap: SwapIcon,\n x: XIcon,\n}\n\nconst baseClass = 'btn'\n\nexport const ButtonContents = ({ children, icon, showTooltip, tooltip }) => {\n const BuiltInIcon = icons[icon]\n\n return (\n <Fragment>\n {tooltip && (\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {tooltip}\n </Tooltip>\n )}\n <span className={`${baseClass}__content`}>\n {children && <span className={`${baseClass}__label`}>{children}</span>}\n {icon && (\n <span className={`${baseClass}__icon`}>\n {isValidElement(icon) && icon}\n {BuiltInIcon && <BuiltInIcon />}\n </span>\n )}\n </span>\n </Fragment>\n )\n}\n\nexport const Button: React.FC<Props> = (props) => {\n const {\n id,\n type = 'button',\n 'aria-label': ariaLabel,\n buttonStyle = 'primary',\n children,\n className,\n disabled,\n el = 'button',\n enableSubMenu,\n icon,\n iconPosition = 'right',\n iconStyle = 'without-border',\n newTab,\n onClick,\n onMouseDown,\n ref,\n round,\n size = 'medium',\n SubMenuPopupContent,\n to,\n tooltip,\n url,\n } = props\n\n const [showTooltip, setShowTooltip] = React.useState(false)\n\n const classes = [\n baseClass,\n className && className,\n icon && `${baseClass}--icon`,\n iconStyle && `${baseClass}--icon-style-${iconStyle}`,\n icon && !children && `${baseClass}--icon-only`,\n size && `${baseClass}--size-${size}`,\n icon && iconPosition && `${baseClass}--icon-position-${iconPosition}`,\n tooltip && `${baseClass}--has-tooltip`,\n !SubMenuPopupContent && `${baseClass}--withoutPopup`,\n ]\n .filter(Boolean)\n .join(' ')\n\n function handleClick(event) {\n setShowTooltip(false)\n if (type !== 'submit' && onClick) {\n event.preventDefault()\n }\n if (onClick) {\n onClick(event)\n }\n }\n\n const styleClasses = [\n buttonStyle && `${baseClass}--style-${buttonStyle}`,\n disabled && `${baseClass}--disabled`,\n round && `${baseClass}--round`,\n SubMenuPopupContent ? `${baseClass}--withPopup` : `${baseClass}--withoutPopup`,\n ]\n .filter(Boolean)\n .join(' ')\n\n const buttonProps = {\n id,\n type,\n 'aria-disabled': disabled,\n 'aria-label': ariaLabel,\n className: !SubMenuPopupContent ? [classes, styleClasses].join(' ') : classes,\n disabled,\n onClick: !disabled ? handleClick : undefined,\n onMouseDown: !disabled ? onMouseDown : undefined,\n onPointerEnter: tooltip ? () => setShowTooltip(true) : undefined,\n onPointerLeave: tooltip ? () => setShowTooltip(false) : undefined,\n rel: newTab ? 'noopener noreferrer' : undefined,\n target: newTab ? '_blank' : undefined,\n }\n\n let buttonElement\n let prefetch\n\n switch (el) {\n case 'anchor':\n buttonElement = (\n <a\n {...buttonProps}\n href={!disabled ? url : undefined}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n >\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </a>\n )\n break\n\n case 'link':\n if (disabled) {\n buttonElement = (\n <div {...buttonProps}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </div>\n )\n }\n\n buttonElement = (\n <Link {...buttonProps} href={to || url} prefetch={prefetch}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </Link>\n )\n\n break\n\n default:\n const Tag = el // eslint-disable-line no-case-declarations\n\n buttonElement = (\n <Tag ref={ref} type=\"submit\" {...buttonProps}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </Tag>\n )\n break\n }\n if (SubMenuPopupContent) {\n return (\n <div className={styleClasses}>\n {buttonElement}\n <Popup\n button={<ChevronIcon />}\n buttonSize={size}\n className={disabled && !enableSubMenu ? `${baseClass}--popup-disabled` : ''}\n disabled={disabled && !enableSubMenu}\n horizontalAlign=\"right\"\n id={`${id}-popup`}\n noBackground\n render={({ close }) => SubMenuPopupContent({ close: () => close() })}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n </div>\n )\n }\n\n return buttonElement\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","Fragment","isValidElement","ChevronIcon","EditIcon","LinkIcon","PlusIcon","SwapIcon","XIcon","Link","Popup","Tooltip","icons","chevron","edit","link","plus","swap","x","baseClass","ButtonContents","children","icon","showTooltip","tooltip","BuiltInIcon","_jsxs","_jsx","className","show","Button","props","id","type","ariaLabel","buttonStyle","disabled","el","enableSubMenu","iconPosition","iconStyle","margin","newTab","onClick","onMouseDown","ref","round","size","SubMenuPopupContent","to","url","setShowTooltip","useState","classes","filter","Boolean","join","handleClick","event","preventDefault","styleClasses","buttonProps","undefined","onPointerEnter","onPointerLeave","rel","target","buttonElement","prefetch","href","Tag","button","buttonSize","horizontalAlign","noBackground","render","close","verticalAlign"],"sources":["../../../src/elements/Button/index.tsx"],"sourcesContent":["'use client'\nimport React, { Fragment, isValidElement } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { EditIcon } from '../../icons/Edit/index.js'\nimport { LinkIcon } from '../../icons/Link/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { SwapIcon } from '../../icons/Swap/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { Link } from '../Link/index.js'\nimport { Popup } from '../Popup/index.js'\nimport './index.scss'\nimport { Tooltip } from '../Tooltip/index.js'\n\nconst icons = {\n chevron: ChevronIcon,\n edit: EditIcon,\n link: LinkIcon,\n plus: PlusIcon,\n swap: SwapIcon,\n x: XIcon,\n}\n\nconst baseClass = 'btn'\n\nexport const ButtonContents = ({ children, icon, showTooltip, tooltip }) => {\n const BuiltInIcon = icons[icon]\n\n return (\n <Fragment>\n {tooltip && (\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {tooltip}\n </Tooltip>\n )}\n <span className={`${baseClass}__content`}>\n {children && <span className={`${baseClass}__label`}>{children}</span>}\n {icon && (\n <span className={`${baseClass}__icon`}>\n {isValidElement(icon) && icon}\n {BuiltInIcon && <BuiltInIcon />}\n </span>\n )}\n </span>\n </Fragment>\n )\n}\n\nexport const Button: React.FC<Props> = (props) => {\n const {\n id,\n type = 'button',\n 'aria-label': ariaLabel,\n buttonStyle = 'primary',\n children,\n className,\n disabled,\n el = 'button',\n enableSubMenu,\n icon,\n iconPosition = 'right',\n iconStyle = 'without-border',\n margin = true,\n newTab,\n onClick,\n onMouseDown,\n ref,\n round,\n size = 'medium',\n SubMenuPopupContent,\n to,\n tooltip,\n url,\n } = props\n\n const [showTooltip, setShowTooltip] = React.useState(false)\n\n const classes = [\n baseClass,\n className && className,\n icon && `${baseClass}--icon`,\n iconStyle && `${baseClass}--icon-style-${iconStyle}`,\n icon && !children && `${baseClass}--icon-only`,\n size && `${baseClass}--size-${size}`,\n icon && iconPosition && `${baseClass}--icon-position-${iconPosition}`,\n tooltip && `${baseClass}--has-tooltip`,\n !SubMenuPopupContent && `${baseClass}--withoutPopup`,\n !margin && `${baseClass}--no-margin`,\n ]\n .filter(Boolean)\n .join(' ')\n\n function handleClick(event) {\n setShowTooltip(false)\n if (type !== 'submit' && onClick) {\n event.preventDefault()\n }\n if (onClick) {\n onClick(event)\n }\n }\n\n const styleClasses = [\n buttonStyle && `${baseClass}--style-${buttonStyle}`,\n disabled && `${baseClass}--disabled`,\n round && `${baseClass}--round`,\n SubMenuPopupContent ? `${baseClass}--withPopup` : `${baseClass}--withoutPopup`,\n ]\n .filter(Boolean)\n .join(' ')\n\n const buttonProps = {\n id,\n type,\n 'aria-disabled': disabled,\n 'aria-label': ariaLabel,\n className: !SubMenuPopupContent ? [classes, styleClasses].join(' ') : classes,\n disabled,\n onClick: !disabled ? handleClick : undefined,\n onMouseDown: !disabled ? onMouseDown : undefined,\n onPointerEnter: tooltip ? () => setShowTooltip(true) : undefined,\n onPointerLeave: tooltip ? () => setShowTooltip(false) : undefined,\n rel: newTab ? 'noopener noreferrer' : undefined,\n target: newTab ? '_blank' : undefined,\n }\n\n let buttonElement\n let prefetch\n\n switch (el) {\n case 'anchor':\n buttonElement = (\n <a\n {...buttonProps}\n href={!disabled ? url : undefined}\n ref={ref as React.RefObject<HTMLAnchorElement>}\n >\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </a>\n )\n break\n\n case 'link':\n if (disabled) {\n buttonElement = (\n <div {...buttonProps}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </div>\n )\n }\n\n buttonElement = (\n <Link {...buttonProps} href={to || url} prefetch={prefetch}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </Link>\n )\n\n break\n\n default:\n const Tag = el // eslint-disable-line no-case-declarations\n\n buttonElement = (\n <Tag ref={ref} {...buttonProps}>\n <ButtonContents icon={icon} showTooltip={showTooltip} tooltip={tooltip}>\n {children}\n </ButtonContents>\n </Tag>\n )\n break\n }\n if (SubMenuPopupContent) {\n return (\n <div className={styleClasses}>\n {buttonElement}\n <Popup\n button={<ChevronIcon />}\n buttonSize={size}\n className={disabled && !enableSubMenu ? `${baseClass}--popup-disabled` : ''}\n disabled={disabled && !enableSubMenu}\n horizontalAlign=\"right\"\n id={`${id}-popup`}\n noBackground\n render={({ close }) => SubMenuPopupContent({ close: () => close() })}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n </div>\n )\n }\n\n return buttonElement\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,11 +13,12 @@
13
13
  }
14
14
 
15
15
  .btn {
16
+ --btn-font-weight: normal;
16
17
  * {
17
18
  pointer-events: none;
18
19
  }
19
20
 
20
- // colors
21
+ // button aesthetic styles
21
22
  &--style-primary {
22
23
  --color: var(--theme-elevation-0);
23
24
  --bg-color: var(--theme-elevation-800);
@@ -51,7 +52,7 @@
51
52
  &--style-pill {
52
53
  --bg-color: var(--theme-elevation-150);
53
54
  --color: var(--theme-elevation-800);
54
- --hover-color: var(--color);
55
+ --hover-color: var(--theme-elevation-800);
55
56
  --hover-bg: var(--theme-elevation-100);
56
57
 
57
58
  &.btn--disabled {
@@ -60,6 +61,60 @@
60
61
  --hover-color: var(--color);
61
62
  }
62
63
  }
64
+
65
+ // colors and padding are mixed on this class
66
+ &--style-icon-label,
67
+ &--style-icon-label.btn--icon-position-left,
68
+ &--style-icon-label.btn--icon-position-right {
69
+ padding: 0;
70
+ font-weight: 600;
71
+ --color: var(--theme-text);
72
+ --bg-color: transparent;
73
+ --hover-color: var(--theme-elevation-600);
74
+
75
+ &.btn--disabled {
76
+ --color: var(--theme-elevation-200);
77
+ --hover-color: var(--color);
78
+ }
79
+
80
+ .btn__content {
81
+ --btn-icon-content-gap: calc(var(--base) * 0.4);
82
+ }
83
+ }
84
+
85
+ &--style-subtle {
86
+ --color: var(--theme-text);
87
+ --bg-color: var(--theme-elevation-100);
88
+ --hover-bg: var(--theme-elevation-150);
89
+ --box-shadow: inset 0 0 0 1px var(--theme-elevation-200);
90
+ --hover-box-shadow: inset 0 0 0 1px var(--theme-elevation-250);
91
+
92
+ &.btn--disabled {
93
+ --color: var(--theme-elevation-450);
94
+ --hover-box-shadow: var(--box-shadow);
95
+ --hover-bg: var(--bg-color);
96
+ --hover-color: var(--color);
97
+ }
98
+ }
99
+
100
+ &--style-tab {
101
+ --bg-color: transparent;
102
+ --hover-bg: var(--theme-elevation-50);
103
+ --color: var(--theme-text);
104
+ --btn-font-weight: 500;
105
+
106
+ &.btn--disabled {
107
+ --btn-font-weight: 600;
108
+ --hover-box-shadow: var(--box-shadow);
109
+ --bg-color: var(--theme-elevation-100);
110
+ --hover-bg: var(--bg-color);
111
+ --hover-color: var(--color);
112
+ }
113
+ }
114
+ }
115
+
116
+ .popup--active .btn {
117
+ background-color: var(--hover-bg);
63
118
  }
64
119
 
65
120
  .btn--withPopup {
@@ -111,26 +166,48 @@
111
166
  }
112
167
 
113
168
  .btn {
114
- border-radius: $style-radius-s;
169
+ --btn-padding-block-start: 0;
170
+ --btn-padding-inline-end: 0;
171
+ --btn-padding-block-end: 0;
172
+ --btn-padding-inline-start: 0;
173
+
174
+ --btn-icon-size: calc(var(--base) * 1.2);
175
+ --btn-icon-border-color: currentColor;
176
+ --btn-icon-padding: 0px; // This will be needed when we make icons go edge to edge instead of having built in padding in the svg code
177
+ --btn-icon-content-gap: calc(var(--base) * 0.4);
178
+ --margin-block: base(1.2);
179
+ --btn-line-height: calc(var(--base) * 1.2);
180
+
181
+ border-radius: var(--style-radius-s);
115
182
  font-size: var(--base-body-size);
116
- margin-block: base(1.2);
117
- line-height: base(1.2);
183
+ font-family: var(--font-body);
184
+ font-weight: var(--btn-font-weight, normal);
185
+ margin-block: var(--margin-block);
186
+ line-height: var(--btn-line-height);
118
187
  border: 0;
119
188
  cursor: pointer;
120
- font-weight: normal;
121
189
  text-decoration: none;
122
190
  transition-property: border, color, box-shadow, background;
123
191
  transition-duration: 100ms;
124
192
  transition-timing-function: cubic-bezier(0, 0.2, 0.2, 1);
125
-
193
+ padding: var(--btn-padding-block-start) var(--btn-padding-inline-end)
194
+ var(--btn-padding-block-end) var(--btn-padding-inline-start);
126
195
  color: var(--color, inherit);
127
196
  background-color: var(--bg-color, transparent);
128
197
  box-shadow: var(--box-shadow, none);
129
198
 
130
199
  .icon {
131
- @include color-svg(var(--color, currentColor));
132
200
  width: 100%;
133
201
  height: 100%;
202
+
203
+ .stroke {
204
+ stroke: var(--color, currentColor);
205
+ fill: none;
206
+ }
207
+
208
+ .fill {
209
+ fill: var(--color, currentColor);
210
+ }
134
211
  }
135
212
 
136
213
  &__content {
@@ -140,14 +217,14 @@
140
217
  }
141
218
 
142
219
  &__icon {
143
- width: base(1.2);
144
- height: base(1.2);
220
+ width: var(--btn-icon-size);
221
+ height: var(--btn-icon-size);
145
222
  display: flex;
146
223
  align-items: center;
147
224
  justify-content: center;
148
- border: 1px solid;
225
+ border: 1px solid var(--btn-icon-border-color);
149
226
  border-radius: 100%;
150
- padding: base(0.1);
227
+ padding: var(--btn-icon-padding);
151
228
  color: inherit;
152
229
 
153
230
  .icon {
@@ -168,79 +245,86 @@
168
245
  position: relative;
169
246
  }
170
247
 
171
- &--icon-style-without-border {
172
- .btn__icon {
173
- border: none;
248
+ &--icon {
249
+ .btn__content {
250
+ gap: var(--btn-icon-content-gap);
174
251
  }
175
252
  }
176
253
 
254
+ &--icon-style-without-border,
177
255
  &--icon-style-none {
178
- .btn__icon {
179
- border: none;
256
+ --btn-icon-border-color: transparent;
257
+ }
258
+
259
+ &--icon-position-left {
260
+ .btn__content {
261
+ flex-direction: row-reverse;
180
262
  }
181
263
  }
182
264
 
183
265
  &--size-small {
184
- padding: 0 base(0.4);
266
+ --btn-icon-size: calc(var(--base) * 0.9);
267
+ // --btn-icon-padding: 0px; // This will be needed when we make icons go edge to edge instead of having built in padding in the svg code
268
+ --btn-icon-content-gap: calc(var(--base) * 0.2);
269
+ --btn-padding-block-start: 0;
270
+ --btn-padding-inline-end: calc(var(--base) * 0.4);
271
+ --btn-padding-inline-start: calc(var(--base) * 0.4);
272
+ --btn-padding-block-end: 0;
185
273
 
186
274
  &.btn--icon-position-left {
187
- padding-inline-start: base(0.1);
188
- padding-inline-end: base(0.4);
189
-
190
- .btn__content {
191
- flex-direction: row-reverse;
192
- }
275
+ --btn-padding-inline-start: calc(var(--base) * 0.3);
193
276
  }
194
277
 
195
278
  &.btn--icon-position-right {
196
- padding-inline-start: base(0.4);
197
- padding-inline-end: base(0.1);
279
+ --btn-padding-inline-end: calc(var(--base) * 0.3);
280
+ }
281
+
282
+ &.btn--icon-style-with-border {
283
+ // --btn-icon-padding: 0px; // This will be needed when we make icons go edge to edge instead of having built in padding in the svg code
198
284
  }
199
285
  }
200
286
 
201
287
  &--size-medium {
202
- padding: base(0.2) base(0.6);
288
+ // --btn-icon-padding: 0px;
289
+ --btn-icon-size: calc(var(--base) * 1.2);
290
+ --btn-icon-content-gap: calc(var(--base) * 0.2);
291
+ --btn-padding-block-start: calc(var(--base) * 0.2);
292
+ --btn-padding-inline-end: calc(var(--base) * 0.6);
293
+ --btn-padding-block-end: calc(var(--base) * 0.2);
294
+ --btn-padding-inline-start: calc(var(--base) * 0.6);
203
295
 
204
296
  &.btn--icon-position-left {
205
- padding-inline-start: base(0.4);
206
- padding-inline-end: base(0.6);
207
-
208
- .btn__content {
209
- gap: base(0.2);
210
- flex-direction: row-reverse;
211
- }
297
+ --btn-padding-inline-start: calc(var(--base) * 0.4);
212
298
  }
213
299
 
214
300
  &.btn--icon-position-right {
215
- padding-inline-start: base(0.6);
216
- padding-inline-end: base(0.4);
301
+ --btn-padding-inline-end: calc(var(--base) * 0.4);
302
+ }
217
303
 
218
- .btn__content {
219
- gap: base(0.2);
220
- }
304
+ &.btn--icon-style-with-border {
305
+ // --btn-icon-padding: 0px; // This will be needed when we make icons go edge to edge instead of having built in padding in the svg code
221
306
  }
222
307
  }
223
308
 
224
309
  &--size-large {
225
- padding: base(0.4) base(0.8);
310
+ // --btn-icon-padding: 0px;
311
+ --btn-icon-size: calc(var(--base) * 1.2);
312
+ --btn-icon-content-gap: calc(var(--base) * 0.4);
313
+ --btn-padding-block-start: calc(var(--base) * 0.4);
314
+ --btn-padding-inline-end: calc(var(--base) * 0.8);
315
+ --btn-padding-inline-start: calc(var(--base) * 0.8);
316
+ --btn-padding-block-end: calc(var(--base) * 0.4);
226
317
 
227
318
  &.btn--icon-position-left {
228
- padding-inline-start: base(0.6);
229
- padding-inline-end: base(0.8);
230
-
231
- .btn__content {
232
- gap: base(0.4);
233
- flex-direction: row-reverse;
234
- }
319
+ --btn-padding-inline-start: calc(var(--base) * 0.6);
235
320
  }
236
321
 
237
322
  &.btn--icon-position-right {
238
- padding-inline-start: base(0.8);
239
- padding-inline-end: base(0.6);
323
+ --btn-padding-inline-end: calc(var(--base) * 0.6);
324
+ }
240
325
 
241
- .btn__content {
242
- gap: base(0.4);
243
- }
326
+ &.btn--icon-style-with-border {
327
+ // --btn-icon-padding: 0px; // This will be needed when we make icons go edge to edge instead of having built in padding in the svg code
244
328
  }
245
329
  }
246
330
 
@@ -256,37 +340,6 @@
256
340
  }
257
341
  }
258
342
 
259
- &--style-icon-label,
260
- &--style-icon-label.btn--icon-position-left,
261
- &--style-icon-label.btn--icon-position-right {
262
- padding: 0;
263
- font-weight: 600;
264
-
265
- .btn__content {
266
- gap: base(0.4);
267
- }
268
- }
269
-
270
- &--style-none {
271
- padding: 0;
272
- }
273
-
274
- &:focus:not(:focus-visible) {
275
- .btn__icon {
276
- @include color-svg(var(--theme-elevation-800));
277
- background: var(--theme-elevation-150);
278
- }
279
-
280
- outline: none;
281
- }
282
-
283
- &:active {
284
- .btn__icon {
285
- @include color-svg(var(--theme-elevation-0));
286
- background: var(--theme-elevation-700);
287
- }
288
- }
289
-
290
343
  &:focus-visible {
291
344
  outline: var(--accessibility-outline);
292
345
  outline-offset: var(--accessibility-outline-offset);
@@ -295,5 +348,13 @@
295
348
  &.btn--disabled {
296
349
  cursor: not-allowed;
297
350
  }
351
+
352
+ &--style-none {
353
+ padding: 0;
354
+ }
355
+
356
+ &--no-margin {
357
+ --margin-block: 0;
358
+ }
298
359
  }
299
360
  }
@@ -7,7 +7,7 @@ type secondaryAction = {
7
7
  export type Props = {
8
8
  'aria-label'?: string;
9
9
  buttonId?: string;
10
- buttonStyle?: 'error' | 'icon-label' | 'none' | 'pill' | 'primary' | 'secondary' | 'transparent';
10
+ buttonStyle?: 'error' | 'icon-label' | 'none' | 'pill' | 'primary' | 'secondary' | 'subtle' | 'tab' | 'transparent';
11
11
  children?: React.ReactNode;
12
12
  className?: string;
13
13
  disabled?: boolean;
@@ -26,6 +26,7 @@ export type Props = {
26
26
  * Components now import their own `Link` directly from `next/link`.
27
27
  */
28
28
  Link?: React.ElementType;
29
+ margin?: boolean;
29
30
  newTab?: boolean;
30
31
  onClick?: (event: MouseEvent) => void;
31
32
  onMouseDown?: (event: MouseEvent) => void;