@payloadcms/ui 4.0.0-internal.40de3ec → 4.0.0-internal.4804abd

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 (901) hide show
  1. package/dist/css/colors.css +6 -0
  2. package/dist/css/design-tokens.css +5 -0
  3. package/dist/css/elevations.css +4 -0
  4. package/dist/css/forms.css +6 -3
  5. package/dist/css/radius.css +1 -3
  6. package/dist/css/theme.css +6 -1
  7. package/dist/css/utilities.css +7 -1
  8. package/dist/elements/APIKeyInput/index.css +92 -0
  9. package/dist/elements/APIKeyInput/index.d.ts +14 -0
  10. package/dist/elements/APIKeyInput/index.d.ts.map +1 -0
  11. package/dist/elements/APIKeyInput/index.js +86 -0
  12. package/dist/elements/APIKeyInput/index.js.map +1 -0
  13. package/dist/elements/AddNewRelation/index.css +1 -1
  14. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  15. package/dist/elements/AddNewRelation/index.js +85 -103
  16. package/dist/elements/AddNewRelation/index.js.map +1 -1
  17. package/dist/elements/AppHeader/index.d.ts +3 -1
  18. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  19. package/dist/elements/AppHeader/index.js +14 -27
  20. package/dist/elements/AppHeader/index.js.map +1 -1
  21. package/dist/elements/ArrayAction/index.js +2 -2
  22. package/dist/elements/ArrayAction/index.js.map +1 -1
  23. package/dist/elements/BulkUpload/ActionsBar/index.css +13 -11
  24. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +1 -5
  25. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  26. package/dist/elements/BulkUpload/ActionsBar/index.js +57 -61
  27. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/AddFilesView/index.css +14 -8
  29. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -2
  30. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  31. package/dist/elements/BulkUpload/AddFilesView/index.js +41 -36
  32. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/AddingFilesView/index.css +177 -0
  34. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +6 -2
  35. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  36. package/dist/elements/BulkUpload/AddingFilesView/index.js +135 -66
  37. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  39. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/EditForm/index.css +9 -0
  41. package/dist/elements/BulkUpload/EditForm/index.d.ts +2 -2
  42. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  43. package/dist/elements/BulkUpload/EditForm/index.js +17 -18
  44. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  45. package/dist/elements/BulkUpload/EditForm/types.d.ts +2 -3
  46. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -1
  47. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  48. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -1
  49. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  50. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +77 -59
  51. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  52. package/dist/elements/BulkUpload/EditMany/index.css +71 -0
  53. package/dist/elements/BulkUpload/EditMany/index.d.ts +1 -1
  54. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  55. package/dist/elements/BulkUpload/EditMany/index.js +29 -11
  56. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  57. package/dist/elements/BulkUpload/FileSidebar/index.css +79 -180
  58. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  59. package/dist/elements/BulkUpload/FileSidebar/index.js +42 -165
  60. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  61. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  62. package/dist/elements/BulkUpload/FormsManager/index.js +14 -1
  63. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  64. package/dist/elements/BulkUpload/index.css +48 -0
  65. package/dist/elements/BulkUpload/index.d.ts +6 -5
  66. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  67. package/dist/elements/BulkUpload/index.js +42 -41
  68. package/dist/elements/BulkUpload/index.js.map +1 -1
  69. package/dist/elements/Button/index.css +8 -0
  70. package/dist/elements/Button/index.d.ts.map +1 -1
  71. package/dist/elements/Button/index.js +5 -0
  72. package/dist/elements/Button/index.js.map +1 -1
  73. package/dist/elements/Card/index.css +1 -1
  74. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  75. package/dist/elements/ClipboardAction/index.js +1 -0
  76. package/dist/elements/ClipboardAction/index.js.map +1 -1
  77. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  78. package/dist/elements/CodeEditor/CodeEditor.js +19 -0
  79. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  80. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  81. package/dist/elements/Collapsible/index.js +2 -0
  82. package/dist/elements/Collapsible/index.js.map +1 -1
  83. package/dist/elements/ColumnSelection/Popup.d.ts +12 -0
  84. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -0
  85. package/dist/elements/{ColumnSelector/index.js → ColumnSelection/Popup.js} +24 -13
  86. package/dist/elements/ColumnSelection/Popup.js.map +1 -0
  87. package/dist/elements/ColumnSelection/index.d.ts +10 -0
  88. package/dist/elements/ColumnSelection/index.d.ts.map +1 -0
  89. package/dist/elements/{ColumnsButton → ColumnSelection}/index.js +23 -17
  90. package/dist/elements/ColumnSelection/index.js.map +1 -0
  91. package/dist/elements/Combobox/index.css +1 -0
  92. package/dist/elements/ConfirmationModal/index.css +7 -0
  93. package/dist/elements/ConfirmationModal/index.d.ts +1 -0
  94. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  95. package/dist/elements/ConfirmationModal/index.js +7 -3
  96. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  97. package/dist/elements/CopyLocaleData/index.js +1 -1
  98. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  99. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  100. package/dist/elements/CreateDocumentButton/index.js +0 -1
  101. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  102. package/dist/elements/DatePicker/index.css +9 -9
  103. package/dist/elements/DatePicker/index.js +1 -1
  104. package/dist/elements/DatePicker/index.js.map +1 -1
  105. package/dist/elements/DeleteMany/index.d.ts +3 -26
  106. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  107. package/dist/elements/DeleteMany/index.js +1 -95
  108. package/dist/elements/DeleteMany/index.js.map +1 -1
  109. package/dist/elements/Dialog/DialogHeader/index.d.ts +4 -0
  110. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -1
  111. package/dist/elements/Dialog/DialogHeader/index.js +45 -30
  112. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  113. package/dist/elements/Dialog/DialogModal/index.d.ts +6 -1
  114. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  115. package/dist/elements/Dialog/DialogModal/index.js +58 -31
  116. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  117. package/dist/elements/Dialog/DialogTitle/index.css +9 -0
  118. package/dist/elements/Dialog/DialogTitle/index.d.ts +5 -0
  119. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -0
  120. package/dist/elements/Dialog/DialogTitle/index.js +10 -0
  121. package/dist/elements/Dialog/DialogTitle/index.js.map +1 -0
  122. package/dist/elements/Dialog/index.css +10 -0
  123. package/dist/elements/DocumentControls/index.css +18 -2
  124. package/dist/elements/DocumentControls/index.d.ts +6 -0
  125. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  126. package/dist/elements/DocumentControls/index.js +20 -9
  127. package/dist/elements/DocumentControls/index.js.map +1 -1
  128. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  129. package/dist/elements/DocumentDrawer/DrawerContent.js +10 -6
  130. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  131. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +76 -4
  132. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +7 -1
  133. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  134. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +150 -87
  135. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  136. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  137. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  138. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  139. package/dist/elements/DocumentFields/index.css +67 -4
  140. package/dist/elements/DocumentFields/index.d.ts +5 -0
  141. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  142. package/dist/elements/DocumentFields/index.js +9 -1
  143. package/dist/elements/DocumentFields/index.js.map +1 -1
  144. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts +12 -0
  145. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts.map +1 -0
  146. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +28 -0
  147. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -0
  148. package/dist/elements/DocumentHeader/index.js +2 -3
  149. package/dist/elements/DocumentHeader/index.js.map +1 -1
  150. package/dist/elements/DraggableSortable/DragOverlayPreview/index.css +1 -1
  151. package/dist/elements/DraggableSortable/index.js.map +1 -1
  152. package/dist/elements/Drawer/index.css +57 -26
  153. package/dist/elements/Drawer/index.d.ts +25 -0
  154. package/dist/elements/Drawer/index.d.ts.map +1 -1
  155. package/dist/elements/Drawer/index.js +133 -54
  156. package/dist/elements/Drawer/index.js.map +1 -1
  157. package/dist/elements/Drawer/types.d.ts +1 -0
  158. package/dist/elements/Drawer/types.d.ts.map +1 -1
  159. package/dist/elements/Drawer/types.js.map +1 -1
  160. package/dist/elements/DrawerActionHeader/index.css +1 -1
  161. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.css +7 -1
  162. package/dist/elements/DrawerHeader/index.d.ts +10 -0
  163. package/dist/elements/DrawerHeader/index.d.ts.map +1 -0
  164. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.js +16 -11
  165. package/dist/elements/DrawerHeader/index.js.map +1 -0
  166. package/dist/elements/Dropzone/index.css +5 -13
  167. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +1 -1
  168. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  169. package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
  170. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  171. package/dist/elements/EditMany/DrawerContent.js +76 -71
  172. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  173. package/dist/elements/EditMany/index.css +71 -0
  174. package/dist/elements/EditMany/index.d.ts +9 -11
  175. package/dist/elements/EditMany/index.d.ts.map +1 -1
  176. package/dist/elements/EditMany/index.js +2 -40
  177. package/dist/elements/EditMany/index.js.map +1 -1
  178. package/dist/elements/EditUpload/index.css +97 -158
  179. package/dist/elements/EditUpload/index.d.ts +2 -1
  180. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  181. package/dist/elements/EditUpload/index.js +209 -231
  182. package/dist/elements/EditUpload/index.js.map +1 -1
  183. package/dist/elements/EditUpload/{library.scss → library.css} +108 -46
  184. package/dist/elements/FieldSelect/index.css +3 -0
  185. package/dist/elements/FileDetails/DraggableFileDetails/index.css +32 -0
  186. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +2 -2
  187. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  188. package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -18
  189. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  190. package/dist/elements/FileDetails/FileMeta/index.css +27 -0
  191. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  192. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  193. package/dist/elements/FileDetails/FileMeta/index.js +1 -1
  194. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  195. package/dist/elements/FileDetails/StaticFileDetails/index.css +140 -0
  196. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +2 -2
  197. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  198. package/dist/elements/FileDetails/StaticFileDetails/index.js +1 -1
  199. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  200. package/dist/elements/FileDetails/index.d.ts +1 -1
  201. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  202. package/dist/elements/FileDetails/index.js.map +1 -1
  203. package/dist/elements/FileManager/FilePreview/AudioPreview/index.css +8 -0
  204. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts +10 -0
  205. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts.map +1 -0
  206. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js +24 -0
  207. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js.map +1 -0
  208. package/dist/elements/FileManager/FilePreview/PdfPreview/index.css +9 -0
  209. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts +12 -0
  210. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts.map +1 -0
  211. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js +27 -0
  212. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js.map +1 -0
  213. package/dist/elements/FileManager/FilePreview/VideoPreview/index.css +8 -0
  214. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts +10 -0
  215. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts.map +1 -0
  216. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js +24 -0
  217. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js.map +1 -0
  218. package/dist/elements/FileManager/FilePreview/index.css +83 -0
  219. package/dist/elements/FileManager/FilePreview/index.d.ts +13 -0
  220. package/dist/elements/FileManager/FilePreview/index.d.ts.map +1 -0
  221. package/dist/elements/FileManager/FilePreview/index.js +140 -0
  222. package/dist/elements/FileManager/FilePreview/index.js.map +1 -0
  223. package/dist/elements/FileManager/FileToolbar/index.css +91 -0
  224. package/dist/elements/FileManager/FileToolbar/index.d.ts +14 -0
  225. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -0
  226. package/dist/elements/FileManager/FileToolbar/index.js +106 -0
  227. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -0
  228. package/dist/elements/FileManager/index.css +154 -0
  229. package/dist/elements/FileManager/index.d.ts +19 -0
  230. package/dist/elements/FileManager/index.d.ts.map +1 -0
  231. package/dist/elements/FileManager/index.js +424 -0
  232. package/dist/elements/FileManager/index.js.map +1 -0
  233. package/dist/elements/GroupBy/Popup.d.ts +21 -0
  234. package/dist/elements/GroupBy/Popup.d.ts.map +1 -0
  235. package/dist/elements/GroupBy/Popup.js +268 -0
  236. package/dist/elements/GroupBy/Popup.js.map +1 -0
  237. package/dist/elements/GroupBy/index.d.ts +12 -0
  238. package/dist/elements/GroupBy/index.d.ts.map +1 -0
  239. package/dist/elements/GroupBy/index.js +91 -0
  240. package/dist/elements/GroupBy/index.js.map +1 -0
  241. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +5 -3
  242. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +1 -0
  243. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +1 -1
  244. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  245. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  246. package/dist/elements/Hierarchy/DocHeaderButton/index.js +12 -12
  247. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  248. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
  249. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +1 -1
  250. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  251. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -1
  252. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  253. package/dist/elements/Hierarchy/Field/index.client.d.ts +1 -1
  254. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  255. package/dist/elements/Hierarchy/Field/index.client.js +19 -16
  256. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  257. package/dist/elements/Hierarchy/Field/index.css +37 -0
  258. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -0
  259. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -0
  260. package/dist/elements/Hierarchy/Modal/index.css +88 -0
  261. package/dist/elements/Hierarchy/Modal/index.d.ts +20 -0
  262. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -0
  263. package/dist/elements/Hierarchy/{Drawer → Modal}/index.js +109 -83
  264. package/dist/elements/Hierarchy/Modal/index.js.map +1 -0
  265. package/dist/elements/Hierarchy/{Drawer → Modal}/types.d.ts +22 -18
  266. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -0
  267. package/dist/elements/Hierarchy/Modal/types.js.map +1 -0
  268. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts +30 -0
  269. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -0
  270. package/dist/elements/Hierarchy/{Drawer/useHierarchyDrawer.js → Modal/useHierarchyModal.js} +51 -50
  271. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -0
  272. package/dist/elements/Hierarchy/MoveMany/index.d.ts +2 -3
  273. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  274. package/dist/elements/Hierarchy/MoveMany/index.js +9 -10
  275. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  276. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +27 -0
  277. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +1 -1
  278. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -1
  279. package/dist/elements/Hierarchy/Tree/LoadMore/index.js +1 -1
  280. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -1
  281. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  282. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +36 -16
  283. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  284. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  285. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +20 -15
  286. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  287. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  288. package/dist/elements/ListColumnSelectionButton/index.d.ts +11 -0
  289. package/dist/elements/ListColumnSelectionButton/index.d.ts.map +1 -0
  290. package/dist/elements/ListColumnSelectionButton/index.js +37 -0
  291. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -0
  292. package/dist/elements/ListControls/index.css +5 -0
  293. package/dist/elements/ListControls/index.d.ts.map +1 -1
  294. package/dist/elements/ListControls/index.js +7 -8
  295. package/dist/elements/ListControls/index.js.map +1 -1
  296. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  297. package/dist/elements/ListDrawer/DrawerContent.js +13 -7
  298. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  299. package/dist/elements/ListDrawer/Provider.d.ts +1 -1
  300. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  301. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  302. package/dist/elements/ListGroupByButton/index.d.ts +12 -0
  303. package/dist/elements/ListGroupByButton/index.d.ts.map +1 -0
  304. package/dist/elements/ListGroupByButton/index.js +55 -0
  305. package/dist/elements/ListGroupByButton/index.js.map +1 -0
  306. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  307. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +2 -0
  308. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  309. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +4 -4
  310. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  311. package/dist/elements/ListWhereBuilder/index.d.ts +16 -0
  312. package/dist/elements/ListWhereBuilder/index.d.ts.map +1 -0
  313. package/dist/elements/ListWhereBuilder/index.js +62 -0
  314. package/dist/elements/ListWhereBuilder/index.js.map +1 -0
  315. package/dist/elements/LivePreview/Toolbar/Controls/index.js +2 -2
  316. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  317. package/dist/elements/LivePreview/Toolbar/SizeInput/index.css +5 -44
  318. package/dist/elements/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  319. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +26 -43
  320. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  321. package/dist/elements/LivePreview/Window/index.css +6 -0
  322. package/dist/elements/LoadMoreRow/index.css +34 -0
  323. package/dist/elements/LoadMoreRow/index.d.ts +1 -1
  324. package/dist/elements/LoadMoreRow/index.d.ts.map +1 -1
  325. package/dist/elements/LoadMoreRow/index.js +4 -8
  326. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  327. package/dist/elements/Loading/index.css +28 -74
  328. package/dist/elements/Loading/index.d.ts.map +1 -1
  329. package/dist/elements/Loading/index.js +16 -60
  330. package/dist/elements/Loading/index.js.map +1 -1
  331. package/dist/elements/Localizer/index.d.ts.map +1 -1
  332. package/dist/elements/Localizer/index.js +3 -4
  333. package/dist/elements/Localizer/index.js.map +1 -1
  334. package/dist/elements/MenuSeparator/index.d.ts +4 -0
  335. package/dist/elements/MenuSeparator/index.d.ts.map +1 -0
  336. package/dist/elements/MenuSeparator/index.js +10 -0
  337. package/dist/elements/MenuSeparator/index.js.map +1 -0
  338. package/dist/elements/MiniCarousel/index.css +94 -0
  339. package/dist/elements/MiniCarousel/index.d.ts +15 -0
  340. package/dist/elements/MiniCarousel/index.d.ts.map +1 -0
  341. package/dist/elements/MiniCarousel/index.js +84 -0
  342. package/dist/elements/MiniCarousel/index.js.map +1 -0
  343. package/dist/elements/Nav/SettingsMenuButton/index.css +5 -0
  344. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +1 -1
  345. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  346. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -1
  347. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  348. package/dist/elements/Nav/index.css +2 -2
  349. package/dist/elements/Nav/index.d.ts.map +1 -1
  350. package/dist/elements/Nav/index.js +4 -23
  351. package/dist/elements/Nav/index.js.map +1 -1
  352. package/dist/elements/NavGroup/index.css +1 -1
  353. package/dist/elements/Popup/PopupButtonList/index.css +48 -4
  354. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  355. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  356. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  357. package/dist/elements/Popup/PopupGroupLabel/index.css +19 -4
  358. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  359. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  360. package/dist/elements/Popup/PopupTrigger/index.js +3 -0
  361. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  362. package/dist/elements/Popup/index.d.ts +14 -1
  363. package/dist/elements/Popup/index.d.ts.map +1 -1
  364. package/dist/elements/Popup/index.js +146 -64
  365. package/dist/elements/Popup/index.js.map +1 -1
  366. package/dist/elements/PreviewSizes/index.css +149 -0
  367. package/dist/elements/PreviewSizes/index.d.ts +2 -2
  368. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  369. package/dist/elements/PreviewSizes/index.js +1 -1
  370. package/dist/elements/PreviewSizes/index.js.map +1 -1
  371. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts +13 -0
  372. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -0
  373. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js +41 -0
  374. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js.map +1 -0
  375. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +1 -0
  376. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  377. package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
  378. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  379. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  380. package/dist/elements/PublishButton/index.js +4 -5
  381. package/dist/elements/PublishButton/index.js.map +1 -1
  382. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  383. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  384. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  385. package/dist/elements/PublishMany/index.d.ts +2 -6
  386. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  387. package/dist/elements/PublishMany/index.js +0 -38
  388. package/dist/elements/PublishMany/index.js.map +1 -1
  389. package/dist/elements/QueryPresets/cells/ColumnsCell/{index.scss → index.css} +1 -3
  390. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +1 -1
  391. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -1
  392. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +1 -1
  393. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  394. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +1 -1
  395. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  396. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +77 -48
  397. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  398. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +1 -1
  399. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  400. package/dist/elements/QueryPresets/fields/GroupByField/index.js +12 -21
  401. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  402. package/dist/elements/QueryPresets/fields/Heading/index.css +52 -0
  403. package/dist/elements/QueryPresets/fields/Heading/index.d.ts +7 -0
  404. package/dist/elements/QueryPresets/fields/Heading/index.d.ts.map +1 -0
  405. package/dist/elements/QueryPresets/fields/Heading/index.js +31 -0
  406. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -0
  407. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +1 -1
  408. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  409. package/dist/elements/QueryPresets/fields/WhereField/index.js +24 -23
  410. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  411. package/dist/elements/QueryPresets/fields/fields.css +23 -0
  412. package/dist/elements/ReactSelect/DropdownIndicator/index.css +1 -1
  413. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  414. package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -12
  415. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  416. package/dist/elements/ReactSelect/MultiValue/index.css +1 -1
  417. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  418. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  419. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  420. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  421. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  422. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  423. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  424. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  425. package/dist/elements/ReactSelect/index.css +2 -3
  426. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  427. package/dist/elements/ReactSelect/index.js +177 -140
  428. package/dist/elements/ReactSelect/index.js.map +1 -1
  429. package/dist/elements/ReactSelect/types.d.ts +2 -0
  430. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  431. package/dist/elements/ReactSelect/types.js.map +1 -1
  432. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  433. package/dist/elements/RelationshipTable/AddNewButton.js +1 -2
  434. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  435. package/dist/elements/RelationshipTable/index.css +1 -2
  436. package/dist/elements/RelationshipTable/index.js +2 -2
  437. package/dist/elements/RelationshipTable/index.js.map +1 -1
  438. package/dist/elements/RenderTitle/index.css +10 -0
  439. package/dist/elements/RenderTitle/index.d.ts +5 -0
  440. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  441. package/dist/elements/RenderTitle/index.js +52 -27
  442. package/dist/elements/RenderTitle/index.js.map +1 -1
  443. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  444. package/dist/elements/SchedulePublishButton/index.js +6 -1
  445. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  446. package/dist/elements/Search/SearchInput/index.js +1 -1
  447. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  448. package/dist/elements/SelectMany/index.js +1 -1
  449. package/dist/elements/SelectMany/index.js.map +1 -1
  450. package/dist/elements/SortColumn/index.css +1 -1
  451. package/dist/elements/Spinner/index.css +16 -0
  452. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  453. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  454. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  455. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +32 -13
  456. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  457. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  458. package/dist/elements/Table/OrderableRow.js +1 -1
  459. package/dist/elements/Table/OrderableRow.js.map +1 -1
  460. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  461. package/dist/elements/Table/RelationshipProvider/index.js +1 -0
  462. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  463. package/dist/elements/Table/index.css +44 -10
  464. package/dist/elements/Tabs/index.css +100 -0
  465. package/dist/elements/Tabs/index.d.ts +32 -0
  466. package/dist/elements/Tabs/index.d.ts.map +1 -0
  467. package/dist/elements/Tabs/index.js +62 -0
  468. package/dist/elements/Tabs/index.js.map +1 -0
  469. package/dist/elements/Thumbnail/index.css +41 -0
  470. package/dist/elements/Thumbnail/index.d.ts +3 -3
  471. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  472. package/dist/elements/Thumbnail/index.js +1 -1
  473. package/dist/elements/Thumbnail/index.js.map +1 -1
  474. package/dist/elements/TimezonePicker/index.css +1 -16
  475. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  476. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  477. package/dist/elements/Toasts/fieldErrors.js +25 -9
  478. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  479. package/dist/elements/Toasts/index.css +5 -0
  480. package/dist/elements/Tooltip/index.css +20 -4
  481. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  482. package/dist/elements/Tooltip/index.js +71 -3
  483. package/dist/elements/Tooltip/index.js.map +1 -1
  484. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  485. package/dist/elements/UnpublishButton/index.js +5 -13
  486. package/dist/elements/UnpublishButton/index.js.map +1 -1
  487. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  488. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  489. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  490. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  491. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  492. package/dist/elements/UnpublishMany/index.js +0 -38
  493. package/dist/elements/UnpublishMany/index.js.map +1 -1
  494. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +11 -0
  495. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -0
  496. package/dist/elements/Upload/UploadFromURLModal/index.js +88 -0
  497. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -0
  498. package/dist/elements/Upload/index.css +134 -45
  499. package/dist/elements/Upload/index.d.ts +3 -8
  500. package/dist/elements/Upload/index.d.ts.map +1 -1
  501. package/dist/elements/Upload/index.js +71 -92
  502. package/dist/elements/Upload/index.js.map +1 -1
  503. package/dist/elements/UserMenu/LanguageMenu/index.d.ts +6 -0
  504. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -0
  505. package/dist/elements/UserMenu/LanguageMenu/index.js +133 -0
  506. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -0
  507. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +15 -0
  508. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -0
  509. package/dist/elements/UserMenu/SettingsMenu/index.js +119 -0
  510. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -0
  511. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts +6 -0
  512. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -0
  513. package/dist/elements/UserMenu/SubMenuHeader/index.js +34 -0
  514. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -0
  515. package/dist/elements/UserMenu/ThemeMenu/index.d.ts +6 -0
  516. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -0
  517. package/dist/elements/UserMenu/ThemeMenu/index.js +145 -0
  518. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -0
  519. package/dist/elements/UserMenu/index.css +80 -0
  520. package/dist/elements/UserMenu/index.d.ts +10 -0
  521. package/dist/elements/UserMenu/index.d.ts.map +1 -0
  522. package/dist/elements/UserMenu/index.js +204 -0
  523. package/dist/elements/UserMenu/index.js.map +1 -0
  524. package/dist/elements/WhereBuilder/Condition/index.d.ts +1 -0
  525. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  526. package/dist/elements/WhereBuilder/Condition/index.js +17 -2
  527. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  528. package/dist/elements/WhereBuilder/index.d.ts +4 -3
  529. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  530. package/dist/elements/WhereBuilder/index.js +71 -62
  531. package/dist/elements/WhereBuilder/index.js.map +1 -1
  532. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  533. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  534. package/dist/elements/WhereBuilder/types.js.map +1 -1
  535. package/dist/exports/client/index.d.ts +20 -4
  536. package/dist/exports/client/index.d.ts.map +1 -1
  537. package/dist/exports/client/index.js +1 -2
  538. package/dist/exports/client/index.js.map +4 -4
  539. package/dist/exports/rsc/index.d.ts +1 -0
  540. package/dist/exports/rsc/index.d.ts.map +1 -1
  541. package/dist/exports/rsc/index.js +1 -0
  542. package/dist/exports/rsc/index.js.map +1 -1
  543. package/dist/exports/shared/index.js +2 -2
  544. package/dist/exports/shared/index.js.map +2 -2
  545. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +2 -50
  546. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.d.ts.map +1 -1
  547. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +27 -20
  548. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  549. package/dist/fields/Blocks/BlockSelector/index.css +15 -4
  550. package/dist/fields/Blocks/BlockSelector/index.js +1 -1
  551. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  552. package/dist/fields/Blocks/SectionTitle/index.d.ts.map +1 -1
  553. package/dist/fields/Blocks/SectionTitle/index.js +1 -0
  554. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  555. package/dist/fields/Checkbox/index.css +2 -2
  556. package/dist/fields/ConfirmPassword/index.d.ts +4 -0
  557. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  558. package/dist/fields/ConfirmPassword/index.js +37 -33
  559. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  560. package/dist/fields/Group/index.css +3 -3
  561. package/dist/fields/Number/Input.d.ts.map +1 -1
  562. package/dist/fields/Number/Input.js +62 -46
  563. package/dist/fields/Number/Input.js.map +1 -1
  564. package/dist/fields/Number/index.css +19 -0
  565. package/dist/fields/Number/types.d.ts +10 -0
  566. package/dist/fields/Number/types.d.ts.map +1 -1
  567. package/dist/fields/Number/types.js.map +1 -1
  568. package/dist/fields/Password/input.d.ts.map +1 -1
  569. package/dist/fields/Password/input.js +33 -29
  570. package/dist/fields/Password/input.js.map +1 -1
  571. package/dist/fields/Password/types.d.ts +4 -0
  572. package/dist/fields/Password/types.d.ts.map +1 -1
  573. package/dist/fields/Password/types.js.map +1 -1
  574. package/dist/fields/RadioGroup/index.css +6 -0
  575. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  576. package/dist/fields/Relationship/Input.js +4 -0
  577. package/dist/fields/Relationship/Input.js.map +1 -1
  578. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  579. package/dist/fields/Relationship/types.d.ts +4 -0
  580. package/dist/fields/Relationship/types.d.ts.map +1 -1
  581. package/dist/fields/Relationship/types.js.map +1 -1
  582. package/dist/fields/Row/index.d.ts +1 -1
  583. package/dist/fields/Select/Input.d.ts +4 -0
  584. package/dist/fields/Select/Input.d.ts.map +1 -1
  585. package/dist/fields/Select/Input.js +45 -40
  586. package/dist/fields/Select/Input.js.map +1 -1
  587. package/dist/fields/Tabs/Tab/index.d.ts +0 -1
  588. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  589. package/dist/fields/Tabs/Tab/index.js +12 -23
  590. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  591. package/dist/fields/Tabs/index.d.ts.map +1 -1
  592. package/dist/fields/Tabs/index.js +37 -37
  593. package/dist/fields/Tabs/index.js.map +1 -1
  594. package/dist/fields/Text/Input.d.ts.map +1 -1
  595. package/dist/fields/Text/Input.js +44 -37
  596. package/dist/fields/Text/Input.js.map +1 -1
  597. package/dist/fields/Text/types.d.ts +9 -0
  598. package/dist/fields/Text/types.d.ts.map +1 -1
  599. package/dist/fields/Text/types.js.map +1 -1
  600. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  601. package/dist/fields/Textarea/Input.js +27 -23
  602. package/dist/fields/Textarea/Input.js.map +1 -1
  603. package/dist/fields/Textarea/index.css +1 -1
  604. package/dist/fields/Textarea/types.d.ts +4 -0
  605. package/dist/fields/Textarea/types.d.ts.map +1 -1
  606. package/dist/fields/Textarea/types.js.map +1 -1
  607. package/dist/fields/Upload/HasMany/index.css +4 -0
  608. package/dist/fields/Upload/Input.d.ts.map +1 -1
  609. package/dist/fields/Upload/Input.js +12 -11
  610. package/dist/fields/Upload/Input.js.map +1 -1
  611. package/dist/fields/Upload/index.js +1 -1
  612. package/dist/fields/Upload/index.js.map +1 -1
  613. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  614. package/dist/forms/RenderFields/RenderField.js +2 -1
  615. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  616. package/dist/forms/useField/index.js.map +1 -1
  617. package/dist/graphics/Icon/index.js +1 -1
  618. package/dist/graphics/Icon/index.js.map +1 -1
  619. package/dist/hooks/useElementHeightVariable.d.ts +15 -0
  620. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -0
  621. package/dist/hooks/useElementHeightVariable.js +53 -0
  622. package/dist/hooks/useElementHeightVariable.js.map +1 -0
  623. package/dist/icons/Check/index.css +1 -2
  624. package/dist/icons/Check/index.js +1 -1
  625. package/dist/icons/Check/index.js.map +1 -1
  626. package/dist/icons/Crop/index.css +5 -0
  627. package/dist/icons/Crop/index.d.ts +7 -0
  628. package/dist/icons/Crop/index.d.ts.map +1 -0
  629. package/dist/icons/Crop/index.js +24 -0
  630. package/dist/icons/Crop/index.js.map +1 -0
  631. package/dist/icons/Download/index.css +5 -0
  632. package/dist/icons/{ExternalLink → Download}/index.d.ts +1 -1
  633. package/dist/icons/Download/index.d.ts.map +1 -0
  634. package/dist/icons/Download/index.js +27 -0
  635. package/dist/icons/Download/index.js.map +1 -0
  636. package/dist/icons/Gear/index.d.ts.map +1 -1
  637. package/dist/icons/Gear/index.js +8 -1
  638. package/dist/icons/Gear/index.js.map +1 -1
  639. package/dist/icons/InteractionEnter/index.css +5 -0
  640. package/dist/icons/InteractionEnter/index.d.ts +11 -0
  641. package/dist/icons/InteractionEnter/index.d.ts.map +1 -0
  642. package/dist/icons/InteractionEnter/index.js +25 -0
  643. package/dist/icons/InteractionEnter/index.js.map +1 -0
  644. package/dist/icons/{Write → Key}/index.css +1 -1
  645. package/dist/icons/Key/index.d.ts +7 -0
  646. package/dist/icons/Key/index.d.ts.map +1 -0
  647. package/dist/icons/Key/index.js +24 -0
  648. package/dist/icons/Key/index.js.map +1 -0
  649. package/dist/icons/LogOut/index.js +2 -2
  650. package/dist/icons/LogOut/index.js.map +1 -1
  651. package/dist/icons/{ExternalLink → NewTab}/index.css +1 -1
  652. package/dist/icons/NewTab/index.d.ts +7 -0
  653. package/dist/icons/NewTab/index.d.ts.map +1 -0
  654. package/dist/icons/NewTab/index.js +25 -0
  655. package/dist/icons/NewTab/index.js.map +1 -0
  656. package/dist/icons/Replace/index.css +5 -0
  657. package/dist/icons/Replace/index.d.ts +6 -0
  658. package/dist/icons/Replace/index.d.ts.map +1 -0
  659. package/dist/icons/Replace/index.js +20 -0
  660. package/dist/icons/Replace/index.js.map +1 -0
  661. package/dist/icons/Reset/index.css +5 -0
  662. package/dist/icons/Reset/index.d.ts +7 -0
  663. package/dist/icons/Reset/index.d.ts.map +1 -0
  664. package/dist/icons/Reset/index.js +25 -0
  665. package/dist/icons/Reset/index.js.map +1 -0
  666. package/dist/icons/Schedule/index.d.ts.map +1 -1
  667. package/dist/icons/Schedule/index.js +38 -39
  668. package/dist/icons/Schedule/index.js.map +1 -1
  669. package/dist/icons/Swap/index.js +1 -1
  670. package/dist/icons/Swap/index.js.map +1 -1
  671. package/dist/icons/VariableColor/index.css +5 -0
  672. package/dist/icons/VariableColor/index.d.ts +7 -0
  673. package/dist/icons/VariableColor/index.d.ts.map +1 -0
  674. package/dist/icons/VariableColor/index.js +23 -0
  675. package/dist/icons/VariableColor/index.js.map +1 -0
  676. package/dist/icons/Warning/index.css +1 -7
  677. package/dist/icons/Warning/index.d.ts +1 -1
  678. package/dist/icons/Warning/index.d.ts.map +1 -1
  679. package/dist/icons/Warning/index.js +11 -16
  680. package/dist/icons/Warning/index.js.map +1 -1
  681. package/dist/icons/WarningTriangle/index.css +5 -0
  682. package/dist/icons/WarningTriangle/index.d.ts +6 -0
  683. package/dist/icons/WarningTriangle/index.d.ts.map +1 -0
  684. package/dist/icons/WarningTriangle/index.js +21 -0
  685. package/dist/icons/WarningTriangle/index.js.map +1 -0
  686. package/dist/icons/Write/index.d.ts +0 -1
  687. package/dist/icons/Write/index.d.ts.map +1 -1
  688. package/dist/icons/Write/index.js +1 -2
  689. package/dist/icons/Write/index.js.map +1 -1
  690. package/dist/providers/Auth/index.d.ts +3 -1
  691. package/dist/providers/Auth/index.d.ts.map +1 -1
  692. package/dist/providers/Auth/index.js +8 -3
  693. package/dist/providers/Auth/index.js.map +1 -1
  694. package/dist/providers/Config/index.js.map +1 -1
  695. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  696. package/dist/providers/DocumentInfo/index.js +4 -0
  697. package/dist/providers/DocumentInfo/index.js.map +1 -1
  698. package/dist/providers/DocumentInfo/types.d.ts +4 -0
  699. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  700. package/dist/providers/DocumentInfo/types.js.map +1 -1
  701. package/dist/providers/Root/index.d.ts.map +1 -1
  702. package/dist/providers/Root/index.js +27 -24
  703. package/dist/providers/Root/index.js.map +1 -1
  704. package/dist/providers/TableColumns/RenderDefaultCell/index.css +1 -0
  705. package/dist/providers/Theme/index.d.ts.map +1 -1
  706. package/dist/providers/Theme/index.js +16 -14
  707. package/dist/providers/Theme/index.js.map +1 -1
  708. package/dist/providers/ToastContainer/index.css +208 -0
  709. package/dist/providers/ToastContainer/index.d.ts +1 -0
  710. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  711. package/dist/providers/ToastContainer/index.js +19 -6
  712. package/dist/providers/ToastContainer/index.js.map +1 -1
  713. package/dist/scss/app.scss +10 -4
  714. package/dist/styles.css +1369 -1
  715. package/dist/templates/Default/index.d.ts.map +1 -1
  716. package/dist/templates/Default/index.js +53 -3
  717. package/dist/templates/Default/index.js.map +1 -1
  718. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +0 -1
  719. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  720. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +0 -1
  721. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  722. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  723. package/dist/utilities/formatDocTitle/formatDateTitle.js +1 -1
  724. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  725. package/dist/utilities/getHasScheduledPublish.d.ts +12 -0
  726. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -0
  727. package/dist/utilities/getHasScheduledPublish.js +38 -0
  728. package/dist/utilities/getHasScheduledPublish.js.map +1 -0
  729. package/dist/utilities/getVersions.d.ts.map +1 -1
  730. package/dist/utilities/getVersions.js +1 -21
  731. package/dist/utilities/getVersions.js.map +1 -1
  732. package/dist/utilities/reduceFieldsToOptions.js +1 -1
  733. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  734. package/dist/views/API/index.client.js +2 -2
  735. package/dist/views/API/index.client.js.map +1 -1
  736. package/dist/views/Account/ResetPreferences/index.js +1 -0
  737. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  738. package/dist/views/Account/Settings/index.css +30 -13
  739. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  740. package/dist/views/Account/ToggleTheme/index.js +31 -47
  741. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  742. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -1
  743. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +27 -23
  744. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  745. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  746. package/dist/views/Dashboard/Default/ModularDashboard/index.css +2 -0
  747. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +2 -2
  748. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  749. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -2
  750. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  751. package/dist/views/Document/index.d.ts.map +1 -1
  752. package/dist/views/Document/index.js +18 -1
  753. package/dist/views/Document/index.js.map +1 -1
  754. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  755. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  756. package/dist/views/Document/renderDocumentSlots.js +47 -1
  757. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  758. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  759. package/dist/views/Edit/Auth/APIKey.js +10 -32
  760. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  761. package/dist/views/Edit/Auth/index.css +0 -67
  762. package/dist/views/Edit/index.css +143 -6
  763. package/dist/views/Edit/index.d.ts +1 -1
  764. package/dist/views/Edit/index.d.ts.map +1 -1
  765. package/dist/views/Edit/index.js +96 -79
  766. package/dist/views/Edit/index.js.map +1 -1
  767. package/dist/views/HierarchyList/DocumentListSelection/index.js +8 -8
  768. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  769. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +2 -2
  770. package/dist/views/List/ListHeader/index.css +28 -1
  771. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  772. package/dist/views/List/ListHeader/index.js +0 -1
  773. package/dist/views/List/ListHeader/index.js.map +1 -1
  774. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  775. package/dist/views/List/ListSelection/index.js +84 -33
  776. package/dist/views/List/ListSelection/index.js.map +1 -1
  777. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  778. package/dist/views/List/handleGroupBy.js +9 -0
  779. package/dist/views/List/handleGroupBy.js.map +1 -1
  780. package/dist/views/List/index.client.d.ts.map +1 -1
  781. package/dist/views/List/index.client.js +10 -9
  782. package/dist/views/List/index.client.js.map +1 -1
  783. package/dist/views/List/index.css +15 -0
  784. package/dist/views/List/index.d.ts.map +1 -1
  785. package/dist/views/List/index.js +9 -2
  786. package/dist/views/List/index.js.map +1 -1
  787. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  788. package/dist/views/List/renderListViewSlots.js +11 -0
  789. package/dist/views/List/renderListViewSlots.js.map +1 -1
  790. package/dist/views/Logout/LogoutClient.d.ts +14 -0
  791. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  792. package/dist/views/Logout/LogoutClient.js +39 -33
  793. package/dist/views/Logout/LogoutClient.js.map +1 -1
  794. package/dist/views/Logout/index.d.ts.map +1 -1
  795. package/dist/views/Logout/index.js +7 -2
  796. package/dist/views/Logout/index.js.map +1 -1
  797. package/dist/views/Version/Default/index.css +3 -5
  798. package/dist/views/Version/Default/index.d.ts.map +1 -1
  799. package/dist/views/Version/Default/index.js +7 -28
  800. package/dist/views/Version/Default/index.js.map +1 -1
  801. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  802. package/dist/views/Version/Restore/index.css +2 -2
  803. package/dist/views/Version/SelectComparison/VersionDrawer/index.css +5 -0
  804. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +1 -1
  805. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  806. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +1 -2
  807. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  808. package/dist/views/Version/SelectComparison/index.css +5 -0
  809. package/dist/views/Version/SelectComparison/index.d.ts +1 -1
  810. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  811. package/dist/views/Version/SelectComparison/index.js +2 -1
  812. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  813. package/dist/views/Version/SelectLocales/index.d.ts +1 -2
  814. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  815. package/dist/views/Version/SelectLocales/index.js +83 -32
  816. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  817. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  818. package/dist/views/Versions/index.css +19 -16
  819. package/dist/views/Versions/index.d.ts +1 -1
  820. package/dist/views/Versions/index.d.ts.map +1 -1
  821. package/dist/views/Versions/index.js +3 -26
  822. package/dist/views/Versions/index.js.map +1 -1
  823. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  824. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -0
  825. package/dist/widgets/CollectionQuery/SortField/index.js +118 -0
  826. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -0
  827. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts +18 -0
  828. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts.map +1 -0
  829. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js +91 -0
  830. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js.map +1 -0
  831. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +100 -0
  832. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +1 -0
  833. package/dist/widgets/CollectionQuery/index.css +206 -0
  834. package/dist/widgets/CollectionQuery/index.d.ts +17 -0
  835. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -0
  836. package/dist/widgets/CollectionQuery/index.js +399 -0
  837. package/dist/widgets/CollectionQuery/index.js.map +1 -0
  838. package/package.json +5 -5
  839. package/dist/elements/BulkUpload/AddingFilesView/index.scss +0 -25
  840. package/dist/elements/BulkUpload/EditForm/index.scss +0 -11
  841. package/dist/elements/BulkUpload/EditMany/index.scss +0 -171
  842. package/dist/elements/BulkUpload/Header/index.d.ts +0 -9
  843. package/dist/elements/BulkUpload/Header/index.d.ts.map +0 -1
  844. package/dist/elements/BulkUpload/Header/index.js.map +0 -1
  845. package/dist/elements/ColumnSelector/index.d.ts +0 -9
  846. package/dist/elements/ColumnSelector/index.d.ts.map +0 -1
  847. package/dist/elements/ColumnSelector/index.js.map +0 -1
  848. package/dist/elements/ColumnsButton/index.d.ts +0 -7
  849. package/dist/elements/ColumnsButton/index.d.ts.map +0 -1
  850. package/dist/elements/ColumnsButton/index.js.map +0 -1
  851. package/dist/elements/EditMany/index.scss +0 -182
  852. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +0 -35
  853. package/dist/elements/FileDetails/FileMeta/index.scss +0 -31
  854. package/dist/elements/FileDetails/StaticFileDetails/index.scss +0 -134
  855. package/dist/elements/GroupByBuilder/index.d.ts +0 -12
  856. package/dist/elements/GroupByBuilder/index.d.ts.map +0 -1
  857. package/dist/elements/GroupByBuilder/index.js +0 -164
  858. package/dist/elements/GroupByBuilder/index.js.map +0 -1
  859. package/dist/elements/GroupByBuilder/index.scss +0 -39
  860. package/dist/elements/GroupByControl/index.d.ts +0 -9
  861. package/dist/elements/GroupByControl/index.d.ts.map +0 -1
  862. package/dist/elements/GroupByControl/index.js +0 -258
  863. package/dist/elements/GroupByControl/index.js.map +0 -1
  864. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +0 -1
  865. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +0 -1
  866. package/dist/elements/Hierarchy/Drawer/index.css +0 -108
  867. package/dist/elements/Hierarchy/Drawer/index.d.ts +0 -20
  868. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +0 -1
  869. package/dist/elements/Hierarchy/Drawer/index.js.map +0 -1
  870. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +0 -1
  871. package/dist/elements/Hierarchy/Drawer/types.js.map +0 -1
  872. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts +0 -30
  873. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +0 -1
  874. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +0 -1
  875. package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +0 -78
  876. package/dist/elements/Hierarchy/Field/index.scss +0 -41
  877. package/dist/elements/Hierarchy/MoveMany/index.scss +0 -7
  878. package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +0 -26
  879. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +0 -7
  880. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +0 -1
  881. package/dist/elements/Hierarchy/Tree/TreeConnector.js +0 -23
  882. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +0 -1
  883. package/dist/elements/LoadMoreRow/index.scss +0 -45
  884. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  885. package/dist/elements/PreviewSizes/index.scss +0 -147
  886. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -17
  887. package/dist/elements/QueryPresets/fields/GroupByField/index.scss +0 -17
  888. package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
  889. package/dist/elements/Thumbnail/index.scss +0 -53
  890. package/dist/fields/Tabs/Tab/index.css +0 -82
  891. package/dist/icons/ExternalLink/index.d.ts.map +0 -1
  892. package/dist/icons/ExternalLink/index.js +0 -26
  893. package/dist/icons/ExternalLink/index.js.map +0 -1
  894. package/dist/scss/toasts.scss +0 -146
  895. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  896. package/dist/views/Version/SelectComparison/index.scss +0 -9
  897. /package/dist/elements/{ColumnSelector/index.css → ColumnSelection/Popup.css} +0 -0
  898. /package/dist/elements/{GroupByControl/index.css → GroupBy/Popup.css} +0 -0
  899. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.d.ts +0 -0
  900. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.js +0 -0
  901. /package/dist/elements/Hierarchy/{Drawer → Modal}/types.js +0 -0
