@payloadcms/ui 3.0.0-canary.a5aaf21 → 3.0.0-canary.a6e7305

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 (417) hide show
  1. package/dist/elements/AddNewRelation/index.scss +36 -34
  2. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  3. package/dist/elements/AppHeader/index.js +1 -0
  4. package/dist/elements/AppHeader/index.js.map +1 -1
  5. package/dist/elements/AppHeader/index.scss +151 -150
  6. package/dist/elements/ArrayAction/index.scss +23 -21
  7. package/dist/elements/Autosave/index.d.ts.map +1 -1
  8. package/dist/elements/Autosave/index.js +1 -3
  9. package/dist/elements/Autosave/index.js.map +1 -1
  10. package/dist/elements/Autosave/index.scss +4 -2
  11. package/dist/elements/Banner/index.scss +51 -49
  12. package/dist/elements/BulkUpload/ActionsBar/index.scss +49 -43
  13. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -1
  14. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  15. package/dist/elements/BulkUpload/AddFilesView/index.js +2 -0
  16. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.scss +23 -21
  18. package/dist/elements/BulkUpload/AddingFilesView/index.scss +16 -14
  19. package/dist/elements/BulkUpload/DrawerCloseButton/index.scss +23 -21
  20. package/dist/elements/BulkUpload/EditForm/index.scss +6 -4
  21. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  22. package/dist/elements/BulkUpload/FileSidebar/index.js +34 -25
  23. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/FileSidebar/index.scss +250 -210
  25. package/dist/elements/BulkUpload/FormsManager/index.d.ts +1 -0
  26. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  27. package/dist/elements/BulkUpload/FormsManager/index.js +60 -25
  28. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  29. package/dist/elements/BulkUpload/Header/index.scss +11 -9
  30. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  31. package/dist/elements/BulkUpload/index.js +32 -42
  32. package/dist/elements/BulkUpload/index.js.map +1 -1
  33. package/dist/elements/Button/index.d.ts.map +1 -1
  34. package/dist/elements/Button/index.js +13 -4
  35. package/dist/elements/Button/index.js.map +1 -1
  36. package/dist/elements/Button/index.scss +205 -199
  37. package/dist/elements/Button/types.d.ts +3 -1
  38. package/dist/elements/Button/types.d.ts.map +1 -1
  39. package/dist/elements/Button/types.js.map +1 -1
  40. package/dist/elements/Card/index.scss +58 -56
  41. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  42. package/dist/elements/CodeEditor/CodeEditor.js +32 -27
  43. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  44. package/dist/elements/CodeEditor/index.scss +16 -14
  45. package/dist/elements/CodeEditor/types.d.ts +1 -0
  46. package/dist/elements/CodeEditor/types.d.ts.map +1 -1
  47. package/dist/elements/CodeEditor/types.js.map +1 -1
  48. package/dist/elements/Collapsible/index.scss +125 -123
  49. package/dist/elements/ColumnSelector/index.scss +36 -34
  50. package/dist/elements/CopyToClipboard/index.scss +21 -19
  51. package/dist/elements/DatePicker/DatePicker.d.ts +1 -1
  52. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  53. package/dist/elements/DatePicker/DatePicker.js +1 -1
  54. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  55. package/dist/elements/DatePicker/index.scss +309 -307
  56. package/dist/elements/DatePicker/library.scss +859 -0
  57. package/dist/elements/DeleteDocument/index.scss +32 -30
  58. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  59. package/dist/elements/DeleteMany/index.js +16 -5
  60. package/dist/elements/DeleteMany/index.js.map +1 -1
  61. package/dist/elements/DeleteMany/index.scss +29 -27
  62. package/dist/elements/DocumentControls/index.d.ts +1 -1
  63. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  64. package/dist/elements/DocumentControls/index.js +6 -6
  65. package/dist/elements/DocumentControls/index.js.map +1 -1
  66. package/dist/elements/DocumentControls/index.scss +190 -188
  67. package/dist/elements/DocumentDrawer/index.d.ts.map +1 -1
  68. package/dist/elements/DocumentDrawer/index.js +29 -23
  69. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  70. package/dist/elements/DocumentDrawer/index.scss +55 -53
  71. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  72. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  73. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  74. package/dist/elements/DocumentFields/index.scss +144 -142
  75. package/dist/elements/Drawer/index.scss +111 -109
  76. package/dist/elements/Dropzone/index.d.ts +2 -1
  77. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  78. package/dist/elements/Dropzone/index.js +3 -2
  79. package/dist/elements/Dropzone/index.js.map +1 -1
  80. package/dist/elements/Dropzone/index.scss +32 -30
  81. package/dist/elements/DuplicateDocument/index.scss +31 -29
  82. package/dist/elements/EditMany/index.js +3 -2
  83. package/dist/elements/EditMany/index.js.map +1 -1
  84. package/dist/elements/EditMany/index.scss +162 -160
  85. package/dist/elements/EditUpload/index.scss +180 -178
  86. package/dist/elements/ErrorPill/index.scss +27 -25
  87. package/dist/elements/FieldSelect/index.js +2 -2
  88. package/dist/elements/FieldSelect/index.js.map +1 -1
  89. package/dist/elements/FieldSelect/index.scss +4 -2
  90. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +25 -23
  91. package/dist/elements/FileDetails/FileMeta/index.scss +21 -19
  92. package/dist/elements/FileDetails/StaticFileDetails/index.scss +104 -102
  93. package/dist/elements/GenerateConfirmation/index.scss +29 -27
  94. package/dist/elements/Gutter/index.scss +14 -12
  95. package/dist/elements/Hamburger/index.scss +38 -36
  96. package/dist/elements/IDLabel/index.scss +11 -9
  97. package/dist/elements/ListControls/index.scss +71 -69
  98. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  99. package/dist/elements/ListDrawer/DrawerContent.js +193 -187
  100. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  101. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  102. package/dist/elements/ListDrawer/index.js +2 -0
  103. package/dist/elements/ListDrawer/index.js.map +1 -1
  104. package/dist/elements/ListDrawer/index.scss +93 -91
  105. package/dist/elements/ListDrawer/types.d.ts +3 -2
  106. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  107. package/dist/elements/ListDrawer/types.js.map +1 -1
  108. package/dist/elements/ListHeader/index.scss +9 -7
  109. package/dist/elements/ListSelection/index.scss +14 -12
  110. package/dist/elements/Loading/index.scss +108 -106
  111. package/dist/elements/Localizer/LocalizerLabel/index.scss +44 -42
  112. package/dist/elements/Localizer/index.scss +7 -5
  113. package/dist/elements/Locked/index.d.ts +1 -1
  114. package/dist/elements/Locked/index.d.ts.map +1 -1
  115. package/dist/elements/Locked/index.js +2 -5
  116. package/dist/elements/Locked/index.js.map +1 -1
  117. package/dist/elements/Locked/index.scss +11 -9
  118. package/dist/elements/Logout/index.d.ts.map +1 -1
  119. package/dist/elements/Logout/index.js +15 -10
  120. package/dist/elements/Logout/index.js.map +1 -1
  121. package/dist/elements/Nav/NavToggler/index.scss +9 -7
  122. package/dist/elements/NavGroup/index.scss +43 -41
  123. package/dist/elements/Pagination/ClickableArrow/index.scss +34 -32
  124. package/dist/elements/Pagination/index.scss +40 -38
  125. package/dist/elements/PerPage/index.scss +37 -35
  126. package/dist/elements/Pill/index.scss +103 -101
  127. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  128. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  129. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  130. package/dist/elements/Popup/PopupButtonList/index.scss +45 -43
  131. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  132. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  133. package/dist/elements/Popup/PopupTrigger/index.js +3 -2
  134. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  135. package/dist/elements/Popup/PopupTrigger/index.scss +26 -12
  136. package/dist/elements/Popup/index.d.ts +1 -0
  137. package/dist/elements/Popup/index.d.ts.map +1 -1
  138. package/dist/elements/Popup/index.js +6 -3
  139. package/dist/elements/Popup/index.js.map +1 -1
  140. package/dist/elements/Popup/index.scss +194 -175
  141. package/dist/elements/PreviewSizes/index.scss +115 -113
  142. package/dist/elements/PublishButton/index.js +31 -18
  143. package/dist/elements/PublishButton/index.js.map +1 -1
  144. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  145. package/dist/elements/PublishMany/index.js +16 -5
  146. package/dist/elements/PublishMany/index.js.map +1 -1
  147. package/dist/elements/PublishMany/index.scss +28 -26
  148. package/dist/elements/ReactSelect/ClearIndicator/index.scss +6 -4
  149. package/dist/elements/ReactSelect/DropdownIndicator/index.scss +11 -9
  150. package/dist/elements/ReactSelect/MultiValue/index.scss +26 -24
  151. package/dist/elements/ReactSelect/MultiValueLabel/index.scss +16 -14
  152. package/dist/elements/ReactSelect/MultiValueRemove/index.scss +20 -18
  153. package/dist/elements/ReactSelect/ValueContainer/index.scss +22 -20
  154. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  155. package/dist/elements/ReactSelect/index.js +2 -0
  156. package/dist/elements/ReactSelect/index.js.map +1 -1
  157. package/dist/elements/ReactSelect/index.scss +69 -59
  158. package/dist/elements/ReactSelect/types.d.ts +2 -1
  159. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  160. package/dist/elements/ReactSelect/types.js.map +1 -1
  161. package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +5 -3
  162. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  163. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  164. package/dist/elements/RelationshipTable/index.js +94 -92
  165. package/dist/elements/RelationshipTable/index.js.map +1 -1
  166. package/dist/elements/RelationshipTable/index.scss +21 -19
  167. package/dist/elements/RenderTitle/index.scss +7 -5
  168. package/dist/elements/SearchFilter/index.scss +31 -28
  169. package/dist/elements/SelectAll/index.scss +5 -3
  170. package/dist/elements/SelectRow/index.scss +6 -4
  171. package/dist/elements/ShimmerEffect/index.scss +26 -24
  172. package/dist/elements/SortColumn/index.scss +51 -49
  173. package/dist/elements/SortComplex/index.scss +27 -25
  174. package/dist/elements/Status/index.js +1 -1
  175. package/dist/elements/Status/index.js.map +1 -1
  176. package/dist/elements/Status/index.scss +45 -43
  177. package/dist/elements/StayLoggedIn/index.scss +29 -26
  178. package/dist/elements/StepNav/index.d.ts.map +1 -1
  179. package/dist/elements/StepNav/index.js +21 -14
  180. package/dist/elements/StepNav/index.js.map +1 -1
  181. package/dist/elements/StepNav/index.scss +62 -61
  182. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.scss +20 -18
  183. package/dist/elements/Table/DefaultCell/fields/Code/index.scss +22 -20
  184. package/dist/elements/Table/DefaultCell/fields/File/index.scss +18 -16
  185. package/dist/elements/Table/DefaultCell/fields/JSON/index.scss +20 -18
  186. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  187. package/dist/elements/Table/DefaultCell/index.js +30 -30
  188. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  189. package/dist/elements/Table/TableCellProvider/index.js +9 -9
  190. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  191. package/dist/elements/Table/index.scss +74 -72
  192. package/dist/elements/TableColumns/buildColumnState.js +1 -0
  193. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  194. package/dist/elements/Thumbnail/createThumbnail.d.ts +5 -0
  195. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -0
  196. package/dist/elements/Thumbnail/createThumbnail.js +50 -0
  197. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -0
  198. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  199. package/dist/elements/Thumbnail/index.js.map +1 -1
  200. package/dist/elements/Thumbnail/index.scss +37 -35
  201. package/dist/elements/ThumbnailCard/index.scss +31 -29
  202. package/dist/elements/Tooltip/index.scss +77 -75
  203. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  204. package/dist/elements/UnpublishMany/index.js +16 -5
  205. package/dist/elements/UnpublishMany/index.js.map +1 -1
  206. package/dist/elements/UnpublishMany/index.scss +28 -26
  207. package/dist/elements/Upload/index.d.ts.map +1 -1
  208. package/dist/elements/Upload/index.js +2 -0
  209. package/dist/elements/Upload/index.js.map +1 -1
  210. package/dist/elements/Upload/index.scss +117 -121
  211. package/dist/elements/WhereBuilder/Condition/Number/index.scss +4 -2
  212. package/dist/elements/WhereBuilder/Condition/Relationship/index.scss +9 -7
  213. package/dist/elements/WhereBuilder/Condition/Text/index.scss +4 -2
  214. package/dist/elements/WhereBuilder/Condition/index.scss +43 -41
  215. package/dist/elements/WhereBuilder/index.scss +28 -26
  216. package/dist/exports/client/{CodeEditor-CXCLJBIQ.js → CodeEditor-LZ2347XA.js} +6 -6
  217. package/dist/exports/client/CodeEditor-LZ2347XA.js.map +8 -0
  218. package/dist/exports/client/{DatePicker-NBYDOP2X.js → DatePicker-FUJV23KL.js} +2 -2
  219. package/dist/exports/client/chunk-6IWEPNUV.js +14 -0
  220. package/dist/exports/client/chunk-6IWEPNUV.js.map +8 -0
  221. package/dist/exports/client/{chunk-6MRITTMD.js → chunk-UMJJTMDP.js} +2 -2
  222. package/dist/exports/client/{chunk-6MRITTMD.js.map → chunk-UMJJTMDP.js.map} +4 -4
  223. package/dist/exports/client/index.d.ts +4 -1
  224. package/dist/exports/client/index.d.ts.map +1 -1
  225. package/dist/exports/client/index.js +22 -19
  226. package/dist/exports/client/index.js.map +4 -4
  227. package/dist/exports/shared/index.d.ts +4 -0
  228. package/dist/exports/shared/index.d.ts.map +1 -1
  229. package/dist/exports/shared/index.js +2 -2
  230. package/dist/exports/shared/index.js.map +4 -4
  231. package/dist/fields/Array/index.scss +74 -72
  232. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.scss +25 -23
  233. package/dist/fields/Blocks/BlocksDrawer/index.scss +36 -34
  234. package/dist/fields/Blocks/SectionTitle/index.scss +51 -49
  235. package/dist/fields/Blocks/index.scss +89 -87
  236. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  237. package/dist/fields/Checkbox/index.js +1 -0
  238. package/dist/fields/Checkbox/index.js.map +1 -1
  239. package/dist/fields/Checkbox/index.scss +107 -105
  240. package/dist/fields/Code/index.scss +18 -16
  241. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  242. package/dist/fields/Collapsible/index.scss +8 -6
  243. package/dist/fields/ConfirmPassword/index.scss +18 -16
  244. package/dist/fields/DateTime/index.scss +13 -11
  245. package/dist/fields/Email/index.scss +21 -19
  246. package/dist/fields/FieldDescription/index.scss +9 -7
  247. package/dist/fields/FieldError/index.scss +13 -11
  248. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  249. package/dist/fields/FieldLabel/index.js +58 -30
  250. package/dist/fields/FieldLabel/index.js.map +1 -1
  251. package/dist/fields/FieldLabel/index.scss +34 -10
  252. package/dist/fields/Group/index.scss +107 -105
  253. package/dist/fields/JSON/index.d.ts.map +1 -1
  254. package/dist/fields/JSON/index.js +2 -0
  255. package/dist/fields/JSON/index.js.map +1 -1
  256. package/dist/fields/JSON/index.scss +11 -9
  257. package/dist/fields/Join/index.d.ts.map +1 -1
  258. package/dist/fields/Join/index.js +14 -4
  259. package/dist/fields/Join/index.js.map +1 -1
  260. package/dist/fields/Number/index.js +1 -1
  261. package/dist/fields/Number/index.js.map +1 -1
  262. package/dist/fields/Number/index.scss +19 -17
  263. package/dist/fields/Password/index.scss +18 -16
  264. package/dist/fields/Point/index.scss +33 -31
  265. package/dist/fields/RadioGroup/Radio/index.scss +58 -56
  266. package/dist/fields/RadioGroup/index.d.ts +1 -0
  267. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  268. package/dist/fields/RadioGroup/index.js +33 -30
  269. package/dist/fields/RadioGroup/index.js.map +1 -1
  270. package/dist/fields/RadioGroup/index.scss +57 -55
  271. package/dist/fields/Relationship/findOptionsByValue.d.ts +2 -1
  272. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  273. package/dist/fields/Relationship/findOptionsByValue.js +9 -2
  274. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  275. package/dist/fields/Relationship/index.d.ts.map +1 -1
  276. package/dist/fields/Relationship/index.js +2 -0
  277. package/dist/fields/Relationship/index.js.map +1 -1
  278. package/dist/fields/Relationship/index.scss +44 -42
  279. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +23 -20
  280. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  281. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +40 -38
  282. package/dist/fields/Relationship/select-components/SingleValue/index.js +24 -21
  283. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  284. package/dist/fields/Relationship/select-components/SingleValue/index.scss +43 -41
  285. package/dist/fields/Relationship/types.d.ts +1 -0
  286. package/dist/fields/Relationship/types.d.ts.map +1 -1
  287. package/dist/fields/Relationship/types.js.map +1 -1
  288. package/dist/fields/Row/index.scss +31 -29
  289. package/dist/fields/Select/index.scss +16 -14
  290. package/dist/fields/Tabs/Tab/index.scss +58 -56
  291. package/dist/fields/Tabs/index.d.ts.map +1 -1
  292. package/dist/fields/Tabs/index.js +69 -53
  293. package/dist/fields/Tabs/index.js.map +1 -1
  294. package/dist/fields/Tabs/index.scss +46 -44
  295. package/dist/fields/Text/index.scss +23 -21
  296. package/dist/fields/Textarea/index.d.ts.map +1 -1
  297. package/dist/fields/Textarea/index.js +3 -1
  298. package/dist/fields/Textarea/index.js.map +1 -1
  299. package/dist/fields/Textarea/index.scss +89 -87
  300. package/dist/fields/Upload/HasMany/index.d.ts +2 -0
  301. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
  302. package/dist/fields/Upload/HasMany/index.js +20 -16
  303. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  304. package/dist/fields/Upload/HasMany/index.scss +20 -18
  305. package/dist/fields/Upload/HasOne/index.d.ts +2 -0
  306. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -1
  307. package/dist/fields/Upload/HasOne/index.js +3 -1
  308. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  309. package/dist/fields/Upload/HasOne/index.scss +5 -3
  310. package/dist/fields/Upload/Input.d.ts +0 -1
  311. package/dist/fields/Upload/Input.d.ts.map +1 -1
  312. package/dist/fields/Upload/Input.js +170 -130
  313. package/dist/fields/Upload/Input.js.map +1 -1
  314. package/dist/fields/Upload/RelationshipContent/index.d.ts +2 -0
  315. package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -1
  316. package/dist/fields/Upload/RelationshipContent/index.js +61 -42
  317. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  318. package/dist/fields/Upload/RelationshipContent/index.scss +44 -42
  319. package/dist/fields/Upload/UploadCard/index.scss +21 -19
  320. package/dist/fields/Upload/index.scss +49 -47
  321. package/dist/fields/Upload/types.d.ts +4 -0
  322. package/dist/fields/Upload/types.d.ts.map +1 -0
  323. package/dist/fields/Upload/types.js +2 -0
  324. package/dist/fields/Upload/types.js.map +1 -0
  325. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  326. package/dist/forms/Form/fieldReducer.js +7 -0
  327. package/dist/forms/Form/fieldReducer.js.map +1 -1
  328. package/dist/forms/Form/index.scss +5 -3
  329. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  330. package/dist/forms/NullifyField/index.js +1 -0
  331. package/dist/forms/NullifyField/index.js.map +1 -1
  332. package/dist/forms/RenderFields/index.scss +47 -45
  333. package/dist/forms/Submit/index.scss +5 -3
  334. package/dist/forms/useField/index.d.ts.map +1 -1
  335. package/dist/forms/useField/index.js +1 -1
  336. package/dist/forms/useField/index.js.map +1 -1
  337. package/dist/graphics/Account/Default/index.scss +43 -41
  338. package/dist/icons/Calendar/index.scss +8 -6
  339. package/dist/icons/Check/index.scss +9 -7
  340. package/dist/icons/Chevron/index.scss +18 -16
  341. package/dist/icons/CloseMenu/index.scss +7 -5
  342. package/dist/icons/Copy/index.scss +9 -7
  343. package/dist/icons/DragHandle/index.scss +9 -7
  344. package/dist/icons/Edit/index.scss +9 -7
  345. package/dist/icons/Line/index.scss +8 -6
  346. package/dist/icons/Link/index.scss +8 -6
  347. package/dist/icons/Lock/index.scss +6 -4
  348. package/dist/icons/LogOut/index.scss +8 -6
  349. package/dist/icons/Menu/index.scss +6 -4
  350. package/dist/icons/More/index.scss +8 -6
  351. package/dist/icons/Plus/index.scss +6 -4
  352. package/dist/icons/Search/index.scss +8 -6
  353. package/dist/icons/Swap/index.scss +9 -7
  354. package/dist/icons/X/index.scss +6 -4
  355. package/dist/providers/Auth/index.d.ts +9 -4
  356. package/dist/providers/Auth/index.d.ts.map +1 -1
  357. package/dist/providers/Auth/index.js +51 -56
  358. package/dist/providers/Auth/index.js.map +1 -1
  359. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  360. package/dist/providers/Config/createClientConfig/collections.js +10 -0
  361. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  362. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  363. package/dist/providers/Config/createClientConfig/fields.js +22 -7
  364. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  365. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  366. package/dist/providers/DocumentInfo/index.js +25 -15
  367. package/dist/providers/DocumentInfo/index.js.map +1 -1
  368. package/dist/providers/DocumentInfo/types.d.ts +3 -2
  369. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  370. package/dist/providers/DocumentInfo/types.js.map +1 -1
  371. package/dist/providers/ListQuery/index.js +1 -1
  372. package/dist/providers/ListQuery/index.js.map +1 -1
  373. package/dist/providers/Root/index.js +0 -1
  374. package/dist/providers/Root/index.js.map +1 -1
  375. package/dist/providers/ScrollInfo/index.d.ts +1 -3
  376. package/dist/providers/ScrollInfo/index.d.ts.map +1 -1
  377. package/dist/providers/ScrollInfo/index.js +1 -12
  378. package/dist/providers/ScrollInfo/index.js.map +1 -1
  379. package/dist/providers/Selection/index.js +3 -3
  380. package/dist/providers/Selection/index.js.map +1 -1
  381. package/dist/providers/Theme/index.d.ts +0 -1
  382. package/dist/providers/Theme/index.d.ts.map +1 -1
  383. package/dist/providers/Theme/index.js +29 -21
  384. package/dist/providers/Theme/index.js.map +1 -1
  385. package/dist/scss/app.scss +166 -162
  386. package/dist/scss/colors.scss +256 -254
  387. package/dist/scss/resets.scss +9 -7
  388. package/dist/scss/toastify.scss +42 -40
  389. package/dist/scss/toasts.scss +105 -103
  390. package/dist/scss/type.scss +81 -79
  391. package/dist/styles.css +1 -1
  392. package/dist/utilities/buildFormState.d.ts.map +1 -1
  393. package/dist/utilities/buildFormState.js +53 -5
  394. package/dist/utilities/buildFormState.js.map +1 -1
  395. package/dist/utilities/getFormState.d.ts.map +1 -1
  396. package/dist/utilities/getFormState.js.map +1 -1
  397. package/dist/utilities/handleBackToDashboard.d.ts +8 -0
  398. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -0
  399. package/dist/utilities/handleBackToDashboard.js +12 -0
  400. package/dist/utilities/handleBackToDashboard.js.map +1 -0
  401. package/dist/utilities/handleGoBack.d.ts +9 -0
  402. package/dist/utilities/handleGoBack.d.ts.map +1 -0
  403. package/dist/utilities/handleGoBack.js +13 -0
  404. package/dist/utilities/handleGoBack.js.map +1 -0
  405. package/dist/utilities/handleTakeOver.d.ts +7 -0
  406. package/dist/utilities/handleTakeOver.d.ts.map +1 -0
  407. package/dist/utilities/handleTakeOver.js +27 -0
  408. package/dist/utilities/handleTakeOver.js.map +1 -0
  409. package/dist/utilities/isClientUserObject.d.ts +3 -0
  410. package/dist/utilities/isClientUserObject.d.ts.map +1 -0
  411. package/dist/utilities/isClientUserObject.js +4 -0
  412. package/dist/utilities/isClientUserObject.js.map +1 -0
  413. package/package.json +10 -10
  414. package/dist/exports/client/CodeEditor-CXCLJBIQ.js.map +0 -8
  415. package/dist/exports/client/chunk-W2YIQDPJ.js +0 -14
  416. package/dist/exports/client/chunk-W2YIQDPJ.js.map +0 -8
  417. /package/dist/exports/client/{DatePicker-NBYDOP2X.js.map → DatePicker-FUJV23KL.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"DrawerContent.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useReducer","useRef","useState","SelectMany","FieldLabel","usePayloadAPI","useThrottledEffect","XIcon","useAuth","useConfig","RenderComponent","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","t0","$","collectionSlugs","customHeader","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","selectedCollection","i18n","t","permissions","getPreference","setPreference","closeModal","isModalOpen","limit","setLimit","previousLimit","sort","setSort","page","setPage","setWhere","search","setSearch","showLoadingOverlay","setShowLoadingOverlay","hasInitialised","params","config","t1","collections","routes","t2","serverURL","api","t3","t4","t5","slug","includes","filter","enabledCollectionConfigs","find","slug_0","selectedCollectionConfig","setSelectedCollectionConfig","List","admin","components","views","list","Component","label","labels","singular","value","undefined","selectedOption","setSelectedOption","t6","selectedConfig","t7","slug_1","preferencesKey","t8","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t9","documentDrawerSlug","t10","t11","Array","isArray","t12","slug_2","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","_temp","t13","initialParams","depth","t14","t15","data","isError","isLoading","isLoadingList","setParams","moreThanOneAvailableCollection","length","t16","slug_3","t17","versions","listSearchableFields","useAsTitle","params_0","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","current","drafts","draft","t18","t19","newPreferences","t20","t21","getInitialPref","existingPreferences","t22","t23","t24","t25","t26","t27","t28","t29","doc","docID","id","onCreateNew","_jsx","t30","plural","t31","className","children","t32","t33","description","Description","t34","t35","rowColl","rowData","_jsxs","_Fragment","beforeActions","onClick","collectionConfig","disableBulkDelete","disableBulkEdit","Header","type","field","onChange","options","coll","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","preferenceKey","cellProps","link","mappedComponent","onSave","state"],"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, useRef, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.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\nexport const 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 enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getPreference, setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n // Track the page limit so we can reset the page number when it changes\n const previousLimit = useRef<number>(limit || null)\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 const [showLoadingOverlay, setShowLoadingOverlay] = useState<boolean>(true)\n const hasInitialised = useRef(false)\n\n const params = {\n limit,\n page,\n search,\n sort,\n where,\n }\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 // 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 preferencesKey = `${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\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) {\n params.page = page\n }\n if (sort) {\n params.sort = sort\n }\n if (cacheBust) {\n params.cacheBust = cacheBust\n }\n if (limit) {\n params.limit = limit\n\n if (limit !== previousLimit.current) {\n previousLimit.current = limit\n\n // Reset page if limit changes\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setPage(1)\n }\n }\n if (copyOfWhere) {\n params.where = copyOfWhere\n }\n if (versions?.drafts) {\n params.draft = 'true'\n }\n\n setParams(params)\n }, [\n page,\n sort,\n where,\n search,\n limit,\n cacheBust,\n filterOptions,\n selectedCollectionConfig,\n t,\n setParams,\n ])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n if (limit || sort) {\n void setPreference(preferencesKey, newPreferences, true)\n }\n }, [sort, limit, setPreference, preferencesKey])\n\n // Get existing preferences if they exist\n useEffect(() => {\n if (preferencesKey && !limit) {\n const getInitialPref = async () => {\n const existingPreferences = await getPreference<{ limit?: number }>(preferencesKey)\n\n if (existingPreferences?.limit) {\n setLimit(existingPreferences?.limit)\n }\n }\n void getInitialPref()\n }\n }, [getPreference, limit, preferencesKey])\n\n useThrottledEffect(\n () => {\n if (isLoadingList) {\n setShowLoadingOverlay(true)\n }\n },\n 1750,\n [isLoadingList, setShowLoadingOverlay],\n )\n\n useEffect(() => {\n if (isOpen) {\n hasInitialised.current = true\n } else {\n hasInitialised.current = false\n }\n }, [isOpen])\n\n useEffect(() => {\n if (!isLoadingList && showLoadingOverlay) {\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setShowLoadingOverlay(false)\n }\n }, [isLoadingList, showLoadingOverlay])\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 return (\n <>\n {showLoadingOverlay && <LoadingOverlay />}\n <ListInfoProvider\n beforeActions={\n enableRowSelections\n ? [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : undefined\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n disableBulkDelete\n disableBulkEdit\n hasCreatePermission={hasCreatePermission}\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 selectedCollectionConfig?.admin?.components?.Description) && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription\n Description={selectedCollectionConfig.admin?.components?.Description}\n description={selectedCollectionConfig.admin?.description}\n />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel field={null} 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 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 // @ts-expect-error todo: fix types\n params={params}\n preferenceKey={preferencesKey}\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 enableRowSelections={enableRowSelections}\n preferenceKey={preferencesKey}\n >\n <RenderComponent mappedComponent={List} />\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DrawerContent.js","names":["c","_c","useModal","getTranslation","React","useCallback","useEffect","useReducer","useRef","useState","SelectMany","FieldLabel","usePayloadAPI","useThrottledEffect","XIcon","useAuth","useConfig","RenderComponent","ListInfoProvider","ListQueryProvider","usePreferences","useTranslation","useDocumentDrawer","LoadingOverlay","Pill","ReactSelect","TableColumnsProvider","ViewDescription","baseClass","hoistQueryParamsToAnd","where","queryParams","and","push","ListDrawerContent","t0","$","allowCreate","t1","collectionSlugs","customHeader","drawerSlug","enableRowSelections","filterOptions","onBulkSelect","onSelect","selectedCollection","undefined","i18n","t","permissions","getPreference","setPreference","closeModal","isModalOpen","limit","setLimit","previousLimit","sort","setSort","page","setPage","setWhere","search","setSearch","showLoadingOverlay","setShowLoadingOverlay","hasInitialised","params","config","t2","collections","routes","t3","serverURL","api","t4","t5","t6","slug","includes","filter","enabledCollectionConfigs","find","slug_0","selectedCollectionConfig","setSelectedCollectionConfig","List","admin","components","views","list","Component","label","labels","singular","value","selectedOption","setSelectedOption","t7","selectedConfig","t8","slug_1","preferencesKey","t9","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t10","documentDrawerSlug","t11","t12","Array","isArray","t13","slug_2","collectionPermissions","hasCreatePermission","create","permission","isOpen","apiURL","cacheBust","dispatchCacheBust","_temp","t14","initialParams","depth","t15","t16","data","isError","isLoading","isLoadingList","setParams","moreThanOneAvailableCollection","length","t17","slug_3","t18","versions","listSearchableFields","useAsTitle","params_0","copyOfWhere","filterOption","searchAsConditions","map","fieldName","like","searchFilter","or","current","drafts","draft","t19","t20","newPreferences","t21","t22","getInitialPref","existingPreferences","t23","t24","t25","t26","t27","t28","t29","t30","doc","docID","id","onCreateNew","t31","rowColl","rowData","tableColumnCellProps","className","link","onClick","unshift","_jsx","t32","plural","t33","children","t34","t35","description","Description","_jsxs","_Fragment","beforeActions","collectionConfig","disableBulkDelete","disableBulkEdit","Header","type","field","onChange","options","coll","defaultLimit","pagination","defaultSort","handlePageChange","handlePerPageChange","handleSearchChange","handleSortChange","handleWhereChange","modifySearchParams","preferenceKey","cellProps","mappedComponent","onSave","state"],"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, useRef, useState } from 'react'\n\nimport type { ListDrawerProps } from './types.js'\n\nimport { SelectMany } from '../../elements/SelectMany/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { usePayloadAPI } from '../../hooks/usePayloadAPI.js'\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.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\nexport const 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 allowCreate = true,\n collectionSlugs,\n customHeader,\n drawerSlug,\n enableRowSelections,\n filterOptions,\n onBulkSelect,\n onSelect,\n selectedCollection,\n}) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getPreference, setPreference } = usePreferences()\n const { closeModal, isModalOpen } = useModal()\n const [limit, setLimit] = useState<number>()\n // Track the page limit so we can reset the page number when it changes\n const previousLimit = useRef<number>(limit || null)\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 const [showLoadingOverlay, setShowLoadingOverlay] = useState<boolean>(true)\n const hasInitialised = useRef(false)\n\n const params = {\n limit,\n page,\n search,\n sort,\n where,\n }\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 // 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 preferencesKey = `${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 && allowCreate\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\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) {\n params.page = page\n }\n if (sort) {\n params.sort = sort\n }\n if (cacheBust) {\n params.cacheBust = cacheBust\n }\n if (limit) {\n params.limit = limit\n\n if (limit !== previousLimit.current) {\n previousLimit.current = limit\n\n // Reset page if limit changes\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setPage(1)\n }\n }\n if (copyOfWhere) {\n params.where = copyOfWhere\n }\n if (versions?.drafts) {\n params.draft = 'true'\n }\n\n setParams(params)\n }, [\n page,\n sort,\n where,\n search,\n limit,\n cacheBust,\n filterOptions,\n selectedCollectionConfig,\n t,\n setParams,\n ])\n\n useEffect(() => {\n const newPreferences = {\n limit,\n sort,\n }\n\n if (limit || sort) {\n void setPreference(preferencesKey, newPreferences, true)\n }\n }, [sort, limit, setPreference, preferencesKey])\n\n // Get existing preferences if they exist\n useEffect(() => {\n if (preferencesKey && !limit) {\n const getInitialPref = async () => {\n const existingPreferences = await getPreference<{ limit?: number }>(preferencesKey)\n\n if (existingPreferences?.limit) {\n setLimit(existingPreferences?.limit)\n }\n }\n void getInitialPref()\n }\n }, [getPreference, limit, preferencesKey])\n\n useThrottledEffect(\n () => {\n if (isLoadingList) {\n setShowLoadingOverlay(true)\n }\n },\n 1750,\n [isLoadingList, setShowLoadingOverlay],\n )\n\n useEffect(() => {\n if (isOpen) {\n hasInitialised.current = true\n } else {\n hasInitialised.current = false\n }\n }, [isOpen])\n\n useEffect(() => {\n if (!isLoadingList && showLoadingOverlay) {\n // eslint-disable-next-line @eslint-react/hooks-extra/no-direct-set-state-in-use-effect\n setShowLoadingOverlay(false)\n }\n }, [isLoadingList, showLoadingOverlay])\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 /**\n * Cell props for the table columns, we want the first item to be a clickable cell\n */\n const tableColumnCellProps = [\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\n /**\n * Table column cell props are being assigned by the column index\n * so if enableRowSelections is true, we need to add an extra cellProps object to the start of the array\n * to account for the first cell being the checkbox for row selection.\n */\n if (enableRowSelections) {\n tableColumnCellProps.unshift(undefined)\n }\n\n return (\n <>\n {showLoadingOverlay && <LoadingOverlay />}\n <ListInfoProvider\n beforeActions={\n enableRowSelections\n ? [<SelectMany key=\"select-many\" onClick={onBulkSelect} />]\n : undefined\n }\n collectionConfig={selectedCollectionConfig}\n collectionSlug={selectedCollectionConfig.slug}\n disableBulkDelete\n disableBulkEdit\n hasCreatePermission={hasCreatePermission}\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 selectedCollectionConfig?.admin?.components?.Description) && (\n <div className={`${baseClass}__sub-header`}>\n <ViewDescription\n Description={selectedCollectionConfig.admin?.components?.Description}\n description={selectedCollectionConfig.admin?.description}\n />\n </div>\n )}\n {moreThanOneAvailableCollection && (\n <div className={`${baseClass}__select-collection-wrap`}>\n <FieldLabel field={null} 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 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 // @ts-expect-error todo: fix types\n params={params}\n preferenceKey={preferencesKey}\n >\n <TableColumnsProvider\n cellProps={tableColumnCellProps}\n collectionSlug={selectedCollectionConfig.slug}\n enableRowSelections={enableRowSelections}\n preferenceKey={preferencesKey}\n >\n <RenderComponent mappedComponent={List} />\n <DocumentDrawer onSave={onCreateNew} />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -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,aA4F3B,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,CAmBxD,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAQhD,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,aA4F3B,CAAA"}
