@payloadcms/ui 4.0.0-internal.688c4d0 → 4.0.0-internal.bc5cf8c

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 (466) 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/utilities.css +3 -2
  5. package/dist/elements/AppHeader/index.d.ts +3 -2
  6. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  7. package/dist/elements/AppHeader/index.js +9 -2
  8. package/dist/elements/AppHeader/index.js.map +1 -1
  9. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  10. package/dist/elements/ArrayAction/index.js +1 -2
  11. package/dist/elements/ArrayAction/index.js.map +1 -1
  12. package/dist/elements/BulkUpload/ActionsBar/index.css +4 -8
  13. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +1 -5
  14. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  15. package/dist/elements/BulkUpload/ActionsBar/index.js +15 -22
  16. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.css +14 -8
  18. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -2
  19. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  20. package/dist/elements/BulkUpload/AddFilesView/index.js +41 -36
  21. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddingFilesView/index.css +158 -6
  23. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +5 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js +134 -65
  26. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  28. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  29. package/dist/elements/BulkUpload/EditForm/index.d.ts +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  31. package/dist/elements/BulkUpload/EditForm/index.js +16 -17
  32. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/EditForm/types.d.ts +2 -3
  34. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -1
  35. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +78 -64
  38. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  39. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  40. package/dist/elements/BulkUpload/EditMany/index.js +28 -10
  41. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  42. package/dist/elements/BulkUpload/FileSidebar/index.css +63 -143
  43. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  44. package/dist/elements/BulkUpload/FileSidebar/index.js +42 -175
  45. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  46. package/dist/elements/BulkUpload/FormsManager/index.js +1 -1
  47. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.css +48 -0
  49. package/dist/elements/BulkUpload/index.d.ts +6 -5
  50. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  51. package/dist/elements/BulkUpload/index.js +42 -41
  52. package/dist/elements/BulkUpload/index.js.map +1 -1
  53. package/dist/elements/Card/index.css +1 -1
  54. package/dist/elements/ColumnSelection/Popup.d.ts +12 -0
  55. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -0
  56. package/dist/elements/{ColumnSelector/index.js → ColumnSelection/Popup.js} +23 -12
  57. package/dist/elements/ColumnSelection/Popup.js.map +1 -0
  58. package/dist/elements/ColumnSelection/index.d.ts +10 -0
  59. package/dist/elements/ColumnSelection/index.d.ts.map +1 -0
  60. package/dist/elements/{ColumnsButton → ColumnSelection}/index.js +23 -17
  61. package/dist/elements/ColumnSelection/index.js.map +1 -0
  62. package/dist/elements/CopyLocaleData/index.js +1 -1
  63. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  64. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  65. package/dist/elements/CreateDocumentButton/index.js +0 -1
  66. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  67. package/dist/elements/DatePicker/index.css +6 -6
  68. package/dist/elements/Dialog/DialogHeader/index.d.ts +4 -0
  69. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -1
  70. package/dist/elements/Dialog/DialogHeader/index.js +45 -30
  71. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  72. package/dist/elements/Dialog/DialogModal/index.d.ts +5 -0
  73. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  74. package/dist/elements/Dialog/DialogModal/index.js +58 -31
  75. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  76. package/dist/elements/Dialog/DialogTitle/index.css +9 -0
  77. package/dist/elements/Dialog/DialogTitle/index.d.ts +5 -0
  78. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -0
  79. package/dist/elements/Dialog/DialogTitle/index.js +10 -0
  80. package/dist/elements/Dialog/DialogTitle/index.js.map +1 -0
  81. package/dist/elements/Dialog/index.css +7 -1
  82. package/dist/elements/DocumentControls/index.css +8 -2
  83. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  84. package/dist/elements/DocumentControls/index.js +12 -3
  85. package/dist/elements/DocumentControls/index.js.map +1 -1
  86. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  87. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +5 -3
  88. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  89. package/dist/elements/DocumentFields/index.css +5 -2
  90. package/dist/elements/DocumentFields/index.d.ts +5 -0
  91. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  92. package/dist/elements/DocumentFields/index.js +9 -1
  93. package/dist/elements/DocumentFields/index.js.map +1 -1
  94. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts +12 -0
  95. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts.map +1 -0
  96. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +28 -0
  97. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -0
  98. package/dist/elements/DocumentHeader/index.js +2 -3
  99. package/dist/elements/DocumentHeader/index.js.map +1 -1
  100. package/dist/elements/DrawerActionHeader/index.css +1 -1
  101. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.css +7 -1
  102. package/dist/elements/DrawerHeader/index.d.ts +10 -0
  103. package/dist/elements/DrawerHeader/index.d.ts.map +1 -0
  104. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.js +16 -11
  105. package/dist/elements/DrawerHeader/index.js.map +1 -0
  106. package/dist/elements/Dropzone/index.css +5 -13
  107. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +1 -1
  108. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  109. package/dist/elements/EditUpload/index.css +97 -158
  110. package/dist/elements/EditUpload/index.d.ts +2 -1
  111. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  112. package/dist/elements/EditUpload/index.js +205 -231
  113. package/dist/elements/EditUpload/index.js.map +1 -1
  114. package/dist/elements/EditUpload/{library.scss → library.css} +108 -46
  115. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  116. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  117. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  118. package/dist/elements/FileDetails/FileMeta/index.css +27 -0
  119. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  120. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  121. package/dist/elements/FileDetails/FileMeta/index.js +1 -1
  122. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  123. package/dist/elements/FileDetails/StaticFileDetails/index.css +140 -0
  124. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +2 -2
  125. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  126. package/dist/elements/FileDetails/StaticFileDetails/index.js +1 -1
  127. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  128. package/dist/elements/FileDetails/index.d.ts +1 -1
  129. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  130. package/dist/elements/FileDetails/index.js.map +1 -1
  131. package/dist/elements/FileManager/FilePreview/AudioPreview/index.css +8 -0
  132. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts +10 -0
  133. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts.map +1 -0
  134. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js +24 -0
  135. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js.map +1 -0
  136. package/dist/elements/FileManager/FilePreview/PdfPreview/index.css +9 -0
  137. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts +12 -0
  138. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts.map +1 -0
  139. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js +27 -0
  140. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js.map +1 -0
  141. package/dist/elements/FileManager/FilePreview/VideoPreview/index.css +8 -0
  142. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts +10 -0
  143. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts.map +1 -0
  144. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js +24 -0
  145. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js.map +1 -0
  146. package/dist/elements/FileManager/FilePreview/index.css +83 -0
  147. package/dist/elements/FileManager/FilePreview/index.d.ts +13 -0
  148. package/dist/elements/FileManager/FilePreview/index.d.ts.map +1 -0
  149. package/dist/elements/FileManager/FilePreview/index.js +140 -0
  150. package/dist/elements/FileManager/FilePreview/index.js.map +1 -0
  151. package/dist/elements/FileManager/FileToolbar/index.css +91 -0
  152. package/dist/elements/FileManager/FileToolbar/index.d.ts +14 -0
  153. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -0
  154. package/dist/elements/FileManager/FileToolbar/index.js +106 -0
  155. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -0
  156. package/dist/elements/FileManager/index.css +154 -0
  157. package/dist/elements/FileManager/index.d.ts +19 -0
  158. package/dist/elements/FileManager/index.d.ts.map +1 -0
  159. package/dist/elements/FileManager/index.js +424 -0
  160. package/dist/elements/FileManager/index.js.map +1 -0
  161. package/dist/elements/GroupBy/Popup.d.ts +21 -0
  162. package/dist/elements/GroupBy/Popup.d.ts.map +1 -0
  163. package/dist/elements/GroupBy/Popup.js +268 -0
  164. package/dist/elements/GroupBy/Popup.js.map +1 -0
  165. package/dist/elements/GroupBy/index.d.ts +12 -0
  166. package/dist/elements/GroupBy/index.d.ts.map +1 -0
  167. package/dist/elements/GroupBy/index.js +91 -0
  168. package/dist/elements/GroupBy/index.js.map +1 -0
  169. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +2 -2
  170. package/dist/elements/Hierarchy/Drawer/index.css +1 -1
  171. package/dist/elements/ListColumnSelectionButton/index.d.ts +11 -0
  172. package/dist/elements/ListColumnSelectionButton/index.d.ts.map +1 -0
  173. package/dist/elements/ListColumnSelectionButton/index.js +37 -0
  174. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -0
  175. package/dist/elements/ListControls/index.d.ts.map +1 -1
  176. package/dist/elements/ListControls/index.js +7 -8
  177. package/dist/elements/ListControls/index.js.map +1 -1
  178. package/dist/elements/ListDrawer/DrawerContent.js +1 -1
  179. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  180. package/dist/elements/ListDrawer/Provider.d.ts +1 -1
  181. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  182. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  183. package/dist/elements/ListGroupByButton/index.d.ts +12 -0
  184. package/dist/elements/ListGroupByButton/index.d.ts.map +1 -0
  185. package/dist/elements/ListGroupByButton/index.js +55 -0
  186. package/dist/elements/ListGroupByButton/index.js.map +1 -0
  187. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  188. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +2 -0
  189. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  190. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +4 -4
  191. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  192. package/dist/elements/ListWhereBuilder/index.d.ts +16 -0
  193. package/dist/elements/ListWhereBuilder/index.d.ts.map +1 -0
  194. package/dist/elements/ListWhereBuilder/index.js +62 -0
  195. package/dist/elements/ListWhereBuilder/index.js.map +1 -0
  196. package/dist/elements/LivePreview/Toolbar/Controls/index.js +2 -2
  197. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  198. package/dist/elements/LivePreview/Toolbar/SizeInput/index.css +5 -44
  199. package/dist/elements/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  200. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +25 -43
  201. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  202. package/dist/elements/MiniCarousel/index.css +94 -0
  203. package/dist/elements/MiniCarousel/index.d.ts +15 -0
  204. package/dist/elements/MiniCarousel/index.d.ts.map +1 -0
  205. package/dist/elements/MiniCarousel/index.js +84 -0
  206. package/dist/elements/MiniCarousel/index.js.map +1 -0
  207. package/dist/elements/Nav/index.css +2 -2
  208. package/dist/elements/NavGroup/index.css +1 -1
  209. package/dist/elements/Popup/PopupButtonList/index.css +5 -0
  210. package/dist/elements/Popup/PopupGroupLabel/index.css +8 -5
  211. package/dist/elements/Popup/index.d.ts +1 -1
  212. package/dist/elements/Popup/index.d.ts.map +1 -1
  213. package/dist/elements/Popup/index.js +43 -12
  214. package/dist/elements/Popup/index.js.map +1 -1
  215. package/dist/elements/PreviewSizes/index.css +149 -0
  216. package/dist/elements/PreviewSizes/index.d.ts +2 -2
  217. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  218. package/dist/elements/PreviewSizes/index.js +1 -1
  219. package/dist/elements/PreviewSizes/index.js.map +1 -1
  220. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  221. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  222. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  223. package/dist/elements/PublishMany/index.d.ts +2 -6
  224. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  225. package/dist/elements/PublishMany/index.js +0 -38
  226. package/dist/elements/PublishMany/index.js.map +1 -1
  227. package/dist/elements/QueryPresets/cells/ColumnsCell/{index.scss → index.css} +1 -3
  228. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +1 -1
  229. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -1
  230. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +1 -1
  231. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  232. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +1 -1
  233. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  234. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +77 -48
  235. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  236. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +1 -1
  237. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  238. package/dist/elements/QueryPresets/fields/GroupByField/index.js +12 -21
  239. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  240. package/dist/elements/QueryPresets/fields/Heading/index.css +52 -0
  241. package/dist/elements/QueryPresets/fields/Heading/index.d.ts +7 -0
  242. package/dist/elements/QueryPresets/fields/Heading/index.d.ts.map +1 -0
  243. package/dist/elements/QueryPresets/fields/Heading/index.js +31 -0
  244. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -0
  245. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +1 -1
  246. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  247. package/dist/elements/QueryPresets/fields/WhereField/index.js +24 -23
  248. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  249. package/dist/elements/QueryPresets/fields/fields.css +23 -0
  250. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  251. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  252. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  253. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  254. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  255. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  256. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  257. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  258. package/dist/elements/ReactSelect/index.css +0 -1
  259. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  260. package/dist/elements/ReactSelect/index.js +168 -148
  261. package/dist/elements/ReactSelect/index.js.map +1 -1
  262. package/dist/elements/ReactSelect/types.d.ts +1 -0
  263. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  264. package/dist/elements/ReactSelect/types.js.map +1 -1
  265. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  266. package/dist/elements/RelationshipTable/AddNewButton.js +1 -2
  267. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  268. package/dist/elements/RelationshipTable/index.js +2 -2
  269. package/dist/elements/RelationshipTable/index.js.map +1 -1
  270. package/dist/elements/SortColumn/index.css +1 -1
  271. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  272. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +21 -2
  273. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  274. package/dist/elements/Table/index.css +24 -2
  275. package/dist/elements/Thumbnail/index.css +41 -0
  276. package/dist/elements/Thumbnail/index.d.ts +3 -3
  277. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  278. package/dist/elements/Thumbnail/index.js +1 -1
  279. package/dist/elements/Thumbnail/index.js.map +1 -1
  280. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  281. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  282. package/dist/elements/Toasts/fieldErrors.js +25 -9
  283. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  284. package/dist/elements/Toasts/index.css +5 -0
  285. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  286. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  287. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  288. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  289. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  290. package/dist/elements/UnpublishMany/index.js +0 -38
  291. package/dist/elements/UnpublishMany/index.js.map +1 -1
  292. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +11 -0
  293. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -0
  294. package/dist/elements/Upload/UploadFromURLModal/index.js +88 -0
  295. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -0
  296. package/dist/elements/Upload/index.css +134 -45
  297. package/dist/elements/Upload/index.d.ts +3 -8
  298. package/dist/elements/Upload/index.d.ts.map +1 -1
  299. package/dist/elements/Upload/index.js +71 -92
  300. package/dist/elements/Upload/index.js.map +1 -1
  301. package/dist/elements/UserMenu/LanguageMenu/index.js +1 -1
  302. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  303. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +6 -2
  304. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  305. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -10
  306. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  307. package/dist/elements/UserMenu/ThemeMenu/index.js +1 -1
  308. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  309. package/dist/elements/UserMenu/index.d.ts +2 -1
  310. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  311. package/dist/elements/UserMenu/index.js +8 -5
  312. package/dist/elements/UserMenu/index.js.map +1 -1
  313. package/dist/elements/WhereBuilder/Condition/index.d.ts +1 -0
  314. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  315. package/dist/elements/WhereBuilder/Condition/index.js +17 -2
  316. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  317. package/dist/elements/WhereBuilder/index.d.ts +4 -3
  318. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  319. package/dist/elements/WhereBuilder/index.js +71 -62
  320. package/dist/elements/WhereBuilder/index.js.map +1 -1
  321. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  322. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  323. package/dist/elements/WhereBuilder/types.js.map +1 -1
  324. package/dist/exports/client/index.d.ts +6 -2
  325. package/dist/exports/client/index.d.ts.map +1 -1
  326. package/dist/exports/client/index.js +1 -2
  327. package/dist/exports/client/index.js.map +4 -4
  328. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +1 -1
  329. package/dist/fields/Blocks/BlockSelector/index.css +2 -5
  330. package/dist/fields/Checkbox/index.css +2 -2
  331. package/dist/fields/Group/index.css +3 -3
  332. package/dist/fields/Number/Input.d.ts.map +1 -1
  333. package/dist/fields/Number/Input.js +47 -35
  334. package/dist/fields/Number/Input.js.map +1 -1
  335. package/dist/fields/Number/index.css +19 -0
  336. package/dist/fields/Number/types.d.ts +6 -0
  337. package/dist/fields/Number/types.d.ts.map +1 -1
  338. package/dist/fields/Number/types.js.map +1 -1
  339. package/dist/fields/RadioGroup/index.css +6 -0
  340. package/dist/fields/Text/Input.d.ts.map +1 -1
  341. package/dist/fields/Text/Input.js +31 -28
  342. package/dist/fields/Text/Input.js.map +1 -1
  343. package/dist/fields/Text/types.d.ts +5 -0
  344. package/dist/fields/Text/types.d.ts.map +1 -1
  345. package/dist/fields/Text/types.js.map +1 -1
  346. package/dist/fields/Upload/Input.d.ts.map +1 -1
  347. package/dist/fields/Upload/Input.js +12 -11
  348. package/dist/fields/Upload/Input.js.map +1 -1
  349. package/dist/fields/Upload/index.js +1 -1
  350. package/dist/fields/Upload/index.js.map +1 -1
  351. package/dist/hooks/useElementHeightVariable.d.ts +15 -0
  352. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -0
  353. package/dist/hooks/useElementHeightVariable.js +53 -0
  354. package/dist/hooks/useElementHeightVariable.js.map +1 -0
  355. package/dist/icons/Check/index.css +1 -2
  356. package/dist/icons/Check/index.js +1 -1
  357. package/dist/icons/Check/index.js.map +1 -1
  358. package/dist/icons/Crop/index.css +5 -0
  359. package/dist/icons/Crop/index.d.ts +7 -0
  360. package/dist/icons/Crop/index.d.ts.map +1 -0
  361. package/dist/icons/Crop/index.js +24 -0
  362. package/dist/icons/Crop/index.js.map +1 -0
  363. package/dist/icons/Download/index.css +5 -0
  364. package/dist/icons/{ExternalLink → Download}/index.d.ts +1 -1
  365. package/dist/icons/Download/index.d.ts.map +1 -0
  366. package/dist/icons/Download/index.js +27 -0
  367. package/dist/icons/Download/index.js.map +1 -0
  368. package/dist/icons/{ExternalLink → NewTab}/index.css +1 -1
  369. package/dist/icons/NewTab/index.d.ts +7 -0
  370. package/dist/icons/NewTab/index.d.ts.map +1 -0
  371. package/dist/icons/NewTab/index.js +25 -0
  372. package/dist/icons/NewTab/index.js.map +1 -0
  373. package/dist/icons/Replace/index.css +5 -0
  374. package/dist/icons/Replace/index.d.ts +6 -0
  375. package/dist/icons/Replace/index.d.ts.map +1 -0
  376. package/dist/icons/Replace/index.js +20 -0
  377. package/dist/icons/Replace/index.js.map +1 -0
  378. package/dist/icons/Reset/index.css +5 -0
  379. package/dist/icons/Reset/index.d.ts +7 -0
  380. package/dist/icons/Reset/index.d.ts.map +1 -0
  381. package/dist/icons/Reset/index.js +25 -0
  382. package/dist/icons/Reset/index.js.map +1 -0
  383. package/dist/icons/Swap/index.js +1 -1
  384. package/dist/icons/Swap/index.js.map +1 -1
  385. package/dist/icons/Warning/index.css +1 -7
  386. package/dist/icons/Warning/index.d.ts +1 -1
  387. package/dist/icons/Warning/index.d.ts.map +1 -1
  388. package/dist/icons/Warning/index.js +11 -16
  389. package/dist/icons/Warning/index.js.map +1 -1
  390. package/dist/providers/ToastContainer/index.css +208 -0
  391. package/dist/providers/ToastContainer/index.d.ts +1 -0
  392. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  393. package/dist/providers/ToastContainer/index.js +19 -6
  394. package/dist/providers/ToastContainer/index.js.map +1 -1
  395. package/dist/scss/app.scss +10 -4
  396. package/dist/styles.css +1365 -1
  397. package/dist/templates/Default/index.d.ts.map +1 -1
  398. package/dist/templates/Default/index.js +52 -10
  399. package/dist/templates/Default/index.js.map +1 -1
  400. package/dist/utilities/reduceFieldsToOptions.js +1 -1
  401. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  402. package/dist/views/API/index.client.js +2 -2
  403. package/dist/views/API/index.client.js.map +1 -1
  404. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +1 -1
  405. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  406. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -2
  407. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  408. package/dist/views/Document/index.d.ts.map +1 -1
  409. package/dist/views/Document/index.js +1 -0
  410. package/dist/views/Document/index.js.map +1 -1
  411. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  412. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  413. package/dist/views/Document/renderDocumentSlots.js +47 -1
  414. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  415. package/dist/views/Edit/index.css +143 -6
  416. package/dist/views/Edit/index.d.ts +1 -1
  417. package/dist/views/Edit/index.d.ts.map +1 -1
  418. package/dist/views/Edit/index.js +34 -31
  419. package/dist/views/Edit/index.js.map +1 -1
  420. package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
  421. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  422. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +2 -2
  423. package/dist/views/List/ListHeader/index.css +5 -0
  424. package/dist/views/List/ListSelection/index.js +4 -4
  425. package/dist/views/List/ListSelection/index.js.map +1 -1
  426. package/dist/views/List/index.client.d.ts.map +1 -1
  427. package/dist/views/List/index.client.js +6 -6
  428. package/dist/views/List/index.client.js.map +1 -1
  429. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  430. package/dist/views/List/renderListViewSlots.js +9 -6
  431. package/dist/views/List/renderListViewSlots.js.map +1 -1
  432. package/dist/views/Logout/LogoutClient.js +1 -1
  433. package/dist/views/Logout/LogoutClient.js.map +1 -1
  434. package/dist/views/Versions/index.css +0 -4
  435. package/package.json +4 -4
  436. package/dist/elements/BulkUpload/Header/index.d.ts +0 -9
  437. package/dist/elements/BulkUpload/Header/index.d.ts.map +0 -1
  438. package/dist/elements/BulkUpload/Header/index.js.map +0 -1
  439. package/dist/elements/ColumnSelector/index.d.ts +0 -9
  440. package/dist/elements/ColumnSelector/index.d.ts.map +0 -1
  441. package/dist/elements/ColumnSelector/index.js.map +0 -1
  442. package/dist/elements/ColumnsButton/index.d.ts +0 -7
  443. package/dist/elements/ColumnsButton/index.d.ts.map +0 -1
  444. package/dist/elements/ColumnsButton/index.js.map +0 -1
  445. package/dist/elements/FileDetails/FileMeta/index.scss +0 -31
  446. package/dist/elements/FileDetails/StaticFileDetails/index.scss +0 -134
  447. package/dist/elements/GroupByBuilder/index.d.ts +0 -12
  448. package/dist/elements/GroupByBuilder/index.d.ts.map +0 -1
  449. package/dist/elements/GroupByBuilder/index.js +0 -164
  450. package/dist/elements/GroupByBuilder/index.js.map +0 -1
  451. package/dist/elements/GroupByBuilder/index.scss +0 -39
  452. package/dist/elements/GroupByControl/index.d.ts +0 -9
  453. package/dist/elements/GroupByControl/index.d.ts.map +0 -1
  454. package/dist/elements/GroupByControl/index.js +0 -254
  455. package/dist/elements/GroupByControl/index.js.map +0 -1
  456. package/dist/elements/PreviewSizes/index.scss +0 -147
  457. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -17
  458. package/dist/elements/QueryPresets/fields/GroupByField/index.scss +0 -17
  459. package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
  460. package/dist/elements/Thumbnail/index.scss +0 -53
  461. package/dist/icons/ExternalLink/index.d.ts.map +0 -1
  462. package/dist/icons/ExternalLink/index.js +0 -26
  463. package/dist/icons/ExternalLink/index.js.map +0 -1
  464. package/dist/scss/toasts.scss +0 -146
  465. /package/dist/elements/{ColumnSelector/index.css → ColumnSelection/Popup.css} +0 -0
  466. /package/dist/elements/{GroupByControl/index.css → GroupBy/Popup.css} +0 -0
