@payloadcms/ui 3.0.0-canary.95fcd13 → 3.0.0-canary.98cbdb9

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 (615) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +5 -2
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/AppHeader/index.scss +5 -3
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +3 -3
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/Card/index.scss +3 -3
  9. package/dist/elements/Collapsible/index.scss +4 -1
  10. package/dist/elements/ColumnSelector/index.d.ts +1 -1
  11. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  12. package/dist/elements/ColumnSelector/index.js +2 -2
  13. package/dist/elements/ColumnSelector/index.js.map +1 -1
  14. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  15. package/dist/elements/DeleteDocument/index.js +1 -1
  16. package/dist/elements/DeleteDocument/index.js.map +1 -1
  17. package/dist/elements/DeleteDocument/index.scss +1 -0
  18. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  19. package/dist/elements/DeleteMany/index.js +1 -1
  20. package/dist/elements/DeleteMany/index.js.map +1 -1
  21. package/dist/elements/DeleteMany/index.scss +1 -0
  22. package/dist/elements/DocumentControls/index.d.ts +10 -10
  23. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  24. package/dist/elements/DocumentControls/index.js +11 -13
  25. package/dist/elements/DocumentControls/index.js.map +1 -1
  26. package/dist/elements/DocumentControls/index.scss +18 -7
  27. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  28. package/dist/elements/DocumentDrawer/DrawerContent.js +6 -5
  29. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  30. package/dist/elements/DocumentDrawer/types.d.ts +10 -10
  31. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  32. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  33. package/dist/elements/DocumentFields/index.d.ts +9 -9
  34. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  35. package/dist/elements/DocumentFields/index.js +6 -5
  36. package/dist/elements/DocumentFields/index.js.map +1 -1
  37. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +6 -6
  38. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  39. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  40. package/dist/elements/Drawer/types.d.ts +7 -7
  41. package/dist/elements/Drawer/types.d.ts.map +1 -1
  42. package/dist/elements/Drawer/types.js.map +1 -1
  43. package/dist/elements/Dropzone/index.d.ts +5 -4
  44. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  45. package/dist/elements/Dropzone/index.js +4 -2
  46. package/dist/elements/Dropzone/index.js.map +1 -1
  47. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  48. package/dist/elements/DuplicateDocument/index.js +1 -2
  49. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  50. package/dist/elements/DuplicateDocument/index.scss +1 -0
  51. package/dist/elements/EditMany/index.d.ts +3 -3
  52. package/dist/elements/EditMany/index.d.ts.map +1 -1
  53. package/dist/elements/EditMany/index.js +4 -4
  54. package/dist/elements/EditMany/index.js.map +1 -1
  55. package/dist/elements/EditMany/index.scss +4 -10
  56. package/dist/elements/FieldSelect/index.d.ts +4 -4
  57. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  58. package/dist/elements/FieldSelect/index.js +32 -21
  59. package/dist/elements/FieldSelect/index.js.map +1 -1
  60. package/dist/elements/GenerateConfirmation/index.scss +1 -0
  61. package/dist/elements/Hamburger/index.d.ts +2 -2
  62. package/dist/elements/Hamburger/index.d.ts.map +1 -1
  63. package/dist/elements/Hamburger/index.js +2 -1
  64. package/dist/elements/Hamburger/index.js.map +1 -1
  65. package/dist/elements/HydrateAuthProvider/index.d.ts +13 -0
  66. package/dist/elements/HydrateAuthProvider/index.d.ts.map +1 -0
  67. package/dist/elements/{HydrateClientUser → HydrateAuthProvider}/index.js +3 -6
  68. package/dist/elements/HydrateAuthProvider/index.js.map +1 -0
  69. package/dist/elements/IDLabel/index.scss +3 -2
  70. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -2
  71. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  72. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +4 -3
  73. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  74. package/dist/elements/ListControls/index.d.ts +8 -8
  75. package/dist/elements/ListControls/index.d.ts.map +1 -1
  76. package/dist/elements/ListControls/index.js +9 -9
  77. package/dist/elements/ListControls/index.js.map +1 -1
  78. package/dist/elements/ListControls/index.scss +14 -5
  79. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  80. package/dist/elements/ListDrawer/DrawerContent.js +14 -7
  81. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  82. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  83. package/dist/elements/ListDrawer/index.js +1 -1
  84. package/dist/elements/ListDrawer/index.js.map +1 -1
  85. package/dist/elements/ListDrawer/index.scss +4 -4
  86. package/dist/elements/ListDrawer/types.d.ts +6 -6
  87. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  88. package/dist/elements/ListDrawer/types.js.map +1 -1
  89. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  90. package/dist/elements/Localizer/LocalizerLabel/index.js +5 -4
  91. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  92. package/dist/elements/Localizer/LocalizerLabel/index.scss +6 -0
  93. package/dist/elements/Localizer/index.js +1 -1
  94. package/dist/elements/Localizer/index.js.map +1 -1
  95. package/dist/elements/Logout/index.d.ts.map +1 -1
  96. package/dist/elements/Logout/index.js +6 -6
  97. package/dist/elements/Logout/index.js.map +1 -1
  98. package/dist/elements/Nav/context.d.ts +3 -0
  99. package/dist/elements/Nav/context.d.ts.map +1 -1
  100. package/dist/elements/Nav/context.js +16 -7
  101. package/dist/elements/Nav/context.js.map +1 -1
  102. package/dist/elements/Popup/index.d.ts +1 -1
  103. package/dist/elements/Popup/index.d.ts.map +1 -1
  104. package/dist/elements/Popup/index.js.map +1 -1
  105. package/dist/elements/PreviewButton/index.d.ts +2 -1
  106. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  107. package/dist/elements/PreviewButton/index.js +6 -1
  108. package/dist/elements/PreviewButton/index.js.map +1 -1
  109. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  110. package/dist/elements/PreviewButton/usePreviewURL.js +1 -1
  111. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  112. package/dist/elements/PublishButton/index.d.ts +2 -1
  113. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  114. package/dist/elements/PublishButton/index.js +4 -1
  115. package/dist/elements/PublishButton/index.js.map +1 -1
  116. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  117. package/dist/elements/PublishMany/index.js +1 -1
  118. package/dist/elements/PublishMany/index.js.map +1 -1
  119. package/dist/elements/PublishMany/index.scss +1 -0
  120. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  121. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  122. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  123. package/dist/elements/ReactSelect/DropdownIndicator/index.js +1 -1
  124. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  125. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  126. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  127. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  128. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  129. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  130. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  131. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  132. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  133. package/dist/elements/ReactSelect/ValueContainer/index.scss +1 -1
  134. package/dist/elements/RenderTitle/index.scss +1 -1
  135. package/dist/elements/SaveButton/index.d.ts +2 -1
  136. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  137. package/dist/elements/SaveButton/index.js +4 -1
  138. package/dist/elements/SaveButton/index.js.map +1 -1
  139. package/dist/elements/SaveDraftButton/index.d.ts +2 -1
  140. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  141. package/dist/elements/SaveDraftButton/index.js +5 -2
  142. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  143. package/dist/elements/Status/index.d.ts.map +1 -1
  144. package/dist/elements/Status/index.js +1 -1
  145. package/dist/elements/Status/index.js.map +1 -1
  146. package/dist/elements/Status/index.scss +1 -0
  147. package/dist/elements/StayLoggedIn/index.js +1 -1
  148. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  149. package/dist/elements/StayLoggedIn/index.scss +1 -0
  150. package/dist/elements/StepNav/index.d.ts +2 -2
  151. package/dist/elements/StepNav/index.d.ts.map +1 -1
  152. package/dist/elements/StepNav/index.js +11 -8
  153. package/dist/elements/StepNav/index.js.map +1 -1
  154. package/dist/elements/StepNav/index.scss +1 -1
  155. package/dist/elements/StepNav/types.d.ts +2 -2
  156. package/dist/elements/StepNav/types.js.map +1 -1
  157. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +2 -3
  158. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  159. package/dist/elements/Table/DefaultCell/fields/Array/index.js +2 -2
  160. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  161. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -4
  162. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  163. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
  164. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  165. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
  166. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  167. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  168. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +3 -3
  169. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  170. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  171. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -2
  172. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  173. package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
  174. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  175. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
  176. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  177. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  178. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
  179. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  180. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  181. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -4
  182. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  183. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +6 -8
  184. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  185. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +2 -3
  186. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  187. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
  188. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  189. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
  190. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
  191. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  192. package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
  193. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  194. package/dist/elements/Table/DefaultCell/index.js +16 -12
  195. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  196. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  197. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  198. package/dist/elements/Table/RelationshipProvider/index.js +1 -2
  199. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  200. package/dist/elements/Table/TableCellProvider/index.d.ts +6 -6
  201. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  202. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  203. package/dist/elements/Table/index.d.ts +11 -14
  204. package/dist/elements/Table/index.d.ts.map +1 -1
  205. package/dist/elements/Table/index.js +7 -1
  206. package/dist/elements/Table/index.js.map +1 -1
  207. package/dist/elements/TableColumns/buildColumnState.d.ts +2 -2
  208. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  209. package/dist/elements/TableColumns/buildColumnState.js +30 -32
  210. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  211. package/dist/elements/TableColumns/filterFields.d.ts +2 -2
  212. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
  213. package/dist/elements/TableColumns/filterFields.js +8 -11
  214. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  215. package/dist/elements/TableColumns/getInitialColumns.d.ts +2 -3
  216. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
  217. package/dist/elements/TableColumns/getInitialColumns.js +9 -11
  218. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  219. package/dist/elements/TableColumns/index.d.ts +6 -6
  220. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  221. package/dist/elements/TableColumns/index.js +8 -11
  222. package/dist/elements/TableColumns/index.js.map +1 -1
  223. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  224. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  225. package/dist/elements/ThumbnailCard/index.js +1 -1
  226. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  227. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  228. package/dist/elements/UnpublishMany/index.js +2 -2
  229. package/dist/elements/UnpublishMany/index.js.map +1 -1
  230. package/dist/elements/UnpublishMany/index.scss +1 -0
  231. package/dist/elements/Upload/index.d.ts +9 -9
  232. package/dist/elements/Upload/index.d.ts.map +1 -1
  233. package/dist/elements/Upload/index.js +9 -10
  234. package/dist/elements/Upload/index.js.map +1 -1
  235. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  236. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +5 -5
  237. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  238. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  239. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  240. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  241. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -2
  242. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  243. package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
  244. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  245. package/dist/elements/WhereBuilder/Condition/index.d.ts +9 -9
  246. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  247. package/dist/elements/WhereBuilder/Condition/index.js +33 -22
  248. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  249. package/dist/elements/WhereBuilder/index.js +9 -8
  250. package/dist/elements/WhereBuilder/index.js.map +1 -1
  251. package/dist/elements/WhereBuilder/reduceClientFields.d.ts +15 -0
  252. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -0
  253. package/dist/elements/WhereBuilder/{reduceFieldMap.js → reduceClientFields.js} +28 -26
  254. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -0
  255. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  256. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  257. package/dist/elements/WhereBuilder/types.js.map +1 -1
  258. package/dist/exports/client/{CodeEditor-UPOVAXRP.js → CodeEditor-MODTAQNB.js} +1 -1
  259. package/dist/exports/client/{CodeEditor-UPOVAXRP.js.map → CodeEditor-MODTAQNB.js.map} +1 -1
  260. package/dist/exports/client/{DatePicker-XJHHMZP7.js → DatePicker-QKRYICNS.js} +2 -2
  261. package/dist/exports/client/chunk-HR5HEGNB.js +30 -0
  262. package/dist/exports/client/{chunk-TIH7OFW3.js.map → chunk-HR5HEGNB.js.map} +4 -4
  263. package/dist/exports/client/index.d.ts +11 -3
  264. package/dist/exports/client/index.d.ts.map +1 -1
  265. package/dist/exports/client/index.js +27 -27
  266. package/dist/exports/client/index.js.map +4 -4
  267. package/dist/exports/shared/index.d.ts +3 -1
  268. package/dist/exports/shared/index.d.ts.map +1 -1
  269. package/dist/exports/shared/index.js +2 -2
  270. package/dist/exports/shared/index.js.map +4 -4
  271. package/dist/fields/Array/ArrayRow.d.ts +21 -21
  272. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  273. package/dist/fields/Array/ArrayRow.js +3 -3
  274. package/dist/fields/Array/ArrayRow.js.map +1 -1
  275. package/dist/fields/Array/index.d.ts.map +1 -1
  276. package/dist/fields/Array/index.js +11 -9
  277. package/dist/fields/Array/index.js.map +1 -1
  278. package/dist/fields/Blocks/BlockRow.d.ts +3 -3
  279. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  280. package/dist/fields/Blocks/BlockRow.js +9 -6
  281. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  282. package/dist/fields/Blocks/BlocksDrawer/index.d.ts +6 -6
  283. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  284. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  285. package/dist/fields/Blocks/RowActions.d.ts +13 -13
  286. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  287. package/dist/fields/Blocks/RowActions.js.map +1 -1
  288. package/dist/fields/Blocks/SectionTitle/index.scss +12 -2
  289. package/dist/fields/Blocks/index.d.ts +2 -2
  290. package/dist/fields/Blocks/index.d.ts.map +1 -1
  291. package/dist/fields/Blocks/index.js +10 -6
  292. package/dist/fields/Blocks/index.js.map +1 -1
  293. package/dist/fields/Blocks/index.scss +1 -0
  294. package/dist/fields/Checkbox/Input.d.ts +15 -15
  295. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  296. package/dist/fields/Checkbox/Input.js +9 -4
  297. package/dist/fields/Checkbox/Input.js.map +1 -1
  298. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  299. package/dist/fields/Checkbox/index.js +9 -6
  300. package/dist/fields/Checkbox/index.js.map +1 -1
  301. package/dist/fields/Code/index.d.ts.map +1 -1
  302. package/dist/fields/Code/index.js +14 -6
  303. package/dist/fields/Code/index.js.map +1 -1
  304. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  305. package/dist/fields/Collapsible/index.js +7 -5
  306. package/dist/fields/Collapsible/index.js.map +1 -1
  307. package/dist/fields/ConfirmPassword/index.d.ts +2 -2
  308. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  309. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  310. package/dist/fields/DateTime/index.d.ts.map +1 -1
  311. package/dist/fields/DateTime/index.js +14 -6
  312. package/dist/fields/DateTime/index.js.map +1 -1
  313. package/dist/fields/Email/index.d.ts.map +1 -1
  314. package/dist/fields/Email/index.js +15 -6
  315. package/dist/fields/Email/index.js.map +1 -1
  316. package/dist/fields/FieldDescription/index.d.ts.map +1 -1
  317. package/dist/fields/FieldDescription/index.js +8 -4
  318. package/dist/fields/FieldDescription/index.js.map +1 -1
  319. package/dist/fields/FieldError/index.d.ts.map +1 -1
  320. package/dist/fields/FieldError/index.js +8 -4
  321. package/dist/fields/FieldError/index.js.map +1 -1
  322. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  323. package/dist/fields/FieldLabel/index.js +8 -4
  324. package/dist/fields/FieldLabel/index.js.map +1 -1
  325. package/dist/fields/Group/index.d.ts.map +1 -1
  326. package/dist/fields/Group/index.js +63 -56
  327. package/dist/fields/Group/index.js.map +1 -1
  328. package/dist/fields/Hidden/index.d.ts.map +1 -1
  329. package/dist/fields/Hidden/index.js +1 -1
  330. package/dist/fields/Hidden/index.js.map +1 -1
  331. package/dist/fields/JSON/index.d.ts.map +1 -1
  332. package/dist/fields/JSON/index.js +14 -6
  333. package/dist/fields/JSON/index.js.map +1 -1
  334. package/dist/fields/Number/Input.d.ts +2 -0
  335. package/dist/fields/Number/Input.d.ts.map +1 -0
  336. package/dist/fields/Number/Input.js +2 -0
  337. package/dist/fields/Number/Input.js.map +1 -0
  338. package/dist/fields/Number/index.d.ts.map +1 -1
  339. package/dist/fields/Number/index.js +14 -6
  340. package/dist/fields/Number/index.js.map +1 -1
  341. package/dist/fields/Password/index.d.ts +1 -24
  342. package/dist/fields/Password/index.d.ts.map +1 -1
  343. package/dist/fields/Password/index.js +11 -8
  344. package/dist/fields/Password/index.js.map +1 -1
  345. package/dist/fields/Password/input.d.ts.map +1 -1
  346. package/dist/fields/Password/input.js +18 -8
  347. package/dist/fields/Password/input.js.map +1 -1
  348. package/dist/fields/Password/types.d.ts +32 -23
  349. package/dist/fields/Password/types.d.ts.map +1 -1
  350. package/dist/fields/Password/types.js.map +1 -1
  351. package/dist/fields/Point/index.d.ts.map +1 -1
  352. package/dist/fields/Point/index.js +23 -9
  353. package/dist/fields/Point/index.js.map +1 -1
  354. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  355. package/dist/fields/RadioGroup/index.js +7 -4
  356. package/dist/fields/RadioGroup/index.js.map +1 -1
  357. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
  358. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  359. package/dist/fields/Relationship/index.d.ts.map +1 -1
  360. package/dist/fields/Relationship/index.js +8 -5
  361. package/dist/fields/Relationship/index.js.map +1 -1
  362. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  363. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  364. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  365. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  366. package/dist/fields/RichText/index.d.ts +2 -2
  367. package/dist/fields/RichText/index.d.ts.map +1 -1
  368. package/dist/fields/RichText/index.js.map +1 -1
  369. package/dist/fields/Row/index.d.ts.map +1 -1
  370. package/dist/fields/Row/index.js +6 -8
  371. package/dist/fields/Row/index.js.map +1 -1
  372. package/dist/fields/Select/Input.d.ts +26 -6
  373. package/dist/fields/Select/Input.d.ts.map +1 -1
  374. package/dist/fields/Select/Input.js +13 -6
  375. package/dist/fields/Select/Input.js.map +1 -1
  376. package/dist/fields/Select/index.d.ts.map +1 -1
  377. package/dist/fields/Select/index.js +8 -9
  378. package/dist/fields/Select/index.js.map +1 -1
  379. package/dist/fields/Tabs/Tab/index.d.ts +5 -5
  380. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  381. package/dist/fields/Tabs/Tab/index.js +4 -5
  382. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  383. package/dist/fields/Tabs/index.d.ts.map +1 -1
  384. package/dist/fields/Tabs/index.js +10 -9
  385. package/dist/fields/Tabs/index.js.map +1 -1
  386. package/dist/fields/Tabs/index.scss +2 -1
  387. package/dist/fields/Text/Input.d.ts.map +1 -1
  388. package/dist/fields/Text/Input.js +13 -6
  389. package/dist/fields/Text/Input.js.map +1 -1
  390. package/dist/fields/Text/index.js +9 -10
  391. package/dist/fields/Text/index.js.map +1 -1
  392. package/dist/fields/Text/index.scss +6 -0
  393. package/dist/fields/Text/types.d.ts +32 -13
  394. package/dist/fields/Text/types.d.ts.map +1 -1
  395. package/dist/fields/Text/types.js.map +1 -1
  396. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  397. package/dist/fields/Textarea/Input.js +13 -6
  398. package/dist/fields/Textarea/Input.js.map +1 -1
  399. package/dist/fields/Textarea/index.js +9 -10
  400. package/dist/fields/Textarea/index.js.map +1 -1
  401. package/dist/fields/Textarea/types.d.ts +28 -6
  402. package/dist/fields/Textarea/types.d.ts.map +1 -1
  403. package/dist/fields/Textarea/types.js.map +1 -1
  404. package/dist/fields/Upload/Input.d.ts +25 -12
  405. package/dist/fields/Upload/Input.d.ts.map +1 -1
  406. package/dist/fields/Upload/Input.js +5 -4
  407. package/dist/fields/Upload/Input.js.map +1 -1
  408. package/dist/fields/Upload/index.d.ts.map +1 -1
  409. package/dist/fields/Upload/index.js +7 -10
  410. package/dist/fields/Upload/index.js.map +1 -1
  411. package/dist/fields/index.d.ts +5 -1
  412. package/dist/fields/index.d.ts.map +1 -1
  413. package/dist/fields/index.js.map +1 -1
  414. package/dist/forms/FieldPropsProvider/index.d.ts +11 -11
  415. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  416. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  417. package/dist/forms/Form/createNestedClientFieldPath.d.ts +3 -0
  418. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -0
  419. package/dist/forms/Form/{createNestedFieldPath.js → createNestedClientFieldPath.js} +2 -13
  420. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -0
  421. package/dist/forms/Form/index.js +1 -1
  422. package/dist/forms/Form/index.js.map +1 -1
  423. package/dist/forms/Form/types.d.ts +3 -3
  424. package/dist/forms/Form/types.d.ts.map +1 -1
  425. package/dist/forms/Form/types.js.map +1 -1
  426. package/dist/forms/NullifyField/index.d.ts +3 -3
  427. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  428. package/dist/forms/NullifyField/index.js +5 -15
  429. package/dist/forms/NullifyField/index.js.map +1 -1
  430. package/dist/forms/RenderFields/RenderField.d.ts +12 -15
  431. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  432. package/dist/forms/RenderFields/RenderField.js +34 -14
  433. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  434. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  435. package/dist/forms/RenderFields/index.js +7 -14
  436. package/dist/forms/RenderFields/index.js.map +1 -1
  437. package/dist/forms/RenderFields/types.d.ts +11 -11
  438. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  439. package/dist/forms/RenderFields/types.js.map +1 -1
  440. package/dist/forms/RowLabel/Context/index.d.ts +4 -4
  441. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  442. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  443. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  444. package/dist/forms/RowLabel/index.js +8 -2
  445. package/dist/forms/RowLabel/index.js.map +1 -1
  446. package/dist/forms/RowLabel/types.d.ts +7 -8
  447. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  448. package/dist/forms/RowLabel/types.js.map +1 -1
  449. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts +2 -2
  450. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  451. package/dist/forms/WatchChildErrors/buildPathSegments.js +11 -10
  452. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  453. package/dist/forms/WatchChildErrors/index.d.ts +2 -2
  454. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  455. package/dist/forms/WatchChildErrors/index.js +3 -3
  456. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  457. package/dist/forms/useField/index.js +1 -1
  458. package/dist/forms/useField/index.js.map +1 -1
  459. package/dist/forms/useField/types.d.ts +1 -1
  460. package/dist/forms/useField/types.js.map +1 -1
  461. package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
  462. package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
  463. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  464. package/dist/graphics/Account/index.d.ts.map +1 -1
  465. package/dist/graphics/Account/index.js +12 -6
  466. package/dist/graphics/Account/index.js.map +1 -1
  467. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  468. package/dist/hooks/useDelayedRender.js.map +1 -1
  469. package/dist/hooks/useUseAsTitle.d.ts +2 -2
  470. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  471. package/dist/hooks/useUseAsTitle.js +3 -3
  472. package/dist/hooks/useUseAsTitle.js.map +1 -1
  473. package/dist/icons/Chevron/index.js +1 -1
  474. package/dist/icons/Chevron/index.js.map +1 -1
  475. package/dist/icons/LogOut/index.d.ts.map +1 -1
  476. package/dist/icons/LogOut/index.js +2 -1
  477. package/dist/icons/LogOut/index.js.map +1 -1
  478. package/dist/providers/Actions/SetViewActions/index.d.ts +3 -3
  479. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  480. package/dist/providers/Actions/SetViewActions/index.js +1 -1
  481. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  482. package/dist/providers/Actions/index.d.ts +6 -6
  483. package/dist/providers/Actions/index.d.ts.map +1 -1
  484. package/dist/providers/Actions/index.js +2 -2
  485. package/dist/providers/Actions/index.js.map +1 -1
  486. package/dist/providers/Auth/index.d.ts +6 -2
  487. package/dist/providers/Auth/index.d.ts.map +1 -1
  488. package/dist/providers/Auth/index.js +11 -5
  489. package/dist/providers/Auth/index.js.map +1 -1
  490. package/dist/providers/Config/RenderComponent.d.ts +12 -0
  491. package/dist/providers/Config/RenderComponent.d.ts.map +1 -0
  492. package/dist/providers/Config/RenderComponent.js +72 -0
  493. package/dist/providers/Config/RenderComponent.js.map +1 -0
  494. package/dist/providers/Config/createClientConfig/collections.d.ts +24 -0
  495. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -0
  496. package/dist/providers/Config/createClientConfig/collections.js +173 -0
  497. package/dist/providers/Config/createClientConfig/collections.js.map +1 -0
  498. package/dist/providers/Config/createClientConfig/fields.d.ts +22 -0
  499. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -0
  500. package/dist/providers/Config/createClientConfig/fields.js +299 -0
  501. package/dist/providers/Config/createClientConfig/fields.js.map +1 -0
  502. package/dist/providers/Config/createClientConfig/getComponent.d.ts +11 -0
  503. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -0
  504. package/dist/providers/Config/createClientConfig/getComponent.js +30 -0
  505. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -0
  506. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts +11 -0
  507. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -0
  508. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +91 -0
  509. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -0
  510. package/dist/providers/Config/createClientConfig/globals.d.ts +22 -0
  511. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -0
  512. package/dist/providers/Config/createClientConfig/globals.js +103 -0
  513. package/dist/providers/Config/createClientConfig/globals.js.map +1 -0
  514. package/dist/providers/Config/createClientConfig/index.d.ts +21 -0
  515. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -0
  516. package/dist/providers/Config/createClientConfig/index.js +98 -0
  517. package/dist/providers/Config/createClientConfig/index.js.map +1 -0
  518. package/dist/providers/Config/index.d.ts +10 -3
  519. package/dist/providers/Config/index.d.ts.map +1 -1
  520. package/dist/providers/Config/index.js +17 -3
  521. package/dist/providers/Config/index.js.map +1 -1
  522. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  523. package/dist/providers/DocumentInfo/index.js +16 -16
  524. package/dist/providers/DocumentInfo/index.js.map +1 -1
  525. package/dist/providers/FieldComponents/index.d.ts +4 -3
  526. package/dist/providers/FieldComponents/index.d.ts.map +1 -1
  527. package/dist/providers/FieldComponents/index.js +2 -3
  528. package/dist/providers/FieldComponents/index.js.map +1 -1
  529. package/dist/providers/ListInfo/index.d.ts +12 -12
  530. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  531. package/dist/providers/ListInfo/index.js.map +1 -1
  532. package/dist/providers/Locale/index.d.ts.map +1 -1
  533. package/dist/providers/Locale/index.js +1 -1
  534. package/dist/providers/Locale/index.js.map +1 -1
  535. package/dist/providers/Params/index.d.ts +2 -1
  536. package/dist/providers/Params/index.d.ts.map +1 -1
  537. package/dist/providers/Params/index.js.map +1 -1
  538. package/dist/providers/Preferences/index.js +1 -1
  539. package/dist/providers/Preferences/index.js.map +1 -1
  540. package/dist/providers/Root/index.d.ts +4 -3
  541. package/dist/providers/Root/index.d.ts.map +1 -1
  542. package/dist/providers/Root/index.js +47 -46
  543. package/dist/providers/Root/index.js.map +1 -1
  544. package/dist/scss/app.scss +4 -4
  545. package/dist/scss/toasts.scss +15 -14
  546. package/dist/scss/type.scss +1 -0
  547. package/dist/scss/vars.scss +1 -1
  548. package/dist/styles.css +1 -1
  549. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  550. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -0
  551. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  552. package/dist/utilities/buildFormState.d.ts.map +1 -1
  553. package/dist/utilities/buildFormState.js +19 -7
  554. package/dist/utilities/buildFormState.js.map +1 -1
  555. package/dist/utilities/flattenFieldMap.d.ts +2 -2
  556. package/dist/utilities/flattenFieldMap.d.ts.map +1 -1
  557. package/dist/utilities/flattenFieldMap.js +8 -8
  558. package/dist/utilities/flattenFieldMap.js.map +1 -1
  559. package/dist/utilities/groupNavItems.d.ts +3 -3
  560. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  561. package/dist/utilities/groupNavItems.js.map +1 -1
  562. package/dist/utilities/reduceFieldsToValuesWithValidation.js +1 -1
  563. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  564. package/package.json +14 -8
  565. package/dist/elements/HydrateClientUser/index.d.ts +0 -6
  566. package/dist/elements/HydrateClientUser/index.d.ts.map +0 -1
  567. package/dist/elements/HydrateClientUser/index.js.map +0 -1
  568. package/dist/elements/RenderCustomClientComponent/index.d.ts +0 -8
  569. package/dist/elements/RenderCustomClientComponent/index.d.ts.map +0 -1
  570. package/dist/elements/RenderCustomClientComponent/index.js +0 -19
  571. package/dist/elements/RenderCustomClientComponent/index.js.map +0 -1
  572. package/dist/elements/RenderCustomComponent/index.d.ts +0 -17
  573. package/dist/elements/RenderCustomComponent/index.d.ts.map +0 -1
  574. package/dist/elements/RenderCustomComponent/index.js +0 -26
  575. package/dist/elements/RenderCustomComponent/index.js.map +0 -1
  576. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +0 -14
  577. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +0 -1
  578. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +0 -1
  579. package/dist/exports/client/chunk-TIH7OFW3.js +0 -30
  580. package/dist/forms/Form/createNestedFieldPath.d.ts +0 -4
  581. package/dist/forms/Form/createNestedFieldPath.d.ts.map +0 -1
  582. package/dist/forms/Form/createNestedFieldPath.js.map +0 -1
  583. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +0 -9
  584. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +0 -1
  585. package/dist/providers/ComponentMap/buildComponentMap/actions.js +0 -45
  586. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +0 -1
  587. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +0 -17
  588. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +0 -1
  589. package/dist/providers/ComponentMap/buildComponentMap/collections.js +0 -117
  590. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +0 -1
  591. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +0 -17
  592. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +0 -1
  593. package/dist/providers/ComponentMap/buildComponentMap/fields.js +0 -696
  594. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +0 -1
  595. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +0 -18
  596. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +0 -1
  597. package/dist/providers/ComponentMap/buildComponentMap/globals.js +0 -80
  598. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +0 -1
  599. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +0 -16
  600. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +0 -1
  601. package/dist/providers/ComponentMap/buildComponentMap/index.js +0 -77
  602. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +0 -1
  603. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +0 -39
  604. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +0 -1
  605. package/dist/providers/ComponentMap/buildComponentMap/types.js +0 -3
  606. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +0 -1
  607. package/dist/providers/ComponentMap/index.d.ts +0 -25
  608. package/dist/providers/ComponentMap/index.d.ts.map +0 -1
  609. package/dist/providers/ComponentMap/index.js +0 -53
  610. package/dist/providers/ComponentMap/index.js.map +0 -1
  611. package/dist/utilities/buildComponentMap.d.ts +0 -4
  612. package/dist/utilities/buildComponentMap.d.ts.map +0 -1
  613. package/dist/utilities/buildComponentMap.js +0 -4
  614. package/dist/utilities/buildComponentMap.js.map +0 -1
  615. /package/dist/exports/client/{DatePicker-XJHHMZP7.js.map → DatePicker-QKRYICNS.js.map} +0 -0
