@payloadcms/ui 3.29.0-internal.0ad276c → 3.29.0-internal.2984e42

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 (485) hide show
  1. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  2. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +143 -127
  3. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  4. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  5. package/dist/elements/BulkUpload/EditMany/index.js +1 -1
  6. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  7. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  8. package/dist/elements/BulkUpload/FileSidebar/index.js +5 -5
  9. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  10. package/dist/elements/BulkUpload/FormsManager/index.js +3 -3
  11. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  12. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  13. package/dist/elements/BulkUpload/index.js +2 -4
  14. package/dist/elements/BulkUpload/index.js.map +1 -1
  15. package/dist/elements/Collapsible/provider.d.ts.map +1 -1
  16. package/dist/elements/Collapsible/provider.js +3 -5
  17. package/dist/elements/Collapsible/provider.js.map +1 -1
  18. package/dist/elements/ColumnSelector/index.js +1 -1
  19. package/dist/elements/ColumnSelector/index.js.map +1 -1
  20. package/dist/elements/ColumnSelector/index.scss +2 -3
  21. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  22. package/dist/elements/DeleteDocument/index.js +1 -2
  23. package/dist/elements/DeleteDocument/index.js.map +1 -1
  24. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  25. package/dist/elements/DeleteMany/index.js +1 -1
  26. package/dist/elements/DeleteMany/index.js.map +1 -1
  27. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  28. package/dist/elements/DocumentDrawer/DrawerContent.js +2 -1
  29. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  30. package/dist/elements/DocumentDrawer/Provider.d.ts.map +1 -1
  31. package/dist/elements/DocumentDrawer/Provider.js +3 -3
  32. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  33. package/dist/elements/DocumentDrawer/types.d.ts +4 -0
  34. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  35. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  36. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  37. package/dist/elements/DocumentFields/index.js +1 -5
  38. package/dist/elements/DocumentFields/index.js.map +1 -1
  39. package/dist/elements/Drawer/index.d.ts.map +1 -1
  40. package/dist/elements/Drawer/index.js +3 -5
  41. package/dist/elements/Drawer/index.js.map +1 -1
  42. package/dist/elements/EditMany/DrawerContent.d.ts +2 -1
  43. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  44. package/dist/elements/EditMany/DrawerContent.js +108 -120
  45. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  46. package/dist/elements/EditMany/index.d.ts.map +1 -1
  47. package/dist/elements/EditMany/index.js +6 -5
  48. package/dist/elements/EditMany/index.js.map +1 -1
  49. package/dist/elements/FieldSelect/index.d.ts +12 -2
  50. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  51. package/dist/elements/FieldSelect/index.js +31 -48
  52. package/dist/elements/FieldSelect/index.js.map +1 -1
  53. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  54. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +2 -1
  55. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  56. package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts +8 -0
  57. package/dist/elements/ListControls/ActiveQueryPreset/index.d.ts.map +1 -0
  58. package/dist/elements/ListControls/ActiveQueryPreset/index.js +102 -0
  59. package/dist/elements/ListControls/ActiveQueryPreset/index.js.map +1 -0
  60. package/dist/elements/ListControls/ActiveQueryPreset/index.scss +21 -0
  61. package/dist/elements/ListControls/index.d.ts +1 -24
  62. package/dist/elements/ListControls/index.d.ts.map +1 -1
  63. package/dist/elements/ListControls/index.js +115 -86
  64. package/dist/elements/ListControls/index.js.map +1 -1
  65. package/dist/elements/ListControls/index.scss +5 -9
  66. package/dist/elements/ListControls/types.d.ts +28 -0
  67. package/dist/elements/ListControls/types.d.ts.map +1 -0
  68. package/dist/elements/ListControls/types.js.map +1 -0
  69. package/dist/elements/ListControls/useQueryPresets.d.ts +17 -0
  70. package/dist/elements/ListControls/useQueryPresets.d.ts.map +1 -0
  71. package/dist/elements/ListControls/useQueryPresets.js +259 -0
  72. package/dist/elements/ListControls/useQueryPresets.js.map +1 -0
  73. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  74. package/dist/elements/ListDrawer/DrawerContent.js +4 -2
  75. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  76. package/dist/elements/ListDrawer/Provider.js +3 -3
  77. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  78. package/dist/elements/ListDrawer/types.d.ts +3 -2
  79. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  80. package/dist/elements/ListDrawer/types.js.map +1 -1
  81. package/dist/elements/LoadingOverlay/index.js +3 -3
  82. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  83. package/dist/elements/Nav/context.d.ts.map +1 -1
  84. package/dist/elements/Nav/context.js +2 -4
  85. package/dist/elements/Nav/context.js.map +1 -1
  86. package/dist/elements/Pill/index.d.ts +1 -1
  87. package/dist/elements/Pill/index.d.ts.map +1 -1
  88. package/dist/elements/Pill/index.js +2 -0
  89. package/dist/elements/Pill/index.js.map +1 -1
  90. package/dist/elements/Pill/index.scss +29 -6
  91. package/dist/elements/Popup/PopupButtonList/index.d.ts +1 -1
  92. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  93. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  94. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  95. package/dist/elements/Popup/PopupDivider/index.d.ts +4 -0
  96. package/dist/elements/Popup/PopupDivider/index.d.ts.map +1 -0
  97. package/dist/elements/Popup/PopupDivider/index.js +10 -0
  98. package/dist/elements/Popup/PopupDivider/index.js.map +1 -0
  99. package/dist/elements/Popup/PopupDivider/index.scss +10 -0
  100. package/dist/elements/Popup/index.d.ts.map +1 -1
  101. package/dist/elements/Popup/index.js +1 -1
  102. package/dist/elements/Popup/index.js.map +1 -1
  103. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts +2 -1
  104. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  105. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +4 -1
  106. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  107. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  108. package/dist/elements/PublishButton/ScheduleDrawer/index.js +3 -3
  109. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  110. package/dist/elements/QueryPresets/cells/AccessCell/index.d.ts +4 -0
  111. package/dist/elements/QueryPresets/cells/AccessCell/index.d.ts.map +1 -0
  112. package/dist/elements/QueryPresets/cells/AccessCell/index.js +25 -0
  113. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -0
  114. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +4 -0
  115. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -0
  116. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +11 -0
  117. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -0
  118. package/dist/elements/QueryPresets/cells/WhereCell/index.d.ts +4 -0
  119. package/dist/elements/QueryPresets/cells/WhereCell/index.d.ts.map +1 -0
  120. package/dist/elements/QueryPresets/cells/WhereCell/index.js +29 -0
  121. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -0
  122. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +4 -0
  123. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -0
  124. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +64 -0
  125. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -0
  126. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +28 -0
  127. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +4 -0
  128. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -0
  129. package/dist/elements/QueryPresets/fields/WhereField/index.js +121 -0
  130. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -0
  131. package/dist/elements/QueryPresets/fields/WhereField/index.scss +23 -0
  132. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +1 -1
  133. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  134. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  135. package/dist/elements/RelationshipTable/index.js +3 -4
  136. package/dist/elements/RelationshipTable/index.js.map +1 -1
  137. package/dist/elements/StepNav/context.d.ts.map +1 -1
  138. package/dist/elements/StepNav/context.js +3 -5
  139. package/dist/elements/StepNav/context.js.map +1 -1
  140. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  141. package/dist/elements/Table/DefaultCell/fields/File/index.js +24 -1
  142. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  143. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  144. package/dist/elements/Table/DefaultCell/index.js +32 -25
  145. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  146. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  147. package/dist/elements/Table/RelationshipProvider/index.js +3 -5
  148. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  149. package/dist/elements/Thumbnail/index.js +25 -23
  150. package/dist/elements/Thumbnail/index.js.map +1 -1
  151. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  152. package/dist/elements/Toasts/fieldErrors.js +2 -2
  153. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  154. package/dist/elements/Upload/index.d.ts.map +1 -1
  155. package/dist/elements/Upload/index.js +4 -16
  156. package/dist/elements/Upload/index.js.map +1 -1
  157. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  158. package/dist/elements/WhereBuilder/Condition/index.js +1 -1
  159. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  160. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  161. package/dist/elements/WhereBuilder/index.js +18 -15
  162. package/dist/elements/WhereBuilder/index.js.map +1 -1
  163. package/dist/exports/client/{CodeEditor-TQ5ADFPC.js → CodeEditor-J4IKAVAK.js} +2 -2
  164. package/dist/exports/client/{DatePicker-HHQ6TPOW.js → DatePicker-DMHV2M2L.js} +2 -2
  165. package/dist/exports/client/{chunk-IMEQ6NKQ.js → chunk-3AA2TJQ5.js} +2 -2
  166. package/dist/exports/client/{chunk-IMEQ6NKQ.js.map → chunk-3AA2TJQ5.js.map} +3 -3
  167. package/dist/exports/client/{chunk-LMYT7O7U.js → chunk-PKQOCWZD.js} +2 -2
  168. package/dist/exports/client/{chunk-LMYT7O7U.js.map → chunk-PKQOCWZD.js.map} +3 -3
  169. package/dist/exports/client/index.d.ts +7 -2
  170. package/dist/exports/client/index.d.ts.map +1 -1
  171. package/dist/exports/client/index.js +23 -23
  172. package/dist/exports/client/index.js.map +4 -4
  173. package/dist/exports/shared/index.d.ts +8 -3
  174. package/dist/exports/shared/index.d.ts.map +1 -1
  175. package/dist/exports/shared/index.js +2 -2
  176. package/dist/exports/shared/index.js.map +4 -4
  177. package/dist/fields/Array/index.d.ts.map +1 -1
  178. package/dist/fields/Array/index.js +4 -3
  179. package/dist/fields/Array/index.js.map +1 -1
  180. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  181. package/dist/fields/Blocks/BlockRow.js +26 -20
  182. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  183. package/dist/fields/Blocks/index.d.ts.map +1 -1
  184. package/dist/fields/Blocks/index.js +5 -4
  185. package/dist/fields/Blocks/index.js.map +1 -1
  186. package/dist/fields/Checkbox/index.d.ts +1 -1
  187. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  188. package/dist/fields/Checkbox/index.js +4 -3
  189. package/dist/fields/Checkbox/index.js.map +1 -1
  190. package/dist/fields/Code/index.d.ts.map +1 -1
  191. package/dist/fields/Code/index.js +4 -3
  192. package/dist/fields/Code/index.js.map +1 -1
  193. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  194. package/dist/fields/Collapsible/index.js +3 -2
  195. package/dist/fields/Collapsible/index.js.map +1 -1
  196. package/dist/fields/ConfirmPassword/index.js +13 -11
  197. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  198. package/dist/fields/DateTime/index.d.ts.map +1 -1
  199. package/dist/fields/DateTime/index.js +5 -4
  200. package/dist/fields/DateTime/index.js.map +1 -1
  201. package/dist/fields/Email/index.d.ts.map +1 -1
  202. package/dist/fields/Email/index.js +3 -2
  203. package/dist/fields/Email/index.js.map +1 -1
  204. package/dist/fields/Group/index.d.ts.map +1 -1
  205. package/dist/fields/Group/index.js.map +1 -1
  206. package/dist/fields/Group/index.scss +12 -6
  207. package/dist/fields/Group/provider.d.ts.map +1 -1
  208. package/dist/fields/Group/provider.js +3 -5
  209. package/dist/fields/Group/provider.js.map +1 -1
  210. package/dist/fields/JSON/index.d.ts.map +1 -1
  211. package/dist/fields/JSON/index.js +5 -4
  212. package/dist/fields/JSON/index.js.map +1 -1
  213. package/dist/fields/Number/index.d.ts.map +1 -1
  214. package/dist/fields/Number/index.js +6 -5
  215. package/dist/fields/Number/index.js.map +1 -1
  216. package/dist/fields/Password/index.d.ts.map +1 -1
  217. package/dist/fields/Password/index.js +2 -4
  218. package/dist/fields/Password/index.js.map +1 -1
  219. package/dist/fields/Point/index.d.ts.map +1 -1
  220. package/dist/fields/Point/index.js +4 -3
  221. package/dist/fields/Point/index.js.map +1 -1
  222. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  223. package/dist/fields/RadioGroup/index.js +4 -3
  224. package/dist/fields/RadioGroup/index.js.map +1 -1
  225. package/dist/fields/Relationship/index.d.ts.map +1 -1
  226. package/dist/fields/Relationship/index.js +5 -4
  227. package/dist/fields/Relationship/index.js.map +1 -1
  228. package/dist/fields/Row/provider.d.ts.map +1 -1
  229. package/dist/fields/Row/provider.js +3 -5
  230. package/dist/fields/Row/provider.js.map +1 -1
  231. package/dist/fields/Select/index.d.ts.map +1 -1
  232. package/dist/fields/Select/index.js +4 -3
  233. package/dist/fields/Select/index.js.map +1 -1
  234. package/dist/fields/Tabs/Tab/index.d.ts +1 -0
  235. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  236. package/dist/fields/Tabs/Tab/index.js +29 -25
  237. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  238. package/dist/fields/Tabs/Tab/index.scss +4 -0
  239. package/dist/fields/Tabs/index.d.ts +1 -1
  240. package/dist/fields/Tabs/index.d.ts.map +1 -1
  241. package/dist/fields/Tabs/index.js +285 -194
  242. package/dist/fields/Tabs/index.js.map +1 -1
  243. package/dist/fields/Tabs/index.scss +8 -0
  244. package/dist/fields/Tabs/provider.d.ts.map +1 -1
  245. package/dist/fields/Tabs/provider.js +3 -5
  246. package/dist/fields/Tabs/provider.js.map +1 -1
  247. package/dist/fields/Text/index.d.ts.map +1 -1
  248. package/dist/fields/Text/index.js +4 -3
  249. package/dist/fields/Text/index.js.map +1 -1
  250. package/dist/fields/Textarea/index.d.ts.map +1 -1
  251. package/dist/fields/Textarea/index.js +2 -1
  252. package/dist/fields/Textarea/index.js.map +1 -1
  253. package/dist/fields/Upload/index.d.ts.map +1 -1
  254. package/dist/fields/Upload/index.js +2 -1
  255. package/dist/fields/Upload/index.js.map +1 -1
  256. package/dist/forms/Form/context.d.ts.map +1 -1
  257. package/dist/forms/Form/context.js +9 -25
  258. package/dist/forms/Form/context.js.map +1 -1
  259. package/dist/forms/Form/fieldReducer.js +1 -1
  260. package/dist/forms/Form/fieldReducer.js.map +1 -1
  261. package/dist/forms/Form/index.d.ts.map +1 -1
  262. package/dist/forms/Form/index.js +8 -8
  263. package/dist/forms/Form/index.js.map +1 -1
  264. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  265. package/dist/forms/RowLabel/Context/index.js +2 -2
  266. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  267. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  268. package/dist/forms/RowLabel/index.js +2 -2
  269. package/dist/forms/RowLabel/index.js.map +1 -1
  270. package/dist/forms/RowLabel/types.d.ts +1 -1
  271. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  272. package/dist/forms/RowLabel/types.js.map +1 -1
  273. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +3 -1
  274. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  275. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +45 -1
  276. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  277. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts +4 -2
  278. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  279. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +4 -0
  280. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  281. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts +4 -2
  282. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  283. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +4 -0
  284. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  285. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts +4 -2
  286. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  287. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +41 -2
  288. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  289. package/dist/forms/fieldSchemasToFormState/index.d.ts +4 -2
  290. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  291. package/dist/forms/fieldSchemasToFormState/index.js +6 -0
  292. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  293. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +4 -2
  294. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  295. package/dist/forms/fieldSchemasToFormState/iterateFields.js +16 -0
  296. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  297. package/dist/forms/useField/index.d.ts.map +1 -1
  298. package/dist/forms/useField/index.js +70 -67
  299. package/dist/forms/useField/index.js.map +1 -1
  300. package/dist/forms/useField/types.d.ts +1 -0
  301. package/dist/forms/useField/types.d.ts.map +1 -1
  302. package/dist/forms/useField/types.js.map +1 -1
  303. package/dist/hooks/useQueues.js +3 -3
  304. package/dist/hooks/useQueues.js.map +1 -1
  305. package/dist/icons/Chevron/index.d.ts +1 -0
  306. package/dist/icons/Chevron/index.d.ts.map +1 -1
  307. package/dist/icons/Chevron/index.js +2 -0
  308. package/dist/icons/Chevron/index.js.map +1 -1
  309. package/dist/icons/Dots/index.d.ts +2 -0
  310. package/dist/icons/Dots/index.d.ts.map +1 -1
  311. package/dist/icons/Dots/index.js +5 -2
  312. package/dist/icons/Dots/index.js.map +1 -1
  313. package/dist/icons/Dots/index.scss +14 -0
  314. package/dist/icons/People/index.d.ts +6 -0
  315. package/dist/icons/People/index.d.ts.map +1 -0
  316. package/dist/icons/People/index.js +18 -0
  317. package/dist/icons/People/index.js.map +1 -0
  318. package/dist/icons/People/index.scss +11 -0
  319. package/dist/providers/Actions/index.d.ts.map +1 -1
  320. package/dist/providers/Actions/index.js +3 -5
  321. package/dist/providers/Actions/index.js.map +1 -1
  322. package/dist/providers/Auth/index.d.ts.map +1 -1
  323. package/dist/providers/Auth/index.js +3 -5
  324. package/dist/providers/Auth/index.js.map +1 -1
  325. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  326. package/dist/providers/ClientFunction/index.js +4 -4
  327. package/dist/providers/ClientFunction/index.js.map +1 -1
  328. package/dist/providers/Config/index.d.ts.map +1 -1
  329. package/dist/providers/Config/index.js +3 -5
  330. package/dist/providers/Config/index.js.map +1 -1
  331. package/dist/providers/DocumentEvents/index.d.ts.map +1 -1
  332. package/dist/providers/DocumentEvents/index.js +3 -5
  333. package/dist/providers/DocumentEvents/index.js.map +1 -1
  334. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  335. package/dist/providers/DocumentInfo/index.js +3 -5
  336. package/dist/providers/DocumentInfo/index.js.map +1 -1
  337. package/dist/providers/DocumentInfo/types.d.ts +1 -0
  338. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  339. package/dist/providers/DocumentInfo/types.js.map +1 -1
  340. package/dist/providers/EditDepth/index.d.ts.map +1 -1
  341. package/dist/providers/EditDepth/index.js +3 -5
  342. package/dist/providers/EditDepth/index.js.map +1 -1
  343. package/dist/providers/EntityVisibility/index.d.ts.map +1 -1
  344. package/dist/providers/EntityVisibility/index.js +3 -5
  345. package/dist/providers/EntityVisibility/index.js.map +1 -1
  346. package/dist/providers/ListQuery/context.d.ts +2 -0
  347. package/dist/providers/ListQuery/context.d.ts.map +1 -1
  348. package/dist/providers/ListQuery/context.js +4 -2
  349. package/dist/providers/ListQuery/context.js.map +1 -1
  350. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  351. package/dist/providers/ListQuery/index.js +30 -14
  352. package/dist/providers/ListQuery/index.js.map +1 -1
  353. package/dist/providers/ListQuery/types.d.ts +6 -3
  354. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  355. package/dist/providers/ListQuery/types.js.map +1 -1
  356. package/dist/providers/Locale/index.d.ts.map +1 -1
  357. package/dist/providers/Locale/index.js +5 -9
  358. package/dist/providers/Locale/index.js.map +1 -1
  359. package/dist/providers/Operation/index.d.ts.map +1 -1
  360. package/dist/providers/Operation/index.js +3 -5
  361. package/dist/providers/Operation/index.js.map +1 -1
  362. package/dist/providers/Params/index.d.ts.map +1 -1
  363. package/dist/providers/Params/index.js +3 -5
  364. package/dist/providers/Params/index.js.map +1 -1
  365. package/dist/providers/Preferences/index.d.ts.map +1 -1
  366. package/dist/providers/Preferences/index.js +3 -5
  367. package/dist/providers/Preferences/index.js.map +1 -1
  368. package/dist/providers/RouteCache/index.d.ts.map +1 -1
  369. package/dist/providers/RouteCache/index.js +3 -5
  370. package/dist/providers/RouteCache/index.js.map +1 -1
  371. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  372. package/dist/providers/RouteTransition/index.js +2 -4
  373. package/dist/providers/RouteTransition/index.js.map +1 -1
  374. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  375. package/dist/providers/SearchParams/index.js +3 -5
  376. package/dist/providers/SearchParams/index.js.map +1 -1
  377. package/dist/providers/Selection/index.d.ts.map +1 -1
  378. package/dist/providers/Selection/index.js +3 -5
  379. package/dist/providers/Selection/index.js.map +1 -1
  380. package/dist/providers/ServerFunctions/index.d.ts +1 -0
  381. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  382. package/dist/providers/ServerFunctions/index.js +2 -2
  383. package/dist/providers/ServerFunctions/index.js.map +1 -1
  384. package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -0
  385. package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.js +4 -6
  386. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -0
  387. package/dist/{elements → providers}/TableColumns/buildColumnState.d.ts +1 -1
  388. package/dist/providers/TableColumns/buildColumnState.d.ts.map +1 -0
  389. package/dist/{elements → providers}/TableColumns/buildColumnState.js +9 -2
  390. package/dist/providers/TableColumns/buildColumnState.js.map +1 -0
  391. package/dist/{elements → providers}/TableColumns/buildPolymorphicColumnState.d.ts +1 -1
  392. package/dist/providers/TableColumns/buildPolymorphicColumnState.d.ts.map +1 -0
  393. package/dist/{elements → providers}/TableColumns/buildPolymorphicColumnState.js +1 -1
  394. package/dist/providers/TableColumns/buildPolymorphicColumnState.js.map +1 -0
  395. package/dist/providers/TableColumns/context.d.ts.map +1 -0
  396. package/dist/providers/TableColumns/context.js +4 -0
  397. package/dist/providers/TableColumns/context.js.map +1 -0
  398. package/dist/providers/TableColumns/filterFields.d.ts.map +1 -0
  399. package/dist/providers/TableColumns/filterFields.js.map +1 -0
  400. package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -0
  401. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -0
  402. package/dist/providers/TableColumns/index.d.ts.map +1 -0
  403. package/dist/{elements → providers}/TableColumns/index.js +5 -3
  404. package/dist/providers/TableColumns/index.js.map +1 -0
  405. package/dist/{elements → providers}/TableColumns/types.d.ts +1 -1
  406. package/dist/providers/TableColumns/types.d.ts.map +1 -0
  407. package/dist/providers/TableColumns/types.js +2 -0
  408. package/dist/providers/TableColumns/types.js.map +1 -0
  409. package/dist/providers/Theme/index.d.ts.map +1 -1
  410. package/dist/providers/Theme/index.js +3 -5
  411. package/dist/providers/Theme/index.js.map +1 -1
  412. package/dist/providers/Translation/index.d.ts.map +1 -1
  413. package/dist/providers/Translation/index.js +3 -5
  414. package/dist/providers/Translation/index.js.map +1 -1
  415. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  416. package/dist/providers/UploadEdits/index.js +2 -4
  417. package/dist/providers/UploadEdits/index.js.map +1 -1
  418. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  419. package/dist/providers/UploadHandlers/index.js +3 -3
  420. package/dist/providers/UploadHandlers/index.js.map +1 -1
  421. package/dist/styles.css +1 -1
  422. package/dist/utilities/buildFormState.d.ts.map +1 -1
  423. package/dist/utilities/buildFormState.js +5 -1
  424. package/dist/utilities/buildFormState.js.map +1 -1
  425. package/dist/utilities/getDisplayedFieldValue.d.ts +13 -0
  426. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -0
  427. package/dist/utilities/getDisplayedFieldValue.js +28 -0
  428. package/dist/utilities/getDisplayedFieldValue.js.map +1 -0
  429. package/dist/utilities/hasOptionLabelJSXElement.d.ts +3 -0
  430. package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +1 -0
  431. package/dist/utilities/hasOptionLabelJSXElement.js +15 -0
  432. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -0
  433. package/dist/utilities/renderTable.js +4 -4
  434. package/dist/utilities/renderTable.js.map +1 -1
  435. package/dist/utilities/upsertPreferences.d.ts +7 -2
  436. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  437. package/dist/utilities/upsertPreferences.js +11 -5
  438. package/dist/utilities/upsertPreferences.js.map +1 -1
  439. package/dist/views/Edit/index.d.ts.map +1 -1
  440. package/dist/views/Edit/index.js +3 -2
  441. package/dist/views/Edit/index.js.map +1 -1
  442. package/dist/views/List/index.d.ts.map +1 -1
  443. package/dist/views/List/index.js +7 -1
  444. package/dist/views/List/index.js.map +1 -1
  445. package/package.json +5 -5
  446. package/dist/elements/TableColumns/RenderDefaultCell/index.d.ts.map +0 -1
  447. package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +0 -1
  448. package/dist/elements/TableColumns/buildColumnState.d.ts.map +0 -1
  449. package/dist/elements/TableColumns/buildColumnState.js.map +0 -1
  450. package/dist/elements/TableColumns/buildPolymorphicColumnState.d.ts.map +0 -1
  451. package/dist/elements/TableColumns/buildPolymorphicColumnState.js.map +0 -1
  452. package/dist/elements/TableColumns/context.d.ts.map +0 -1
  453. package/dist/elements/TableColumns/context.js +0 -4
  454. package/dist/elements/TableColumns/context.js.map +0 -1
  455. package/dist/elements/TableColumns/filterFields.d.ts.map +0 -1
  456. package/dist/elements/TableColumns/filterFields.js.map +0 -1
  457. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +0 -1
  458. package/dist/elements/TableColumns/getInitialColumns.js.map +0 -1
  459. package/dist/elements/TableColumns/index.d.ts.map +0 -1
  460. package/dist/elements/TableColumns/index.js.map +0 -1
  461. package/dist/elements/TableColumns/types.d.ts.map +0 -1
  462. package/dist/elements/TableColumns/types.js.map +0 -1
  463. package/dist/elements/WhereBuilder/transformWhereQuery.d.ts +0 -8
  464. package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +0 -1
  465. package/dist/elements/WhereBuilder/transformWhereQuery.js +0 -45
  466. package/dist/elements/WhereBuilder/transformWhereQuery.js.map +0 -1
  467. package/dist/elements/WhereBuilder/validateWhereQuery.d.ts +0 -4
  468. package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +0 -1
  469. package/dist/elements/WhereBuilder/validateWhereQuery.js +0 -36
  470. package/dist/elements/WhereBuilder/validateWhereQuery.js.map +0 -1
  471. package/dist/utilities/mergeListSearchAndWhere.d.ts +0 -10
  472. package/dist/utilities/mergeListSearchAndWhere.d.ts.map +0 -1
  473. package/dist/utilities/mergeListSearchAndWhere.js +0 -47
  474. package/dist/utilities/mergeListSearchAndWhere.js.map +0 -1
  475. /package/dist/elements/{TableColumns → ListControls}/types.js +0 -0
  476. /package/dist/exports/client/{CodeEditor-TQ5ADFPC.js.map → CodeEditor-J4IKAVAK.js.map} +0 -0
  477. /package/dist/exports/client/{DatePicker-HHQ6TPOW.js.map → DatePicker-DMHV2M2L.js.map} +0 -0
  478. /package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.d.ts +0 -0
  479. /package/dist/{elements → providers}/TableColumns/RenderDefaultCell/index.scss +0 -0
  480. /package/dist/{elements → providers}/TableColumns/context.d.ts +0 -0
  481. /package/dist/{elements → providers}/TableColumns/filterFields.d.ts +0 -0
  482. /package/dist/{elements → providers}/TableColumns/filterFields.js +0 -0
  483. /package/dist/{elements → providers}/TableColumns/getInitialColumns.d.ts +0 -0
  484. /package/dist/{elements → providers}/TableColumns/getInitialColumns.js +0 -0
  485. /package/dist/{elements → providers}/TableColumns/index.d.ts +0 -0