@@ -0,0 +1,268 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ import React, { useCallback } from 'react';
6
+ import { ChevronIcon } from '../../icons/Chevron/index.js';
7
+ import { TrashIcon } from '../../icons/Trash/index.js';
8
+ import { XIcon } from '../../icons/X/index.js';
9
+ import { useTranslation } from '../../providers/Translation/index.js';
10
+ import { Button } from '../Button/index.js';
11
+ import { Popup, PopupList } from '../Popup/index.js';
12
+ import './Popup.css';
13
+ const baseClass = 'group-by-control';
14
+ export const GroupByPopup = t0 => {
15
+ const $ = _c(35);
16
+ const {
17
+ close,
18
+ filteredFields,
19
+ groupByField,
20
+ groupByFieldName,
21
+ isActive,
22
+ onChange,
23
+ value
24
+ } = t0;
25
+ const {
26
+ t
27
+ } = useTranslation();
28
+ const directionValue = !value || typeof value !== "string" ? "asc" : value.startsWith("-") ? "desc" : "asc";
29
+ let t1;
30
+ if ($[0] !== onChange || $[1] !== value) {
31
+ t1 = fieldPath => {
32
+ onChange(value?.startsWith("-") ? `-${fieldPath}` : fieldPath);
33
+ };
34
+ $[0] = onChange;
35
+ $[1] = value;
36
+ $[2] = t1;
37
+ } else {
38
+ t1 = $[2];
39
+ }
40
+ const handleFieldSelect = t1;
41
+ let t2;
42
+ if ($[3] !== close || $[4] !== onChange) {
43
+ t2 = () => {
44
+ onChange("");
45
+ close();
46
+ };
47
+ $[3] = close;
48
+ $[4] = onChange;
49
+ $[5] = t2;
50
+ } else {
51
+ t2 = $[5];
52
+ }
53
+ const handleClear = t2;
54
+ let t3;
55
+ if ($[6] !== groupByFieldName || $[7] !== onChange) {
56
+ t3 = direction => {
57
+ if (!groupByFieldName) {
58
+ return;
59
+ }
60
+ onChange(direction === "asc" ? groupByFieldName : `-${groupByFieldName}`);
61
+ };
62
+ $[6] = groupByFieldName;
63
+ $[7] = onChange;
64
+ $[8] = t3;
65
+ } else {
66
+ t3 = $[8];
67
+ }
68
+ const handleDirectionSelect = t3;
69
+ let t4;
70
+ if ($[9] !== close || $[10] !== directionValue || $[11] !== filteredFields || $[12] !== groupByField?.label || $[13] !== groupByFieldName || $[14] !== handleClear || $[15] !== handleDirectionSelect || $[16] !== handleFieldSelect || $[17] !== isActive || $[18] !== t) {
71
+ let t5;
72
+ if ($[20] !== filteredFields || $[21] !== groupByFieldName || $[22] !== handleFieldSelect) {
73
+ t5 = t6 => {
74
+ const {
75
+ close: closeFieldPopup
76
+ } = t6;
77
+ return _jsx(PopupList.RadioGroup, {
78
+ children: filteredFields.map((field, i) => _jsx(PopupList.RadioGroupItem, {
79
+ active: field.fieldPath === groupByFieldName,
80
+ onClick: () => {
81
+ handleFieldSelect(field.fieldPath);
82
+ closeFieldPopup();
83
+ },
84
+ children: field.label
85
+ }, i))
86
+ });
87
+ };
88
+ $[20] = filteredFields;
89
+ $[21] = groupByFieldName;
90
+ $[22] = handleFieldSelect;
91
+ $[23] = t5;
92
+ } else {
93
+ t5 = $[23];
94
+ }
95
+ let t6;
96
+ if ($[24] !== groupByField?.label || $[25] !== t) {
97
+ t6 = t7 => {
98
+ const {
99
+ active,
100
+ onClick,
101
+ onKeyDown
102
+ } = t7;
103
+ return _jsxs("button", {
104
+ className: `${baseClass}__select-trigger`,
105
+ onClick,
106
+ onKeyDown,
107
+ type: "button",
108
+ children: [_jsx("span", {
109
+ className: `${baseClass}__select-value`,
110
+ children: groupByField?.label || t("general:selectValue")
111
+ }), _jsx(ChevronIcon, {
112
+ direction: active ? "up" : "down",
113
+ size: 16
114
+ })]
115
+ });
116
+ };
117
+ $[24] = groupByField?.label;
118
+ $[25] = t;
119
+ $[26] = t6;
120
+ } else {
121
+ t6 = $[26];
122
+ }
123
+ let t7;
124
+ if ($[27] !== directionValue || $[28] !== handleDirectionSelect || $[29] !== t) {
125
+ t7 = t8 => {
126
+ const {
127
+ close: closeSortPopup
128
+ } = t8;
129
+ return _jsxs(PopupList.RadioGroup, {
130
+ children: [_jsx(PopupList.RadioGroupItem, {
131
+ active: directionValue === "desc",
132
+ onClick: () => {
133
+ handleDirectionSelect("desc");
134
+ closeSortPopup();
135
+ },
136
+ children: t("general:descending")
137
+ }), _jsx(PopupList.RadioGroupItem, {
138
+ active: directionValue === "asc",
139
+ onClick: () => {
140
+ handleDirectionSelect("asc");
141
+ closeSortPopup();
142
+ },
143
+ children: t("general:ascending")
144
+ })]
145
+ });
146
+ };
147
+ $[27] = directionValue;
148
+ $[28] = handleDirectionSelect;
149
+ $[29] = t;
150
+ $[30] = t7;
151
+ } else {
152
+ t7 = $[30];
153
+ }
154
+ let t8;
155
+ if ($[31] !== directionValue || $[32] !== groupByFieldName || $[33] !== t) {
156
+ t8 = t9 => {
157
+ const {
158
+ active: active_0,
159
+ onClick: onClick_0,
160
+ onKeyDown: onKeyDown_0
161
+ } = t9;
162
+ return _jsxs("button", {
163
+ className: [`${baseClass}__select-trigger`, !groupByFieldName && `${baseClass}__select-trigger--disabled`].filter(Boolean).join(" "),
164
+ disabled: !groupByFieldName,
165
+ onClick: onClick_0,
166
+ onKeyDown: onKeyDown_0,
167
+ type: "button",
168
+ children: [_jsx("span", {
169
+ className: `${baseClass}__select-value`,
170
+ children: directionValue === "desc" ? t("general:descending") : t("general:ascending")
171
+ }), _jsx(ChevronIcon, {
172
+ direction: active_0 ? "up" : "down",
173
+ size: 16
174
+ })]
175
+ });
176
+ };
177
+ $[31] = directionValue;
178
+ $[32] = groupByFieldName;
179
+ $[33] = t;
180
+ $[34] = t8;
181
+ } else {
182
+ t8 = $[34];
183
+ }
184
+ t4 = _jsxs("div", {
185
+ className: `${baseClass}__content`,
186
+ children: [_jsxs("div", {
187
+ className: `${baseClass}__header`,
188
+ children: [_jsx("span", {
189
+ className: `${baseClass}__title`,
190
+ children: t("general:groupByLabel", {
191
+ label: ""
192
+ })
193
+ }), _jsxs("div", {
194
+ className: `${baseClass}__header-actions`,
195
+ children: [isActive && _jsx(Button, {
196
+ "aria-label": t("general:clear"),
197
+ buttonStyle: "ghost",
198
+ icon: _jsx(TrashIcon, {}),
199
+ onClick: handleClear,
200
+ round: true,
201
+ size: "medium"
202
+ }), _jsx(Button, {
203
+ "aria-label": t("general:close"),
204
+ buttonStyle: "ghost",
205
+ icon: _jsx(XIcon, {
206
+ size: 24
207
+ }),
208
+ onClick: close,
209
+ round: true,
210
+ size: "medium"
211
+ })]
212
+ })]
213
+ }), _jsxs("div", {
214
+ className: `${baseClass}__body`,
215
+ children: [_jsxs("div", {
216
+ className: `${baseClass}__row`,
217
+ children: [_jsx("label", {
218
+ className: `${baseClass}__label`,
219
+ children: t("general:field")
220
+ }), _jsx("div", {
221
+ className: `${baseClass}__input`,
222
+ "data-popup-prevent-close": true,
223
+ children: _jsx(Popup, {
224
+ className: `${baseClass}__select-popup`,
225
+ horizontalAlign: "right",
226
+ render: t5,
227
+ renderButton: t6,
228
+ verticalAlign: "bottom"
229
+ })
230
+ })]
231
+ }), _jsxs("div", {
232
+ className: `${baseClass}__row`,
233
+ children: [_jsx("label", {
234
+ className: `${baseClass}__label`,
235
+ children: t("general:sort")
236
+ }), _jsx("div", {
237
+ className: `${baseClass}__input`,
238
+ "data-popup-prevent-close": true,
239
+ children: _jsx(Popup, {
240
+ className: `${baseClass}__select-popup`,
241
+ disabled: !groupByFieldName,
242
+ horizontalAlign: "right",
243
+ render: t7,
244
+ renderButton: t8,
245
+ size: "small",
246
+ verticalAlign: "bottom"
247
+ })
248
+ })]
249
+ })]
250
+ })]
251
+ });
252
+ $[9] = close;
253
+ $[10] = directionValue;
254
+ $[11] = filteredFields;
255
+ $[12] = groupByField?.label;
256
+ $[13] = groupByFieldName;
257
+ $[14] = handleClear;
258
+ $[15] = handleDirectionSelect;
259
+ $[16] = handleFieldSelect;
260
+ $[17] = isActive;
261
+ $[18] = t;
262
+ $[19] = t4;
263
+ } else {
264
+ t4 = $[19];
265
+ }
266
+ return t4;
267
+ };
268
+ //# sourceMappingURL=Popup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popup.js","names":["c","_c","React","useCallback","ChevronIcon","TrashIcon","XIcon","useTranslation","Button","Popup","PopupList","baseClass","GroupByPopup","t0","$","close","filteredFields","groupByField","groupByFieldName","isActive","onChange","value","t","directionValue","startsWith","t1","fieldPath","handleFieldSelect","t2","handleClear","t3","direction","handleDirectionSelect","t4","label","t5","t6","closeFieldPopup","_jsx","RadioGroup","children","map","field","i","RadioGroupItem","active","onClick","t7","onKeyDown","_jsxs","className","type","size","t8","closeSortPopup","t9","active_0","onClick_0","onKeyDown_0","filter","Boolean","join","disabled","buttonStyle","icon","round","horizontalAlign","render","verticalAlign"],"sources":["../../../src/elements/GroupBy/Popup.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback } from 'react'\n\nimport type { ReducedField } from '../WhereBuilder/types.js'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { TrashIcon } from '../../icons/Trash/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport './Popup.css'\n\nexport type GroupByPopupProps = {\n /** Closes the parent popup. */\n readonly close: () => void\n /** The selectable, permission-filtered fields. */\n readonly filteredFields: ReducedField[]\n /** The currently selected field, if any. */\n readonly groupByField?: ReducedField\n /** The selected field path with any leading `-` stripped. */\n readonly groupByFieldName?: string\n /** Whether a field is currently selected. */\n readonly isActive: boolean\n /** Called with the next `groupBy` value (prefixed with `-` for descending). */\n readonly onChange: (groupBy: string) => void\n /** The current `groupBy` value (prefixed with `-` for descending). */\n readonly value: string\n}\n\nconst baseClass = 'group-by-control'\n\nexport const GroupByPopup: React.FC<GroupByPopupProps> = ({\n close,\n filteredFields,\n groupByField,\n groupByFieldName,\n isActive,\n onChange,\n value,\n}) => {\n const { t } = useTranslation()\n\n const directionValue =\n !value || typeof value !== 'string' ? 'asc' : value.startsWith('-') ? 'desc' : 'asc'\n\n const handleFieldSelect = useCallback(\n (fieldPath: string) => {\n onChange(value?.startsWith('-') ? `-${fieldPath}` : fieldPath)\n },\n [onChange, value],\n )\n\n const handleClear = useCallback(() => {\n onChange('')\n close()\n }, [onChange, close])\n\n const handleDirectionSelect = useCallback(\n (direction: 'asc' | 'desc') => {\n if (!groupByFieldName) {\n return\n }\n onChange(direction === 'asc' ? groupByFieldName : `-${groupByFieldName}`)\n },\n [groupByFieldName, onChange],\n )\n\n return (\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__header`}>\n <span className={`${baseClass}__title`}>{t('general:groupByLabel', { label: '' })}</span>\n <div className={`${baseClass}__header-actions`}>\n {isActive && (\n <Button\n aria-label={t('general:clear')}\n buttonStyle=\"ghost\"\n icon={<TrashIcon />}\n onClick={handleClear}\n round\n size=\"medium\"\n />\n )}\n <Button\n aria-label={t('general:close')}\n buttonStyle=\"ghost\"\n icon={<XIcon size={24} />}\n onClick={close}\n round\n size=\"medium\"\n />\n </div>\n </div>\n <div className={`${baseClass}__body`}>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:field')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n horizontalAlign=\"right\"\n render={({ close: closeFieldPopup }) => (\n <PopupList.RadioGroup>\n {filteredFields.map((field, i) => (\n <PopupList.RadioGroupItem\n active={field.fieldPath === groupByFieldName}\n key={i}\n onClick={() => {\n handleFieldSelect(field.fieldPath)\n closeFieldPopup()\n }}\n >\n {field.label}\n </PopupList.RadioGroupItem>\n ))}\n </PopupList.RadioGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={`${baseClass}__select-trigger`}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {groupByField?.label || t('general:selectValue')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:sort')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n disabled={!groupByFieldName}\n horizontalAlign=\"right\"\n render={({ close: closeSortPopup }) => (\n <PopupList.RadioGroup>\n <PopupList.RadioGroupItem\n active={directionValue === 'desc'}\n onClick={() => {\n handleDirectionSelect('desc')\n closeSortPopup()\n }}\n >\n {t('general:descending')}\n </PopupList.RadioGroupItem>\n <PopupList.RadioGroupItem\n active={directionValue === 'asc'}\n onClick={() => {\n handleDirectionSelect('asc')\n closeSortPopup()\n }}\n >\n {t('general:ascending')}\n </PopupList.RadioGroupItem>\n </PopupList.RadioGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={[\n `${baseClass}__select-trigger`,\n !groupByFieldName && `${baseClass}__select-trigger--disabled`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={!groupByFieldName}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {directionValue === 'desc' ? t('general:descending') : t('general:ascending')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n size=\"small\"\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import type { ClientField, SanitizedCollectionConfig } from 'payload';
2
+ import React from 'react';
3
+ export type GroupByButtonProps = {
4
+ readonly collectionSlug: SanitizedCollectionConfig['slug'];
5
+ readonly fields: ClientField[];
6
+ /** Called with the next `groupBy` value (prefixed with `-` for descending). */
7
+ readonly onChange: (groupBy: string) => void;
8
+ /** The current `groupBy` value (prefixed with `-` for descending). */
9
+ readonly value: string;
10
+ };
11
+ export declare const GroupByButton: React.FC<GroupByButtonProps>;
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/GroupBy/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAS,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG5E,OAAO,KAAkB,MAAM,OAAO,CAAA;AAUtC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAA;IAC9B,+EAA+E;IAC/E,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB,CAAA;AAoBD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAiFtD,CAAA"}
@@ -0,0 +1,91 @@
1
+ 'use client';
2
+
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
+ import { isFieldDisabled } from 'payload/shared';
5
+ import React, { useMemo } from 'react';
6
+ import { ChevronIcon } from '../../icons/Chevron/index.js';
7
+ import { useAuth } from '../../providers/Auth/index.js';
8
+ import { useTranslation } from '../../providers/Translation/index.js';
9
+ import { reduceFieldsToOptions } from '../../utilities/reduceFieldsToOptions.js';
10
+ import { Button } from '../Button/index.js';
11
+ import { Popup } from '../Popup/index.js';
12
+ import { GroupByPopup } from './Popup.js';
13
+ const baseClass = 'group-by-control';
14
+ /**
15
+ * Supported field types for group by functionality.
16
+ */
17
+ const supportedFieldTypes = ['text', 'textarea', 'number', 'select', 'relationship', 'date', 'checkbox', 'radio', 'email', 'upload'];
18
+ export const GroupByButton = ({
19
+ collectionSlug,
20
+ fields,
21
+ onChange,
22
+ value
23
+ }) => {
24
+ const {
25
+ i18n,
26
+ t
27
+ } = useTranslation();
28
+ const {
29
+ permissions
30
+ } = useAuth();
31
+ const groupByFieldName = value?.replace(/^-/, '');
32
+ const fieldPermissions = permissions?.collections?.[collectionSlug]?.fields;
33
+ const reducedFields = useMemo(() => reduceFieldsToOptions({
34
+ fieldPermissions,
35
+ fields,
36
+ i18n
37
+ }), [fields, fieldPermissions, i18n]);
38
+ const filteredFields = useMemo(() => reducedFields.filter(field => !isFieldDisabled(field.field, 'groupBy') && field.fieldPath !== 'id' && supportedFieldTypes.includes(field.field.type)), [reducedFields]);
39
+ const groupByField = reducedFields.find(field_0 => field_0.fieldPath === groupByFieldName);
40
+ const isActive = Boolean(groupByFieldName && groupByField);
41
+ if (filteredFields.length === 0) {
42
+ return null;
43
+ }
44
+ const triggerLabel = isActive ? t('general:groupByLabel', {
45
+ label: groupByField?.label || ''
46
+ }) : t('general:groupByLabel', {
47
+ label: ''
48
+ });
49
+ return /*#__PURE__*/_jsx(Popup, {
50
+ className: baseClass,
51
+ horizontalAlign: "right",
52
+ portalClassName: `${baseClass}__popup`,
53
+ render: ({
54
+ close
55
+ }) => /*#__PURE__*/_jsx(GroupByPopup, {
56
+ close: close,
57
+ filteredFields: filteredFields,
58
+ groupByField: groupByField,
59
+ groupByFieldName: groupByFieldName,
60
+ isActive: isActive,
61
+ onChange: onChange,
62
+ value: value
63
+ }),
64
+ renderButton: ({
65
+ active,
66
+ onClick,
67
+ onKeyDown,
68
+ ...ariaProps
69
+ }) => /*#__PURE__*/_jsx(Button, {
70
+ buttonStyle: "secondary",
71
+ className: `${baseClass}__trigger`,
72
+ extraButtonProps: {
73
+ onKeyDown
74
+ },
75
+ icon: /*#__PURE__*/_jsx(ChevronIcon, {
76
+ direction: active ? 'up' : 'down',
77
+ size: 16
78
+ }),
79
+ id: "toggle-group-by",
80
+ onClick: onClick,
81
+ selected: active || isActive,
82
+ size: "medium",
83
+ ...ariaProps,
84
+ children: triggerLabel
85
+ }),
86
+ size: "large",
87
+ theme: "auto",
88
+ verticalAlign: "bottom"
89
+ });
90
+ };
91
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["isFieldDisabled","React","useMemo","ChevronIcon","useAuth","useTranslation","reduceFieldsToOptions","Button","Popup","GroupByPopup","baseClass","supportedFieldTypes","GroupByButton","collectionSlug","fields","onChange","value","i18n","t","permissions","groupByFieldName","replace","fieldPermissions","collections","reducedFields","filteredFields","filter","field","fieldPath","includes","type","groupByField","find","isActive","Boolean","length","triggerLabel","label","_jsx","className","horizontalAlign","portalClassName","render","close","renderButton","active","onClick","onKeyDown","ariaProps","buttonStyle","extraButtonProps","icon","direction","size","id","selected","theme","verticalAlign"],"sources":["../../../src/elements/GroupBy/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, Field, SanitizedCollectionConfig } from 'payload'\n\nimport { isFieldDisabled } from 'payload/shared'\nimport React, { useMemo } from 'react'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { reduceFieldsToOptions } from '../../utilities/reduceFieldsToOptions.js'\nimport { Button } from '../Button/index.js'\nimport { Popup } from '../Popup/index.js'\nimport { GroupByPopup } from './Popup.js'\n\nexport type GroupByButtonProps = {\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly fields: ClientField[]\n /** Called with the next `groupBy` value (prefixed with `-` for descending). */\n readonly onChange: (groupBy: string) => void\n /** The current `groupBy` value (prefixed with `-` for descending). */\n readonly value: string\n}\n\nconst baseClass = 'group-by-control'\n\n/**\n * Supported field types for group by functionality.\n */\nconst supportedFieldTypes: Field['type'][] = [\n 'text',\n 'textarea',\n 'number',\n 'select',\n 'relationship',\n 'date',\n 'checkbox',\n 'radio',\n 'email',\n 'upload',\n]\n\nexport const GroupByButton: React.FC<GroupByButtonProps> = ({\n collectionSlug,\n fields,\n onChange,\n value,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n\n const groupByFieldName = value?.replace(/^-/, '')\n\n const fieldPermissions = permissions?.collections?.[collectionSlug]?.fields\n\n const reducedFields = useMemo(\n () =>\n reduceFieldsToOptions({\n fieldPermissions,\n fields,\n i18n,\n }),\n [fields, fieldPermissions, i18n],\n )\n\n const filteredFields = useMemo(\n () =>\n reducedFields.filter(\n (field) =>\n !isFieldDisabled(field.field, 'groupBy') &&\n field.fieldPath !== 'id' &&\n supportedFieldTypes.includes(field.field.type),\n ),\n [reducedFields],\n )\n\n const groupByField = reducedFields.find((field) => field.fieldPath === groupByFieldName)\n const isActive = Boolean(groupByFieldName && groupByField)\n\n if (filteredFields.length === 0) {\n return null\n }\n\n const triggerLabel = isActive\n ? t('general:groupByLabel', { label: groupByField?.label || '' })\n : t('general:groupByLabel', { label: '' })\n\n return (\n <Popup\n className={baseClass}\n horizontalAlign=\"right\"\n portalClassName={`${baseClass}__popup`}\n render={({ close }) => (\n <GroupByPopup\n close={close}\n filteredFields={filteredFields}\n groupByField={groupByField}\n groupByFieldName={groupByFieldName}\n isActive={isActive}\n onChange={onChange}\n value={value}\n />\n )}\n renderButton={({ active, onClick, onKeyDown, ...ariaProps }) => (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__trigger`}\n extraButtonProps={{ onKeyDown }}\n icon={<ChevronIcon direction={active ? 'up' : 'down'} size={16} />}\n id=\"toggle-group-by\"\n onClick={onClick}\n selected={active || isActive}\n size=\"medium\"\n {...ariaProps}\n >\n {triggerLabel}\n </Button>\n )}\n size=\"large\"\n theme=\"auto\"\n verticalAlign=\"bottom\"\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,7 @@
5
5
  flex-shrink: 0;
6
6
  display: flex;
7
7
  flex-direction: column;
8
- border-right: 1px solid var(--color-border);
8
+ border-right: var(--stroke-width-small) solid var(--color-border);
9
9
  height: 100%;
10
10
  background: var(--color-bg);
11
11
  }