@@ -5,10 +5,10 @@ import { getTranslation } from '@payloadcms/translations';
5
5
  import React, { useEffect, useRef, useState } from 'react';
6
6
  import AnimateHeightImport from 'react-animate-height';
7
7
  const AnimateHeight = AnimateHeightImport.default || AnimateHeightImport;
8
- import { useListInfo } from '@payloadcms/ui';
9
8
  import { useUseTitleField } from '../../hooks/useUseAsTitle.js';
10
9
  import { ChevronIcon } from '../../icons/Chevron/index.js';
11
10
  import { SearchIcon } from '../../icons/Search/index.js';
11
+ import { useListInfo } from '../../providers/ListInfo/index.js';
12
12
  import { useListQuery } from '../../providers/ListQuery/index.js';
13
13
  import { useSearchParams } from '../../providers/SearchParams/index.js';
14
14
  import { useTranslation } from '../../providers/Translation/index.js';
@@ -29,16 +29,16 @@ const baseClass = 'list-controls';
29
29
  * for a collection's list view. You can find those directly above the table which lists
30
30
  * the collection's documents.
31
31
  */ export const ListControls = (props)=>{
32
- const { collectionConfig, enableColumns = true, enableSort = false, fieldMap } = props;
32
+ const { collectionConfig, enableColumns = true, enableSort = false, fields } = props;
33
33
  const { handleSearchChange } = useListQuery();
34
34
  const { collectionSlug } = useListInfo();
35
35
  const { searchParams } = useSearchParams();
36
- const titleField = useUseTitleField(collectionConfig, fieldMap);
36
+ const titleField = useUseTitleField(collectionConfig, fields);
37
37
  const { i18n, t } = useTranslation();
38
38
  const { breakpoints: { s: smallBreak } } = useWindowInfo();
39
39
  const [search, setSearch] = useState(typeof searchParams?.search === 'string' ? searchParams?.search : '');
40
- const searchLabel = (titleField && getTranslation('label' in titleField.fieldComponentProps && typeof titleField.fieldComponentProps.label === 'string' ? titleField.fieldComponentProps.label : titleField.name, i18n)) ?? 'ID';
41
- const listSearchableFields = getTextFieldsToBeSearched(collectionConfig.admin.listSearchableFields, fieldMap);
40
+ const searchLabel = (titleField && getTranslation('label' in titleField && typeof titleField.label === 'string' ? titleField.label : 'name' in titleField ? titleField.name : null, i18n)) ?? 'ID';
41
+ const listSearchableFields = getTextFieldsToBeSearched(collectionConfig.admin.listSearchableFields, fields);
42
42
  const searchLabelTranslated = useRef(t('general:searchBy', {
43
43
  label: getTranslation(searchLabel, i18n)
44
44
  }));
@@ -59,7 +59,7 @@ const baseClass = 'list-controls';
59
59
  useEffect(()=>{
60
60
  if (listSearchableFields?.length > 0) {
61
61
  searchLabelTranslated.current = listSearchableFields.reduce((placeholderText, field, i)=>{
62
- const label = 'fieldComponentProps' in field && 'label' in field.fieldComponentProps && field.fieldComponentProps.label ? field.fieldComponentProps.label : field.name;
62
+ const label = 'label' in field && field.label ? field.label : 'name' in field ? field.name : null;
63
63
  if (i === 0) {
64
64
  return `${t('general:searchBy', {
65
65
  label: getTranslation(label, i18n)
@@ -89,7 +89,7 @@ const baseClass = 'list-controls';
89
89
  children: [
90
90
  /*#__PURE__*/ _jsx(SearchIcon, {}),
91
91
  /*#__PURE__*/ _jsx(SearchFilter, {
92
- fieldName: titleField?.name,
92
+ fieldName: 'name' in titleField ? titleField?.name : null,
93
93
  handleChange: (search)=>{
94
94
  return void handleSearchChange(search);
95
95
  },
@@ -107,7 +107,7 @@ const baseClass = 'list-controls';
107
107
  children: [
108
108
  /*#__PURE__*/ _jsx(EditMany, {
109
109
  collection: collectionConfig,
110
- fieldMap: fieldMap
110
+ fields: fields
111
111
  }),
112
112
  /*#__PURE__*/ _jsx(PublishMany, {
113
113
  collection: collectionConfig
@@ -167,7 +167,7 @@ const baseClass = 'list-controls';
167
167
  children: /*#__PURE__*/ _jsx(WhereBuilder, {
168
168
  collectionPluralLabel: collectionConfig?.labels?.plural,
169
169
  collectionSlug: collectionConfig.slug,
170
- fieldMap: fieldMap
170
+ fields: fields
171
171
  }, String(hasWhereParam.current && !searchParams?.where))
172
172
  }),
173
173
  enableSort && /*#__PURE__*/ _jsx(AnimateHeight, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, FieldMap, Where } from 'payload'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useRef, useState } from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nimport { useListInfo } from '@payloadcms/ui'\n\nimport { useUseTitleField } from '../../hooks/useUseAsTitle.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { SearchIcon } from '../../icons/Search/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { DeleteMany } from '../DeleteMany/index.js'\nimport { EditMany } from '../EditMany/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { PublishMany } from '../PublishMany/index.js'\nimport { SearchFilter } from '../SearchFilter/index.js'\nimport { UnpublishMany } from '../UnpublishMany/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport validateWhereQuery from '../WhereBuilder/validateWhereQuery.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\nexport type ListControlsProps = {\n collectionConfig: ClientCollectionConfig\n enableColumns?: boolean\n enableSort?: boolean\n fieldMap: FieldMap\n handleSearchChange?: (search: string) => void\n handleSortChange?: (sort: string) => void\n handleWhereChange?: (where: Where) => void\n}\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const { collectionConfig, enableColumns = true, enableSort = false, fieldMap } = props\n\n const { handleSearchChange } = useListQuery()\n const { collectionSlug } = useListInfo()\n const { searchParams } = useSearchParams()\n const titleField = useUseTitleField(collectionConfig, fieldMap)\n const { i18n, t } = useTranslation()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n const [search, setSearch] = useState(\n typeof searchParams?.search === 'string' ? searchParams?.search : '',\n )\n\n const searchLabel =\n (titleField &&\n getTranslation(\n 'label' in titleField.fieldComponentProps &&\n typeof titleField.fieldComponentProps.label === 'string'\n ? titleField.fieldComponentProps.label\n : titleField.name,\n i18n,\n )) ??\n 'ID'\n\n const listSearchableFields = getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n fieldMap,\n )\n\n const searchLabelTranslated = useRef(\n t('general:searchBy', { label: getTranslation(searchLabel, i18n) }),\n )\n\n const hasWhereParam = useRef(Boolean(searchParams?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(searchParams?.where)\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !searchParams?.where) {\n setVisibleDrawer(undefined)\n hasWhereParam.current = false\n } else if (searchParams?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, searchParams?.where])\n\n useEffect(() => {\n if (listSearchableFields?.length > 0) {\n searchLabelTranslated.current = listSearchableFields.reduce(\n (placeholderText: string, field, i: number) => {\n const label =\n 'fieldComponentProps' in field &&\n 'label' in field.fieldComponentProps &&\n field.fieldComponentProps.label\n ? field.fieldComponentProps.label\n : field.name\n\n if (i === 0) {\n return `${t('general:searchBy', {\n label: getTranslation(label, i18n),\n })}`\n }\n\n if (i === listSearchableFields.length - 1) {\n return `${placeholderText} ${t('general:or')} ${getTranslation(label, i18n)}`\n }\n\n return `${placeholderText}, ${getTranslation(label, i18n)}`\n },\n '',\n )\n } else {\n searchLabelTranslated.current = t('general:searchBy', {\n label: getTranslation(searchLabel, i18n),\n })\n }\n }, [t, listSearchableFields, i18n, searchLabel])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <SearchIcon />\n <SearchFilter\n fieldName={titleField?.name}\n handleChange={(search) => {\n return void handleSearchChange(search)\n }}\n initialParams={searchParams}\n key={collectionSlug}\n label={searchLabelTranslated.current}\n setValue={setSearch}\n value={search}\n />\n <div className={`${baseClass}__buttons`}>\n <div className={`${baseClass}__buttons-wrap`}>\n {!smallBreak && (\n <React.Fragment>\n <EditMany collection={collectionConfig} fieldMap={fieldMap} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </React.Fragment>\n )}\n {enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns ${\n visibleDrawer === 'columns' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon />}\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)\n }\n pillStyle=\"light\"\n >\n {t('general:columns')}\n </Pill>\n )}\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where ${\n visibleDrawer === 'where' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:filters')}\n </Pill>\n {enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<ChevronIcon />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:sort')}\n </Pill>\n )}\n </div>\n </div>\n </div>\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fieldMap={fieldMap}\n key={String(hasWhereParam.current && !searchParams?.where)}\n />\n </AnimateHeight>\n {enableSort && (\n <AnimateHeight\n className={`${baseClass}__sort`}\n height={visibleDrawer === 'sort' ? 'auto' : 0}\n id={`${baseClass}-sort`}\n >\n <p>Sort Complex</p>\n {/* <SortComplex\n collection={collection}\n handleChange={handleSortChange}\n modifySearchQuery={modifySearchQuery}\n /> */}\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["useWindowInfo","getTranslation","React","useEffect","useRef","useState","AnimateHeightImport","AnimateHeight","default","useListInfo","useUseTitleField","ChevronIcon","SearchIcon","useListQuery","useSearchParams","useTranslation","ColumnSelector","DeleteMany","EditMany","Pill","PublishMany","SearchFilter","UnpublishMany","WhereBuilder","validateWhereQuery","getTextFieldsToBeSearched","baseClass","ListControls","props","collectionConfig","enableColumns","enableSort","fieldMap","handleSearchChange","collectionSlug","searchParams","titleField","i18n","t","breakpoints","s","smallBreak","search","setSearch","searchLabel","fieldComponentProps","label","name","listSearchableFields","admin","searchLabelTranslated","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","length","reduce","placeholderText","field","i","div","className","fieldName","handleChange","initialParams","setValue","value","Fragment","collection","aria-controls","aria-expanded","icon","onClick","pillStyle","height","id","slug","collectionPluralLabel","labels","plural","String","p"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, ClientField, Where } from 'payload'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useRef, useState } from 'react'\nimport AnimateHeightImport from 'react-animate-height'\n\nconst AnimateHeight = (AnimateHeightImport.default ||\n AnimateHeightImport) as typeof AnimateHeightImport.default\n\nimport { useUseTitleField } from '../../hooks/useUseAsTitle.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { SearchIcon } from '../../icons/Search/index.js'\nimport { useListInfo } from '../../providers/ListInfo/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ColumnSelector } from '../ColumnSelector/index.js'\nimport { DeleteMany } from '../DeleteMany/index.js'\nimport { EditMany } from '../EditMany/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { PublishMany } from '../PublishMany/index.js'\nimport { SearchFilter } from '../SearchFilter/index.js'\nimport { UnpublishMany } from '../UnpublishMany/index.js'\nimport { WhereBuilder } from '../WhereBuilder/index.js'\nimport validateWhereQuery from '../WhereBuilder/validateWhereQuery.js'\nimport { getTextFieldsToBeSearched } from './getTextFieldsToBeSearched.js'\nimport './index.scss'\n\nconst baseClass = 'list-controls'\n\nexport type ListControlsProps = {\n readonly collectionConfig: ClientCollectionConfig\n readonly enableColumns?: boolean\n readonly enableSort?: boolean\n readonly fields: ClientField[]\n readonly handleSearchChange?: (search: string) => void\n readonly handleSortChange?: (sort: string) => void\n readonly handleWhereChange?: (where: Where) => void\n}\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const { collectionConfig, enableColumns = true, enableSort = false, fields } = props\n\n const { handleSearchChange } = useListQuery()\n const { collectionSlug } = useListInfo()\n const { searchParams } = useSearchParams()\n const titleField = useUseTitleField(collectionConfig, fields)\n const { i18n, t } = useTranslation()\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n const [search, setSearch] = useState(\n typeof searchParams?.search === 'string' ? searchParams?.search : '',\n )\n\n const searchLabel =\n (titleField &&\n getTranslation(\n 'label' in titleField && typeof titleField.label === 'string'\n ? titleField.label\n : 'name' in titleField\n ? titleField.name\n : null,\n i18n,\n )) ??\n 'ID'\n\n const listSearchableFields = getTextFieldsToBeSearched(\n collectionConfig.admin.listSearchableFields,\n fields,\n )\n\n const searchLabelTranslated = useRef(\n t('general:searchBy', { label: getTranslation(searchLabel, i18n) }),\n )\n\n const hasWhereParam = useRef(Boolean(searchParams?.where))\n\n const shouldInitializeWhereOpened = validateWhereQuery(searchParams?.where)\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n shouldInitializeWhereOpened ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !searchParams?.where) {\n setVisibleDrawer(undefined)\n hasWhereParam.current = false\n } else if (searchParams?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, searchParams?.where])\n\n useEffect(() => {\n if (listSearchableFields?.length > 0) {\n searchLabelTranslated.current = listSearchableFields.reduce(\n (placeholderText: string, field, i: number) => {\n const label =\n 'label' in field && field.label ? field.label : 'name' in field ? field.name : null\n\n if (i === 0) {\n return `${t('general:searchBy', {\n label: getTranslation(label, i18n),\n })}`\n }\n\n if (i === listSearchableFields.length - 1) {\n return `${placeholderText} ${t('general:or')} ${getTranslation(label, i18n)}`\n }\n\n return `${placeholderText}, ${getTranslation(label, i18n)}`\n },\n '',\n )\n } else {\n searchLabelTranslated.current = t('general:searchBy', {\n label: getTranslation(searchLabel, i18n),\n })\n }\n }, [t, listSearchableFields, i18n, searchLabel])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <SearchIcon />\n <SearchFilter\n fieldName={'name' in titleField ? titleField?.name : null}\n handleChange={(search) => {\n return void handleSearchChange(search)\n }}\n initialParams={searchParams}\n key={collectionSlug}\n label={searchLabelTranslated.current}\n setValue={setSearch}\n value={search}\n />\n <div className={`${baseClass}__buttons`}>\n <div className={`${baseClass}__buttons-wrap`}>\n {!smallBreak && (\n <React.Fragment>\n <EditMany collection={collectionConfig} fields={fields} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </React.Fragment>\n )}\n {enableColumns && (\n <Pill\n aria-controls={`${baseClass}-columns`}\n aria-expanded={visibleDrawer === 'columns'}\n className={`${baseClass}__toggle-columns ${\n visibleDrawer === 'columns' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon />}\n onClick={() =>\n setVisibleDrawer(visibleDrawer !== 'columns' ? 'columns' : undefined)\n }\n pillStyle=\"light\"\n >\n {t('general:columns')}\n </Pill>\n )}\n <Pill\n aria-controls={`${baseClass}-where`}\n aria-expanded={visibleDrawer === 'where'}\n className={`${baseClass}__toggle-where ${\n visibleDrawer === 'where' ? `${baseClass}__buttons-active` : ''\n }`}\n icon={<ChevronIcon />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:filters')}\n </Pill>\n {enableSort && (\n <Pill\n aria-controls={`${baseClass}-sort`}\n aria-expanded={visibleDrawer === 'sort'}\n className={`${baseClass}__toggle-sort`}\n icon={<ChevronIcon />}\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n pillStyle=\"light\"\n >\n {t('general:sort')}\n </Pill>\n )}\n </div>\n </div>\n </div>\n {enableColumns && (\n <AnimateHeight\n className={`${baseClass}__columns`}\n height={visibleDrawer === 'columns' ? 'auto' : 0}\n id={`${baseClass}-columns`}\n >\n <ColumnSelector collectionSlug={collectionConfig.slug} />\n </AnimateHeight>\n )}\n <AnimateHeight\n className={`${baseClass}__where`}\n height={visibleDrawer === 'where' ? 'auto' : 0}\n id={`${baseClass}-where`}\n >\n <WhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fields={fields}\n key={String(hasWhereParam.current && !searchParams?.where)}\n />\n </AnimateHeight>\n {enableSort && (\n <AnimateHeight\n className={`${baseClass}__sort`}\n height={visibleDrawer === 'sort' ? 'auto' : 0}\n id={`${baseClass}-sort`}\n >\n <p>Sort Complex</p>\n {/* <SortComplex\n collection={collection}\n handleChange={handleSortChange}\n modifySearchQuery={modifySearchQuery}\n /> */}\n </AnimateHeight>\n )}\n </div>\n )\n}\n"],"names":["useWindowInfo","getTranslation","React","useEffect","useRef","useState","AnimateHeightImport","AnimateHeight","default","useUseTitleField","ChevronIcon","SearchIcon","useListInfo","useListQuery","useSearchParams","useTranslation","ColumnSelector","DeleteMany","EditMany","Pill","PublishMany","SearchFilter","UnpublishMany","WhereBuilder","validateWhereQuery","getTextFieldsToBeSearched","baseClass","ListControls","props","collectionConfig","enableColumns","enableSort","fields","handleSearchChange","collectionSlug","searchParams","titleField","i18n","t","breakpoints","s","smallBreak","search","setSearch","searchLabel","label","name","listSearchableFields","admin","searchLabelTranslated","hasWhereParam","Boolean","where","shouldInitializeWhereOpened","visibleDrawer","setVisibleDrawer","undefined","current","length","reduce","placeholderText","field","i","div","className","fieldName","handleChange","initialParams","setValue","value","Fragment","collection","aria-controls","aria-expanded","icon","onClick","pillStyle","height","id","slug","collectionPluralLabel","labels","plural","String","p"],"mappings":"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"}
@@ -48,10 +48,22 @@
48
48
  &__wrap {
49
49
  flex-wrap: wrap;
50
50
  background-color: unset;
51
+ padding: 0;
52
+ position: relative;
53
+ }
54
+
55
+ .icon--search {
56
+ position: absolute;
57
+ top: base(0.4);
58
+ inset-inline-start: base(0.4);
59
+ z-index: 1;
51
60
  }
52
61
 
53
62
  .search-filter {
54
63
  width: 100%;
64
+ input {
65
+ padding: base(0.4) base(2);
66
+ }
55
67
  }
56
68
 
57
69
  &__buttons-wrap {
@@ -64,11 +76,8 @@
64
76
  }
65
77
 
66
78
  .pill {
67
- padding: base(0.5) base(1);
68
-
69
- svg {
70
- margin-left: auto;
71
- }
79
+ padding: base(0.2) base(0.2) base(0.2) base(0.4);
80
+ justify-content: space-between;
72
81
  }
73
82
  }
74
83
 
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAuD,MAAM,OAAO,CAAA;AAE3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAoCjD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAyQvD,CAAA"}
1
+ {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAuD,MAAM,OAAO,CAAA;AAE3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAoCjD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAgRvD,CAAA"}
@@ -7,7 +7,7 @@ import { FieldLabel } from '../../fields/FieldLabel/index.js';
7
7
  import { usePayloadAPI } from '../../hooks/usePayloadAPI.js';
8
8
  import { XIcon } from '../../icons/X/index.js';
9
9
  import { useAuth } from '../../providers/Auth/index.js';
10
- import { useComponentMap } from '../../providers/ComponentMap/index.js';
10
+ import { RenderComponent } from '../../providers/Config/RenderComponent.js';
11
11
  import { useConfig } from '../../providers/Config/index.js';
12
12
  import { ListInfoProvider } from '../../providers/ListInfo/index.js';
13
13
  import { ListQueryProvider } from '../../providers/ListQuery/index.js';
@@ -50,15 +50,14 @@ export const ListDrawerContent = ({ collectionSlugs, customHeader, drawerSlug, f
50
50
  const [page, setPage] = useState(1);
51
51
  const [where, setWhere] = useState(null);
52
52
  const [search, setSearch] = useState('');
53
- const { componentMap } = useComponentMap();
54
- const { collections, routes: { api }, serverURL } = useConfig();
53
+ const { config: { collections, routes: { api }, serverURL } } = useConfig();
55
54
  const enabledCollectionConfigs = collections.filter(({ slug })=>{
56
55
  return collectionSlugs.includes(slug);
57
56
  });
58
57
  const [selectedCollectionConfig, setSelectedCollectionConfig] = useState(()=>{
59
58
  return enabledCollectionConfigs.find(({ slug })=>slug === selectedCollection) || enabledCollectionConfigs?.[0];
60
59
  });
61
- const { List } = componentMap.collections?.[selectedCollectionConfig?.slug] || {};
60
+ const List = selectedCollectionConfig?.admin?.components.views.list.Component;
62
61
  const [selectedOption, setSelectedOption] = useState(()=>selectedCollectionConfig ? {
63
62
  label: getTranslation(selectedCollectionConfig.labels.singular, i18n),
64
63
  value: selectedCollectionConfig.slug
@@ -102,11 +101,17 @@ export const ListDrawerContent = ({ collectionSlugs, customHeader, drawerSlug, f
102
101
  const apiURL = isOpen ? `${serverURL}${api}/${selectedCollectionConfig.slug}` : null;
103
102
  const [cacheBust, dispatchCacheBust] = useReducer((state)=>state + 1, 0) // used to force a re-fetch even when apiURL is unchanged
104
103
  ;
105
- const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {});
104
+ const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {
105
+ initialParams: {
106
+ depth: 0
107
+ }
108
+ });
106
109
  const moreThanOneAvailableCollection = enabledCollectionConfigs.length > 1;
107
110
  useEffect(()=>{
108
111
  const { slug, admin: { listSearchableFields, useAsTitle } = {}, versions } = selectedCollectionConfig;
109
- const params = {};
112
+ const params = {
113
+ depth: 0
114
+ };
110
115
  let copyOfWhere = {
111
116
  ...where || {}
112
117
  };
@@ -276,7 +281,9 @@ export const ListDrawerContent = ({ collectionSlugs, customHeader, drawerSlug, f
276
281
  collectionSlug: selectedCollectionConfig.slug,
277
282
  preferenceKey: preferenceKey,
278
283
  children: [
279
- List,
284
+ /*#__PURE__*/ _jsx(RenderComponent, {
285
+ mappedComponent: List
286
+ }),
280
287
  /*#__PURE__*/ _jsx(DocumentDrawer, {
281
288
  onSave: onCreateNew
282
289
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useComponentMap } from '../../providers/ComponentMap/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListInfoProvider } from '../../providers/ListInfo/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { type Option, ReactSelect } from '../ReactSelect/index.js'\nimport { TableColumnsProvider } from '../TableColumns/index.js'\nimport { ViewDescription } from '../ViewDescription/index.js'\nimport { baseClass } from './index.js'\n\nconst hoistQueryParamsToAnd = (where: Where, queryParams: Where) => {\n if ('and' in where) {\n where.and.push(queryParams)\n } else if ('or' in where) {\n where = {\n and: [where, queryParams],\n }\n } else {\n where = {\n and: [where, queryParams],\n }\n }\n\n return where\n}\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n collectionSlugs,\n customHeader,\n drawerSlug,\n filterOptions,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n const [sort, setSort] = useState<string>(null)\n const [page, setPage] = useState<number>(1)\n const [where, setWhere] = useState<Where>(null)\n const [search, setSearch] = useState<string>('')\n\n const { componentMap } = useComponentMap()\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = useConfig()\n\n const enabledCollectionConfigs = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedCollectionConfig, setSelectedCollectionConfig] = useState<ClientCollectionConfig>(\n () => {\n return (\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n )\n },\n )\n\n const { List } = componentMap.collections?.[selectedCollectionConfig?.slug] || {}\n\n const [selectedOption, setSelectedOption] = useState<Option | Option[]>(() =>\n selectedCollectionConfig\n ? {\n label: getTranslation(selectedCollectionConfig.labels.singular, i18n),\n value: selectedCollectionConfig.slug,\n }\n : undefined,\n )\n\n // const [fields, setFields] = useState<Field[]>(() => formatFields(selectedCollectionConfig))\n\n useEffect(() => {\n // setFields(formatFields(selectedCollectionConfig))\n }, [selectedCollectionConfig])\n\n // allow external control of selected collection, same as the initial state logic above\n useEffect(() => {\n if (selectedCollection) {\n // if passed a selection, find it and check if it's enabled\n const selectedConfig =\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n setSelectedCollectionConfig(selectedConfig)\n }\n }, [selectedCollection, enabledCollectionConfigs, onSelect, t])\n\n const preferenceKey = `${selectedCollectionConfig.slug}-list`\n\n // this is the 'create new' drawer\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedCollectionConfig.slug,\n })\n\n useEffect(() => {\n if (selectedOption && !Array.isArray(selectedOption)) {\n setSelectedCollectionConfig(\n enabledCollectionConfigs.find(({ slug }) => selectedOption.value === slug),\n )\n }\n }, [selectedOption, enabledCollectionConfigs])\n\n const collectionPermissions = permissions?.collections?.[selectedCollectionConfig?.slug]\n const hasCreatePermission = collectionPermissions?.create?.permission\n\n // If modal is open, get active page of upload gallery\n const isOpen = isModalOpen(drawerSlug)\n const apiURL = isOpen ? `${serverURL}${api}/${selectedCollectionConfig.slug}` : null\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0) // used to force a re-fetch even when apiURL is unchanged\n const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {})\n const moreThanOneAvailableCollection = enabledCollectionConfigs.length > 1\n\n useEffect(() => {\n const {\n slug,\n admin: { listSearchableFields, useAsTitle } = {},\n versions,\n } = selectedCollectionConfig\n const params: {\n cacheBust?: number\n draft?: string\n limit?: number\n page?: number\n search?: string\n sort?: string\n where?: unknown\n } = {}\n\n let copyOfWhere = { ...(where || {}) }\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, filterOption)\n }\n\n if (search) {\n const searchAsConditions = (listSearchableFields || [useAsTitle]).map((fieldName) => {\n return {\n [fieldName]: {\n like: search,\n },\n }\n }, [])\n\n if (searchAsConditions.length > 0) {\n const searchFilter: Where = {\n or: [...searchAsConditions],\n }\n\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, searchFilter)\n }\n }\n\n if (page) params.page = page\n if (sort) params.sort = sort\n if (cacheBust) params.cacheBust = cacheBust\n if (copyOfWhere) params.where = copyOfWhere\n if (versions?.drafts) params.draft = 'true'\n\n setParams(params)\n }, [page, sort, where, search, cacheBust, filterOptions, selectedCollectionConfig, t, setParams])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n void setPreference(preferenceKey, newPreferences, true)\n }, [sort, limit, setPreference, preferenceKey])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedCollectionConfig.slug,\n docID: doc.id,\n })\n }\n dispatchCacheBust()\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedCollectionConfig],\n )\n\n if (!selectedCollectionConfig || isError) {\n return null\n }\n\n if (isLoadingList) {\n return <LoadingOverlay />\n }\n\n return (\n <ListInfoProvider\n Header={\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h2 className={`${baseClass}__header-text`}>\n {!customHeader\n ? getTranslation(selectedCollectionConfig?.labels?.plural, i18n)\n : customHeader}\n </h2>\n {hasCreatePermission && (\n <DocumentDrawerToggler className={`${baseClass}__create-new-button`}>\n <Pill>{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )}\n </div>\n <button\n aria-label={t('general:close')}\n className={`${baseClass}__header-close`}\n onClick={() => {\n closeModal(drawerSlug)\n }}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {selectedCollectionConfig?.admin?.description && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription description={selectedCollectionConfig.admin.description} />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel label={t('upload:selectCollectionToBrowse')} />\n <ReactSelect\n className={`${baseClass}__select-collection`}\n onChange={setSelectedOption} // this is only changing the options which is not rerunning my effect\n options={enabledCollectionConfigs.map((coll) => ({\n label: getTranslation(coll.labels.singular, i18n),\n value: coll.slug,\n }))}\n value={selectedOption}\n />\n </div>\n )}\n </header>\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n hasCreatePermission={hasCreatePermission}\n newDocumentURL={null}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || selectedCollectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n handlePageChange={setPage}\n handlePerPageChange={setLimit}\n handleSearchChange={setSearch}\n handleSortChange={setSort}\n handleWhereChange={setWhere}\n modifySearchParams={false}\n preferenceKey={preferenceKey}\n >\n <TableColumnsProvider\n cellProps={[\n {\n className: `${baseClass}__first-cell`,\n link: false,\n onClick: ({ collectionSlug: rowColl, rowData }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: rowColl,\n docID: rowData.id as string,\n })\n }\n },\n },\n ]}\n collectionSlug={selectedCollectionConfig.slug}\n preferenceKey={preferenceKey}\n >\n {List}\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n )\n}\n"],"names":["useModal","getTranslation","React","useCallback","useEffect","useReducer","useState","FieldLabel","usePayloadAPI","XIcon","useAuth","useComponentMap","useConfig","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","collectionSlugs","customHeader","drawerSlug","filterOptions","onSelect","selectedCollection","i18n","t","permissions","setPreference","closeModal","isModalOpen","limit","setLimit","sort","setSort","page","setPage","setWhere","search","setSearch","componentMap","collections","routes","api","serverURL","enabledCollectionConfigs","filter","slug","includes","selectedCollectionConfig","setSelectedCollectionConfig","find","List","selectedOption","setSelectedOption","label","labels","singular","value","undefined","selectedConfig","preferenceKey","DocumentDrawer","DocumentDrawerToggler","documentDrawerSlug","collectionSlug","Array","isArray","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","state","data","isError","isLoading","isLoadingList","setParams","moreThanOneAvailableCollection","length","admin","listSearchableFields","useAsTitle","versions","params","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","drafts","draft","newPreferences","onCreateNew","doc","docID","id","Header","header","className","div","h2","plural","button","aria-label","onClick","type","description","onChange","options","coll","collectionConfig","newDocumentURL","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","cellProps","link","rowColl","rowData","onSave"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/ListDrawer/DrawerContent.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, Where } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { ListInfoProvider } from '../../providers/ListInfo/index.js'\nimport { ListQueryProvider } from '../../providers/ListQuery/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport { LoadingOverlay } from '../Loading/index.js'\nimport { Pill } from '../Pill/index.js'\nimport { type Option, ReactSelect } from '../ReactSelect/index.js'\nimport { TableColumnsProvider } from '../TableColumns/index.js'\nimport { ViewDescription } from '../ViewDescription/index.js'\nimport { baseClass } from './index.js'\n\nconst hoistQueryParamsToAnd = (where: Where, queryParams: Where) => {\n if ('and' in where) {\n where.and.push(queryParams)\n } else if ('or' in where) {\n where = {\n and: [where, queryParams],\n }\n } else {\n where = {\n and: [where, queryParams],\n }\n }\n\n return where\n}\n\nexport const ListDrawerContent: React.FC<ListDrawerProps> = ({\n collectionSlugs,\n customHeader,\n drawerSlug,\n filterOptions,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n const [sort, setSort] = useState<string>(null)\n const [page, setPage] = useState<number>(1)\n const [where, setWhere] = useState<Where>(null)\n const [search, setSearch] = useState<string>('')\n\n const {\n config: {\n collections,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const enabledCollectionConfigs = collections.filter(({ slug }) => {\n return collectionSlugs.includes(slug)\n })\n\n const [selectedCollectionConfig, setSelectedCollectionConfig] = useState<ClientCollectionConfig>(\n () => {\n return (\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n )\n },\n )\n\n const List = selectedCollectionConfig?.admin?.components.views.list.Component\n\n const [selectedOption, setSelectedOption] = useState<Option | Option[]>(() =>\n selectedCollectionConfig\n ? {\n label: getTranslation(selectedCollectionConfig.labels.singular, i18n),\n value: selectedCollectionConfig.slug,\n }\n : undefined,\n )\n\n // const [fields, setFields] = useState<Field[]>(() => formatFields(selectedCollectionConfig))\n\n useEffect(() => {\n // setFields(formatFields(selectedCollectionConfig))\n }, [selectedCollectionConfig])\n\n // allow external control of selected collection, same as the initial state logic above\n useEffect(() => {\n if (selectedCollection) {\n // if passed a selection, find it and check if it's enabled\n const selectedConfig =\n enabledCollectionConfigs.find(({ slug }) => slug === selectedCollection) ||\n enabledCollectionConfigs?.[0]\n setSelectedCollectionConfig(selectedConfig)\n }\n }, [selectedCollection, enabledCollectionConfigs, onSelect, t])\n\n const preferenceKey = `${selectedCollectionConfig.slug}-list`\n\n // this is the 'create new' drawer\n const [DocumentDrawer, DocumentDrawerToggler, { drawerSlug: documentDrawerSlug }] =\n useDocumentDrawer({\n collectionSlug: selectedCollectionConfig.slug,\n })\n\n useEffect(() => {\n if (selectedOption && !Array.isArray(selectedOption)) {\n setSelectedCollectionConfig(\n enabledCollectionConfigs.find(({ slug }) => selectedOption.value === slug),\n )\n }\n }, [selectedOption, enabledCollectionConfigs])\n\n const collectionPermissions = permissions?.collections?.[selectedCollectionConfig?.slug]\n const hasCreatePermission = collectionPermissions?.create?.permission\n\n // If modal is open, get active page of upload gallery\n const isOpen = isModalOpen(drawerSlug)\n const apiURL = isOpen ? `${serverURL}${api}/${selectedCollectionConfig.slug}` : null\n const [cacheBust, dispatchCacheBust] = useReducer((state) => state + 1, 0) // used to force a re-fetch even when apiURL is unchanged\n const [{ data, isError, isLoading: isLoadingList }, { setParams }] = usePayloadAPI(apiURL, {\n initialParams: {\n depth: 0,\n },\n })\n const moreThanOneAvailableCollection = enabledCollectionConfigs.length > 1\n\n useEffect(() => {\n const {\n slug,\n admin: { listSearchableFields, useAsTitle } = {},\n versions,\n } = selectedCollectionConfig\n const params: {\n cacheBust?: number\n depth?: number\n draft?: string\n limit?: number\n page?: number\n search?: string\n sort?: string\n where?: unknown\n } = {\n depth: 0,\n }\n\n let copyOfWhere = { ...(where || {}) }\n const filterOption = filterOptions?.[slug]\n\n if (filterOptions && typeof filterOption !== 'boolean') {\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, filterOption)\n }\n\n if (search) {\n const searchAsConditions = (listSearchableFields || [useAsTitle]).map((fieldName) => {\n return {\n [fieldName]: {\n like: search,\n },\n }\n }, [])\n\n if (searchAsConditions.length > 0) {\n const searchFilter: Where = {\n or: [...searchAsConditions],\n }\n\n copyOfWhere = hoistQueryParamsToAnd(copyOfWhere, searchFilter)\n }\n }\n\n if (page) params.page = page\n if (sort) params.sort = sort\n if (cacheBust) params.cacheBust = cacheBust\n if (copyOfWhere) params.where = copyOfWhere\n if (versions?.drafts) params.draft = 'true'\n\n setParams(params)\n }, [page, sort, where, search, cacheBust, filterOptions, selectedCollectionConfig, t, setParams])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n void setPreference(preferenceKey, newPreferences, true)\n }, [sort, limit, setPreference, preferenceKey])\n\n const onCreateNew = useCallback(\n ({ doc }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: selectedCollectionConfig.slug,\n docID: doc.id,\n })\n }\n dispatchCacheBust()\n closeModal(documentDrawerSlug)\n closeModal(drawerSlug)\n },\n [closeModal, documentDrawerSlug, drawerSlug, onSelect, selectedCollectionConfig],\n )\n\n if (!selectedCollectionConfig || isError) {\n return null\n }\n\n if (isLoadingList) {\n return <LoadingOverlay />\n }\n\n return (\n <ListInfoProvider\n Header={\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h2 className={`${baseClass}__header-text`}>\n {!customHeader\n ? getTranslation(selectedCollectionConfig?.labels?.plural, i18n)\n : customHeader}\n </h2>\n {hasCreatePermission && (\n <DocumentDrawerToggler className={`${baseClass}__create-new-button`}>\n <Pill>{t('general:createNew')}</Pill>\n </DocumentDrawerToggler>\n )}\n </div>\n <button\n aria-label={t('general:close')}\n className={`${baseClass}__header-close`}\n onClick={() => {\n closeModal(drawerSlug)\n }}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {selectedCollectionConfig?.admin?.description && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription description={selectedCollectionConfig.admin.description} />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel label={t('upload:selectCollectionToBrowse')} />\n <ReactSelect\n className={`${baseClass}__select-collection`}\n onChange={setSelectedOption} // this is only changing the options which is not rerunning my effect\n options={enabledCollectionConfigs.map((coll) => ({\n label: getTranslation(coll.labels.singular, i18n),\n value: coll.slug,\n }))}\n value={selectedOption}\n />\n </div>\n )}\n </header>\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n hasCreatePermission={hasCreatePermission}\n newDocumentURL={null}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || selectedCollectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n handlePageChange={setPage}\n handlePerPageChange={setLimit}\n handleSearchChange={setSearch}\n handleSortChange={setSort}\n handleWhereChange={setWhere}\n modifySearchParams={false}\n preferenceKey={preferenceKey}\n >\n <TableColumnsProvider\n cellProps={[\n {\n className: `${baseClass}__first-cell`,\n link: false,\n onClick: ({ collectionSlug: rowColl, rowData }) => {\n if (typeof onSelect === 'function') {\n onSelect({\n collectionSlug: rowColl,\n docID: rowData.id as string,\n })\n }\n },\n },\n ]}\n collectionSlug={selectedCollectionConfig.slug}\n preferenceKey={preferenceKey}\n >\n <RenderComponent mappedComponent={List} />\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n )\n}\n"],"names":["useModal","getTranslation","React","useCallback","useEffect","useReducer","useState","FieldLabel","usePayloadAPI","XIcon","useAuth","RenderComponent","useConfig","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","collectionSlugs","customHeader","drawerSlug","filterOptions","onSelect","selectedCollection","i18n","t","permissions","setPreference","closeModal","isModalOpen","limit","setLimit","sort","setSort","page","setPage","setWhere","search","setSearch","config","collections","routes","api","serverURL","enabledCollectionConfigs","filter","slug","includes","selectedCollectionConfig","setSelectedCollectionConfig","find","List","admin","components","views","list","Component","selectedOption","setSelectedOption","label","labels","singular","value","undefined","selectedConfig","preferenceKey","DocumentDrawer","DocumentDrawerToggler","documentDrawerSlug","collectionSlug","Array","isArray","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","state","data","isError","isLoading","isLoadingList","setParams","initialParams","depth","moreThanOneAvailableCollection","length","listSearchableFields","useAsTitle","versions","params","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","drafts","draft","newPreferences","onCreateNew","doc","docID","id","Header","header","className","div","h2","plural","button","aria-label","onClick","type","description","onChange","options","coll","collectionConfig","newDocumentURL","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","cellProps","link","rowColl","rowData","mappedComponent","onSave"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2D,MAAM,OAAO,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAElF,cAAc,YAAY,CAAA;AAM1B,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,gBAAgB,CAAA;AAEtC,eAAO,MAAM,oBAAoB,qBAG9B;IACD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,WAAmC,CAAA;AAEpC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAiBxD,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAQhD,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,aA8E3B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA2D,MAAM,OAAO,CAAA;AAE/E,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAElF,cAAc,YAAY,CAAA;AAM1B,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,gBAAgB,CAAA;AAEtC,eAAO,MAAM,oBAAoB,qBAG9B;IACD,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,WAAmC,CAAA;AAEpC,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAiBxD,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAQhD,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,aAgF3B,CAAA"}
@@ -36,7 +36,7 @@ export const ListDrawer = (props)=>{
36
36
  });
37
37
  };
38
38
  export const useListDrawer = ({ collectionSlugs: collectionSlugsFromProps, filterOptions, selectedCollection, uploads })=>{
39
- const { collections } = useConfig();
39
+ const { config: { collections } } = useConfig();
40
40
  const drawerDepth = useEditDepth();
41
41
  const uuid = useId();
42
42
  const { closeModal, modalState, openModal, toggleModal } = useModal();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ListDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type { ListDrawerProps, ListTogglerProps, UseListDrawer } from './types.js'\n\nexport * from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { ListDrawerContent } from './DrawerContent.js'\nimport './index.scss'\n\nexport const baseClass = 'list-drawer'\n\nexport const formatListDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `list-drawer_${depth}_${uuid}`\n\nexport const ListDrawerToggler: React.FC<ListTogglerProps> = ({\n children,\n className,\n disabled,\n drawerSlug,\n ...rest\n}) => {\n return (\n <DrawerToggler\n className={[className, `${baseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const ListDrawer: React.FC<ListDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer Header={null} className={baseClass} gutter={false} slug={drawerSlug}>\n <ListDrawerContent {...props} />\n </Drawer>\n )\n}\n\nexport const useListDrawer: UseListDrawer = ({\n collectionSlugs: collectionSlugsFromProps,\n filterOptions,\n selectedCollection,\n uploads,\n}) => {\n const { collections } = useConfig()\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n const [collectionSlugs, setCollectionSlugs] = useState(collectionSlugsFromProps)\n\n const drawerSlug = formatListDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n useEffect(() => {\n if (!collectionSlugs || collectionSlugs.length === 0) {\n const filteredCollectionSlugs = collections.filter(({ upload }) => {\n if (uploads) {\n return Boolean(upload) === true\n }\n return true\n })\n\n setCollectionSlugs(filteredCollectionSlugs.map(({ slug }) => slug))\n }\n }, [collectionSlugs, uploads, collections])\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return (props) => (\n <ListDrawer\n {...props}\n closeDrawer={closeDrawer}\n collectionSlugs={collectionSlugs}\n drawerSlug={drawerSlug}\n filterOptions={filterOptions}\n key={drawerSlug}\n selectedCollection={selectedCollection}\n uploads={uploads}\n />\n )\n }, [drawerSlug, collectionSlugs, uploads, closeDrawer, selectedCollection, filterOptions])\n\n const MemoizedDrawerToggler = useMemo(() => {\n return (props) => <ListDrawerToggler {...props} drawerSlug={drawerSlug} />\n }, [drawerSlug])\n\n const MemoizedDrawerState = useMemo(\n () => ({\n closeDrawer,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [drawerDepth, drawerSlug, isOpen, toggleDrawer, closeDrawer, openDrawer],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"names":["useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","rest","filter","Boolean","join","slug","ListDrawer","props","Header","gutter","useListDrawer","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","length","filteredCollectionSlugs","upload","map","toggleDrawer","closeDrawer","openDrawer","MemoizedDrawer","key","MemoizedDrawerToggler","MemoizedDrawerState","isDrawerOpen"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/ListDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type { ListDrawerProps, ListTogglerProps, UseListDrawer } from './types.js'\n\nexport * from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { ListDrawerContent } from './DrawerContent.js'\nimport './index.scss'\n\nexport const baseClass = 'list-drawer'\n\nexport const formatListDrawerSlug = ({\n depth,\n uuid,\n}: {\n depth: number\n uuid: string // supply when creating a new document and no id is available\n}) => `list-drawer_${depth}_${uuid}`\n\nexport const ListDrawerToggler: React.FC<ListTogglerProps> = ({\n children,\n className,\n disabled,\n drawerSlug,\n ...rest\n}) => {\n return (\n <DrawerToggler\n className={[className, `${baseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const ListDrawer: React.FC<ListDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer Header={null} className={baseClass} gutter={false} slug={drawerSlug}>\n <ListDrawerContent {...props} />\n </Drawer>\n )\n}\n\nexport const useListDrawer: UseListDrawer = ({\n collectionSlugs: collectionSlugsFromProps,\n filterOptions,\n selectedCollection,\n uploads,\n}) => {\n const {\n config: { collections },\n } = useConfig()\n const drawerDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n const [collectionSlugs, setCollectionSlugs] = useState(collectionSlugsFromProps)\n\n const drawerSlug = formatListDrawerSlug({\n depth: drawerDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n useEffect(() => {\n if (!collectionSlugs || collectionSlugs.length === 0) {\n const filteredCollectionSlugs = collections.filter(({ upload }) => {\n if (uploads) {\n return Boolean(upload) === true\n }\n return true\n })\n\n setCollectionSlugs(filteredCollectionSlugs.map(({ slug }) => slug))\n }\n }, [collectionSlugs, uploads, collections])\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [drawerSlug, closeModal])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [drawerSlug, openModal])\n\n const MemoizedDrawer = useMemo(() => {\n return (props) => (\n <ListDrawer\n {...props}\n closeDrawer={closeDrawer}\n collectionSlugs={collectionSlugs}\n drawerSlug={drawerSlug}\n filterOptions={filterOptions}\n key={drawerSlug}\n selectedCollection={selectedCollection}\n uploads={uploads}\n />\n )\n }, [drawerSlug, collectionSlugs, uploads, closeDrawer, selectedCollection, filterOptions])\n\n const MemoizedDrawerToggler = useMemo(() => {\n return (props) => <ListDrawerToggler {...props} drawerSlug={drawerSlug} />\n }, [drawerSlug])\n\n const MemoizedDrawerState = useMemo(\n () => ({\n closeDrawer,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [drawerDepth, drawerSlug, isOpen, toggleDrawer, closeDrawer, openDrawer],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"names":["useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","rest","filter","Boolean","join","slug","ListDrawer","props","Header","gutter","useListDrawer","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","config","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","length","filteredCollectionSlugs","upload","map","toggleDrawer","closeDrawer","openDrawer","MemoizedDrawer","key","MemoizedDrawerToggler","MemoizedDrawerState","isDrawerOpen"],"mappings":"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"}
@@ -65,11 +65,11 @@
65
65
  height: base(1);
66
66
 
67
67
  svg {
68
- width: base(2.75);
69
- height: base(2.75);
68
+ width: base(2);
69
+ height: base(2);
70
70
  position: relative;
71
- left: base(-0.825);
72
- top: base(-0.825);
71
+ inset-inline-start: base(-0.5);
72
+ top: base(-0.5);
73
73
 
74
74
  .stroke {
75
75
  stroke-width: 2px;
@@ -2,15 +2,15 @@ import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload';
2
2
  import type React from 'react';
3
3
  import type { HTMLAttributes } from 'react';
4
4
  export type ListDrawerProps = {
5
- collectionSlugs: string[];
6
- customHeader?: React.ReactNode;
7
- drawerSlug?: string;
8
- filterOptions?: FilterOptionsResult;
9
- onSelect?: (args: {
5
+ readonly collectionSlugs: string[];
6
+ readonly customHeader?: React.ReactNode;
7
+ readonly drawerSlug?: string;
8
+ readonly filterOptions?: FilterOptionsResult;
9
+ readonly onSelect?: (args: {
10
10
  collectionSlug: SanitizedCollectionConfig['slug'];
11
11
  docID: string;
12
12
  }) => void;
13
- selectedCollection?: string;
13
+ readonly selectedCollection?: string;
14
14
  };
15
15
  export type ListTogglerProps = {
16
16
  children?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE3C,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC/F,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAA;AAErC,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,KAAK;IACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IACvE;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,YAAY,EAAE,MAAM,IAAI,CAAA;KACzB;CACF,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/ListDrawer/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAC7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAE3C,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QACzB,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;QACjD,KAAK,EAAE,MAAM,CAAA;KACd,KAAK,IAAI,CAAA;IACV,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GAAG,cAAc,CAAC,iBAAiB,CAAC,CAAA;AAErC,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,aAAa,CAAC,EAAE,mBAAmB,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,KAAK;IACJ,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IACvE;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,YAAY,EAAE,MAAM,IAAI,CAAA;KACzB;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nexport type ListDrawerProps = {\n collectionSlugs: string[]\n customHeader?: React.ReactNode\n drawerSlug?: string\n filterOptions?: FilterOptionsResult\n onSelect?: (args: { collectionSlug: SanitizedCollectionConfig['slug']; docID: string }) => void\n selectedCollection?: string\n}\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: string[]\n filterOptions?: FilterOptionsResult\n selectedCollection?: string\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<Pick<ListDrawerProps, 'onSelect'>>, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>, // toggler\n {\n closeDrawer: () => void\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n toggleDrawer: () => void\n },\n]\n"],"names":[],"mappings":"AAoBA,WAgBC"}
1
+ {"version":3,"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nexport type ListDrawerProps = {\n readonly collectionSlugs: string[]\n readonly customHeader?: React.ReactNode\n readonly drawerSlug?: string\n readonly filterOptions?: FilterOptionsResult\n readonly onSelect?: (args: {\n collectionSlug: SanitizedCollectionConfig['slug']\n docID: string\n }) => void\n readonly selectedCollection?: string\n}\n\nexport type ListTogglerProps = {\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n drawerSlug?: string\n} & HTMLAttributes<HTMLButtonElement>\n\nexport type UseListDrawer = (args: {\n collectionSlugs?: string[]\n filterOptions?: FilterOptionsResult\n selectedCollection?: string\n uploads?: boolean // finds all collections with upload: true\n}) => [\n React.FC<Pick<ListDrawerProps, 'onSelect'>>, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>, // toggler\n {\n closeDrawer: () => void\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n toggleDrawer: () => void\n },\n]\n"],"names":[],"mappings":"AAuBA,WAgBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Localizer/LocalizerLabel/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAmBA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Localizer/LocalizerLabel/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAiBA,CAAA"}
@@ -18,16 +18,17 @@ export const LocalizerLabel = (props)=>{
18
18
  className
19
19
  ].filter(Boolean).join(' '),
20
20
  children: [
21
- /*#__PURE__*/ _jsx("div", {
21
+ /*#__PURE__*/ _jsxs("div", {
22
22
  className: `${baseClass}__label`,
23
- children: `${t('general:locale')}:`
23
+ children: [
24
+ `${t('general:locale')}:`,
25
+ " "
26
+ ]
24
27
  }),
25
- "  ",
26
28
  /*#__PURE__*/ _jsx("span", {
27
29
  className: `${baseClass}__current-label`,
28
30
  children: `${getTranslation(locale.label, i18n)}`
29
31
  }),
30
- " ",
31
32
  /*#__PURE__*/ _jsx(ChevronIcon, {
32
33
  className: `${baseClass}__chevron`
33
34
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/Localizer/LocalizerLabel/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'localizer-button'\n\nexport const LocalizerLabel: React.FC<{\n ariaLabel?: string\n className?: string\n}> = (props) => {\n const { ariaLabel, className } = props\n const locale = useLocale()\n const { i18n, t } = useTranslation()\n\n return (\n <div\n aria-label={ariaLabel || t('general:locale')}\n className={[baseClass, className].filter(Boolean).join(' ')}\n >\n <div className={`${baseClass}__label`}>{`${t('general:locale')}:`}</div>\n &nbsp;&nbsp;\n <span className={`${baseClass}__current-label`}>\n {`${getTranslation(locale.label, i18n)}`}\n </span>\n &nbsp;\n <ChevronIcon className={`${baseClass}__chevron`} />\n </div>\n )\n}\n"],"names":["getTranslation","React","ChevronIcon","useLocale","useTranslation","baseClass","LocalizerLabel","props","ariaLabel","className","locale","i18n","t","div","aria-label","filter","Boolean","join","span","label"],"mappings":"AAAA;;AACA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAEzB,SAASC,WAAW,QAAQ,kCAAiC;AAC7D,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,cAAc,QAAQ,0CAAyC;AACxE,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,iBAGR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,SAAS,EAAE,GAAGF;IACjC,MAAMG,SAASP;IACf,MAAM,EAAEQ,IAAI,EAAEC,CAAC,EAAE,GAAGR;IAEpB,qBACE,MAACS;QACCC,cAAYN,aAAaI,EAAE;QAC3BH,WAAW;YAACJ;YAAWI;SAAU,CAACM,MAAM,CAACC,SAASC,IAAI,CAAC;;0BAEvD,KAACJ;gBAAIJ,WAAW,CAAC,EAAEJ,UAAU,OAAO,CAAC;0BAAG,CAAC,EAAEO,EAAE,kBAAkB,CAAC,CAAC;;YAAO;0BAExE,KAACM;gBAAKT,WAAW,CAAC,EAAEJ,UAAU,eAAe,CAAC;0BAC3C,CAAC,EAAEL,eAAeU,OAAOS,KAAK,EAAER,MAAM,CAAC;;YACnC;0BAEP,KAACT;gBAAYO,WAAW,CAAC,EAAEJ,UAAU,SAAS,CAAC;;;;AAGrD,EAAC"}
1
+ {"version":3,"sources":["../../../../src/elements/Localizer/LocalizerLabel/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { useLocale } from '../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'localizer-button'\n\nexport const LocalizerLabel: React.FC<{\n ariaLabel?: string\n className?: string\n}> = (props) => {\n const { ariaLabel, className } = props\n const locale = useLocale()\n const { i18n, t } = useTranslation()\n\n return (\n <div\n aria-label={ariaLabel || t('general:locale')}\n className={[baseClass, className].filter(Boolean).join(' ')}\n >\n <div className={`${baseClass}__label`}>{`${t('general:locale')}:`}&nbsp;</div>\n <span className={`${baseClass}__current-label`}>\n {`${getTranslation(locale.label, i18n)}`}\n </span>\n <ChevronIcon className={`${baseClass}__chevron`} />\n </div>\n )\n}\n"],"names":["getTranslation","React","ChevronIcon","useLocale","useTranslation","baseClass","LocalizerLabel","props","ariaLabel","className","locale","i18n","t","div","aria-label","filter","Boolean","join","span","label"],"mappings":"AAAA;;AACA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAEzB,SAASC,WAAW,QAAQ,kCAAiC;AAC7D,SAASC,SAAS,QAAQ,qCAAoC;AAC9D,SAASC,cAAc,QAAQ,0CAAyC;AACxE,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,iBAGR,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAEC,SAAS,EAAE,GAAGF;IACjC,MAAMG,SAASP;IACf,MAAM,EAAEQ,IAAI,EAAEC,CAAC,EAAE,GAAGR;IAEpB,qBACE,MAACS;QACCC,cAAYN,aAAaI,EAAE;QAC3BH,WAAW;YAACJ;YAAWI;SAAU,CAACM,MAAM,CAACC,SAASC,IAAI,CAAC;;0BAEvD,MAACJ;gBAAIJ,WAAW,CAAC,EAAEJ,UAAU,OAAO,CAAC;;oBAAG,CAAC,EAAEO,EAAE,kBAAkB,CAAC,CAAC;oBAAC;;;0BAClE,KAACM;gBAAKT,WAAW,CAAC,EAAEJ,UAAU,eAAe,CAAC;0BAC3C,CAAC,EAAEL,eAAeU,OAAOS,KAAK,EAAER,MAAM,CAAC;;0BAE1C,KAACT;gBAAYO,WAAW,CAAC,EAAEJ,UAAU,SAAS,CAAC;;;;AAGrD,EAAC"}
@@ -5,12 +5,18 @@
5
5
  align-items: center;
6
6
  white-space: nowrap;
7
7
  display: flex;
8
+ padding-inline-start: base(0.4);
9
+ padding-inline-end: base(0.1);
10
+ gap: 0;
11
+ background-color: var(--theme-elevation-100);
12
+ border-radius: var(--style-radius-s);
8
13
 
9
14
  &__label {
10
15
  color: var(--theme-elevation-500);
11
16
  }
12
17
 
13
18
  &__chevron {
19
+ padding: base(0.1);
14
20
  .stroke {
15
21
  stroke: currentColor;
16
22
  }
@@ -12,7 +12,7 @@ import './index.scss';
12
12
  const baseClass = 'localizer';
13
13
  export const Localizer = (props)=>{
14
14
  const { className } = props;
15
- const config = useConfig();
15
+ const { config } = useConfig();
16
16
  const { localization } = config;
17
17
  const { i18n } = useTranslation();
18
18
  const locale = useLocale();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/Localizer/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { LocalizerLabel } from './LocalizerLabel/index.js'\nimport './index.scss'\n\nconst baseClass = 'localizer'\n\nexport const Localizer: React.FC<{\n className?: string\n}> = (props) => {\n const { className } = props\n const config = useConfig()\n const { localization } = config\n\n const { i18n } = useTranslation()\n const locale = useLocale()\n const { stringifyParams } = useSearchParams()\n\n if (localization) {\n const { locales } = localization\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Popup\n button={<LocalizerLabel />}\n horizontalAlign=\"right\"\n render={({ close }) => (\n <PopupList.ButtonGroup>\n {locales.map((localeOption) => {\n const localeOptionLabel = getTranslation(localeOption.label, i18n)\n\n return (\n <PopupList.Button\n active={locale.code === localeOption.code}\n href={stringifyParams({\n params: {\n locale: localeOption.code,\n },\n })}\n key={localeOption.code}\n onClick={close}\n >\n {localeOptionLabel}\n {localeOptionLabel !== localeOption.code && ` (${localeOption.code})`}\n </PopupList.Button>\n )\n })}\n </PopupList.ButtonGroup>\n )}\n showScrollbar\n size=\"large\"\n />\n </div>\n )\n }\n\n return null\n}\n"],"names":["getTranslation","React","useConfig","useLocale","useSearchParams","useTranslation","Popup","PopupList","LocalizerLabel","baseClass","Localizer","props","className","config","localization","i18n","locale","stringifyParams","locales","div","filter","Boolean","join","button","horizontalAlign","render","close","ButtonGroup","map","localeOption","localeOptionLabel","label","Button","active","code","href","params","onClick","showScrollbar","size"],"mappings":"AAAA;;AACA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAEzB,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,KAAK,EAAEC,SAAS,QAAQ,oBAAmB;AACpD,SAASC,cAAc,QAAQ,4BAA2B;AAC1D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,YAER,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAE,GAAGD;IACtB,MAAME,SAASX;IACf,MAAM,EAAEY,YAAY,EAAE,GAAGD;IAEzB,MAAM,EAAEE,IAAI,EAAE,GAAGV;IACjB,MAAMW,SAASb;IACf,MAAM,EAAEc,eAAe,EAAE,GAAGb;IAE5B,IAAIU,cAAc;QAChB,MAAM,EAAEI,OAAO,EAAE,GAAGJ;QAEpB,qBACE,KAACK;YAAIP,WAAW;gBAACH;gBAAWG;aAAU,CAACQ,MAAM,CAACC,SAASC,IAAI,CAAC;sBAC1D,cAAA,KAAChB;gBACCiB,sBAAQ,KAACf;gBACTgB,iBAAgB;gBAChBC,QAAQ,CAAC,EAAEC,KAAK,EAAE,iBAChB,KAACnB,UAAUoB,WAAW;kCACnBT,QAAQU,GAAG,CAAC,CAACC;4BACZ,MAAMC,oBAAoB9B,eAAe6B,aAAaE,KAAK,EAAEhB;4BAE7D,qBACE,MAACR,UAAUyB,MAAM;gCACfC,QAAQjB,OAAOkB,IAAI,KAAKL,aAAaK,IAAI;gCACzCC,MAAMlB,gBAAgB;oCACpBmB,QAAQ;wCACNpB,QAAQa,aAAaK,IAAI;oCAC3B;gCACF;gCAEAG,SAASX;;oCAERI;oCACAA,sBAAsBD,aAAaK,IAAI,IAAI,CAAC,EAAE,EAAEL,aAAaK,IAAI,CAAC,CAAC,CAAC;;+BAJhEL,aAAaK,IAAI;wBAO5B;;gBAGJI,aAAa;gBACbC,MAAK;;;IAIb;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/Localizer/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { LocalizerLabel } from './LocalizerLabel/index.js'\nimport './index.scss'\n\nconst baseClass = 'localizer'\n\nexport const Localizer: React.FC<{\n className?: string\n}> = (props) => {\n const { className } = props\n const { config } = useConfig()\n const { localization } = config\n\n const { i18n } = useTranslation()\n const locale = useLocale()\n const { stringifyParams } = useSearchParams()\n\n if (localization) {\n const { locales } = localization\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Popup\n button={<LocalizerLabel />}\n horizontalAlign=\"right\"\n render={({ close }) => (\n <PopupList.ButtonGroup>\n {locales.map((localeOption) => {\n const localeOptionLabel = getTranslation(localeOption.label, i18n)\n\n return (\n <PopupList.Button\n active={locale.code === localeOption.code}\n href={stringifyParams({\n params: {\n locale: localeOption.code,\n },\n })}\n key={localeOption.code}\n onClick={close}\n >\n {localeOptionLabel}\n {localeOptionLabel !== localeOption.code && ` (${localeOption.code})`}\n </PopupList.Button>\n )\n })}\n </PopupList.ButtonGroup>\n )}\n showScrollbar\n size=\"large\"\n />\n </div>\n )\n }\n\n return null\n}\n"],"names":["getTranslation","React","useConfig","useLocale","useSearchParams","useTranslation","Popup","PopupList","LocalizerLabel","baseClass","Localizer","props","className","config","localization","i18n","locale","stringifyParams","locales","div","filter","Boolean","join","button","horizontalAlign","render","close","ButtonGroup","map","localeOption","localeOptionLabel","label","Button","active","code","href","params","onClick","showScrollbar","size"],"mappings":"AAAA;;AACA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAEzB,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,KAAK,EAAEC,SAAS,QAAQ,oBAAmB;AACpD,SAASC,cAAc,QAAQ,4BAA2B;AAC1D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,YAER,CAACC;IACJ,MAAM,EAAEC,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,MAAM,EAAE,GAAGX;IACnB,MAAM,EAAEY,YAAY,EAAE,GAAGD;IAEzB,MAAM,EAAEE,IAAI,EAAE,GAAGV;IACjB,MAAMW,SAASb;IACf,MAAM,EAAEc,eAAe,EAAE,GAAGb;IAE5B,IAAIU,cAAc;QAChB,MAAM,EAAEI,OAAO,EAAE,GAAGJ;QAEpB,qBACE,KAACK;YAAIP,WAAW;gBAACH;gBAAWG;aAAU,CAACQ,MAAM,CAACC,SAASC,IAAI,CAAC;sBAC1D,cAAA,KAAChB;gBACCiB,sBAAQ,KAACf;gBACTgB,iBAAgB;gBAChBC,QAAQ,CAAC,EAAEC,KAAK,EAAE,iBAChB,KAACnB,UAAUoB,WAAW;kCACnBT,QAAQU,GAAG,CAAC,CAACC;4BACZ,MAAMC,oBAAoB9B,eAAe6B,aAAaE,KAAK,EAAEhB;4BAE7D,qBACE,MAACR,UAAUyB,MAAM;gCACfC,QAAQjB,OAAOkB,IAAI,KAAKL,aAAaK,IAAI;gCACzCC,MAAMlB,gBAAgB;oCACpBmB,QAAQ;wCACNpB,QAAQa,aAAaK,IAAI;oCAC3B;gCACF;gCAEAG,SAASX;;oCAERI;oCACAA,sBAAsBD,aAAaK,IAAI,IAAI,CAAC,EAAE,EAAEL,aAAaK,IAAI,CAAC,CAAC,CAAC;;+BAJhEL,aAAaK,IAAI;wBAO5B;;gBAGJI,aAAa;gBACbC,MAAK;;;IAIb;IAEA,OAAO;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Logout/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAmB,MAAM,OAAO,CAAA;AA2CvC,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAUA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Logout/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AA2CzB,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAcA,CAAA"}
@@ -1,15 +1,15 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import React, { Fragment } from 'react';
3
+ import React from 'react';
4
4
  import { LogOutIcon } from '../../icons/LogOut/index.js';
5
- import { useComponentMap } from '../../providers/ComponentMap/index.js';
5
+ import { RenderComponent } from '../../providers/Config/RenderComponent.js';
6
6
  import { useConfig } from '../../providers/Config/index.js';
7
7
  import { useTranslation } from '../../providers/Translation/index.js';
8
8
  import { formatAdminURL } from '../../utilities/formatAdminURL.js';
9
9
  const baseClass = 'nav';
10
10
  const DefaultLogout = ({ Link, tabIndex })=>{
11
11
  const { t } = useTranslation();
12
- const config = useConfig();
12
+ const { config } = useConfig();
13
13
  const { admin: { routes: { logout: logoutRoute } }, routes: { admin: adminRoute } } = config;
14
14
  const basePath = process.env.NEXT_BASE_PATH ?? '';
15
15
  const LinkElement = Link || 'a';
@@ -26,10 +26,10 @@ const DefaultLogout = ({ Link, tabIndex })=>{
26
26
  });
27
27
  };
28
28
  export const Logout = ({ Link, tabIndex = 0 })=>{
29
- const { componentMap: { LogoutButton: CustomLogout } } = useComponentMap();
29
+ const { config: { admin: { components: { LogoutButton: CustomLogout } } } } = useConfig();
30
30
  if (CustomLogout) {
31
- return /*#__PURE__*/ _jsx(Fragment, {
32
- children: CustomLogout
31
+ return /*#__PURE__*/ _jsx(RenderComponent, {
32
+ mappedComponent: CustomLogout
33
33
  });
34
34
  }
35
35
  return /*#__PURE__*/ _jsx(DefaultLogout, {