@@ -9,6 +9,7 @@ import { FieldLabel } from '../../fields/FieldLabel/index.js';
9
9
  import { useForm } from '../../forms/Form/context.js';
10
10
  import { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js';
11
11
  import { useTranslation } from '../../providers/Translation/index.js';
12
+ import { filterOutUploadFields } from '../../utilities/filterOutUploadFields.js';
12
13
  import { ReactSelect } from '../ReactSelect/index.js';
13
14
  import './index.scss';
14
15
  const baseClass = 'field-select';
@@ -91,10 +92,10 @@ const reduceFields = ({
91
92
  }, []);
92
93
  };
93
94
  export const FieldSelect = t0 => {
94
- const $ = _c(11);
95
+ const $ = _c(13);
95
96
  const {
96
97
  fields,
97
- setSelected
98
+ onChange
98
99
  } = t0;
99
100
  const {
100
101
  t
@@ -106,7 +107,7 @@ export const FieldSelect = t0 => {
106
107
  let t1;
107
108
  if ($[0] !== fields || $[1] !== getFields) {
108
109
  t1 = () => reduceFields({
109
- fields,
110
+ fields: filterOutUploadFields(fields),
110
111
  formState: getFields()
111
112
  });
112
113
  $[0] = fields;
@@ -117,62 +118,44 @@ export const FieldSelect = t0 => {
117
118
  }
118
119
  const [options] = useState(t1);
119
120
  let t2;
120
- if ($[3] !== dispatchFields || $[4] !== getFields || $[5] !== setSelected) {
121
- t2 = selected => {
122
- const activeFields = getFields();
123
- if (selected === null) {
124
- setSelected([]);
125
- } else {
126
- setSelected(selected.map(_temp));
127
- }
128
- if (selected === null || Object.keys(activeFields || []).length > selected.length) {
129
- Object.keys(activeFields).forEach(path => {
130
- if (selected === null || !selected.find(field => field.value.path === path)) {
131
- dispatchFields({
132
- type: "REMOVE",
133
- path
134
- });
135
- }
136
- });
137
- }
138
- };
139
- $[3] = dispatchFields;
140
- $[4] = getFields;
141
- $[5] = setSelected;
142
- $[6] = t2;
143
- } else {
144
- t2 = $[6];
145
- }
146
- const handleChange = t2;
147
- let t3;
148
- if ($[7] !== handleChange || $[8] !== options || $[9] !== t) {
149
- t3 = _jsxs("div", {
121
+ if ($[3] !== dispatchFields || $[4] !== getFields || $[5] !== onChange || $[6] !== options || $[7] !== t) {
122
+ let t3;
123
+ if ($[9] !== dispatchFields || $[10] !== getFields || $[11] !== onChange) {
124
+ t3 = selected => onChange({
125
+ dispatchFields,
126
+ formState: getFields(),
127
+ selected
128
+ });
129
+ $[9] = dispatchFields;
130
+ $[10] = getFields;
131
+ $[11] = onChange;
132
+ $[12] = t3;
133
+ } else {
134
+ t3 = $[12];
135
+ }
136
+ t2 = _jsxs("div", {
150
137
  className: baseClass,
151
138
  children: [_jsx(FieldLabel, {
152
139
  label: t("fields:selectFieldsToEdit")
153
140
  }), _jsx(ReactSelect, {
154
- getOptionValue: _temp2,
141
+ getOptionValue: _temp,
155
142
  isMulti: true,
156
- onChange: handleChange,
143
+ onChange: t3,
157
144
  options
158
145
  })]
159
146
  });
160
- $[7] = handleChange;
161
- $[8] = options;
162
- $[9] = t;
163
- $[10] = t3;
147
+ $[3] = dispatchFields;
148
+ $[4] = getFields;
149
+ $[5] = onChange;
150
+ $[6] = options;
151
+ $[7] = t;
152
+ $[8] = t2;
164
153
  } else {
165
- t3 = $[10];
154
+ t2 = $[8];
166
155
  }
167
- return t3;
156
+ return t2;
168
157
  };
169
- function _temp(t0) {
170
- const {
171
- value
172
- } = t0;
173
- return value;
174
- }
175
- function _temp2(option) {
158
+ function _temp(option) {
176
159
  if (typeof option.value === "object" && "path" in option.value) {
177
160
  return String(option.value.path);
178
161
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","React","Fragment","useState","RenderCustomComponent","FieldLabel","useForm","createNestedClientFieldPath","useTranslation","ReactSelect","baseClass","combineLabel","CustomLabel","field","prefix","_jsxs","_jsx","style","display","CustomComponent","Fallback","label","reduceFields","fields","formState","labelPrefix","path","customComponents","Label","reduce","fieldsToUse","type","admin","disableBulkEdit","unique","readOnly","tabs","tabFields","tab","isNamedTab","name","formattedField","value","FieldSelect","t0","$","setSelected","t","dispatchFields","getFields","t1","options","t2","selected","activeFields","map","_temp","Object","keys","length","forEach","find","handleChange","t3","className","children","getOptionValue","_temp2","isMulti","onChange","option","String"],"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FieldWithPathClient, FormState } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, fieldIsHiddenOrDisabled } from 'payload/shared'\nimport React, { Fragment, useState } from 'react'\n\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly setSelected: (fields: FieldWithPathClient[]) => void\n}\n\nexport const combineLabel = ({\n CustomLabel,\n field,\n prefix,\n}: {\n CustomLabel?: React.ReactNode\n field?: ClientField\n prefix?: React.ReactNode\n}): React.ReactNode => {\n return (\n <Fragment>\n {prefix ? (\n <Fragment>\n <span style={{ display: 'inline-block' }}>{prefix}</span>\n {' > '}\n </Fragment>\n ) : null}\n <span style={{ display: 'inline-block' }}>\n <RenderCustomComponent\n CustomComponent={CustomLabel}\n Fallback={<FieldLabel label={'label' in field && field.label} />}\n />\n </span>\n </Fragment>\n )\n}\n\nconst reduceFields = ({\n fields,\n formState,\n labelPrefix = null,\n path = '',\n}: {\n fields: ClientField[]\n formState?: FormState\n labelPrefix?: React.ReactNode\n path?: string\n}): { Label: React.ReactNode; value: FieldWithPathClient }[] => {\n if (!fields) {\n return []\n }\n\n const CustomLabel = formState?.[path]?.customComponents?.Label\n\n return fields?.reduce((fieldsToUse, field) => {\n // escape for a variety of reasons, include ui fields as they have `name`.\n if (\n (fieldAffectsData(field) || field.type === 'ui') &&\n (field.admin?.disableBulkEdit ||\n field.unique ||\n fieldIsHiddenOrDisabled(field) ||\n ('readOnly' in field && field.readOnly))\n ) {\n return fieldsToUse\n }\n\n if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {\n return [\n ...fieldsToUse,\n ...reduceFields({\n fields: field.fields,\n labelPrefix: combineLabel({ CustomLabel, field, prefix: labelPrefix }),\n path: createNestedClientFieldPath(path, field),\n }),\n ]\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n return [\n ...fieldsToUse,\n ...field.tabs.reduce((tabFields, tab) => {\n if ('fields' in tab) {\n const isNamedTab = 'name' in tab && tab.name\n return [\n ...tabFields,\n ...reduceFields({\n fields: tab.fields,\n labelPrefix,\n path: isNamedTab ? createNestedClientFieldPath(path, field) : path,\n }),\n ]\n }\n }, []),\n ]\n }\n\n const formattedField = {\n label: combineLabel({ CustomLabel, field, prefix: labelPrefix }),\n value: {\n ...field,\n path: createNestedClientFieldPath(path, field),\n },\n }\n\n return [...fieldsToUse, formattedField]\n }, [])\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, setSelected }) => {\n const { t } = useTranslation()\n const { dispatchFields, getFields } = useForm()\n\n const [options] = useState(() => reduceFields({ fields, formState: getFields() }))\n\n const handleChange = (selected) => {\n const activeFields = getFields()\n\n if (selected === null) {\n setSelected([])\n } else {\n setSelected(selected.map(({ value }) => value))\n }\n\n // remove deselected values from form state\n if (selected === null || Object.keys(activeFields || []).length > selected.length) {\n Object.keys(activeFields).forEach((path) => {\n if (\n selected === null ||\n !selected.find((field) => {\n return field.value.path === path\n })\n ) {\n dispatchFields({\n type: 'REMOVE',\n path,\n })\n }\n })\n }\n }\n\n return (\n <div className={baseClass}>\n <FieldLabel label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={handleChange}\n options={options}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","fieldAffectsData","fieldHasSubFields","fieldIsHiddenOrDisabled","React","Fragment","useState","RenderCustomComponent","FieldLabel","useForm","createNestedClientFieldPath","useTranslation","filterOutUploadFields","ReactSelect","baseClass","combineLabel","CustomLabel","field","prefix","_jsxs","_jsx","style","display","CustomComponent","Fallback","label","reduceFields","fields","formState","labelPrefix","path","customComponents","Label","reduce","fieldsToUse","type","admin","disableBulkEdit","unique","readOnly","tabs","tabFields","tab","isNamedTab","name","formattedField","value","FieldSelect","t0","$","onChange","t","dispatchFields","getFields","t1","options","t2","t3","selected","className","children","getOptionValue","_temp","isMulti","option","String"],"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FieldWithPathClient, FormState } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, fieldIsHiddenOrDisabled } from 'payload/shared'\nimport React, { Fragment, useState } from 'react'\n\nimport type { FieldAction } from '../../forms/Form/types.js'\n\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { filterOutUploadFields } from '../../utilities/filterOutUploadFields.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type OnFieldSelect = ({\n dispatchFields,\n formState,\n selected,\n}: {\n dispatchFields: React.Dispatch<FieldAction>\n formState: FormState\n selected: FieldOption[]\n}) => void\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly onChange: OnFieldSelect\n}\n\nexport const combineLabel = ({\n CustomLabel,\n field,\n prefix,\n}: {\n CustomLabel?: React.ReactNode\n field?: ClientField\n prefix?: React.ReactNode\n}): React.ReactNode => {\n return (\n <Fragment>\n {prefix ? (\n <Fragment>\n <span style={{ display: 'inline-block' }}>{prefix}</span>\n {' > '}\n </Fragment>\n ) : null}\n <span style={{ display: 'inline-block' }}>\n <RenderCustomComponent\n CustomComponent={CustomLabel}\n Fallback={<FieldLabel label={'label' in field && field.label} />}\n />\n </span>\n </Fragment>\n )\n}\n\nexport type FieldOption = { Label: React.ReactNode; value: FieldWithPathClient }\n\nconst reduceFields = ({\n fields,\n formState,\n labelPrefix = null,\n path = '',\n}: {\n fields: ClientField[]\n formState?: FormState\n labelPrefix?: React.ReactNode\n path?: string\n}): FieldOption[] => {\n if (!fields) {\n return []\n }\n\n const CustomLabel = formState?.[path]?.customComponents?.Label\n\n return fields?.reduce((fieldsToUse, field) => {\n // escape for a variety of reasons, include ui fields as they have `name`.\n if (\n (fieldAffectsData(field) || field.type === 'ui') &&\n (field.admin?.disableBulkEdit ||\n field.unique ||\n fieldIsHiddenOrDisabled(field) ||\n ('readOnly' in field && field.readOnly))\n ) {\n return fieldsToUse\n }\n\n if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {\n return [\n ...fieldsToUse,\n ...reduceFields({\n fields: field.fields,\n labelPrefix: combineLabel({ CustomLabel, field, prefix: labelPrefix }),\n path: createNestedClientFieldPath(path, field),\n }),\n ]\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n return [\n ...fieldsToUse,\n ...field.tabs.reduce((tabFields, tab) => {\n if ('fields' in tab) {\n const isNamedTab = 'name' in tab && tab.name\n return [\n ...tabFields,\n ...reduceFields({\n fields: tab.fields,\n labelPrefix,\n path: isNamedTab ? createNestedClientFieldPath(path, field) : path,\n }),\n ]\n }\n }, []),\n ]\n }\n\n const formattedField = {\n label: combineLabel({ CustomLabel, field, prefix: labelPrefix }),\n value: {\n ...field,\n path: createNestedClientFieldPath(path, field),\n },\n }\n\n return [...fieldsToUse, formattedField]\n }, [])\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, onChange }) => {\n const { t } = useTranslation()\n const { dispatchFields, getFields } = useForm()\n\n const [options] = useState<FieldOption[]>(() =>\n reduceFields({ fields: filterOutUploadFields(fields), formState: getFields() }),\n )\n\n return (\n <div className={baseClass}>\n <FieldLabel label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={(selected: FieldOption[]) =>\n onChange({ dispatchFields, formState: getFields(), selected })\n }\n options={options}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"usePreventLeave.d.ts","sourceRoot":"","sources":["../../../src/elements/LeaveWithoutSaving/usePreventLeave.tsx"],"names":[],"mappings":"AA4BA,eAAO,MAAM,eAAe,aAAa,CAAC,MAAM,OAAO,CAAC,GAAG,OAAO,YAAmB,MAAM,SA6B1F,CAAA;AAED,eAAO,MAAM,eAAe,4DAMzB;IACD,WAAW,EAAE,OAAO,CAAA;IAEpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IAErB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;CACjB,SAqFA,CAAA"}
1
+ {"version":3,"file":"usePreventLeave.d.ts","sourceRoot":"","sources":["../../../src/elements/LeaveWithoutSaving/usePreventLeave.tsx"],"names":[],"mappings":"AA4BA,eAAO,MAAM,eAAe,aAAa,CAAC,MAAM,OAAO,CAAC,GAAG,OAAO,YAAmB,MAAM,SA6B1F,CAAA;AAED,eAAO,MAAM,eAAe,4DAMzB;IACD,WAAW,EAAE,OAAO,CAAA;IAEpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IAErB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;CACjB,SAsFA,CAAA"}
@@ -105,7 +105,8 @@ export const usePreventLeave = ({
105
105
  const newUrl_0 = anchor.href;
106
106
  const isAnchor = isAnchorOfCurrentUrl(currentUrl_0, newUrl_0);
107
107
  const isDownloadLink = anchor.download !== '';
108
- const isPageLeaving = !(newUrl_0 === currentUrl_0 || isAnchor || isDownloadLink);
108
+ const isNewTab = anchor.target === '_blank' || event.metaKey || event.ctrlKey;
109
+ const isPageLeaving = !(newUrl_0 === currentUrl_0 || isAnchor || isDownloadLink || isNewTab);
109
110
  if (isPageLeaving && prevent && (!onPrevent ? !window.confirm(message) : true)) {
110
111
  // Keep a reference of the href
111
112
  cancelledURL.current = newUrl_0;
@@ -1 +1 @@
1
- {"version":3,"file":"usePreventLeave.js","names":["c","_c","useRouter","useCallback","useEffect","useRef","useRouteTransition","on","obj","args","addEventListener","off","removeEventListener","useBeforeUnload","t0","message","$","enabled","undefined","t1","event","finalEnabled","preventDefault","returnValue","handler","t2","t3","window","usePreventLeave","hasAccepted","onAccept","onPrevent","prevent","startRouteTransition","router","cancelledURL","isAnchorOfCurrentUrl","currentUrl","newUrl","currentUrlObj","URL","newUrlObj","hostname","pathname","search","currentHash","hash","newHash","href","replace","findClosestAnchor","element","tagName","toLowerCase","parentElement","handleClick","target","anchor","location","isAnchor","isDownloadLink","download","isPageLeaving","confirm","current","stopPropagation","err","alert","document","push"],"sources":["../../../src/elements/LeaveWithoutSaving/usePreventLeave.tsx"],"sourcesContent":["'use client'\n// Credit: @Taiki92777\n// - Source: https://github.com/vercel/next.js/discussions/32231#discussioncomment-7284386\n// Credit: `react-use` maintainers\n// - Source: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/useBeforeUnload.ts#L2\nimport { useRouter } from 'next/navigation.js'\nimport { useCallback, useEffect, useRef } from 'react'\n\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\n\nfunction on<T extends Document | EventTarget | HTMLElement | Window>(\n obj: null | T,\n ...args: [string, (() => void) | null, ...any] | Parameters<T['addEventListener']>\n): void {\n if (obj && obj.addEventListener) {\n obj.addEventListener(...(args as Parameters<HTMLElement['addEventListener']>))\n }\n}\n\nfunction off<T extends Document | EventTarget | HTMLElement | Window>(\n obj: null | T,\n ...args: [string, (() => void) | null, ...any] | Parameters<T['removeEventListener']>\n): void {\n if (obj && obj.removeEventListener) {\n obj.removeEventListener(...(args as Parameters<HTMLElement['removeEventListener']>))\n }\n}\n\nexport const useBeforeUnload = (enabled: (() => boolean) | boolean = true, message?: string) => {\n const handler = useCallback(\n (event: BeforeUnloadEvent) => {\n const finalEnabled = typeof enabled === 'function' ? enabled() : true\n\n if (!finalEnabled) {\n return\n }\n\n event.preventDefault()\n\n if (message) {\n event.returnValue = message\n }\n\n return message\n },\n [enabled, message],\n )\n\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n on(window, 'beforeunload', handler)\n\n return () => off(window, 'beforeunload', handler)\n }, [enabled, handler])\n}\n\nexport const usePreventLeave = ({\n hasAccepted = false,\n message = 'Are you sure want to leave this page?',\n onAccept,\n onPrevent,\n prevent = true,\n}: {\n hasAccepted: boolean\n // if no `onPrevent` is provided, the message will be displayed in a confirm dialog\n message?: string\n onAccept?: () => void\n // to use a custom confirmation dialog, provide a function that returns a boolean\n onPrevent?: () => void\n prevent: boolean\n}) => {\n // check when page is about to be reloaded\n useBeforeUnload(prevent, message)\n const { startRouteTransition } = useRouteTransition()\n\n const router = useRouter()\n const cancelledURL = useRef<string>('')\n\n // check when page is about to be changed\n useEffect(() => {\n function isAnchorOfCurrentUrl(currentUrl: string, newUrl: string) {\n const currentUrlObj = new URL(currentUrl)\n const newUrlObj = new URL(newUrl)\n // Compare hostname, pathname, and search parameters\n if (\n currentUrlObj.hostname === newUrlObj.hostname &&\n currentUrlObj.pathname === newUrlObj.pathname &&\n currentUrlObj.search === newUrlObj.search\n ) {\n // Check if the new URL is just an anchor of the current URL page\n const currentHash = currentUrlObj.hash\n const newHash = newUrlObj.hash\n return (\n currentHash !== newHash &&\n currentUrlObj.href.replace(currentHash, '') === newUrlObj.href.replace(newHash, '')\n )\n }\n return false\n }\n\n function findClosestAnchor(element: HTMLElement | null): HTMLAnchorElement | null {\n while (element && element.tagName.toLowerCase() !== 'a') {\n element = element.parentElement\n }\n return element as HTMLAnchorElement\n }\n\n function handleClick(event: MouseEvent) {\n try {\n const target = event.target as HTMLElement\n const anchor = findClosestAnchor(target)\n if (anchor) {\n const currentUrl = window.location.href\n const newUrl = anchor.href\n const isAnchor = isAnchorOfCurrentUrl(currentUrl, newUrl)\n const isDownloadLink = anchor.download !== ''\n\n const isPageLeaving = !(newUrl === currentUrl || isAnchor || isDownloadLink)\n\n if (isPageLeaving && prevent && (!onPrevent ? !window.confirm(message) : true)) {\n // Keep a reference of the href\n cancelledURL.current = newUrl\n\n // Cancel the route change\n event.preventDefault()\n event.stopPropagation()\n\n if (typeof onPrevent === 'function') {\n onPrevent()\n }\n }\n }\n } catch (err) {\n alert(err)\n }\n }\n\n // Add the global click event listener\n document.addEventListener('click', handleClick, true)\n\n // Clean up the global click event listener when the component is unmounted\n return () => {\n document.removeEventListener('click', handleClick, true)\n }\n }, [onPrevent, prevent, message])\n\n useEffect(() => {\n if (hasAccepted && cancelledURL.current) {\n if (onAccept) {\n onAccept()\n }\n\n startRouteTransition(() => router.push(cancelledURL.current))\n }\n }, [hasAccepted, onAccept, router, startRouteTransition])\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"usePreventLeave.js","names":["c","_c","useRouter","useCallback","useEffect","useRef","useRouteTransition","on","obj","args","addEventListener","off","removeEventListener","useBeforeUnload","t0","message","$","enabled","undefined","t1","event","finalEnabled","preventDefault","returnValue","handler","t2","t3","window","usePreventLeave","hasAccepted","onAccept","onPrevent","prevent","startRouteTransition","router","cancelledURL","isAnchorOfCurrentUrl","currentUrl","newUrl","currentUrlObj","URL","newUrlObj","hostname","pathname","search","currentHash","hash","newHash","href","replace","findClosestAnchor","element","tagName","toLowerCase","parentElement","handleClick","target","anchor","location","isAnchor","isDownloadLink","download","isNewTab","metaKey","ctrlKey","isPageLeaving","confirm","current","stopPropagation","err","alert","document","push"],"sources":["../../../src/elements/LeaveWithoutSaving/usePreventLeave.tsx"],"sourcesContent":["'use client'\n// Credit: @Taiki92777\n// - Source: https://github.com/vercel/next.js/discussions/32231#discussioncomment-7284386\n// Credit: `react-use` maintainers\n// - Source: https://github.com/streamich/react-use/blob/ade8d3905f544305515d010737b4ae604cc51024/src/useBeforeUnload.ts#L2\nimport { useRouter } from 'next/navigation.js'\nimport { useCallback, useEffect, useRef } from 'react'\n\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\n\nfunction on<T extends Document | EventTarget | HTMLElement | Window>(\n obj: null | T,\n ...args: [string, (() => void) | null, ...any] | Parameters<T['addEventListener']>\n): void {\n if (obj && obj.addEventListener) {\n obj.addEventListener(...(args as Parameters<HTMLElement['addEventListener']>))\n }\n}\n\nfunction off<T extends Document | EventTarget | HTMLElement | Window>(\n obj: null | T,\n ...args: [string, (() => void) | null, ...any] | Parameters<T['removeEventListener']>\n): void {\n if (obj && obj.removeEventListener) {\n obj.removeEventListener(...(args as Parameters<HTMLElement['removeEventListener']>))\n }\n}\n\nexport const useBeforeUnload = (enabled: (() => boolean) | boolean = true, message?: string) => {\n const handler = useCallback(\n (event: BeforeUnloadEvent) => {\n const finalEnabled = typeof enabled === 'function' ? enabled() : true\n\n if (!finalEnabled) {\n return\n }\n\n event.preventDefault()\n\n if (message) {\n event.returnValue = message\n }\n\n return message\n },\n [enabled, message],\n )\n\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n on(window, 'beforeunload', handler)\n\n return () => off(window, 'beforeunload', handler)\n }, [enabled, handler])\n}\n\nexport const usePreventLeave = ({\n hasAccepted = false,\n message = 'Are you sure want to leave this page?',\n onAccept,\n onPrevent,\n prevent = true,\n}: {\n hasAccepted: boolean\n // if no `onPrevent` is provided, the message will be displayed in a confirm dialog\n message?: string\n onAccept?: () => void\n // to use a custom confirmation dialog, provide a function that returns a boolean\n onPrevent?: () => void\n prevent: boolean\n}) => {\n // check when page is about to be reloaded\n useBeforeUnload(prevent, message)\n const { startRouteTransition } = useRouteTransition()\n\n const router = useRouter()\n const cancelledURL = useRef<string>('')\n\n // check when page is about to be changed\n useEffect(() => {\n function isAnchorOfCurrentUrl(currentUrl: string, newUrl: string) {\n const currentUrlObj = new URL(currentUrl)\n const newUrlObj = new URL(newUrl)\n // Compare hostname, pathname, and search parameters\n if (\n currentUrlObj.hostname === newUrlObj.hostname &&\n currentUrlObj.pathname === newUrlObj.pathname &&\n currentUrlObj.search === newUrlObj.search\n ) {\n // Check if the new URL is just an anchor of the current URL page\n const currentHash = currentUrlObj.hash\n const newHash = newUrlObj.hash\n return (\n currentHash !== newHash &&\n currentUrlObj.href.replace(currentHash, '') === newUrlObj.href.replace(newHash, '')\n )\n }\n return false\n }\n\n function findClosestAnchor(element: HTMLElement | null): HTMLAnchorElement | null {\n while (element && element.tagName.toLowerCase() !== 'a') {\n element = element.parentElement\n }\n return element as HTMLAnchorElement\n }\n\n function handleClick(event: MouseEvent) {\n try {\n const target = event.target as HTMLElement\n const anchor = findClosestAnchor(target)\n if (anchor) {\n const currentUrl = window.location.href\n const newUrl = anchor.href\n const isAnchor = isAnchorOfCurrentUrl(currentUrl, newUrl)\n const isDownloadLink = anchor.download !== ''\n const isNewTab = anchor.target === '_blank' || event.metaKey || event.ctrlKey\n\n const isPageLeaving = !(newUrl === currentUrl || isAnchor || isDownloadLink || isNewTab)\n\n if (isPageLeaving && prevent && (!onPrevent ? !window.confirm(message) : true)) {\n // Keep a reference of the href\n cancelledURL.current = newUrl\n\n // Cancel the route change\n event.preventDefault()\n event.stopPropagation()\n\n if (typeof onPrevent === 'function') {\n onPrevent()\n }\n }\n }\n } catch (err) {\n alert(err)\n }\n }\n\n // Add the global click event listener\n document.addEventListener('click', handleClick, true)\n\n // Clean up the global click event listener when the component is unmounted\n return () => {\n document.removeEventListener('click', handleClick, true)\n }\n }, [onPrevent, prevent, message])\n\n useEffect(() => {\n if (hasAccepted && cancelledURL.current) {\n if (onAccept) {\n onAccept()\n }\n\n startRouteTransition(() => router.push(cancelledURL.current))\n }\n }, [hasAccepted, onAccept, router, startRouteTransition])\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { queryPreset } from 'payload';
2
+ import './index.scss';
3
+ export declare function ActiveQueryPreset({ activePreset, openPresetListDrawer, resetPreset, }: {
4
+ activePreset: queryPreset;
5
+ openPresetListDrawer: () => void;
6
+ resetPreset: () => Promise<void>;
7
+ }): import("react").JSX.Element;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/ListControls/ActiveQueryPreset/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAM1C,OAAO,cAAc,CAAA;AAIrB,wBAAgB,iBAAiB,CAAC,EAChC,YAAY,EACZ,oBAAoB,EACpB,WAAW,GACZ,EAAE;IACD,YAAY,EAAE,WAAW,CAAA;IACzB,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CACjC,+BAoCA"}
@@ -0,0 +1,102 @@
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 { PeopleIcon } from '../../../icons/People/index.js';
6
+ import { XIcon } from '../../../icons/X/index.js';
7
+ import { useTranslation } from '../../../providers/Translation/index.js';
8
+ import { Pill } from '../../Pill/index.js';
9
+ import './index.scss';
10
+ const baseClass = 'active-query-preset';
11
+ export function ActiveQueryPreset(t0) {
12
+ const $ = _c(17);
13
+ const {
14
+ activePreset,
15
+ openPresetListDrawer,
16
+ resetPreset
17
+ } = t0;
18
+ const {
19
+ t
20
+ } = useTranslation();
21
+ const t1 = activePreset && `${baseClass}--active`;
22
+ let t2;
23
+ if ($[0] !== t1) {
24
+ t2 = [baseClass, t1].filter(Boolean);
25
+ $[0] = t1;
26
+ $[1] = t2;
27
+ } else {
28
+ t2 = $[1];
29
+ }
30
+ const t3 = t2.join(" ");
31
+ let t4;
32
+ if ($[2] !== openPresetListDrawer) {
33
+ t4 = () => {
34
+ openPresetListDrawer();
35
+ };
36
+ $[2] = openPresetListDrawer;
37
+ $[3] = t4;
38
+ } else {
39
+ t4 = $[3];
40
+ }
41
+ const t5 = activePreset ? "always-white" : "light";
42
+ let t6;
43
+ if ($[4] !== activePreset?.isShared) {
44
+ t6 = activePreset?.isShared && _jsx(PeopleIcon, {
45
+ className: `${baseClass}__shared`
46
+ });
47
+ $[4] = activePreset?.isShared;
48
+ $[5] = t6;
49
+ } else {
50
+ t6 = $[5];
51
+ }
52
+ let t7;
53
+ if ($[6] !== activePreset?.title || $[7] !== t) {
54
+ t7 = activePreset?.title || t("general:selectLabel", {
55
+ label: t("general:preset")
56
+ });
57
+ $[6] = activePreset?.title;
58
+ $[7] = t;
59
+ $[8] = t7;
60
+ } else {
61
+ t7 = $[8];
62
+ }
63
+ let t8;
64
+ if ($[9] !== activePreset || $[10] !== resetPreset || $[11] !== t3 || $[12] !== t4 || $[13] !== t5 || $[14] !== t6 || $[15] !== t7) {
65
+ t8 = _jsxs(Pill, {
66
+ className: t3,
67
+ id: "select-preset",
68
+ onClick: t4,
69
+ pillStyle: t5,
70
+ children: [t6, _jsx("div", {
71
+ className: `${baseClass}__label-text`,
72
+ children: t7
73
+ }), activePreset ? _jsx("div", {
74
+ className: `${baseClass}__clear`,
75
+ id: "clear-preset",
76
+ onClick: async e => {
77
+ e.stopPropagation();
78
+ await resetPreset();
79
+ },
80
+ onKeyDown: async e_0 => {
81
+ e_0.stopPropagation();
82
+ await resetPreset();
83
+ },
84
+ role: "button",
85
+ tabIndex: 0,
86
+ children: _jsx(XIcon, {})
87
+ }) : null]
88
+ });
89
+ $[9] = activePreset;
90
+ $[10] = resetPreset;
91
+ $[11] = t3;
92
+ $[12] = t4;
93
+ $[13] = t5;
94
+ $[14] = t6;
95
+ $[15] = t7;
96
+ $[16] = t8;
97
+ } else {
98
+ t8 = $[16];
99
+ }
100
+ return t8;
101
+ }
102
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","PeopleIcon","XIcon","useTranslation","Pill","baseClass","ActiveQueryPreset","t0","$","activePreset","openPresetListDrawer","resetPreset","t","t1","t2","filter","Boolean","t3","join","t4","t5","t6","isShared","_jsx","className","t7","title","label","t8","_jsxs","id","onClick","pillStyle","children","e","stopPropagation","onKeyDown","e_0","role","tabIndex"],"sources":["../../../../src/elements/ListControls/ActiveQueryPreset/index.tsx"],"sourcesContent":["'use client'\nimport type { queryPreset } from 'payload'\n\nimport { PeopleIcon } from '../../../icons/People/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Pill } from '../../Pill/index.js'\nimport './index.scss'\n\nconst baseClass = 'active-query-preset'\n\nexport function ActiveQueryPreset({\n activePreset,\n openPresetListDrawer,\n resetPreset,\n}: {\n activePreset: queryPreset\n openPresetListDrawer: () => void\n resetPreset: () => Promise<void>\n}) {\n const { t } = useTranslation()\n\n return (\n <Pill\n className={[baseClass, activePreset && `${baseClass}--active`].filter(Boolean).join(' ')}\n id=\"select-preset\"\n onClick={() => {\n openPresetListDrawer()\n }}\n pillStyle={activePreset ? 'always-white' : 'light'}\n >\n {activePreset?.isShared && <PeopleIcon className={`${baseClass}__shared`} />}\n <div className={`${baseClass}__label-text`}>\n {activePreset?.title || t('general:selectLabel', { label: t('general:preset') })}\n </div>\n {activePreset ? (\n <div\n className={`${baseClass}__clear`}\n id=\"clear-preset\"\n onClick={async (e) => {\n e.stopPropagation()\n await resetPreset()\n }}\n onKeyDown={async (e) => {\n e.stopPropagation()\n await resetPreset()\n }}\n role=\"button\"\n tabIndex={0}\n >\n <XIcon />\n </div>\n ) : null}\n </Pill>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,UAAU,QAAQ;AAC3B,SAASC,KAAK,QAAQ;AACtB,SAASC,cAAc,QAAQ;AAC/B,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,SAAAC,kBAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAA2B;IAAAS,YAAA;IAAAC,oBAAA;IAAAC;EAAA,IAAAJ,EAQjC;EACC;IAAAK;EAAA,IAAcT,cAAA;EAIa,MAAAU,EAAA,GAAAJ,YAAA,IAAgB,GAAAJ,SAAA,UAAsB;EAAA,IAAAS,EAAA;EAAA,IAAAN,CAAA,QAAAK,EAAA;IAAlDC,EAAA,IAAAT,SAAA,EAAYQ,EAAsC,EAAAE,MAAA,CAAAC,OAAS;IAAAR,CAAA,MAAAK,EAAA;IAAAL,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAA3D,MAAAS,EAAA,GAAAH,EAA2D,CAAAI,IAAA,CAAc;EAAA,IAAAC,EAAA;EAAA,IAAAX,CAAA,QAAAE,oBAAA;IAE3ES,EAAA,GAAAA,CAAA;MACPT,oBAAA;IAAA;IACFF,CAAA,MAAAE,oBAAA;IAAAF,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EACW,MAAAY,EAAA,GAAAX,YAAA,GAAe,iBAAiB;EAAA,IAAAY,EAAA;EAAA,IAAAb,CAAA,QAAAC,YAAA,EAAAa,QAAA;IAE1CD,EAAA,GAAAZ,YAAA,EAAAa,QAAA,IAA0BC,IAAA,CAAAtB,UAAA;MAAAuB,SAAA,EAAuB,GAAAnB,SAAA;IAAsB,C;;;;;;;;IAErEoB,EAAA,GAAAhB,YAAA,EAAAiB,KAAA,IAAuBd,CAAA,CAAE;MAAAe,KAAA,EAAgCf,CAAA,CAAE;IAAA,CAAkB;IAAAJ,CAAA,MAAAC,YAAA,EAAAiB,KAAA;IAAAlB,CAAA,MAAAI,CAAA;IAAAJ,CAAA,MAAAiB,EAAA;EAAA;IAAAA,EAAA,GAAAjB,CAAA;EAAA;EAAA,IAAAoB,EAAA;EAAA,IAAApB,CAAA,QAAAC,YAAA,IAAAD,CAAA,SAAAG,WAAA,IAAAH,CAAA,SAAAS,EAAA,IAAAT,CAAA,SAAAW,EAAA,IAAAX,CAAA,SAAAY,EAAA,IAAAZ,CAAA,SAAAa,EAAA,IAAAb,CAAA,SAAAiB,EAAA;IAVlFG,EAAA,GAAAC,KAAA,CAAAzB,IAAA;MAAAoB,SAAA,EACaP,EAAyE;MAAAa,EAAA,EACjF;MAAAC,OAAA,EACMZ,EAET;MAAAa,SAAA,EACWZ,EAAgC;MAAAa,QAAA,GAE1CZ,E,EACDE,IAAA,CAAC;QAAAC,SAAA,EAAe,GAAAnB,SAAA,cAA0B;QAAA4B,QAAA,EACvCR;MAA6E,C,GAE/EhB,YAAA,GACCc,IAAA,CAAC;QAAAC,SAAA,EACY,GAAAnB,SAAA,SAAqB;QAAAyB,EAAA,EAC7B;QAAAC,OAAA,QAAAG,CAAA;UAEDA,CAAA,CAAAC,eAAA,CAAiB;UAAA,MACXxB,WAAA;QAAA;QAAAyB,SAAA,QAAAC,GAAA;UAGNH,GAAA,CAAAC,eAAA,CAAiB;UAAA,MACXxB,WAAA;QAAA;QAAA2B,IAAA,EAEH;QAAAC,QAAA;QAAAN,QAAA,EAGLV,IAAA,CAAArB,KAAA,IAAC;MAAA,C,QAED;IAAA,C;;;;;;;;;;;;SA7BN0B,E","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ @import '../../../scss/styles';
2
+
3
+ @layer payload-default {
4
+ .active-query-preset {
5
+ &.pill {
6
+ max-width: 150px;
7
+ overflow: hidden;
8
+ }
9
+
10
+ .pill__label {
11
+ display: flex;
12
+ align-items: center;
13
+ }
14
+
15
+ &__label-text {
16
+ text-overflow: ellipsis;
17
+ overflow: hidden;
18
+ white-space: nowrap;
19
+ }
20
+ }
21
+ }
@@ -1,29 +1,6 @@
1
- import type { ClientCollectionConfig, ResolvedFilterOptions, Where } from 'payload';
2
1
  import React from 'react';
2
+ import type { ListControlsProps } from './types.js';
3
3
  import './index.scss';
4
- export type ListControlsProps = {
5
- readonly beforeActions?: React.ReactNode[];
6
- readonly collectionConfig: ClientCollectionConfig;
7
- readonly collectionSlug: string;
8
- /**
9
- * @deprecated
10
- * These are now handled by the `ListSelection` component
11
- */
12
- readonly disableBulkDelete?: boolean;
13
- /**
14
- * @deprecated
15
- * These are now handled by the `ListSelection` component
16
- */
17
- readonly disableBulkEdit?: boolean;
18
- readonly enableColumns?: boolean;
19
- readonly enableSort?: boolean;
20
- readonly handleSearchChange?: (search: string) => void;
21
- readonly handleSortChange?: (sort: string) => void;
22
- readonly handleWhereChange?: (where: Where) => void;
23
- readonly listMenuItems?: React.ReactNode[];
24
- readonly renderedFilters?: Map<string, React.ReactNode>;
25
- readonly resolvedFilterOptions?: Map<string, ResolvedFilterOptions>;
26
- };
27
4
  /**
28
5
  * The ListControls component is used to render the controls (search, filter, where)
29
6
  * for a collection's list view. You can find those directly above the table which lists
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAInF,OAAO,KAAsC,MAAM,OAAO,CAAA;AAgB1D,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;IACjD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAC/B;;;OAGG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;IAClC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACtD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAClD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IACnD,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAA;IAC1C,QAAQ,CAAC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACvD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CACpE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA4LpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAgD,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAiBnD,OAAO,cAAc,CAAA;AAIrB;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAuOpD,CAAA"}