@@ -1,9 +1,7 @@
1
- @import '../../../../scss/styles';
2
-
3
1
  @layer payload-default {
4
2
  .query-preset-columns-cell {
5
3
  display: flex;
6
4
  flex-wrap: wrap;
7
- gap: 4px;
5
+ gap: var(--spacer-1);
8
6
  }
9
7
  }
@@ -1,5 +1,5 @@
1
1
  import type { DefaultCellComponentProps } from 'payload';
2
2
  import React from 'react';
3
- import './index.scss';
3
+ import './index.css';
4
4
  export declare const QueryPresetsColumnsCell: React.FC<DefaultCellComponentProps>;
5
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/cells/ColumnsCell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG1E,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqBvE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/cells/ColumnsCell/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG1E,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,aAAa,CAAA;AAIpB,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqBvE,CAAA"}
@@ -2,7 +2,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { toWords, transformColumnsToSearchParams } from 'payload/shared';
3
3
  import React from 'react';
4
4
  import { Pill } from '../../../Pill/index.js';
5
- import './index.scss';
5
+ import './index.css';
6
6
  const baseClass = 'query-preset-columns-cell';
7
7
  export const QueryPresetsColumnsCell = ({
8
8
  cellData
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["toWords","transformColumnsToSearchParams","React","Pill","baseClass","QueryPresetsColumnsCell","cellData","_jsx","className","map","column","i","isColumnActive","startsWith","pillStyle","size"],"sources":["../../../../../src/elements/QueryPresets/cells/ColumnsCell/index.tsx"],"sourcesContent":["import type { ColumnPreference, DefaultCellComponentProps } from 'payload'\n\nimport { toWords, transformColumnsToSearchParams } from 'payload/shared'\nimport React from 'react'\n\nimport { Pill } from '../../../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'query-preset-columns-cell'\n\nexport const QueryPresetsColumnsCell: React.FC<DefaultCellComponentProps> = ({ cellData }) => {\n return (\n <div className={baseClass}>\n {cellData\n ? transformColumnsToSearchParams(cellData as ColumnPreference[]).map((column, i) => {\n const isColumnActive = !column.startsWith('-')\n\n // to void very lengthy cells, only display the active columns\n if (!isColumnActive) {\n return null\n }\n\n return (\n <Pill key={i} pillStyle={isColumnActive ? 'always-white' : 'light'} size=\"small\">\n {toWords(column)}\n </Pill>\n )\n })\n : 'No columns selected'}\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,OAAO,EAAEC,8BAA8B,QAAQ;AACxD,OAAOC,KAAA,MAAW;AAElB,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,uBAAA,GAA+DA,CAAC;EAAEC;AAAQ,CAAE;EACvF,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAWJ,SAAA;cACbE,QAAA,GACGL,8BAAA,CAA+BK,QAAA,EAAgCG,GAAG,CAAC,CAACC,MAAA,EAAQC,CAAA;MAC1E,MAAMC,cAAA,GAAiB,CAACF,MAAA,CAAOG,UAAU,CAAC;MAE1C;MACA,IAAI,CAACD,cAAA,EAAgB;QACnB,OAAO;MACT;MAEA,oBACEL,IAAA,CAACJ,IAAA;QAAaW,SAAA,EAAWF,cAAA,GAAiB,iBAAiB;QAASG,IAAA,EAAK;kBACtEf,OAAA,CAAQU,MAAA;SADAC,CAAA;IAIf,KACA;;AAGV","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["toWords","transformColumnsToSearchParams","React","Pill","baseClass","QueryPresetsColumnsCell","cellData","_jsx","className","map","column","i","isColumnActive","startsWith","pillStyle","size"],"sources":["../../../../../src/elements/QueryPresets/cells/ColumnsCell/index.tsx"],"sourcesContent":["import type { ColumnPreference, DefaultCellComponentProps } from 'payload'\n\nimport { toWords, transformColumnsToSearchParams } from 'payload/shared'\nimport React from 'react'\n\nimport { Pill } from '../../../Pill/index.js'\nimport './index.css'\n\nconst baseClass = 'query-preset-columns-cell'\n\nexport const QueryPresetsColumnsCell: React.FC<DefaultCellComponentProps> = ({ cellData }) => {\n return (\n <div className={baseClass}>\n {cellData\n ? transformColumnsToSearchParams(cellData as ColumnPreference[]).map((column, i) => {\n const isColumnActive = !column.startsWith('-')\n\n // to void very lengthy cells, only display the active columns\n if (!isColumnActive) {\n return null\n }\n\n return (\n <Pill key={i} pillStyle={isColumnActive ? 'always-white' : 'light'} size=\"small\">\n {toWords(column)}\n </Pill>\n )\n })\n : 'No columns selected'}\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,OAAO,EAAEC,8BAA8B,QAAQ;AACxD,OAAOC,KAAA,MAAW;AAElB,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,uBAAA,GAA+DA,CAAC;EAAEC;AAAQ,CAAE;EACvF,oBACEC,IAAA,CAAC;IAAIC,SAAA,EAAWJ,SAAA;cACbE,QAAA,GACGL,8BAAA,CAA+BK,QAAA,EAAgCG,GAAG,CAAC,CAACC,MAAA,EAAQC,CAAA;MAC1E,MAAMC,cAAA,GAAiB,CAACF,MAAA,CAAOG,UAAU,CAAC;MAE1C;MACA,IAAI,CAACD,cAAA,EAAgB;QACnB,OAAO;MACT;MAEA,oBACEL,IAAA,CAACJ,IAAA;QAAaW,SAAA,EAAWF,cAAA,GAAiB,iBAAiB;QAASG,IAAA,EAAK;kBACtEf,OAAA,CAAQU,MAAA;SADAC,CAAA;IAIf,KACA;;AAGV","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import type { JSONFieldClientComponent } from 'payload';
2
- import './index.scss';
2
+ import '../fields.css';
3
3
  export declare const QueryPresetsColumnField: JSONFieldClientComponent;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/ColumnsField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAoB,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAYzE,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,uBAAuB,EAAE,wBA+FrC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/ColumnsField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyC,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAe9F,OAAO,eAAe,CAAA;AAEtB,eAAO,MAAM,uBAAuB,EAAE,wBA8IrC,CAAA"}
@@ -1,16 +1,19 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
- import React, { useId, useMemo } from 'react';
4
+ import { fieldIsHiddenOrDisabled, fieldIsID, flattenTopLevelFields } from 'payload/shared';
5
+ import React, { useMemo } from 'react';
5
6
  import { FieldLabel } from '../../../../fields/FieldLabel/index.js';
6
7
  import { useField } from '../../../../forms/useField/index.js';
7
8
  import { useAuth } from '../../../../providers/Auth/index.js';
8
9
  import { useConfig } from '../../../../providers/Config/index.js';
10
+ import { filterFieldsWithPermissions } from '../../../../providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js';
11
+ import { isColumnActive } from '../../../../providers/TableColumns/buildColumnState/isColumnActive.js';
12
+ import { sortFieldMap } from '../../../../providers/TableColumns/buildColumnState/sortFieldMap.js';
9
13
  import { useTranslation } from '../../../../providers/Translation/index.js';
10
14
  import { getColumns } from '../../../../utilities/getColumns.js';
11
- import { reduceFieldsToOptions } from '../../../../utilities/reduceFieldsToOptions.js';
12
- import { PillSelector } from '../../../PillSelector/index.js';
13
- import './index.scss';
15
+ import { ColumnSelectionButton } from '../../../ColumnSelection/index.js';
16
+ import '../fields.css';
14
17
  export const QueryPresetsColumnField = ({
15
18
  field: {
16
19
  label,
@@ -36,11 +39,10 @@ export const QueryPresetsColumnField = ({
36
39
  const {
37
40
  permissions
38
41
  } = useAuth();
39
- const uuid = useId();
40
42
  const collectionConfig = useMemo(() => relatedCollection ? getEntityConfig({
41
43
  collectionSlug: relatedCollection
42
44
  }) : null, [relatedCollection, getEntityConfig]);
43
- const columns = useMemo(() => {
45
+ const columnPreferences = useMemo(() => {
44
46
  if (!relatedCollection || !collectionConfig) {
45
47
  return [];
46
48
  }
@@ -53,40 +55,74 @@ export const QueryPresetsColumnField = ({
53
55
  permissions
54
56
  });
55
57
  }, [config, collectionConfig, relatedCollection, value, i18n, permissions]);
56
- const reducedFields = useMemo(() => {
58
+ // Build the full column set from every field (active and inactive), mirroring the
59
+ // list view's `buildColumnState`, so columns absent from the saved preferences still
60
+ // appear in the selector. No cells are rendered here.
61
+ const columns = useMemo(() => {
57
62
  if (!collectionConfig?.fields) {
58
63
  return [];
59
64
  }
60
- return reduceFieldsToOptions({
61
- fieldPermissions: permissions?.collections?.[relatedCollection]?.fields ?? true,
62
- fields: collectionConfig.fields,
63
- i18n
65
+ const fieldPermissions = permissions?.collections?.[relatedCollection]?.fields ?? true;
66
+ let sortedFieldMap = flattenTopLevelFields(filterFieldsWithPermissions({
67
+ fieldPermissions,
68
+ fields: collectionConfig.fields
69
+ }), {
70
+ i18n,
71
+ keepPresentationalFields: true,
72
+ moveSubFieldsToTop: true
64
73
  });
65
- }, [collectionConfig, i18n, permissions, relatedCollection]);
66
- const accessorToLabel = useMemo(() => {
67
- const map = {};
68
- for (const f of reducedFields) {
69
- map[String(f.fieldPath)] = f.label;
74
+ // Place the `id` field first, then the `useAsTitle` field, matching the list view.
75
+ const idFieldIndex = sortedFieldMap.findIndex(field => fieldIsID(field));
76
+ if (idFieldIndex > -1) {
77
+ sortedFieldMap.unshift(sortedFieldMap.splice(idFieldIndex, 1)[0]);
70
78
  }
71
- return map;
72
- }, [reducedFields]);
73
- const pills = useMemo(() => columns.map((col, i) => ({
74
- name: col.accessor,
75
- key: `${relatedCollection}-${col.accessor}-${i}-${uuid}`,
76
- Label: accessorToLabel[col.accessor] ?? col.accessor,
77
- selected: col.active
78
- })), [accessorToLabel, columns, relatedCollection, uuid]);
79
- const currentColumns = value ?? columns;
80
- const handleClick = React.useCallback(({
81
- pill
82
- }) => {
83
- const newColumns = currentColumns.map(col_0 => col_0.accessor === pill.name ? {
84
- ...col_0,
85
- active: !col_0.active
86
- } : col_0);
87
- setValue(newColumns.length ? newColumns : undefined);
88
- }, [currentColumns, setValue]);
89
- if (!relatedCollection) {
79
+ const useAsTitle = collectionConfig.admin?.useAsTitle;
80
+ const useAsTitleFieldIndex = useAsTitle ? sortedFieldMap.findIndex(field_0 => 'name' in field_0 && field_0.name === useAsTitle) : -1;
81
+ if (useAsTitleFieldIndex > -1) {
82
+ sortedFieldMap.unshift(sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]);
83
+ }
84
+ sortedFieldMap = sortFieldMap(sortedFieldMap, columnPreferences);
85
+ const activeColumnsIndices = [];
86
+ return sortedFieldMap.reduce((acc, field_1, colIndex) => {
87
+ if (fieldIsHiddenOrDisabled(field_1) && !fieldIsID(field_1)) {
88
+ return acc;
89
+ }
90
+ // Groups render as their flattened subfields, not as a selectable column.
91
+ if (field_1.type === 'group') {
92
+ return acc;
93
+ }
94
+ const accessor = 'accessor' in field_1 ? field_1.accessor : 'name' in field_1 ? field_1.name : undefined;
95
+ if (!accessor) {
96
+ return acc;
97
+ }
98
+ const columnPref = columnPreferences.find(pref => pref.accessor === accessor);
99
+ const active = isColumnActive({
100
+ accessor,
101
+ activeColumnsIndices,
102
+ column: columnPref,
103
+ columns: columnPreferences
104
+ });
105
+ if (active) {
106
+ activeColumnsIndices.push(colIndex);
107
+ }
108
+ acc.push({
109
+ accessor,
110
+ active,
111
+ field: field_1,
112
+ Heading: null,
113
+ renderedCells: []
114
+ });
115
+ return acc;
116
+ }, []);
117
+ }, [collectionConfig, columnPreferences, i18n, permissions, relatedCollection]);
118
+ const handleChange = React.useCallback(newColumns => {
119
+ const preferences = newColumns.map(col => ({
120
+ accessor: col.accessor,
121
+ active: col.active
122
+ }));
123
+ setValue(preferences.length ? preferences : undefined);
124
+ }, [setValue]);
125
+ if (!relatedCollection || !collectionConfig) {
90
126
  return /*#__PURE__*/_jsxs("div", {
91
127
  className: "field-type query-preset-columns-field",
92
128
  children: [/*#__PURE__*/_jsx(FieldLabel, {
@@ -100,20 +136,13 @@ export const QueryPresetsColumnField = ({
100
136
  })]
101
137
  });
102
138
  }
103
- return /*#__PURE__*/_jsxs("div", {
139
+ return /*#__PURE__*/_jsx("div", {
104
140
  className: "field-type query-preset-columns-field",
105
- children: [/*#__PURE__*/_jsx(FieldLabel, {
106
- as: "h3",
107
- label: label,
108
- path: path,
109
- required: required
110
- }), pills.length > 0 ? /*#__PURE__*/_jsx(PillSelector, {
111
- onClick: handleClick,
112
- pills: pills
113
- }) : /*#__PURE__*/_jsx("p", {
114
- className: "query-preset-columns-field__hint",
115
- children: "No columns available for this collection."
116
- })]
141
+ children: /*#__PURE__*/_jsx(ColumnSelectionButton, {
142
+ collectionSlug: relatedCollection,
143
+ columns: columns,
144
+ onChange: handleChange
145
+ })
117
146
  });
118
147
  };
119
148
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useId","useMemo","FieldLabel","useField","useAuth","useConfig","useTranslation","getColumns","reduceFieldsToOptions","PillSelector","QueryPresetsColumnField","field","label","required","path","setValue","value","relatedCollectionField","relatedCollection","config","getEntityConfig","i18n","permissions","uuid","collectionConfig","collectionSlug","columns","clientConfig","reducedFields","fields","fieldPermissions","collections","accessorToLabel","map","f","String","fieldPath","pills","col","i","name","accessor","key","Label","selected","active","currentColumns","handleClick","useCallback","pill","newColumns","length","undefined","_jsxs","className","_jsx","as","onClick"],"sources":["../../../../../src/elements/QueryPresets/fields/ColumnsField/index.tsx"],"sourcesContent":["'use client'\nimport type { ColumnPreference, JSONFieldClientComponent } from 'payload'\n\nimport React, { useId, useMemo } from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { getColumns } from '../../../../utilities/getColumns.js'\nimport { reduceFieldsToOptions } from '../../../../utilities/reduceFieldsToOptions.js'\nimport { PillSelector, type SelectablePill } from '../../../PillSelector/index.js'\nimport './index.scss'\n\nexport const QueryPresetsColumnField: JSONFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<ColumnPreference[]>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n const { config, getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { permissions } = useAuth()\n const uuid = useId()\n\n const collectionConfig = useMemo(\n () => (relatedCollection ? getEntityConfig({ collectionSlug: relatedCollection }) : null),\n [relatedCollection, getEntityConfig],\n )\n\n const columns = useMemo(() => {\n if (!relatedCollection || !collectionConfig) {\n return []\n }\n return getColumns({\n clientConfig: config,\n collectionConfig,\n collectionSlug: relatedCollection,\n columns: value ?? [],\n i18n,\n permissions,\n })\n }, [config, collectionConfig, relatedCollection, value, i18n, permissions])\n\n const reducedFields = useMemo(() => {\n if (!collectionConfig?.fields) {\n return []\n }\n return reduceFieldsToOptions({\n fieldPermissions: permissions?.collections?.[relatedCollection]?.fields ?? true,\n fields: collectionConfig.fields,\n i18n,\n })\n }, [collectionConfig, i18n, permissions, relatedCollection])\n\n const accessorToLabel = useMemo(() => {\n const map: Record<string, React.ReactNode> = {}\n for (const f of reducedFields) {\n map[String(f.fieldPath)] = f.label\n }\n return map\n }, [reducedFields])\n\n const pills: SelectablePill[] = useMemo(\n () =>\n columns.map((col, i) => ({\n name: col.accessor,\n key: `${relatedCollection}-${col.accessor}-${i}-${uuid}`,\n Label: accessorToLabel[col.accessor] ?? col.accessor,\n selected: col.active,\n })),\n [accessorToLabel, columns, relatedCollection, uuid],\n )\n\n const currentColumns = value ?? columns\n\n const handleClick = React.useCallback(\n ({ pill }: { pill: SelectablePill }) => {\n const newColumns = currentColumns.map((col) =>\n col.accessor === pill.name ? { ...col, active: !col.active } : col,\n )\n setValue(newColumns.length ? newColumns : undefined)\n },\n [currentColumns, setValue],\n )\n\n if (!relatedCollection) {\n return (\n <div className=\"field-type query-preset-columns-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-columns-field__hint\">\n Select the related collection to configure columns.\n </p>\n </div>\n )\n }\n\n return (\n <div className=\"field-type query-preset-columns-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n {pills.length > 0 ? (\n <PillSelector onClick={handleClick} pills={pills} />\n ) : (\n <p className=\"query-preset-columns-field__hint\">\n No columns available for this collection.\n </p>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","flattenTopLevelFields","React","useMemo","FieldLabel","useField","useAuth","useConfig","filterFieldsWithPermissions","isColumnActive","sortFieldMap","useTranslation","getColumns","ColumnSelectionButton","QueryPresetsColumnField","field","label","required","path","setValue","value","relatedCollectionField","relatedCollection","config","getEntityConfig","i18n","permissions","collectionConfig","collectionSlug","columnPreferences","clientConfig","columns","fields","fieldPermissions","collections","sortedFieldMap","keepPresentationalFields","moveSubFieldsToTop","idFieldIndex","findIndex","unshift","splice","useAsTitle","admin","useAsTitleFieldIndex","name","activeColumnsIndices","reduce","acc","colIndex","type","accessor","undefined","columnPref","find","pref","active","column","push","Heading","renderedCells","handleChange","useCallback","newColumns","preferences","map","col","length","_jsxs","className","_jsx","as","onChange"],"sources":["../../../../../src/elements/QueryPresets/fields/ColumnsField/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, Column, ColumnPreference, JSONFieldClientComponent } from 'payload'\n\nimport { fieldIsHiddenOrDisabled, fieldIsID, flattenTopLevelFields } from 'payload/shared'\nimport React, { useMemo } from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { filterFieldsWithPermissions } from '../../../../providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js'\nimport { isColumnActive } from '../../../../providers/TableColumns/buildColumnState/isColumnActive.js'\nimport { sortFieldMap } from '../../../../providers/TableColumns/buildColumnState/sortFieldMap.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { getColumns } from '../../../../utilities/getColumns.js'\nimport { ColumnSelectionButton } from '../../../ColumnSelection/index.js'\nimport '../fields.css'\n\nexport const QueryPresetsColumnField: JSONFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<ColumnPreference[]>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n const { config, getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { permissions } = useAuth()\n\n const collectionConfig = useMemo(\n () => (relatedCollection ? getEntityConfig({ collectionSlug: relatedCollection }) : null),\n [relatedCollection, getEntityConfig],\n )\n\n const columnPreferences = useMemo(() => {\n if (!relatedCollection || !collectionConfig) {\n return []\n }\n return getColumns({\n clientConfig: config,\n collectionConfig,\n collectionSlug: relatedCollection,\n columns: value ?? [],\n i18n,\n permissions,\n })\n }, [config, collectionConfig, relatedCollection, value, i18n, permissions])\n\n // Build the full column set from every field (active and inactive), mirroring the\n // list view's `buildColumnState`, so columns absent from the saved preferences still\n // appear in the selector. No cells are rendered here.\n const columns: Column[] = useMemo(() => {\n if (!collectionConfig?.fields) {\n return []\n }\n\n const fieldPermissions = permissions?.collections?.[relatedCollection]?.fields ?? true\n\n let sortedFieldMap = flattenTopLevelFields(\n filterFieldsWithPermissions({ fieldPermissions, fields: collectionConfig.fields }),\n {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n },\n ) as ClientField[]\n\n // Place the `id` field first, then the `useAsTitle` field, matching the list view.\n const idFieldIndex = sortedFieldMap.findIndex((field) => fieldIsID(field))\n if (idFieldIndex > -1) {\n sortedFieldMap.unshift(sortedFieldMap.splice(idFieldIndex, 1)[0])\n }\n\n const useAsTitle = collectionConfig.admin?.useAsTitle\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n if (useAsTitleFieldIndex > -1) {\n sortedFieldMap.unshift(sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0])\n }\n\n sortedFieldMap = sortFieldMap(sortedFieldMap, columnPreferences)\n\n const activeColumnsIndices: number[] = []\n\n return sortedFieldMap.reduce<Column[]>((acc, field, colIndex) => {\n if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {\n return acc\n }\n\n // Groups render as their flattened subfields, not as a selectable column.\n if (field.type === 'group') {\n return acc\n }\n\n const accessor =\n 'accessor' in field\n ? (field as { accessor: string }).accessor\n : 'name' in field\n ? field.name\n : undefined\n\n if (!accessor) {\n return acc\n }\n\n const columnPref = columnPreferences.find((pref) => pref.accessor === accessor)\n const active = isColumnActive({\n accessor,\n activeColumnsIndices,\n column: columnPref,\n columns: columnPreferences,\n })\n\n if (active) {\n activeColumnsIndices.push(colIndex)\n }\n\n acc.push({\n accessor,\n active,\n field,\n Heading: null,\n renderedCells: [],\n })\n\n return acc\n }, [])\n }, [collectionConfig, columnPreferences, i18n, permissions, relatedCollection])\n\n const handleChange = React.useCallback(\n (newColumns: Column[]) => {\n const preferences: ColumnPreference[] = newColumns.map((col) => ({\n accessor: col.accessor,\n active: col.active,\n }))\n setValue(preferences.length ? preferences : undefined)\n },\n [setValue],\n )\n\n if (!relatedCollection || !collectionConfig) {\n return (\n <div className=\"field-type query-preset-columns-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-columns-field__hint\">\n Select the related collection to configure columns.\n </p>\n </div>\n )\n }\n\n return (\n <div className=\"field-type query-preset-columns-field\">\n <ColumnSelectionButton\n collectionSlug={relatedCollection}\n columns={columns}\n onChange={handleChange}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import type { TextFieldClientComponent } from 'payload';
2
- import './index.scss';
2
+ import '../fields.css';
3
3
  export declare const QueryPresetsGroupByField: TextFieldClientComponent;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/GroupByField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAQvD,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,wBAAwB,EAAE,wBAuCtC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/GroupByField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAQvD,OAAO,eAAe,CAAA;AAEtB,eAAO,MAAM,wBAAwB,EAAE,wBAkCtC,CAAA"}
@@ -5,8 +5,8 @@ import React, { useMemo } from 'react';
5
5
  import { FieldLabel } from '../../../../fields/FieldLabel/index.js';
6
6
  import { useField } from '../../../../forms/useField/index.js';
7
7
  import { useConfig } from '../../../../providers/Config/index.js';
8
- import { GroupByBuilder } from '../../../GroupByBuilder/index.js';
9
- import './index.scss';
8
+ import { GroupByButton } from '../../../GroupBy/index.js';
9
+ import '../fields.css';
10
10
  export const QueryPresetsGroupByField = ({
11
11
  field: {
12
12
  label,
@@ -23,16 +23,12 @@ export const QueryPresetsGroupByField = ({
23
23
  });
24
24
  const relatedCollection = relatedCollectionField.value;
25
25
  const {
26
- config
26
+ getEntityConfig
27
27
  } = useConfig();
28
- const collectionConfig = useMemo(() => {
29
- if (!relatedCollection) {
30
- return null;
31
- }
32
- return config.collections?.find(col => col.slug === relatedCollection);
33
- }, [relatedCollection, config.collections]);
34
- const fields = collectionConfig?.fields ?? [];
35
- if (!relatedCollection) {
28
+ const collectionConfig = useMemo(() => relatedCollection ? getEntityConfig({
29
+ collectionSlug: relatedCollection
30
+ }) : null, [relatedCollection, getEntityConfig]);
31
+ if (!relatedCollection || !collectionConfig) {
36
32
  return /*#__PURE__*/_jsxs("div", {
37
33
  className: "field-type query-preset-group-by-field",
38
34
  children: [/*#__PURE__*/_jsx(FieldLabel, {
@@ -46,19 +42,14 @@ export const QueryPresetsGroupByField = ({
46
42
  })]
47
43
  });
48
44
  }
49
- return /*#__PURE__*/_jsxs("div", {
45
+ return /*#__PURE__*/_jsx("div", {
50
46
  className: "field-type query-preset-group-by-field",
51
- children: [/*#__PURE__*/_jsx(FieldLabel, {
52
- as: "h3",
53
- label: label,
54
- path: path,
55
- required: required
56
- }), /*#__PURE__*/_jsx(GroupByBuilder, {
47
+ children: /*#__PURE__*/_jsx(GroupByButton, {
57
48
  collectionSlug: relatedCollection,
58
- fields: fields,
49
+ fields: collectionConfig.fields,
59
50
  onChange: groupBy => setValue(groupBy || null),
60
- value: value ?? undefined
61
- })]
51
+ value: value ?? ''
52
+ })
62
53
  });
63
54
  };
64
55
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useMemo","FieldLabel","useField","useConfig","GroupByBuilder","QueryPresetsGroupByField","field","label","required","path","setValue","value","relatedCollectionField","relatedCollection","config","collectionConfig","collections","find","col","slug","fields","_jsxs","className","_jsx","as","collectionSlug","onChange","groupBy","undefined"],"sources":["../../../../../src/elements/QueryPresets/fields/GroupByField/index.tsx"],"sourcesContent":["'use client'\nimport type { TextFieldClientComponent } from 'payload'\n\nimport React, { useMemo } from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { GroupByBuilder } from '../../../GroupByBuilder/index.js'\nimport './index.scss'\n\nexport const QueryPresetsGroupByField: TextFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<string>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n const { config } = useConfig()\n\n const collectionConfig = useMemo(() => {\n if (!relatedCollection) {\n return null\n }\n return config.collections?.find((col) => col.slug === relatedCollection)\n }, [relatedCollection, config.collections])\n\n const fields = collectionConfig?.fields ?? []\n\n if (!relatedCollection) {\n return (\n <div className=\"field-type query-preset-group-by-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-group-by-field__hint\">\n Select the related collection to configure group by.\n </p>\n </div>\n )\n }\n\n return (\n <div className=\"field-type query-preset-group-by-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <GroupByBuilder\n collectionSlug={relatedCollection}\n fields={fields}\n onChange={(groupBy) => setValue(groupBy || null)}\n value={value ?? undefined}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,OAAO,QAAQ;AAE/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,OAAO,MAAMC,wBAAA,GAAqDA,CAAC;EACjEC,KAAA,EAAO;IAAEC,KAAK;IAAEC;EAAQ;AAAE,CAC3B;EACC,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC;EAAK,CAAE,GAAGT,QAAA;EAClC,MAAMU,sBAAA,GAAyBV,QAAA,CAAS;IAAEO,IAAA,EAAM;EAAoB;EACpE,MAAMI,iBAAA,GAAoBD,sBAAA,CAAuBD,KAAK;EACtD,MAAM;IAAEG;EAAM,CAAE,GAAGX,SAAA;EAEnB,MAAMY,gBAAA,GAAmBf,OAAA,CAAQ;IAC/B,IAAI,CAACa,iBAAA,EAAmB;MACtB,OAAO;IACT;IACA,OAAOC,MAAA,CAAOE,WAAW,EAAEC,IAAA,CAAMC,GAAA,IAAQA,GAAA,CAAIC,IAAI,KAAKN,iBAAA;EACxD,GAAG,CAACA,iBAAA,EAAmBC,MAAA,CAAOE,WAAW,CAAC;EAE1C,MAAMI,MAAA,GAASL,gBAAA,EAAkBK,MAAA,IAAU,EAAE;EAE7C,IAAI,CAACP,iBAAA,EAAmB;IACtB,oBACEQ,KAAA,CAAC;MAAIC,SAAA,EAAU;8BACbC,IAAA,CAACtB,UAAA;QAAWuB,EAAA,EAAG;QAAKjB,KAAA,EAAOA,KAAA;QAAOE,IAAA,EAAMA,IAAA;QAAMD,QAAA,EAAUA;uBACxDe,IAAA,CAAC;QAAED,SAAA,EAAU;kBAAoC;;;EAKvD;EAEA,oBACED,KAAA,CAAC;IAAIC,SAAA,EAAU;4BACbC,IAAA,CAACtB,UAAA;MAAWuB,EAAA,EAAG;MAAKjB,KAAA,EAAOA,KAAA;MAAOE,IAAA,EAAMA,IAAA;MAAMD,QAAA,EAAUA;qBACxDe,IAAA,CAACnB,cAAA;MACCqB,cAAA,EAAgBZ,iBAAA;MAChBO,MAAA,EAAQA,MAAA;MACRM,QAAA,EAAWC,OAAA,IAAYjB,QAAA,CAASiB,OAAA,IAAW;MAC3ChB,KAAA,EAAOA,KAAA,IAASiB;;;AAIxB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useMemo","FieldLabel","useField","useConfig","GroupByButton","QueryPresetsGroupByField","field","label","required","path","setValue","value","relatedCollectionField","relatedCollection","getEntityConfig","collectionConfig","collectionSlug","_jsxs","className","_jsx","as","fields","onChange","groupBy"],"sources":["../../../../../src/elements/QueryPresets/fields/GroupByField/index.tsx"],"sourcesContent":["'use client'\nimport type { TextFieldClientComponent } from 'payload'\n\nimport React, { useMemo } from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { GroupByButton } from '../../../GroupBy/index.js'\nimport '../fields.css'\n\nexport const QueryPresetsGroupByField: TextFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<string>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n const { getEntityConfig } = useConfig()\n\n const collectionConfig = useMemo(\n () => (relatedCollection ? getEntityConfig({ collectionSlug: relatedCollection }) : null),\n [relatedCollection, getEntityConfig],\n )\n\n if (!relatedCollection || !collectionConfig) {\n return (\n <div className=\"field-type query-preset-group-by-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-group-by-field__hint\">\n Select the related collection to configure group by.\n </p>\n </div>\n )\n }\n\n return (\n <div className=\"field-type query-preset-group-by-field\">\n <GroupByButton\n collectionSlug={relatedCollection}\n fields={collectionConfig.fields}\n onChange={(groupBy) => setValue(groupBy || null)}\n value={value ?? ''}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,IAASC,OAAO,QAAQ;AAE/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,SAASC,SAAS,QAAQ;AAC1B,SAASC,aAAa,QAAQ;AAC9B,OAAO;AAEP,OAAO,MAAMC,wBAAA,GAAqDA,CAAC;EACjEC,KAAA,EAAO;IAAEC,KAAK;IAAEC;EAAQ;AAAE,CAC3B;EACC,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC;EAAK,CAAE,GAAGT,QAAA;EAClC,MAAMU,sBAAA,GAAyBV,QAAA,CAAS;IAAEO,IAAA,EAAM;EAAoB;EACpE,MAAMI,iBAAA,GAAoBD,sBAAA,CAAuBD,KAAK;EACtD,MAAM;IAAEG;EAAe,CAAE,GAAGX,SAAA;EAE5B,MAAMY,gBAAA,GAAmBf,OAAA,CACvB,MAAOa,iBAAA,GAAoBC,eAAA,CAAgB;IAAEE,cAAA,EAAgBH;EAAkB,KAAK,MACpF,CAACA,iBAAA,EAAmBC,eAAA,CAAgB;EAGtC,IAAI,CAACD,iBAAA,IAAqB,CAACE,gBAAA,EAAkB;IAC3C,oBACEE,KAAA,CAAC;MAAIC,SAAA,EAAU;8BACbC,IAAA,CAAClB,UAAA;QAAWmB,EAAA,EAAG;QAAKb,KAAA,EAAOA,KAAA;QAAOE,IAAA,EAAMA,IAAA;QAAMD,QAAA,EAAUA;uBACxDW,IAAA,CAAC;QAAED,SAAA,EAAU;kBAAoC;;;EAKvD;EAEA,oBACEC,IAAA,CAAC;IAAID,SAAA,EAAU;cACb,aAAAC,IAAA,CAACf,aAAA;MACCY,cAAA,EAAgBH,iBAAA;MAChBQ,MAAA,EAAQN,gBAAA,CAAiBM,MAAM;MAC/BC,QAAA,EAAWC,OAAA,IAAYb,QAAA,CAASa,OAAA,IAAW;MAC3CZ,KAAA,EAAOA,KAAA,IAAS;;;AAIxB","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ @layer payload-default {
2
+ .query-preset-heading {
3
+ margin: var(--spacer-4) 0 var(--spacer-2-5);
4
+ color: var(--color-text);
5
+ font-family: var(--text-heading-medium-font-family);
6
+ font-size: var(--text-heading-medium-font-size);
7
+ font-weight: var(--text-heading-medium-font-weight);
8
+ line-height: var(--text-heading-medium-line-height);
9
+ }
10
+
11
+ .field-type.row.query-preset-controls-row {
12
+ /* Match the standalone headings' top spacing so sections stay aligned. */
13
+ margin-top: var(--spacer-4);
14
+
15
+ .row__fields {
16
+ align-items: center;
17
+ column-gap: var(--spacer-2);
18
+ flex-wrap: nowrap;
19
+
20
+ /* Size controls to their content and drop Row's inline margins so the last
21
+ one aligns with the right edge. Matches Row's `:has` selector to win on
22
+ mobile, where Row's media-query reset has too little specificity. */
23
+ &:has(> *:nth-child(2)) {
24
+ margin-inline: 0;
25
+
26
+ > * {
27
+ flex: 0 0 auto;
28
+ margin-inline: 0;
29
+ /* Clamp against Row's mobile `width: 100% !important`. */
30
+ max-width: fit-content;
31
+ }
32
+ }
33
+
34
+ /* Stay in a row on mobile, where Row otherwise stacks into a column. */
35
+ @media (max-width: 1024px) {
36
+ flex-direction: row;
37
+ }
38
+ }
39
+
40
+ /* The heading absorbs the free space to push the controls to the right edge;
41
+ the row owns the top spacing, so collapse the heading's own block margins. */
42
+ .row__fields:has(> *:nth-child(2)) > .query-preset-heading {
43
+ margin-block: 0;
44
+ margin-inline-end: auto;
45
+ }
46
+ }
47
+
48
+ /* The Access heading provides the separation, so hide the group's top border. */
49
+ .query-preset-access-group.group-field--top-level::before {
50
+ display: none;
51
+ }
52
+ }
@@ -0,0 +1,7 @@
1
+ import type { ClientTranslationKeys } from '@payloadcms/translations';
2
+ import React from 'react';
3
+ import './index.css';
4
+ export declare const QueryPresetsHeading: React.FC<{
5
+ i18nKey?: ClientTranslationKeys;
6
+ }>;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/Heading/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAErE,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,OAAO,CAAC,EAAE,qBAAqB,CAAA;CAAE,CAM7E,CAAA"}
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ import React from 'react';
6
+ import { useTranslation } from '../../../../providers/Translation/index.js';
7
+ import './index.css';
8
+ export const QueryPresetsHeading = t0 => {
9
+ const $ = _c(3);
10
+ const {
11
+ i18nKey: t1
12
+ } = t0;
13
+ const i18nKey = t1 === undefined ? "general:presets" : t1;
14
+ const {
15
+ t
16
+ } = useTranslation();
17
+ let t2;
18
+ if ($[0] !== i18nKey || $[1] !== t) {
19
+ t2 = _jsx("h3", {
20
+ className: "query-preset-heading",
21
+ children: t(i18nKey)
22
+ });
23
+ $[0] = i18nKey;
24
+ $[1] = t;
25
+ $[2] = t2;
26
+ } else {
27
+ t2 = $[2];
28
+ }
29
+ return t2;
30
+ };
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useTranslation","QueryPresetsHeading","t0","$","i18nKey","t1","undefined","t","t2","_jsx","className","children"],"sources":["../../../../../src/elements/QueryPresets/fields/Heading/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys } from '@payloadcms/translations'\n\nimport React from 'react'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.css'\n\nexport const QueryPresetsHeading: React.FC<{ i18nKey?: ClientTranslationKeys }> = ({\n i18nKey = 'general:presets',\n}) => {\n const { t } = useTranslation()\n\n return <h3 className=\"query-preset-heading\">{t(i18nKey)}</h3>\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,OAAO;AAEP,OAAO,MAAMC,mBAAA,GAAqEC,EAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EAAC;IAAAM,OAAA,EAAAC;EAAA,IAAAH,EAElF;EADC,MAAAE,OAAA,GAAAC,EAA2B,KAAAC,SAAA,GAAjB,iBAAiB,GAA3BD,EAA2B;EAE3B;IAAAE;EAAA,IAAcP,cAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAL,CAAA,QAAAC,OAAA,IAAAD,CAAA,QAAAI,CAAA;IAEPC,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EAAa;MAAAC,QAAA,EAAwBJ,CAAA,CAAEH,OAAA;IAAA,C;;;;;;;SAAxCI,E;CACT","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  import type { JSONFieldClientComponent } from 'payload';
2
- import './index.scss';
2
+ import '../fields.css';
3
3
  export declare const QueryPresetsWhereField: JSONFieldClientComponent;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/WhereField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAS,MAAM,SAAS,CAAA;AAO9D,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,sBAAsB,EAAE,wBA4BpC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/QueryPresets/fields/WhereField/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAS,MAAM,SAAS,CAAA;AAQ9D,OAAO,eAAe,CAAA;AAEtB,eAAO,MAAM,sBAAsB,EAAE,wBA+BpC,CAAA"}
@@ -5,10 +5,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import React from 'react';
6
6
  import { FieldLabel } from '../../../../fields/FieldLabel/index.js';
7
7
  import { useField } from '../../../../forms/useField/index.js';
8
+ import { useConfig } from '../../../../providers/Config/index.js';
8
9
  import { WhereBuilder } from '../../../WhereBuilder/index.js';
9
- import './index.scss';
10
+ import '../fields.css';
10
11
  export const QueryPresetsWhereField = t0 => {
11
- const $ = _c(14);
12
+ const $ = _c(12);
12
13
  const {
13
14
  field: t1
14
15
  } = t0;
@@ -32,6 +33,9 @@ export const QueryPresetsWhereField = t0 => {
32
33
  }
33
34
  const relatedCollectionField = useField(t2);
34
35
  const relatedCollection = relatedCollectionField.value;
36
+ const {
37
+ getEntityConfig
38
+ } = useConfig();
35
39
  if (!relatedCollection) {
36
40
  let t3;
37
41
  if ($[1] !== label || $[2] !== path || $[3] !== required) {
@@ -57,37 +61,34 @@ export const QueryPresetsWhereField = t0 => {
57
61
  return t3;
58
62
  }
59
63
  let t3;
60
- if ($[5] !== label || $[6] !== path || $[7] !== relatedCollection || $[8] !== required || $[9] !== setValue || $[10] !== value) {
64
+ if ($[5] !== getEntityConfig || $[6] !== relatedCollection || $[7] !== setValue || $[8] !== value) {
65
+ const collectionConfig = getEntityConfig({
66
+ collectionSlug: relatedCollection
67
+ });
61
68
  let t4;
62
- if ($[12] !== setValue) {
69
+ if ($[10] !== setValue) {
63
70
  t4 = where => setValue(where);
64
- $[12] = setValue;
65
- $[13] = t4;
71
+ $[10] = setValue;
72
+ $[11] = t4;
66
73
  } else {
67
- t4 = $[13];
74
+ t4 = $[11];
68
75
  }
69
- t3 = _jsxs("div", {
76
+ t3 = _jsx("div", {
70
77
  className: "field-type query-preset-where-field",
71
- children: [_jsx(FieldLabel, {
72
- as: "h3",
73
- label,
74
- path,
75
- required
76
- }), _jsx(WhereBuilder, {
78
+ children: _jsx(WhereBuilder, {
77
79
  collectionSlug: relatedCollection,
80
+ fields: collectionConfig?.fields ?? [],
78
81
  onChange: t4,
79
82
  value: value ?? undefined
80
- })]
83
+ })
81
84
  });
82
- $[5] = label;
83
- $[6] = path;
84
- $[7] = relatedCollection;
85
- $[8] = required;
86
- $[9] = setValue;
87
- $[10] = value;
88
- $[11] = t3;
85
+ $[5] = getEntityConfig;
86
+ $[6] = relatedCollection;
87
+ $[7] = setValue;
88
+ $[8] = value;
89
+ $[9] = t3;
89
90
  } else {
90
- t3 = $[11];
91
+ t3 = $[9];
91
92
  }
92
93
  return t3;
93
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","FieldLabel","useField","WhereBuilder","QueryPresetsWhereField","t0","$","field","t1","label","required","path","setValue","value","t2","Symbol","for","relatedCollectionField","relatedCollection","t3","_jsxs","className","children","_jsx","as","t4","where","collectionSlug","onChange","undefined"],"sources":["../../../../../src/elements/QueryPresets/fields/WhereField/index.tsx"],"sourcesContent":["'use client'\nimport type { JSONFieldClientComponent, Where } from 'payload'\n\nimport React from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { WhereBuilder } from '../../../WhereBuilder/index.js'\nimport './index.scss'\n\nexport const QueryPresetsWhereField: JSONFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<Where>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n\n if (!relatedCollection) {\n return (\n <div className=\"field-type query-preset-where-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-where-field__hint\">\n Select the related collection to configure filters.\n </p>\n </div>\n )\n }\n\n return (\n <div className=\"field-type query-preset-where-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <WhereBuilder\n collectionSlug={relatedCollection}\n onChange={(where) => setValue(where)}\n value={value ?? undefined}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,QAAQ;AAC7B,OAAO;AAEP,OAAO,MAAMC,sBAAA,GAAmDC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ,KAAA,EAAAC;EAAA,IAAAH,EAEhE;EADQ;IAAAI,KAAA;IAAAC;EAAA,IAAAF,EAAmB;EAE1B;IAAAG,IAAA;IAAAC,QAAA;IAAAC;EAAA,IAAkCX,QAAA;EAAA,IAAAY,EAAA;EAAA,IAAAR,CAAA,QAAAS,MAAA,CAAAC,GAAA;IACMF,EAAA;MAAAH,IAAA,EAAQ;IAAA;IAAoBL,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAApE,MAAAW,sBAAA,GAA+Bf,QAAA,CAASY,EAA4B;EACpE,MAAAI,iBAAA,GAA0BD,sBAAA,CAAAJ,KAAA;EAA4B,KAEjDK,iBAAA;IAAA,IAAAC,EAAA;IAAA,IAAAb,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAK,IAAA,IAAAL,CAAA,QAAAI,QAAA;MAEDS,EAAA,GAAAC,KAAA,CAAC;QAAAC,SAAA,EAAc;QAAAC,QAAA,GACbC,IAAA,CAAAtB,UAAA;UAAAuB,EAAA,EAAe;UAAAf,KAAA;UAAAE,IAAA;UAAAD;QAAA,C,GACfa,IAAA,CAAC;UAAAF,SAAA,EAAY;UAAAC,QAAA,EAAiC;QAAA,C;;;;;;;;;WAFhDH,E;;;;;;MAcYM,EAAA,GAAAC,KAAA,IAAWd,QAAA,CAASc,KAAA;MAAApB,CAAA,OAAAM,QAAA;MAAAN,CAAA,OAAAmB,EAAA;IAAA;MAAAA,EAAA,GAAAnB,CAAA;IAAA;IAJlCa,EAAA,GAAAC,KAAA,CAAC;MAAAC,SAAA,EAAc;MAAAC,QAAA,GACbC,IAAA,CAAAtB,UAAA;QAAAuB,EAAA,EAAe;QAAAf,KAAA;QAAAE,IAAA;QAAAD;MAAA,C,GACfa,IAAA,CAAApB,YAAA;QAAAwB,cAAA,EACkBT,iBAAA;QAAAU,QAAA,EACNH,EAAoB;QAAAZ,KAAA,EACvBA,KAAA,IAAAgB;MAAS,C;;;;;;;;;;;;SALpBV,E;CASJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","FieldLabel","useField","useConfig","WhereBuilder","QueryPresetsWhereField","t0","$","field","t1","label","required","path","setValue","value","t2","Symbol","for","relatedCollectionField","relatedCollection","getEntityConfig","t3","_jsxs","className","children","_jsx","as","collectionConfig","collectionSlug","t4","where","fields","onChange","undefined"],"sources":["../../../../../src/elements/QueryPresets/fields/WhereField/index.tsx"],"sourcesContent":["'use client'\nimport type { JSONFieldClientComponent, Where } from 'payload'\n\nimport React from 'react'\n\nimport { FieldLabel } from '../../../../fields/FieldLabel/index.js'\nimport { useField } from '../../../../forms/useField/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { WhereBuilder } from '../../../WhereBuilder/index.js'\nimport '../fields.css'\n\nexport const QueryPresetsWhereField: JSONFieldClientComponent = ({\n field: { label, required },\n}) => {\n const { path, setValue, value } = useField<Where>()\n const relatedCollectionField = useField({ path: 'relatedCollection' })\n const relatedCollection = relatedCollectionField.value as string | undefined\n const { getEntityConfig } = useConfig()\n\n if (!relatedCollection) {\n return (\n <div className=\"field-type query-preset-where-field\">\n <FieldLabel as=\"h3\" label={label} path={path} required={required} />\n <p className=\"query-preset-where-field__hint\">\n Select the related collection to configure filters.\n </p>\n </div>\n )\n }\n\n const collectionConfig = getEntityConfig({ collectionSlug: relatedCollection })\n\n return (\n <div className=\"field-type query-preset-where-field\">\n <WhereBuilder\n collectionSlug={relatedCollection}\n fields={collectionConfig?.fields ?? []}\n onChange={(where) => setValue(where)}\n value={value ?? undefined}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAC3B,SAASC,QAAQ,QAAQ;AACzB,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAC7B,OAAO;AAEP,OAAO,MAAMC,sBAAA,GAAmDC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,KAAA,EAAAC;EAAA,IAAAH,EAEhE;EADQ;IAAAI,KAAA;IAAAC;EAAA,IAAAF,EAAmB;EAE1B;IAAAG,IAAA;IAAAC,QAAA;IAAAC;EAAA,IAAkCZ,QAAA;EAAA,IAAAa,EAAA;EAAA,IAAAR,CAAA,QAAAS,MAAA,CAAAC,GAAA;IACMF,EAAA;MAAAH,IAAA,EAAQ;IAAA;IAAoBL,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAApE,MAAAW,sBAAA,GAA+BhB,QAAA,CAASa,EAA4B;EACpE,MAAAI,iBAAA,GAA0BD,sBAAA,CAAAJ,KAAA;EAC1B;IAAAM;EAAA,IAA4BjB,SAAA;EAAA,KAEvBgB,iBAAA;IAAA,IAAAE,EAAA;IAAA,IAAAd,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAK,IAAA,IAAAL,CAAA,QAAAI,QAAA;MAEDU,EAAA,GAAAC,KAAA,CAAC;QAAAC,SAAA,EAAc;QAAAC,QAAA,GACbC,IAAA,CAAAxB,UAAA;UAAAyB,EAAA,EAAe;UAAAhB,KAAA;UAAAE,IAAA;UAAAD;QAAA,C,GACfc,IAAA,CAAC;UAAAF,SAAA,EAAY;UAAAC,QAAA,EAAiC;QAAA,C;;;;;;;;;WAFhDH,E;;;;IASJ,MAAAM,gBAAA,GAAyBP,eAAA;MAAAQ,cAAA,EAAkCT;IAAA,CAAkB;IAAA,IAAAU,EAAA;IAAA,IAAAtB,CAAA,SAAAM,QAAA;MAO7DgB,EAAA,GAAAC,KAAA,IAAWjB,QAAA,CAASiB,KAAA;MAAAvB,CAAA,OAAAM,QAAA;MAAAN,CAAA,OAAAsB,EAAA;IAAA;MAAAA,EAAA,GAAAtB,CAAA;IAAA;IAJlCc,EAAA,GAAAI,IAAA,CAAC;MAAAF,SAAA,EAAc;MAAAC,QAAA,EACbC,IAAA,CAAArB,YAAA;QAAAwB,cAAA,EACkBT,iBAAA;QAAAY,MAAA,EACRJ,gBAAA,EAAAI,MAAA,MAA8B;QAAAC,QAAA,EAC5BH,EAAoB;QAAAf,KAAA,EACvBA,KAAA,IAAAmB;MAAS,C;;;;;;;;;;SALpBZ,E;CASJ","ignoreList":[]}
@@ -0,0 +1,23 @@
1
+ @layer payload-default {
2
+ .query-preset-columns-field,
3
+ .query-preset-group-by-field,
4
+ .query-preset-where-field {
5
+ .field-label {
6
+ margin-bottom: var(--spacer-2);
7
+ }
8
+ }
9
+
10
+ .query-preset-columns-field__hint,
11
+ .query-preset-group-by-field__hint,
12
+ .query-preset-where-field__hint {
13
+ margin: 0;
14
+ color: var(--color-text-secondary);
15
+ }
16
+
17
+ /* The builder sits inline within the form here, so drop the list-panel chrome
18
+ (border + gutter padding) it carries in the list view. */
19
+ .query-preset-where-field .where-builder {
20
+ padding: 0;
21
+ border-bottom: none;
22
+ }
23
+ }
@@ -0,0 +1,5 @@
1
+ export declare const getCaptureMenuScroll: ({ captureMenuScroll, menuPortalTarget: _menuPortalTarget, }: {
2
+ captureMenuScroll?: boolean;
3
+ menuPortalTarget?: HTMLElement | null;
4
+ }) => boolean;
5
+ //# sourceMappingURL=getCaptureMenuScroll.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCaptureMenuScroll.d.ts","sourceRoot":"","sources":["../../../src/elements/ReactSelect/getCaptureMenuScroll.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,GAAI,6DAGlC;IACD,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,gBAAgB,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;CACtC,KAAG,OAMH,CAAA"}