@@ -16,13 +16,15 @@
16
16
  justify-content: space-between;
17
17
  gap: var(--spacer-2);
18
18
  padding: var(--spacer-1) var(--spacer-3);
19
+ padding-inline-end: var(--spacer-2);
19
20
  flex-shrink: 0;
20
21
  margin-bottom: var(--spacer-2);
21
- border-bottom: 1px solid var(--color-border);
22
+ border-bottom: var(--stroke-width-small) solid var(--color-border);
22
23
  }
23
24
 
24
25
  .hierarchy-column__add-button {
25
26
  flex-shrink: 0;
27
+ color: var(--color-text-secondary);
26
28
  }
27
29
 
28
30
  .hierarchy-column__header-checkbox {
@@ -45,7 +47,7 @@
45
47
  display: flex;
46
48
  flex-direction: column;
47
49
  overflow-y: auto;
48
- margin: 0 var(--spacer-2);
50
+ margin: 0 var(--spacer-1);
49
51
  gap: var(--spacer-1);
50
52
  }
51
53
 
@@ -8,6 +8,7 @@
8
8
  user-select: none;
9
9
  gap: var(--spacer-2-5);
10
10
  border-radius: var(--button-radius);
11
+ margin-inline: var(--spacer-1);
11
12
 
12
13
  &:first-child {
13
14
  margin-top: var(--spacer-1);
@@ -40,7 +40,7 @@ export type ColumnProps = {
40
40
  hasNextPage: boolean;
41
41
  isLoading: boolean;
42
42
  items: ColumnItemData[];
43
- /** Called when user clicks "New" button - parent should open drawer with parentId */
43
+ /** Called when user clicks "New" button - parent should open modal with parentId */
44
44
  onCreateNew: (params: {
45
45
  parentId: null | number | string;
46
46
  }) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/ColumnBrowser/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/ColumnBrowser/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/elements/Hierarchy/ColumnBrowser/types.ts"],"sourcesContent":["import type { Where } from 'payload'\nimport type React from 'react'\n\nexport type ColumnItemData = {\n /** For folders with collectionSpecific config, the allowed collection slugs */\n allowedCollections?: string[]\n hasChildren: boolean\n id: number | string\n title: string\n}\n\nexport type PathSegment = {\n id: number | string\n title: string\n}\n\nexport type ColumnItemProps = {\n disabled?: boolean\n /** Required collections that the folder must allow (for superset check) */\n filterByCollection?: string[]\n hasSelectedDescendants: boolean\n isExpanded: boolean\n isSelected: boolean\n item: ColumnItemData\n onExpand: (params: { id: number | string }) => void\n onSelect: (params: { id: number | string }) => void\n}\n\nexport type ColumnProps = {\n ancestorsWithSelections: Set<number | string>\n /** Whether user can create new documents */\n canCreate: boolean\n /** Label for the collection (e.g., \"Folder\") */\n collectionLabel: string\n disabled?: boolean\n /** IDs that should be disabled (e.g., items being moved can't be selected as destination) */\n disabledIds?: Set<number | string>\n expandedId: null | number | string\n /** Required collections for superset check (passed to ColumnItem) */\n filterByCollection?: string[]\n hasNextPage: boolean\n isLoading: boolean\n items: ColumnItemData[]\n /** Called when user clicks \"New\" button - parent should open drawer with parentId */\n onCreateNew: (params: { parentId: null | number | string }) => void\n onExpand: (params: { id: number | string }) => void\n onLoadMore: () => void\n onSelect: (params: { id: number | string; path: PathSegment[] }) => void\n parentId: null | number | string\n parentTitle?: string\n pathToColumn: PathSegment[]\n selectedIds: Set<number | string>\n totalDocs: number\n}\n\nexport type ColumnState = {\n hasNextPage: boolean\n isLoading: boolean\n items: ColumnItemData[]\n page: number\n parentId: null | number | string\n parentTitle?: string\n totalDocs: number\n}\n\nexport type HierarchyColumnBrowserRef = {\n /** Refetch a specific column by parentId */\n refreshColumn: (parentId: null | number | string) => Promise<void>\n}\n\nexport type HierarchyColumnBrowserProps = {\n ancestorsWithSelections: Set<number | string>\n /** Base filter constraint (e.g., tenant filter) to apply to all queries */\n baseFilter?: null | Where\n /** IDs that should be disabled (e.g., items being moved can't be selected as destination) */\n disabledIds?: Set<number | string>\n /**\n * Filters hierarchy items based on collection type restrictions:\n * - `undefined`: No filtering, show all folders\n * - `[]` (empty array): No filtering, show all folders (no constraints)\n * - `['posts', ...]`: Show folders accepting ANY of these collections OR unrestricted folders\n *\n * Note: Query uses ANY semantics due to PG hasMany enum limitations.\n * Client-side enforcement can disable selection of folders that don't allow ALL required collections.\n */\n filterByCollection?: string[]\n hierarchyCollectionSlug: string\n initialExpandedPath?: (number | string)[]\n /** Whether the initial expanded path is still being loaded */\n isLoadingPath?: boolean\n /** Called when user clicks \"New\" button to create a new item */\n onCreateNew?: (params: { parentId: null | number | string }) => void\n onSelect: (params: { id: number | string; path: PathSegment[] }) => void\n parentFieldName: string\n selectedIds: Set<number | string>\n useAsTitle?: string\n}\n"],"mappings":"AAsEA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/elements/Hierarchy/ColumnBrowser/types.ts"],"sourcesContent":["import type { Where } from 'payload'\nimport type React from 'react'\n\nexport type ColumnItemData = {\n /** For folders with collectionSpecific config, the allowed collection slugs */\n allowedCollections?: string[]\n hasChildren: boolean\n id: number | string\n title: string\n}\n\nexport type PathSegment = {\n id: number | string\n title: string\n}\n\nexport type ColumnItemProps = {\n disabled?: boolean\n /** Required collections that the folder must allow (for superset check) */\n filterByCollection?: string[]\n hasSelectedDescendants: boolean\n isExpanded: boolean\n isSelected: boolean\n item: ColumnItemData\n onExpand: (params: { id: number | string }) => void\n onSelect: (params: { id: number | string }) => void\n}\n\nexport type ColumnProps = {\n ancestorsWithSelections: Set<number | string>\n /** Whether user can create new documents */\n canCreate: boolean\n /** Label for the collection (e.g., \"Folder\") */\n collectionLabel: string\n disabled?: boolean\n /** IDs that should be disabled (e.g., items being moved can't be selected as destination) */\n disabledIds?: Set<number | string>\n expandedId: null | number | string\n /** Required collections for superset check (passed to ColumnItem) */\n filterByCollection?: string[]\n hasNextPage: boolean\n isLoading: boolean\n items: ColumnItemData[]\n /** Called when user clicks \"New\" button - parent should open modal with parentId */\n onCreateNew: (params: { parentId: null | number | string }) => void\n onExpand: (params: { id: number | string }) => void\n onLoadMore: () => void\n onSelect: (params: { id: number | string; path: PathSegment[] }) => void\n parentId: null | number | string\n parentTitle?: string\n pathToColumn: PathSegment[]\n selectedIds: Set<number | string>\n totalDocs: number\n}\n\nexport type ColumnState = {\n hasNextPage: boolean\n isLoading: boolean\n items: ColumnItemData[]\n page: number\n parentId: null | number | string\n parentTitle?: string\n totalDocs: number\n}\n\nexport type HierarchyColumnBrowserRef = {\n /** Refetch a specific column by parentId */\n refreshColumn: (parentId: null | number | string) => Promise<void>\n}\n\nexport type HierarchyColumnBrowserProps = {\n ancestorsWithSelections: Set<number | string>\n /** Base filter constraint (e.g., tenant filter) to apply to all queries */\n baseFilter?: null | Where\n /** IDs that should be disabled (e.g., items being moved can't be selected as destination) */\n disabledIds?: Set<number | string>\n /**\n * Filters hierarchy items based on collection type restrictions:\n * - `undefined`: No filtering, show all folders\n * - `[]` (empty array): No filtering, show all folders (no constraints)\n * - `['posts', ...]`: Show folders accepting ANY of these collections OR unrestricted folders\n *\n * Note: Query uses ANY semantics due to PG hasMany enum limitations.\n * Client-side enforcement can disable selection of folders that don't allow ALL required collections.\n */\n filterByCollection?: string[]\n hierarchyCollectionSlug: string\n initialExpandedPath?: (number | string)[]\n /** Whether the initial expanded path is still being loaded */\n isLoadingPath?: boolean\n /** Called when user clicks \"New\" button to create a new item */\n onCreateNew?: (params: { parentId: null | number | string }) => void\n onSelect: (params: { id: number | string; path: PathSegment[] }) => void\n parentFieldName: string\n selectedIds: Set<number | string>\n useAsTitle?: string\n}\n"],"mappings":"AAsEA","ignoreList":[]}
@@ -8,7 +8,7 @@ import { useConfig } from '../../../providers/Config/index.js';
8
8
  import { useDocumentInfo } from '../../../providers/DocumentInfo/index.js';
9
9
  import { useTranslation } from '../../../providers/Translation/index.js';
10
10
  import { Button } from '../../Button/index.js';
11
- import { useHierarchyDrawer } from '../Drawer/useHierarchyDrawer.js';
11
+ import { useHierarchyModal } from '../Modal/useHierarchyModal.js';
12
12
  import './index.css';
13
13
  const baseClass = 'hierarchy-button';
14
14
  export const HierarchyButtonClient = ({
@@ -44,13 +44,13 @@ export const HierarchyButtonClient = ({
44
44
  });
45
45
  const useAsTitle = collectionConfig?.admin?.useAsTitle || 'name';
46
46
  const isHierarchyCollection = documentCollectionSlug === hierarchyCollectionSlug;
47
- // When in hierarchy collection, let the drawer use allowedCollections from context
47
+ // When in hierarchy collection, let the modal use allowedCollections from context
48
48
  // When in other collections, filter by that collection's slug
49
49
  // Memoize to prevent new array references on every render
50
50
  const filterByCollection = useMemo(() => isHierarchyCollection || !documentCollectionSlug ? undefined : [documentCollectionSlug], [isHierarchyCollection, documentCollectionSlug]);
51
- const [HierarchyDrawer,, {
52
- openDrawer
53
- }] = useHierarchyDrawer({
51
+ const [HierarchyModal,, {
52
+ openModal
53
+ }] = useHierarchyModal({
54
54
  filterByCollection,
55
55
  hierarchyCollectionSlug,
56
56
  Icon
@@ -87,8 +87,8 @@ export const HierarchyButtonClient = ({
87
87
  };
88
88
  void fetchItemName();
89
89
  }, [currentId, hierarchyCollectionSlug, config.routes.api, config.serverURL, useAsTitle, t]);
90
- const handleDrawerSave = useCallback(({
91
- closeDrawer,
90
+ const handleModalSave = useCallback(({
91
+ closeModal,
92
92
  selections
93
93
  }) => {
94
94
  const ids = Array.from(selections.keys());
@@ -101,13 +101,13 @@ export const HierarchyButtonClient = ({
101
101
  });
102
102
  setModified(true);
103
103
  }
104
- closeDrawer();
104
+ closeModal();
105
105
  }, [currentFieldValue?.value, dispatchField, fieldName, hasMany, setModified]);
106
106
  const handleClick = useCallback(() => {
107
107
  if (!readOnly) {
108
- openDrawer();
108
+ openModal();
109
109
  }
110
- }, [openDrawer, readOnly]);
110
+ }, [openModal, readOnly]);
111
111
  const label = isLoading ? `${t('general:loading')}...` : displayName;
112
112
  return /*#__PURE__*/_jsxs(_Fragment, {
113
113
  children: [/*#__PURE__*/_jsx(Button, {
@@ -119,10 +119,10 @@ export const HierarchyButtonClient = ({
119
119
  margin: false,
120
120
  onClick: handleClick,
121
121
  children: label
122
- }), /*#__PURE__*/_jsx(HierarchyDrawer, {
122
+ }), /*#__PURE__*/_jsx(HierarchyModal, {
123
123
  hasMany: hasMany,
124
124
  initialSelections: currentId ? [currentId] : undefined,
125
- onSave: handleDrawerSave
125
+ onSave: handleModalSave
126
126
  })]
127
127
  });
128
128
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["formatAdminURL","React","useCallback","useEffect","useMemo","useState","useForm","useFormFields","useConfig","useDocumentInfo","useTranslation","Button","useHierarchyDrawer","baseClass","HierarchyButtonClient","fieldName","hasMany","hierarchyCollectionSlug","Icon","readOnly","readOnlyFromProps","SmallIcon","t","config","getEntityConfig","collectionSlug","documentCollectionSlug","disabled","formDisabled","setModified","dispatchField","_","dispatch","currentFieldValue","fields","currentId","value","displayName","setDisplayName","isLoading","setIsLoading","collectionConfig","useAsTitle","admin","isHierarchyCollection","filterByCollection","undefined","HierarchyDrawer","openDrawer","fetchItemName","response","fetch","apiRoute","routes","api","path","serverURL","credentials","ok","itemData","json","title","name","id","String","handleDrawerSave","closeDrawer","selections","ids","Array","from","keys","newValue","type","handleClick","label","_jsxs","_Fragment","_jsx","buttonStyle","className","filter","Boolean","join","icon","iconPosition","margin","onClick","initialSelections","onSave"],"sources":["../../../../src/elements/Hierarchy/DocHeaderButton/index.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { SelectionWithPath } from '../Drawer/types.js'\n\nimport { useForm, useFormFields } from '../../../forms/Form/context.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useHierarchyDrawer } from '../Drawer/useHierarchyDrawer.js'\nimport './index.css'\n\nconst baseClass = 'hierarchy-button'\n\nexport type HierarchyButtonClientProps = {\n fieldName: string\n hasMany?: boolean\n hierarchyCollectionSlug: string\n Icon?: React.ReactNode\n readOnly?: boolean\n SmallIcon?: React.ReactNode\n}\n\nexport const HierarchyButtonClient: React.FC<HierarchyButtonClientProps> = ({\n fieldName,\n hasMany = false,\n hierarchyCollectionSlug,\n Icon,\n readOnly: readOnlyFromProps,\n SmallIcon,\n}) => {\n const { t } = useTranslation()\n const { config, getEntityConfig } = useConfig()\n const { collectionSlug: documentCollectionSlug } = useDocumentInfo()\n const { disabled: formDisabled, setModified } = useForm()\n const readOnly = readOnlyFromProps || formDisabled\n const dispatchField = useFormFields(([_, dispatch]) => dispatch)\n\n const currentFieldValue = useFormFields(([fields]) => (fields && fields?.[fieldName]) || null)\n const currentId = currentFieldValue?.value as null | number | string\n\n const [displayName, setDisplayName] = useState<string>('')\n const [isLoading, setIsLoading] = useState(true)\n\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const useAsTitle = collectionConfig?.admin?.useAsTitle || 'name'\n\n const isHierarchyCollection = documentCollectionSlug === hierarchyCollectionSlug\n\n // When in hierarchy collection, let the drawer use allowedCollections from context\n // When in other collections, filter by that collection's slug\n // Memoize to prevent new array references on every render\n const filterByCollection = useMemo(\n () => (isHierarchyCollection || !documentCollectionSlug ? undefined : [documentCollectionSlug]),\n [isHierarchyCollection, documentCollectionSlug],\n )\n\n const [HierarchyDrawer, , { openDrawer }] = useHierarchyDrawer({\n filterByCollection,\n hierarchyCollectionSlug,\n Icon,\n })\n\n // Fetch item name when currentId changes\n useEffect(() => {\n const fetchItemName = async () => {\n if (currentId && (typeof currentId === 'string' || typeof currentId === 'number')) {\n setIsLoading(true)\n try {\n const response = await fetch(\n formatAdminURL({\n apiRoute: config.routes.api,\n path: `/${hierarchyCollectionSlug}/${currentId}`,\n serverURL: config.serverURL,\n }),\n { credentials: 'include' },\n )\n\n if (response.ok) {\n const itemData = await response.json()\n const title = itemData?.[useAsTitle] || itemData?.name || itemData?.id\n\n setDisplayName(String(title))\n } else {\n setDisplayName(t('general:none'))\n }\n } catch {\n setDisplayName(t('general:none'))\n } finally {\n setIsLoading(false)\n }\n } else {\n setDisplayName(t('general:none'))\n setIsLoading(false)\n }\n }\n\n void fetchItemName()\n }, [currentId, hierarchyCollectionSlug, config.routes.api, config.serverURL, useAsTitle, t])\n\n const handleDrawerSave = useCallback(\n ({\n closeDrawer,\n selections,\n }: {\n closeDrawer: () => void\n selections: Map<number | string, SelectionWithPath>\n }) => {\n const ids = Array.from(selections.keys())\n const newValue = hasMany ? ids : (ids[0] ?? null)\n\n if (currentFieldValue?.value !== newValue) {\n dispatchField({\n type: 'UPDATE',\n path: fieldName,\n value: newValue,\n })\n setModified(true)\n }\n closeDrawer()\n },\n [currentFieldValue?.value, dispatchField, fieldName, hasMany, setModified],\n )\n\n const handleClick = useCallback(() => {\n if (!readOnly) {\n openDrawer()\n }\n }, [openDrawer, readOnly])\n\n const label = isLoading ? `${t('general:loading')}...` : displayName\n\n return (\n <>\n <Button\n buttonStyle=\"secondary\"\n className={[baseClass, readOnly && `${baseClass}--read-only`].filter(Boolean).join(' ')}\n disabled={readOnly}\n icon={SmallIcon ?? Icon}\n iconPosition=\"left\"\n margin={false}\n onClick={handleClick}\n >\n {label}\n </Button>\n <HierarchyDrawer\n hasMany={hasMany}\n initialSelections={currentId ? [currentId] : undefined}\n onSave={handleDrawerSave}\n />\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["formatAdminURL","React","useCallback","useEffect","useMemo","useState","useForm","useFormFields","useConfig","useDocumentInfo","useTranslation","Button","useHierarchyModal","baseClass","HierarchyButtonClient","fieldName","hasMany","hierarchyCollectionSlug","Icon","readOnly","readOnlyFromProps","SmallIcon","t","config","getEntityConfig","collectionSlug","documentCollectionSlug","disabled","formDisabled","setModified","dispatchField","_","dispatch","currentFieldValue","fields","currentId","value","displayName","setDisplayName","isLoading","setIsLoading","collectionConfig","useAsTitle","admin","isHierarchyCollection","filterByCollection","undefined","HierarchyModal","openModal","fetchItemName","response","fetch","apiRoute","routes","api","path","serverURL","credentials","ok","itemData","json","title","name","id","String","handleModalSave","closeModal","selections","ids","Array","from","keys","newValue","type","handleClick","label","_jsxs","_Fragment","_jsx","buttonStyle","className","filter","Boolean","join","icon","iconPosition","margin","onClick","initialSelections","onSave"],"sources":["../../../../src/elements/Hierarchy/DocHeaderButton/index.tsx"],"sourcesContent":["'use client'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { SelectionWithPath } from '../Modal/types.js'\n\nimport { useForm, useFormFields } from '../../../forms/Form/context.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useHierarchyModal } from '../Modal/useHierarchyModal.js'\nimport './index.css'\n\nconst baseClass = 'hierarchy-button'\n\nexport type HierarchyButtonClientProps = {\n fieldName: string\n hasMany?: boolean\n hierarchyCollectionSlug: string\n Icon?: React.ReactNode\n readOnly?: boolean\n SmallIcon?: React.ReactNode\n}\n\nexport const HierarchyButtonClient: React.FC<HierarchyButtonClientProps> = ({\n fieldName,\n hasMany = false,\n hierarchyCollectionSlug,\n Icon,\n readOnly: readOnlyFromProps,\n SmallIcon,\n}) => {\n const { t } = useTranslation()\n const { config, getEntityConfig } = useConfig()\n const { collectionSlug: documentCollectionSlug } = useDocumentInfo()\n const { disabled: formDisabled, setModified } = useForm()\n const readOnly = readOnlyFromProps || formDisabled\n const dispatchField = useFormFields(([_, dispatch]) => dispatch)\n\n const currentFieldValue = useFormFields(([fields]) => (fields && fields?.[fieldName]) || null)\n const currentId = currentFieldValue?.value as null | number | string\n\n const [displayName, setDisplayName] = useState<string>('')\n const [isLoading, setIsLoading] = useState(true)\n\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const useAsTitle = collectionConfig?.admin?.useAsTitle || 'name'\n\n const isHierarchyCollection = documentCollectionSlug === hierarchyCollectionSlug\n\n // When in hierarchy collection, let the modal use allowedCollections from context\n // When in other collections, filter by that collection's slug\n // Memoize to prevent new array references on every render\n const filterByCollection = useMemo(\n () => (isHierarchyCollection || !documentCollectionSlug ? undefined : [documentCollectionSlug]),\n [isHierarchyCollection, documentCollectionSlug],\n )\n\n const [HierarchyModal, , { openModal }] = useHierarchyModal({\n filterByCollection,\n hierarchyCollectionSlug,\n Icon,\n })\n\n // Fetch item name when currentId changes\n useEffect(() => {\n const fetchItemName = async () => {\n if (currentId && (typeof currentId === 'string' || typeof currentId === 'number')) {\n setIsLoading(true)\n try {\n const response = await fetch(\n formatAdminURL({\n apiRoute: config.routes.api,\n path: `/${hierarchyCollectionSlug}/${currentId}`,\n serverURL: config.serverURL,\n }),\n { credentials: 'include' },\n )\n\n if (response.ok) {\n const itemData = await response.json()\n const title = itemData?.[useAsTitle] || itemData?.name || itemData?.id\n\n setDisplayName(String(title))\n } else {\n setDisplayName(t('general:none'))\n }\n } catch {\n setDisplayName(t('general:none'))\n } finally {\n setIsLoading(false)\n }\n } else {\n setDisplayName(t('general:none'))\n setIsLoading(false)\n }\n }\n\n void fetchItemName()\n }, [currentId, hierarchyCollectionSlug, config.routes.api, config.serverURL, useAsTitle, t])\n\n const handleModalSave = useCallback(\n ({\n closeModal,\n selections,\n }: {\n closeModal: () => void\n selections: Map<number | string, SelectionWithPath>\n }) => {\n const ids = Array.from(selections.keys())\n const newValue = hasMany ? ids : (ids[0] ?? null)\n\n if (currentFieldValue?.value !== newValue) {\n dispatchField({\n type: 'UPDATE',\n path: fieldName,\n value: newValue,\n })\n setModified(true)\n }\n closeModal()\n },\n [currentFieldValue?.value, dispatchField, fieldName, hasMany, setModified],\n )\n\n const handleClick = useCallback(() => {\n if (!readOnly) {\n openModal()\n }\n }, [openModal, readOnly])\n\n const label = isLoading ? `${t('general:loading')}...` : displayName\n\n return (\n <>\n <Button\n buttonStyle=\"secondary\"\n className={[baseClass, readOnly && `${baseClass}--read-only`].filter(Boolean).join(' ')}\n disabled={readOnly}\n icon={SmallIcon ?? Icon}\n iconPosition=\"left\"\n margin={false}\n onClick={handleClick}\n >\n {label}\n </Button>\n <HierarchyModal\n hasMany={hasMany}\n initialSelections={currentId ? [currentId] : undefined}\n onSave={handleModalSave}\n />\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}