@@ -21,11 +21,13 @@ export const ListDrawerToggler = ({
21
21
  className,
22
22
  disabled,
23
23
  drawerSlug,
24
+ onClick,
24
25
  ...rest
25
26
  }) => {
26
27
  return /*#__PURE__*/_jsx(DrawerToggler, {
27
28
  className: [className, `${baseClass}__toggler`].filter(Boolean).join(' '),
28
29
  disabled: disabled,
30
+ onClick: onClick,
29
31
  slug: drawerSlug,
30
32
  ...rest,
31
33
  children: children
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","rest","_jsx","filter","Boolean","join","slug","ListDrawer","props","gutter","Header","useListDrawer","t0","$","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","config","t1","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","t2","t3","t4","t5","t6","length","filteredCollectionSlugs","t7","upload","map","t8","toggleDrawer","closeDrawer","t9","openDrawer","t10","t11","_createElement","key","MemoizedDrawer","t12","t13","props_0","MemoizedDrawerToggler","t14","t15","isDrawerOpen","MemoizedDrawerState","t16"],"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 className={baseClass} gutter={false} Header={null} 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\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 collectionSlugs,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n setCollectionSlugs,\n toggleDrawer,\n }),\n [\n drawerDepth,\n drawerSlug,\n isOpen,\n toggleDrawer,\n closeDrawer,\n openDrawer,\n setCollectionSlugs,\n collectionSlugs,\n ],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","React","useCallback","useEffect","useId","useMemo","useState","useConfig","useEditDepth","Drawer","DrawerToggler","ListDrawerContent","baseClass","formatListDrawerSlug","depth","uuid","ListDrawerToggler","children","className","disabled","drawerSlug","onClick","rest","_jsx","filter","Boolean","join","slug","ListDrawer","props","gutter","Header","useListDrawer","t0","$","collectionSlugs","collectionSlugsFromProps","filterOptions","selectedCollection","uploads","config","t1","collections","drawerDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","setCollectionSlugs","t2","t3","t4","t5","t6","length","filteredCollectionSlugs","t7","upload","map","t8","toggleDrawer","closeDrawer","t9","openDrawer","t10","t11","_createElement","key","MemoizedDrawer","t12","t13","props_0","MemoizedDrawerToggler","t14","t15","isDrawerOpen","MemoizedDrawerState","t16"],"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 onClick,\n ...rest\n}) => {\n return (\n <DrawerToggler\n className={[className, `${baseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n onClick={onClick}\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 className={baseClass} gutter={false} Header={null} 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\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 collectionSlugs,\n drawerDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n setCollectionSlugs,\n toggleDrawer,\n }),\n [\n drawerDepth,\n drawerSlug,\n isOpen,\n toggleDrawer,\n closeDrawer,\n openDrawer,\n setCollectionSlugs,\n collectionSlugs,\n ],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,116 +1,118 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .list-drawer {
4
- &__header {
5
- margin-top: base(2.5);
6
- width: 100%;
7
-
8
- @include mid-break {
9
- margin-top: base(1.5);
3
+ @layer payload-default {
4
+ .list-drawer {
5
+ &__header {
6
+ margin-top: base(2.5);
7
+ width: 100%;
8
+
9
+ @include mid-break {
10
+ margin-top: base(1.5);
11
+ }
10
12
  }
11
- }
12
13
 
13
- &__header-wrap {
14
- display: flex;
15
- gap: base(1);
16
- }
17
-
18
- &__header-content {
19
- display: flex;
20
- flex-wrap: wrap;
21
- flex-grow: 1;
22
- align-items: flex-start;
23
- align-items: center;
24
-
25
- button .pill {
26
- pointer-events: none;
27
- margin: 0;
28
- top: 4px;
29
- margin-left: base(0.5);
14
+ &__header-wrap {
15
+ display: flex;
16
+ gap: base(1);
30
17
  }
31
- }
32
18
 
33
- &__header-text {
34
- margin: 0;
35
- }
36
-
37
- &__header-close {
38
- flex-shrink: 0;
39
- }
19
+ &__header-content {
20
+ display: flex;
21
+ flex-wrap: wrap;
22
+ flex-grow: 1;
23
+ align-items: flex-start;
24
+ align-items: center;
40
25
 
41
- &__toggler {
42
- background: transparent;
43
- border: 0;
44
- padding: 0;
45
- cursor: pointer;
46
- color: inherit;
47
- border-radius: var(--style-radius-s);
48
-
49
- &:focus:not(:focus-visible),
50
- &:focus-within:not(:focus-visible) {
51
- outline: none;
26
+ button .pill {
27
+ pointer-events: none;
28
+ margin: 0;
29
+ top: 4px;
30
+ margin-left: base(0.5);
31
+ }
52
32
  }
53
33
 
54
- &:focus-visible {
55
- outline: var(--accessibility-outline);
56
- outline-offset: var(--accessibility-outline-offset);
34
+ &__header-text {
35
+ margin: 0;
57
36
  }
58
37
 
59
- &:disabled {
60
- pointer-events: none;
38
+ &__header-close {
39
+ flex-shrink: 0;
61
40
  }
62
- }
63
41
 
64
- &__header-close {
65
- border: 0;
66
- background-color: transparent;
67
- padding: 0;
68
- margin: 0;
69
- cursor: pointer;
70
- overflow: hidden;
71
- width: base(1);
72
- height: base(1);
73
-
74
- svg {
75
- width: base(2);
76
- height: base(2);
77
- position: relative;
78
- inset-inline-start: base(-0.5);
79
- top: base(-0.5);
80
-
81
- .stroke {
82
- stroke-width: 2px;
83
- vector-effect: non-scaling-stroke;
42
+ &__toggler {
43
+ background: transparent;
44
+ border: 0;
45
+ padding: 0;
46
+ cursor: pointer;
47
+ color: inherit;
48
+ border-radius: var(--style-radius-s);
49
+
50
+ &:focus:not(:focus-visible),
51
+ &:focus-within:not(:focus-visible) {
52
+ outline: none;
84
53
  }
85
- }
86
- }
87
54
 
88
- &__select-collection-wrap {
89
- margin-top: base(1);
90
- }
55
+ &:focus-visible {
56
+ outline: var(--accessibility-outline);
57
+ outline-offset: var(--accessibility-outline-offset);
58
+ }
91
59
 
92
- &__first-cell {
93
- border: 0;
94
- background-color: transparent;
95
- padding: 0;
96
- cursor: pointer;
97
- text-decoration: underline;
98
- text-align: left;
99
- white-space: nowrap;
100
- }
60
+ &:disabled {
61
+ pointer-events: none;
62
+ }
63
+ }
101
64
 
102
- @include mid-break {
103
- .collection-list__header {
104
- margin-bottom: base(0.5);
65
+ &__header-close {
66
+ border: 0;
67
+ background-color: transparent;
68
+ padding: 0;
69
+ margin: 0;
70
+ cursor: pointer;
71
+ overflow: hidden;
72
+ width: base(1);
73
+ height: base(1);
74
+
75
+ svg {
76
+ width: base(2);
77
+ height: base(2);
78
+ position: relative;
79
+ inset-inline-start: base(-0.5);
80
+ top: base(-0.5);
81
+
82
+ .stroke {
83
+ stroke-width: 2px;
84
+ vector-effect: non-scaling-stroke;
85
+ }
86
+ }
105
87
  }
106
88
 
107
89
  &__select-collection-wrap {
108
- margin-top: calc(var(--base) / 2);
90
+ margin-top: base(1);
109
91
  }
110
92
 
111
- &__header-content {
112
- button .pill {
113
- top: 2px;
93
+ &__first-cell {
94
+ border: 0;
95
+ background-color: transparent;
96
+ padding: 0;
97
+ cursor: pointer;
98
+ text-decoration: underline;
99
+ text-align: left;
100
+ white-space: nowrap;
101
+ }
102
+
103
+ @include mid-break {
104
+ .collection-list__header {
105
+ margin-bottom: base(0.5);
106
+ }
107
+
108
+ &__select-collection-wrap {
109
+ margin-top: calc(var(--base) / 2);
110
+ }
111
+
112
+ &__header-content {
113
+ button .pill {
114
+ top: 2px;
115
+ }
114
116
  }
115
117
  }
116
118
  }
@@ -3,6 +3,7 @@ import type React from 'react';
3
3
  import type { HTMLAttributes } from 'react';
4
4
  import type { useSelection } from '../../providers/Selection/index.js';
5
5
  export type ListDrawerProps = {
6
+ readonly allowCreate?: boolean;
6
7
  readonly collectionSlugs: string[];
7
8
  readonly customHeader?: React.ReactNode;
8
9
  readonly drawerSlug?: string;
@@ -27,8 +28,8 @@ export type UseListDrawer = (args: {
27
28
  selectedCollection?: string;
28
29
  uploads?: boolean;
29
30
  }) => [
30
- React.FC<Pick<ListDrawerProps, 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>,
31
- React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>,
31
+ React.FC<Pick<ListDrawerProps, 'allowCreate' | 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>,
32
+ React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled' | 'onClick'>>,
32
33
  {
33
34
  closeDrawer: () => void;
34
35
  collectionSlugs: SanitizedCollectionConfig['slug'][];
@@ -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,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAEtE,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,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IACvF,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,qBAAqB,GAAG,cAAc,GAAG,UAAU,CAAC,CAAC;IACpF,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;IACvE;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,eAAe,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;QACpD,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7F,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,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAA;AAEtE,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,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,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,UAAU,CAAC,KAAK,IAAI,CAAA;IACvF,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,CACN,IAAI,CAAC,eAAe,EAAE,aAAa,GAAG,qBAAqB,GAAG,cAAc,GAAG,UAAU,CAAC,CAC3F;IACD,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC,CAAC;IACnF;QACE,WAAW,EAAE,MAAM,IAAI,CAAA;QACvB,eAAe,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAA;QACpD,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,MAAM,CAAA;QAClB,YAAY,EAAE,OAAO,CAAA;QACrB,UAAU,EAAE,MAAM,IAAI,CAAA;QACtB,kBAAkB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7F,YAAY,EAAE,MAAM,IAAI,CAAA;KACzB;CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\n\nexport type ListDrawerProps = {\n readonly collectionSlugs: string[]\n readonly customHeader?: React.ReactNode\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\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, 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>>, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled'>>, // toggler\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"mappings":"AA2BA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/ListDrawer/types.ts"],"sourcesContent":["import type { FilterOptionsResult, SanitizedCollectionConfig } from 'payload'\nimport type React from 'react'\nimport type { HTMLAttributes } from 'react'\n\nimport type { useSelection } from '../../providers/Selection/index.js'\n\nexport type ListDrawerProps = {\n readonly allowCreate?: boolean\n readonly collectionSlugs: string[]\n readonly customHeader?: React.ReactNode\n readonly drawerSlug?: string\n readonly enableRowSelections?: boolean\n readonly filterOptions?: FilterOptionsResult\n readonly onBulkSelect?: (selected: ReturnType<typeof useSelection>['selected']) => void\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<\n Pick<ListDrawerProps, 'allowCreate' | 'enableRowSelections' | 'onBulkSelect' | 'onSelect'>\n >, // drawer\n React.FC<Pick<ListTogglerProps, 'children' | 'className' | 'disabled' | 'onClick'>>, // toggler\n {\n closeDrawer: () => void\n collectionSlugs: SanitizedCollectionConfig['slug'][]\n drawerDepth: number\n drawerSlug: string\n isDrawerOpen: boolean\n openDrawer: () => void\n setCollectionSlugs: React.Dispatch<React.SetStateAction<SanitizedCollectionConfig['slug'][]>>\n toggleDrawer: () => void\n },\n]\n"],"mappings":"AA4BA","ignoreList":[]}
@@ -1,10 +1,12 @@
1
- .list-header {
2
- display: flex;
3
- align-items: flex-end;
4
- flex-wrap: wrap;
5
- gap: calc(var(--base) * 0.8);
1
+ @layer payload-default {
2
+ .list-header {
3
+ display: flex;
4
+ align-items: flex-end;
5
+ flex-wrap: wrap;
6
+ gap: calc(var(--base) * 0.8);
6
7
 
7
- h1 {
8
- margin: 0;
8
+ h1 {
9
+ margin: 0;
10
+ }
9
11
  }
10
12
  }
@@ -1,18 +1,20 @@
1
1
  @import '../../scss/styles.scss';
2
2
 
3
- .list-selection {
4
- margin-left: auto;
5
- color: var(--theme-elevation-500);
6
-
7
- &__button {
3
+ @layer payload-default {
4
+ .list-selection {
5
+ margin-left: auto;
8
6
  color: var(--theme-elevation-500);
9
- background: unset;
10
- border: none;
11
- text-decoration: underline;
12
- cursor: pointer;
13
- }
14
7
 
15
- @include small-break {
16
- margin-bottom: base(0.5);
8
+ &__button {
9
+ color: var(--theme-elevation-500);
10
+ background: unset;
11
+ border: none;
12
+ text-decoration: underline;
13
+ cursor: pointer;
14
+ }
15
+
16
+ @include small-break {
17
+ margin-bottom: base(0.5);
18
+ }
17
19
  }
18
20
  }