@payloadcms/ui 3.0.0-beta.35 → 3.0.0-beta.36

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 (541) hide show
  1. package/dist/elements/AppHeader/index.js +64 -39
  2. package/dist/elements/AppHeader/index.js.map +1 -1
  3. package/dist/elements/ArrayAction/index.js +75 -41
  4. package/dist/elements/ArrayAction/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.js +15 -8
  6. package/dist/elements/Autosave/index.js.map +1 -1
  7. package/dist/elements/Banner/index.js +16 -5
  8. package/dist/elements/Banner/index.js.map +1 -1
  9. package/dist/elements/Button/index.js +53 -31
  10. package/dist/elements/Button/index.js.map +1 -1
  11. package/dist/elements/Card/index.js +23 -15
  12. package/dist/elements/Card/index.js.map +1 -1
  13. package/dist/elements/CodeEditor/CodeEditor.js +3 -2
  14. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  15. package/dist/elements/CodeEditor/index.js +8 -6
  16. package/dist/elements/CodeEditor/index.js.map +1 -1
  17. package/dist/elements/Collapsible/index.js +63 -38
  18. package/dist/elements/Collapsible/index.js.map +1 -1
  19. package/dist/elements/Collapsible/provider.js +5 -3
  20. package/dist/elements/Collapsible/provider.js.map +1 -1
  21. package/dist/elements/ColumnSelector/index.js +24 -22
  22. package/dist/elements/ColumnSelector/index.js.map +1 -1
  23. package/dist/elements/CopyToClipboard/index.js +21 -11
  24. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  25. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  26. package/dist/elements/DatePicker/DatePicker.js +29 -17
  27. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  28. package/dist/elements/DatePicker/index.js +7 -3
  29. package/dist/elements/DatePicker/index.js.map +1 -1
  30. package/dist/elements/DeleteDocument/index.js +57 -32
  31. package/dist/elements/DeleteDocument/index.js.map +1 -1
  32. package/dist/elements/DeleteMany/index.js +43 -23
  33. package/dist/elements/DeleteMany/index.js.map +1 -1
  34. package/dist/elements/DocumentControls/index.d.ts +1 -0
  35. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  36. package/dist/elements/DocumentControls/index.js +180 -101
  37. package/dist/elements/DocumentControls/index.js.map +1 -1
  38. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  39. package/dist/elements/DocumentDrawer/DrawerContent.js +30 -24
  40. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  41. package/dist/elements/DocumentDrawer/index.js +14 -8
  42. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  43. package/dist/elements/DocumentFields/index.js +52 -34
  44. package/dist/elements/DocumentFields/index.js.map +1 -1
  45. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +14 -11
  46. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  47. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +16 -5
  48. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  49. package/dist/elements/DocumentHeader/Tabs/index.js +64 -56
  50. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  51. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +5 -3
  52. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  53. package/dist/elements/DocumentHeader/index.js +21 -11
  54. package/dist/elements/DocumentHeader/index.js.map +1 -1
  55. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +14 -11
  56. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  57. package/dist/elements/DraggableSortable/index.js +12 -8
  58. package/dist/elements/DraggableSortable/index.js.map +1 -1
  59. package/dist/elements/Drawer/index.js +58 -35
  60. package/dist/elements/Drawer/index.js.map +1 -1
  61. package/dist/elements/Dropzone/index.js +30 -18
  62. package/dist/elements/Dropzone/index.js.map +1 -1
  63. package/dist/elements/DuplicateDocument/index.js +37 -17
  64. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  65. package/dist/elements/EditMany/index.d.ts.map +1 -1
  66. package/dist/elements/EditMany/index.js +112 -76
  67. package/dist/elements/EditMany/index.js.map +1 -1
  68. package/dist/elements/EditUpload/index.js +233 -151
  69. package/dist/elements/EditUpload/index.js.map +1 -1
  70. package/dist/elements/ErrorPill/index.js +14 -7
  71. package/dist/elements/ErrorPill/index.js.map +1 -1
  72. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  73. package/dist/elements/FieldSelect/index.js +42 -25
  74. package/dist/elements/FieldSelect/index.js.map +1 -1
  75. package/dist/elements/FileDetails/FileMeta/index.js +54 -20
  76. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  77. package/dist/elements/FileDetails/index.js +42 -30
  78. package/dist/elements/FileDetails/index.js.map +1 -1
  79. package/dist/elements/GenerateConfirmation/index.js +48 -26
  80. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  81. package/dist/elements/Gutter/index.js +5 -3
  82. package/dist/elements/Gutter/index.js.map +1 -1
  83. package/dist/elements/Hamburger/index.js +48 -27
  84. package/dist/elements/Hamburger/index.js.map +1 -1
  85. package/dist/elements/IDLabel/index.js +9 -3
  86. package/dist/elements/IDLabel/index.js.map +1 -1
  87. package/dist/elements/ListControls/index.js +94 -62
  88. package/dist/elements/ListControls/index.js.map +1 -1
  89. package/dist/elements/ListDrawer/DrawerContent.js +97 -67
  90. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  91. package/dist/elements/ListDrawer/index.js +14 -8
  92. package/dist/elements/ListDrawer/index.js.map +1 -1
  93. package/dist/elements/ListSelection/index.js +31 -17
  94. package/dist/elements/ListSelection/index.js.map +1 -1
  95. package/dist/elements/Loading/index.js +31 -18
  96. package/dist/elements/Loading/index.js.map +1 -1
  97. package/dist/elements/LoadingOverlay/index.js +13 -8
  98. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  99. package/dist/elements/Localizer/LocalizerLabel/index.js +19 -9
  100. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  101. package/dist/elements/Localizer/index.js +31 -24
  102. package/dist/elements/Localizer/index.js.map +1 -1
  103. package/dist/elements/Logout/index.js +9 -5
  104. package/dist/elements/Logout/index.js.map +1 -1
  105. package/dist/elements/Nav/NavHamburger/index.js +7 -5
  106. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  107. package/dist/elements/Nav/NavToggler/index.js +5 -3
  108. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  109. package/dist/elements/Nav/NavWrapper/index.js +9 -6
  110. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  111. package/dist/elements/Nav/context.d.ts +1 -1
  112. package/dist/elements/Nav/context.d.ts.map +1 -1
  113. package/dist/elements/Nav/context.js +5 -3
  114. package/dist/elements/Nav/context.js.map +1 -1
  115. package/dist/elements/Nav/index.client.js +43 -35
  116. package/dist/elements/Nav/index.client.js.map +1 -1
  117. package/dist/elements/Nav/index.js +31 -19
  118. package/dist/elements/Nav/index.js.map +1 -1
  119. package/dist/elements/NavGroup/index.js +39 -24
  120. package/dist/elements/NavGroup/index.js.map +1 -1
  121. package/dist/elements/Pagination/ClickableArrow/index.js +5 -3
  122. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  123. package/dist/elements/Pagination/Page/index.js +5 -3
  124. package/dist/elements/Pagination/Page/index.js.map +1 -1
  125. package/dist/elements/Pagination/Separator/index.js +5 -3
  126. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  127. package/dist/elements/Pagination/index.js +17 -17
  128. package/dist/elements/Pagination/index.js.map +1 -1
  129. package/dist/elements/PerPage/index.js +46 -28
  130. package/dist/elements/PerPage/index.js.map +1 -1
  131. package/dist/elements/Pill/index.js +25 -12
  132. package/dist/elements/Pill/index.js.map +1 -1
  133. package/dist/elements/Popup/PopupButtonList/index.js +17 -12
  134. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  135. package/dist/elements/Popup/PopupTrigger/index.js +9 -6
  136. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  137. package/dist/elements/Popup/index.js +52 -35
  138. package/dist/elements/Popup/index.js.map +1 -1
  139. package/dist/elements/PreviewButton/index.js +6 -4
  140. package/dist/elements/PreviewButton/index.js.map +1 -1
  141. package/dist/elements/PreviewSizes/index.js +81 -49
  142. package/dist/elements/PreviewSizes/index.js.map +1 -1
  143. package/dist/elements/{Publish → PublishButton}/index.d.ts +1 -1
  144. package/dist/elements/PublishButton/index.d.ts.map +1 -0
  145. package/dist/elements/PublishButton/index.js +40 -0
  146. package/dist/elements/PublishButton/index.js.map +1 -0
  147. package/dist/elements/PublishMany/index.js +42 -22
  148. package/dist/elements/PublishMany/index.js.map +1 -1
  149. package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
  150. package/dist/elements/ReactSelect/ClearIndicator/index.js +9 -6
  151. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  152. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  153. package/dist/elements/ReactSelect/Control/index.js +27 -23
  154. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  155. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +1 -1
  156. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  157. package/dist/elements/ReactSelect/DropdownIndicator/index.js +7 -5
  158. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  159. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  160. package/dist/elements/ReactSelect/MultiValue/index.js +20 -17
  161. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  162. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  163. package/dist/elements/ReactSelect/MultiValueLabel/index.js +11 -9
  164. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  165. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts +1 -1
  166. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  167. package/dist/elements/ReactSelect/MultiValueRemove/index.js +14 -8
  168. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  169. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  170. package/dist/elements/ReactSelect/SingleValue/index.js +11 -7
  171. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  172. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  173. package/dist/elements/ReactSelect/ValueContainer/index.js +7 -3
  174. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  175. package/dist/elements/ReactSelect/index.js +15 -7
  176. package/dist/elements/ReactSelect/index.js.map +1 -1
  177. package/dist/elements/ReactSelect/types.d.ts +1 -1
  178. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  179. package/dist/elements/ReactSelect/types.js.map +1 -1
  180. package/dist/elements/RenderCustomComponent/index.js +3 -2
  181. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  182. package/dist/elements/RenderTitle/index.js +8 -6
  183. package/dist/elements/RenderTitle/index.js.map +1 -1
  184. package/dist/elements/{Save → SaveButton}/index.d.ts +1 -1
  185. package/dist/elements/SaveButton/index.d.ts.map +1 -0
  186. package/dist/elements/{Save → SaveButton}/index.js +7 -5
  187. package/dist/elements/SaveButton/index.js.map +1 -0
  188. package/dist/elements/{SaveDraft → SaveDraftButton}/index.d.ts +1 -1
  189. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -0
  190. package/dist/elements/{SaveDraft → SaveDraftButton}/index.js +7 -5
  191. package/dist/elements/SaveDraftButton/index.js.map +1 -0
  192. package/dist/elements/SearchFilter/index.js +14 -9
  193. package/dist/elements/SearchFilter/index.js.map +1 -1
  194. package/dist/elements/SelectAll/index.js +2 -1
  195. package/dist/elements/SelectAll/index.js.map +1 -1
  196. package/dist/elements/SelectRow/index.js +2 -1
  197. package/dist/elements/SelectRow/index.js.map +1 -1
  198. package/dist/elements/ShimmerEffect/index.js +23 -20
  199. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  200. package/dist/elements/SortColumn/index.js +43 -31
  201. package/dist/elements/SortColumn/index.js.map +1 -1
  202. package/dist/elements/SortComplex/index.js +41 -23
  203. package/dist/elements/SortComplex/index.js.map +1 -1
  204. package/dist/elements/Status/index.js +94 -41
  205. package/dist/elements/Status/index.js.map +1 -1
  206. package/dist/elements/StayLoggedIn/index.js +40 -20
  207. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  208. package/dist/elements/StepNav/index.js +63 -41
  209. package/dist/elements/StepNav/index.js.map +1 -1
  210. package/dist/elements/Table/DefaultCell/fields/Array/index.js +4 -1
  211. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  212. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +4 -1
  213. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  214. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +7 -3
  215. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  216. package/dist/elements/Table/DefaultCell/fields/Code/index.js +7 -3
  217. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  218. package/dist/elements/Table/DefaultCell/fields/Date/index.js +8 -5
  219. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  220. package/dist/elements/Table/DefaultCell/fields/File/index.js +21 -15
  221. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  222. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +7 -3
  223. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  224. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +32 -21
  225. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  226. package/dist/elements/Table/DefaultCell/fields/Select/index.js +4 -1
  227. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  228. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +4 -1
  229. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  230. package/dist/elements/Table/DefaultCell/index.js +31 -15
  231. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  232. package/dist/elements/Table/RelationshipProvider/index.js +5 -3
  233. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  234. package/dist/elements/Table/TableCellProvider/index.js +5 -3
  235. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  236. package/dist/elements/Table/index.js +39 -24
  237. package/dist/elements/Table/index.js.map +1 -1
  238. package/dist/elements/TableColumns/buildColumnState.js +8 -5
  239. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  240. package/dist/elements/TableColumns/filterFields.js +1 -1
  241. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  242. package/dist/elements/TableColumns/index.js +5 -3
  243. package/dist/elements/TableColumns/index.js.map +1 -1
  244. package/dist/elements/Thumbnail/index.js +14 -8
  245. package/dist/elements/Thumbnail/index.js.map +1 -1
  246. package/dist/elements/ThumbnailCard/index.js +14 -7
  247. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  248. package/dist/elements/Tooltip/index.d.ts +1 -1
  249. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  250. package/dist/elements/Tooltip/index.js +36 -26
  251. package/dist/elements/Tooltip/index.js.map +1 -1
  252. package/dist/elements/Tooltip/index.scss +7 -7
  253. package/dist/elements/Translation/index.js +19 -16
  254. package/dist/elements/Translation/index.js.map +1 -1
  255. package/dist/elements/UnpublishMany/index.js +42 -22
  256. package/dist/elements/UnpublishMany/index.js.map +1 -1
  257. package/dist/elements/Upload/index.js +108 -77
  258. package/dist/elements/Upload/index.js.map +1 -1
  259. package/dist/elements/ViewDescription/index.js +6 -4
  260. package/dist/elements/ViewDescription/index.js.map +1 -1
  261. package/dist/elements/WhereBuilder/Condition/Date/index.js +10 -8
  262. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  263. package/dist/elements/WhereBuilder/Condition/Number/index.js +2 -1
  264. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  265. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +49 -43
  266. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  267. package/dist/elements/WhereBuilder/Condition/Select/index.js +2 -1
  268. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  269. package/dist/elements/WhereBuilder/Condition/Text/index.js +2 -1
  270. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  271. package/dist/elements/WhereBuilder/Condition/index.js +84 -66
  272. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  273. package/dist/elements/WhereBuilder/index.js +97 -69
  274. package/dist/elements/WhereBuilder/index.js.map +1 -1
  275. package/dist/elements/WithServerSideProps/index.js +7 -2
  276. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  277. package/dist/elements/withMergedProps/index.js +4 -1
  278. package/dist/elements/withMergedProps/index.js.map +1 -1
  279. package/dist/fields/Array/ArrayRow.js +53 -47
  280. package/dist/fields/Array/ArrayRow.js.map +1 -1
  281. package/dist/fields/Array/index.js +135 -91
  282. package/dist/fields/Array/index.js.map +1 -1
  283. package/dist/fields/Blocks/BlockRow.js +62 -53
  284. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  285. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +12 -7
  286. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  287. package/dist/fields/Blocks/BlocksDrawer/index.js +36 -28
  288. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  289. package/dist/fields/Blocks/RowActions.js +30 -24
  290. package/dist/fields/Blocks/RowActions.js.map +1 -1
  291. package/dist/fields/Blocks/SectionTitle/index.js +14 -12
  292. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  293. package/dist/fields/Blocks/index.js +154 -103
  294. package/dist/fields/Blocks/index.js.map +1 -1
  295. package/dist/fields/Checkbox/Input.d.ts +3 -4
  296. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  297. package/dist/fields/Checkbox/Input.js +40 -25
  298. package/dist/fields/Checkbox/Input.js.map +1 -1
  299. package/dist/fields/Checkbox/index.d.ts +2 -1
  300. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  301. package/dist/fields/Checkbox/index.js +29 -21
  302. package/dist/fields/Checkbox/index.js.map +1 -1
  303. package/dist/fields/Code/index.js +34 -20
  304. package/dist/fields/Code/index.js.map +1 -1
  305. package/dist/fields/Collapsible/index.js +57 -42
  306. package/dist/fields/Collapsible/index.js.map +1 -1
  307. package/dist/fields/ConfirmPassword/index.js +28 -19
  308. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  309. package/dist/fields/DateTime/index.js +36 -22
  310. package/dist/fields/DateTime/index.js.map +1 -1
  311. package/dist/fields/Email/index.js +37 -23
  312. package/dist/fields/Email/index.js.map +1 -1
  313. package/dist/fields/Group/index.js +58 -36
  314. package/dist/fields/Group/index.js.map +1 -1
  315. package/dist/fields/Group/provider.js +5 -3
  316. package/dist/fields/Group/provider.js.map +1 -1
  317. package/dist/fields/HiddenInput/index.js +2 -1
  318. package/dist/fields/HiddenInput/index.js.map +1 -1
  319. package/dist/fields/JSON/index.js +40 -25
  320. package/dist/fields/JSON/index.js.map +1 -1
  321. package/dist/fields/Number/index.js +75 -57
  322. package/dist/fields/Number/index.js.map +1 -1
  323. package/dist/fields/Password/index.js +31 -22
  324. package/dist/fields/Password/index.js.map +1 -1
  325. package/dist/fields/Point/index.js +67 -31
  326. package/dist/fields/Point/index.js.map +1 -1
  327. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  328. package/dist/fields/RadioGroup/Radio/index.js +27 -18
  329. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  330. package/dist/fields/RadioGroup/Radio/index.scss +2 -1
  331. package/dist/fields/RadioGroup/index.js +60 -47
  332. package/dist/fields/RadioGroup/index.js.map +1 -1
  333. package/dist/fields/Relationship/AddNew/index.js +67 -44
  334. package/dist/fields/Relationship/AddNew/index.js.map +1 -1
  335. package/dist/fields/Relationship/index.js +112 -94
  336. package/dist/fields/Relationship/index.js.map +1 -1
  337. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  338. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +49 -33
  339. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  340. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  341. package/dist/fields/Relationship/select-components/SingleValue/index.js +50 -30
  342. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  343. package/dist/fields/Row/index.js +23 -19
  344. package/dist/fields/Row/index.js.map +1 -1
  345. package/dist/fields/Row/provider.js +5 -3
  346. package/dist/fields/Row/provider.js.map +1 -1
  347. package/dist/fields/Select/Input.d.ts +11 -0
  348. package/dist/fields/Select/Input.d.ts.map +1 -0
  349. package/dist/fields/Select/Input.js +87 -0
  350. package/dist/fields/Select/Input.js.map +1 -0
  351. package/dist/fields/Select/index.d.ts +3 -1
  352. package/dist/fields/Select/index.d.ts.map +1 -1
  353. package/dist/fields/Select/index.js +23 -60
  354. package/dist/fields/Select/index.js.map +1 -1
  355. package/dist/fields/Tabs/Tab/index.js +26 -16
  356. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  357. package/dist/fields/Tabs/index.js +47 -31
  358. package/dist/fields/Tabs/index.js.map +1 -1
  359. package/dist/fields/Tabs/provider.js +5 -3
  360. package/dist/fields/Tabs/provider.js.map +1 -1
  361. package/dist/fields/Text/Input.js +66 -48
  362. package/dist/fields/Text/Input.js.map +1 -1
  363. package/dist/fields/Text/index.js +2 -1
  364. package/dist/fields/Text/index.js.map +1 -1
  365. package/dist/fields/Textarea/Input.js +51 -32
  366. package/dist/fields/Textarea/Input.js.map +1 -1
  367. package/dist/fields/Textarea/index.js +2 -1
  368. package/dist/fields/Textarea/index.js.map +1 -1
  369. package/dist/fields/Upload/Input.js +71 -43
  370. package/dist/fields/Upload/Input.js.map +1 -1
  371. package/dist/fields/Upload/index.js +2 -1
  372. package/dist/fields/Upload/index.js.map +1 -1
  373. package/dist/forms/FieldDescription/index.js +8 -4
  374. package/dist/forms/FieldDescription/index.js.map +1 -1
  375. package/dist/forms/FieldError/index.js +8 -4
  376. package/dist/forms/FieldError/index.js.map +1 -1
  377. package/dist/forms/FieldLabel/index.js +14 -6
  378. package/dist/forms/FieldLabel/index.js.map +1 -1
  379. package/dist/forms/FieldPropsProvider/index.js +5 -3
  380. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  381. package/dist/forms/Form/index.d.ts.map +1 -1
  382. package/dist/forms/Form/index.js +31 -18
  383. package/dist/forms/Form/index.js.map +1 -1
  384. package/dist/forms/NullifyField/index.js +8 -5
  385. package/dist/forms/NullifyField/index.js.map +1 -1
  386. package/dist/forms/RenderFields/RenderField.js +7 -3
  387. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  388. package/dist/forms/RenderFields/index.js +23 -22
  389. package/dist/forms/RenderFields/index.js.map +1 -1
  390. package/dist/forms/RowLabel/Context/index.js +5 -3
  391. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  392. package/dist/forms/RowLabel/index.js +9 -6
  393. package/dist/forms/RowLabel/index.js.map +1 -1
  394. package/dist/forms/Submit/index.js +12 -9
  395. package/dist/forms/Submit/index.js.map +1 -1
  396. package/dist/forms/withCondition/WatchCondition.js +4 -1
  397. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  398. package/dist/forms/withCondition/index.js +7 -3
  399. package/dist/forms/withCondition/index.js.map +1 -1
  400. package/dist/graphics/Account/Default/index.js +22 -16
  401. package/dist/graphics/Account/Default/index.js.map +1 -1
  402. package/dist/graphics/Account/Gravatar/index.js +2 -1
  403. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  404. package/dist/graphics/Account/index.js +2 -1
  405. package/dist/graphics/Account/index.js.map +1 -1
  406. package/dist/graphics/DefaultBlockImage/index.js +32 -21
  407. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  408. package/dist/graphics/ExternalLink/index.js +9 -7
  409. package/dist/graphics/ExternalLink/index.js.map +1 -1
  410. package/dist/graphics/File/index.js +20 -14
  411. package/dist/graphics/File/index.js.map +1 -1
  412. package/dist/graphics/Icon/index.js +14 -9
  413. package/dist/graphics/Icon/index.js.map +1 -1
  414. package/dist/graphics/Logo/index.js +37 -22
  415. package/dist/graphics/Logo/index.js.map +1 -1
  416. package/dist/graphics/Search/index.js +23 -18
  417. package/dist/graphics/Search/index.js.map +1 -1
  418. package/dist/hooks/useDebouncedCallback.js +1 -1
  419. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  420. package/dist/hooks/useDelay.js +1 -1
  421. package/dist/hooks/useDelay.js.map +1 -1
  422. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  423. package/dist/hooks/useDelayedRender.js +1 -1
  424. package/dist/hooks/useDelayedRender.js.map +1 -1
  425. package/dist/icons/Calendar/index.js +34 -27
  426. package/dist/icons/Calendar/index.js.map +1 -1
  427. package/dist/icons/Check/index.js +18 -13
  428. package/dist/icons/Check/index.js.map +1 -1
  429. package/dist/icons/Chevron/index.js +8 -6
  430. package/dist/icons/Chevron/index.js.map +1 -1
  431. package/dist/icons/CloseMenu/index.js +22 -17
  432. package/dist/icons/CloseMenu/index.js.map +1 -1
  433. package/dist/icons/CodeBlock/index.js +14 -9
  434. package/dist/icons/CodeBlock/index.js.map +1 -1
  435. package/dist/icons/Copy/index.js +17 -12
  436. package/dist/icons/Copy/index.js.map +1 -1
  437. package/dist/icons/DragHandle/index.js +42 -33
  438. package/dist/icons/DragHandle/index.js.map +1 -1
  439. package/dist/icons/Edit/index.js +22 -16
  440. package/dist/icons/Edit/index.js.map +1 -1
  441. package/dist/icons/Line/index.js +11 -9
  442. package/dist/icons/Line/index.js.map +1 -1
  443. package/dist/icons/Link/index.js +14 -9
  444. package/dist/icons/Link/index.js.map +1 -1
  445. package/dist/icons/LogOut/index.js +25 -15
  446. package/dist/icons/LogOut/index.js.map +1 -1
  447. package/dist/icons/Menu/index.js +27 -21
  448. package/dist/icons/Menu/index.js.map +1 -1
  449. package/dist/icons/MinimizeMaximize/index.js +35 -19
  450. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  451. package/dist/icons/More/index.js +24 -18
  452. package/dist/icons/More/index.js.map +1 -1
  453. package/dist/icons/Plus/index.js +20 -15
  454. package/dist/icons/Plus/index.js.map +1 -1
  455. package/dist/icons/Search/index.js +19 -14
  456. package/dist/icons/Search/index.js.map +1 -1
  457. package/dist/icons/Swap/index.js +29 -22
  458. package/dist/icons/Swap/index.js.map +1 -1
  459. package/dist/icons/X/index.js +20 -15
  460. package/dist/icons/X/index.js.map +1 -1
  461. package/dist/providers/Actions/index.js +5 -3
  462. package/dist/providers/Actions/index.js.map +1 -1
  463. package/dist/providers/Auth/index.js +5 -3
  464. package/dist/providers/Auth/index.js.map +1 -1
  465. package/dist/providers/ClientFunction/index.js +8 -5
  466. package/dist/providers/ClientFunction/index.js.map +1 -1
  467. package/dist/providers/ComponentMap/buildComponentMap/actions.js +3 -2
  468. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  469. package/dist/providers/ComponentMap/buildComponentMap/collections.js +12 -11
  470. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  471. package/dist/providers/ComponentMap/buildComponentMap/fields.js +19 -16
  472. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  473. package/dist/providers/ComponentMap/buildComponentMap/globals.js +7 -6
  474. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  475. package/dist/providers/ComponentMap/buildComponentMap/index.js +18 -11
  476. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  477. package/dist/providers/ComponentMap/index.js +5 -3
  478. package/dist/providers/ComponentMap/index.js.map +1 -1
  479. package/dist/providers/Config/index.js +5 -3
  480. package/dist/providers/Config/index.js.map +1 -1
  481. package/dist/providers/DocumentEvents/index.js +5 -3
  482. package/dist/providers/DocumentEvents/index.js.map +1 -1
  483. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  484. package/dist/providers/DocumentInfo/index.js +58 -28
  485. package/dist/providers/DocumentInfo/index.js.map +1 -1
  486. package/dist/providers/DocumentInfo/types.d.ts +2 -1
  487. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  488. package/dist/providers/DocumentInfo/types.js.map +1 -1
  489. package/dist/providers/EditDepth/index.js +5 -3
  490. package/dist/providers/EditDepth/index.js.map +1 -1
  491. package/dist/providers/EntityVisibility/index.js +5 -3
  492. package/dist/providers/EntityVisibility/index.js.map +1 -1
  493. package/dist/providers/FieldComponents/index.js +5 -3
  494. package/dist/providers/FieldComponents/index.js.map +1 -1
  495. package/dist/providers/FormQueryParams/index.js +5 -3
  496. package/dist/providers/FormQueryParams/index.js.map +1 -1
  497. package/dist/providers/ListInfo/index.js +5 -3
  498. package/dist/providers/ListInfo/index.js.map +1 -1
  499. package/dist/providers/ListQuery/index.js +5 -3
  500. package/dist/providers/ListQuery/index.js.map +1 -1
  501. package/dist/providers/Locale/index.js +5 -3
  502. package/dist/providers/Locale/index.js.map +1 -1
  503. package/dist/providers/Operation/index.js +5 -3
  504. package/dist/providers/Operation/index.js.map +1 -1
  505. package/dist/providers/Params/index.js +5 -3
  506. package/dist/providers/Params/index.js.map +1 -1
  507. package/dist/providers/Preferences/index.js +5 -3
  508. package/dist/providers/Preferences/index.js.map +1 -1
  509. package/dist/providers/Root/index.d.ts +2 -0
  510. package/dist/providers/Root/index.d.ts.map +1 -1
  511. package/dist/providers/Root/index.js +75 -28
  512. package/dist/providers/Root/index.js.map +1 -1
  513. package/dist/providers/RouteCache/index.js +5 -3
  514. package/dist/providers/RouteCache/index.js.map +1 -1
  515. package/dist/providers/SearchParams/index.js +5 -3
  516. package/dist/providers/SearchParams/index.js.map +1 -1
  517. package/dist/providers/Selection/index.js +5 -3
  518. package/dist/providers/Selection/index.js.map +1 -1
  519. package/dist/providers/Theme/index.d.ts +3 -0
  520. package/dist/providers/Theme/index.d.ts.map +1 -1
  521. package/dist/providers/Theme/index.js +31 -19
  522. package/dist/providers/Theme/index.js.map +1 -1
  523. package/dist/providers/Translation/index.js +5 -3
  524. package/dist/providers/Translation/index.js.map +1 -1
  525. package/dist/scss/app.scss +0 -6
  526. package/dist/templates/Default/NavHamburger/index.js +2 -1
  527. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  528. package/dist/templates/Default/Wrapper/index.js +5 -3
  529. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  530. package/dist/templates/Default/index.js +43 -26
  531. package/dist/templates/Default/index.js.map +1 -1
  532. package/dist/templates/Minimal/index.js +8 -5
  533. package/dist/templates/Minimal/index.js.map +1 -1
  534. package/package.json +17 -13
  535. package/dist/elements/Publish/index.d.ts.map +0 -1
  536. package/dist/elements/Publish/index.js +0 -87
  537. package/dist/elements/Publish/index.js.map +0 -1
  538. package/dist/elements/Save/index.d.ts.map +0 -1
  539. package/dist/elements/Save/index.js.map +0 -1
  540. package/dist/elements/SaveDraft/index.d.ts.map +0 -1
  541. package/dist/elements/SaveDraft/index.js.map +0 -1
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { getTranslation } from '@payloadcms/translations';
2
3
  import React, { useEffect, useState } from 'react';
3
4
  import { useListQuery } from '../../providers/ListQuery/index.js';
@@ -138,75 +139,102 @@ const baseClass = 'where-builder';
138
139
  handleWhereChange,
139
140
  shouldUpdateQuery
140
141
  ]);
141
- return /*#__PURE__*/ React.createElement("div", {
142
- className: baseClass
143
- }, conditions.length > 0 && /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
144
- className: `${baseClass}__label`
145
- }, t('general:filterWhere', {
146
- label: getTranslation(collectionPluralLabel, i18n)
147
- })), /*#__PURE__*/ React.createElement("ul", {
148
- className: `${baseClass}__or-filters`
149
- }, conditions.map((or, orIndex)=>/*#__PURE__*/ React.createElement("li", {
150
- key: orIndex
151
- }, orIndex !== 0 && /*#__PURE__*/ React.createElement("div", {
152
- className: `${baseClass}__label`
153
- }, t('general:or')), /*#__PURE__*/ React.createElement("ul", {
154
- className: `${baseClass}__and-filters`
155
- }, Array.isArray(or?.and) && or.and.map((_, andIndex)=>{
156
- const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0];
157
- const initialOperator = Object.keys(conditions[orIndex].and[andIndex]?.[initialFieldName] || {})?.[0] || undefined;
158
- const initialValue = conditions[orIndex].and[andIndex]?.[initialFieldName]?.[initialOperator] || '';
159
- return /*#__PURE__*/ React.createElement("li", {
160
- key: andIndex
161
- }, andIndex !== 0 && /*#__PURE__*/ React.createElement("div", {
162
- className: `${baseClass}__label`
163
- }, t('general:and')), /*#__PURE__*/ React.createElement(Condition, {
164
- addCondition: addCondition,
165
- andIndex: andIndex,
166
- fieldName: initialFieldName,
167
- fields: reducedFields,
168
- initialValue: initialValue,
169
- key: andIndex,
170
- operator: initialOperator,
171
- orIndex: orIndex,
172
- removeCondition: removeCondition,
173
- updateCondition: updateCondition
174
- }));
175
- }))))), /*#__PURE__*/ React.createElement(Button, {
176
- buttonStyle: "icon-label",
177
- className: `${baseClass}__add-or`,
178
- icon: "plus",
179
- iconPosition: "left",
180
- iconStyle: "with-border",
181
- onClick: ()=>{
182
- addCondition({
183
- andIndex: 0,
184
- fieldName: reducedFields[0].value,
185
- orIndex: conditions.length,
186
- relation: 'or'
187
- });
188
- }
189
- }, t('general:or'))), conditions.length === 0 && /*#__PURE__*/ React.createElement("div", {
190
- className: `${baseClass}__no-filters`
191
- }, /*#__PURE__*/ React.createElement("div", {
192
- className: `${baseClass}__label`
193
- }, t('general:noFiltersSet')), /*#__PURE__*/ React.createElement(Button, {
194
- buttonStyle: "icon-label",
195
- className: `${baseClass}__add-first-filter`,
196
- icon: "plus",
197
- iconPosition: "left",
198
- iconStyle: "with-border",
199
- onClick: ()=>{
200
- if (reducedFields.length > 0) {
201
- addCondition({
202
- andIndex: 0,
203
- fieldName: reducedFields[0].value,
204
- orIndex: conditions.length,
205
- relation: 'or'
206
- });
207
- }
208
- }
209
- }, t('general:addFilter'))));
142
+ return /*#__PURE__*/ _jsxs("div", {
143
+ className: baseClass,
144
+ children: [
145
+ conditions.length > 0 && /*#__PURE__*/ _jsxs(React.Fragment, {
146
+ children: [
147
+ /*#__PURE__*/ _jsx("div", {
148
+ className: `${baseClass}__label`,
149
+ children: t('general:filterWhere', {
150
+ label: getTranslation(collectionPluralLabel, i18n)
151
+ })
152
+ }),
153
+ /*#__PURE__*/ _jsx("ul", {
154
+ className: `${baseClass}__or-filters`,
155
+ children: conditions.map((or, orIndex)=>/*#__PURE__*/ _jsxs("li", {
156
+ children: [
157
+ orIndex !== 0 && /*#__PURE__*/ _jsx("div", {
158
+ className: `${baseClass}__label`,
159
+ children: t('general:or')
160
+ }),
161
+ /*#__PURE__*/ _jsx("ul", {
162
+ className: `${baseClass}__and-filters`,
163
+ children: Array.isArray(or?.and) && or.and.map((_, andIndex)=>{
164
+ const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0];
165
+ const initialOperator = Object.keys(conditions[orIndex].and[andIndex]?.[initialFieldName] || {})?.[0] || undefined;
166
+ const initialValue = conditions[orIndex].and[andIndex]?.[initialFieldName]?.[initialOperator] || '';
167
+ return /*#__PURE__*/ _jsxs("li", {
168
+ children: [
169
+ andIndex !== 0 && /*#__PURE__*/ _jsx("div", {
170
+ className: `${baseClass}__label`,
171
+ children: t('general:and')
172
+ }),
173
+ /*#__PURE__*/ _jsx(Condition, {
174
+ addCondition: addCondition,
175
+ andIndex: andIndex,
176
+ fieldName: initialFieldName,
177
+ fields: reducedFields,
178
+ initialValue: initialValue,
179
+ operator: initialOperator,
180
+ orIndex: orIndex,
181
+ removeCondition: removeCondition,
182
+ updateCondition: updateCondition
183
+ }, andIndex)
184
+ ]
185
+ }, andIndex);
186
+ })
187
+ })
188
+ ]
189
+ }, orIndex))
190
+ }),
191
+ /*#__PURE__*/ _jsx(Button, {
192
+ buttonStyle: "icon-label",
193
+ className: `${baseClass}__add-or`,
194
+ icon: "plus",
195
+ iconPosition: "left",
196
+ iconStyle: "with-border",
197
+ onClick: ()=>{
198
+ addCondition({
199
+ andIndex: 0,
200
+ fieldName: reducedFields[0].value,
201
+ orIndex: conditions.length,
202
+ relation: 'or'
203
+ });
204
+ },
205
+ children: t('general:or')
206
+ })
207
+ ]
208
+ }),
209
+ conditions.length === 0 && /*#__PURE__*/ _jsxs("div", {
210
+ className: `${baseClass}__no-filters`,
211
+ children: [
212
+ /*#__PURE__*/ _jsx("div", {
213
+ className: `${baseClass}__label`,
214
+ children: t('general:noFiltersSet')
215
+ }),
216
+ /*#__PURE__*/ _jsx(Button, {
217
+ buttonStyle: "icon-label",
218
+ className: `${baseClass}__add-first-filter`,
219
+ icon: "plus",
220
+ iconPosition: "left",
221
+ iconStyle: "with-border",
222
+ onClick: ()=>{
223
+ if (reducedFields.length > 0) {
224
+ addCondition({
225
+ andIndex: 0,
226
+ fieldName: reducedFields[0].value,
227
+ orIndex: conditions.length,
228
+ relation: 'or'
229
+ });
230
+ }
231
+ },
232
+ children: t('general:addFilter')
233
+ })
234
+ ]
235
+ })
236
+ ]
237
+ });
210
238
  };
211
239
 
212
240
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/WhereBuilder/index.tsx"],"sourcesContent":["import { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport type { WhereBuilderProps } from './types.js'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { useTableColumns } from '../TableColumns/index.js'\nimport { Condition } from './Condition/index.js'\nimport './index.scss'\nimport { reduceFieldMap } from './reduceFieldMap.js'\nimport { transformWhereQuery } from './transformWhereQuery.js'\nimport validateWhereQuery from './validateWhereQuery.js'\n\nconst baseClass = 'where-builder'\n\nexport { WhereBuilderProps }\n\n/**\n * The WhereBuilder component is used to render the filter controls for a collection's list view.\n * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where).\n */\nexport const WhereBuilder: React.FC<WhereBuilderProps> = (props) => {\n const { collectionPluralLabel } = props\n const { i18n, t } = useTranslation()\n const { columns } = useTableColumns()\n\n const [reducedFields, setReducedColumns] = useState(() => reduceFieldMap(columns, i18n))\n\n useEffect(() => {\n setReducedColumns(reduceFieldMap(columns, i18n))\n }, [columns, i18n])\n\n const { searchParams } = useSearchParams()\n const { handleWhereChange } = useListQuery()\n const [shouldUpdateQuery, setShouldUpdateQuery] = React.useState(false)\n\n // This handles initializing the where conditions from the search query (URL). That way, if you pass in\n // query params to the URL, the where conditions will be initialized from those and displayed in the UI.\n // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post\n /*\n stored conditions look like this:\n [\n _or_ & _and_ queries have the same shape:\n {\n and: [{\n category: {\n equals: 'category-a'\n }\n }]\n },\n\n {\n and:[{\n category: {\n equals: 'category-b'\n },\n text: {\n not_equals: 'oranges'\n },\n }]\n }\n ]\n */\n\n const [conditions, setConditions] = React.useState(() => {\n const whereFromSearch = searchParams.where\n if (whereFromSearch) {\n if (validateWhereQuery(whereFromSearch)) {\n return whereFromSearch.or\n }\n\n // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format\n const transformedWhere = transformWhereQuery(whereFromSearch)\n\n if (validateWhereQuery(transformedWhere)) {\n return transformedWhere.or\n }\n\n console.warn(`Invalid where query in URL: ${JSON.stringify(whereFromSearch)}`)\n }\n\n return []\n })\n\n const addCondition = React.useCallback(({ andIndex, fieldName, orIndex, relation }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n if (relation === 'and') {\n newConditions[orIndex].and.splice(andIndex, 0, { [fieldName]: {} })\n } else {\n newConditions.push({\n and: [\n {\n [fieldName]: {},\n },\n ],\n })\n }\n\n return newConditions\n })\n }, [])\n\n const updateCondition = React.useCallback(\n ({ andIndex, fieldName: fieldNameArg, operator: operatorArg, orIndex, value: valueArg }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n if (typeof newConditions[orIndex].and[andIndex] === 'object') {\n const fieldName = fieldNameArg\n const operator = operatorArg\n const value = valueArg ?? (operator ? newConditions[orIndex].and[andIndex][operator] : '')\n\n if (fieldName && operator && ![null, undefined].includes(value)) {\n newConditions[orIndex].and[andIndex] = {\n [fieldName]: operator ? { [operator]: value } : {},\n }\n setShouldUpdateQuery(true)\n }\n }\n\n return newConditions\n })\n },\n [],\n )\n\n const removeCondition = React.useCallback(({ andIndex, orIndex }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n newConditions[orIndex].and.splice(andIndex, 1)\n\n if (newConditions[orIndex].and.length === 0) {\n newConditions.splice(orIndex, 1)\n }\n\n return newConditions\n })\n setShouldUpdateQuery(true)\n }, [])\n\n React.useEffect(() => {\n if (shouldUpdateQuery) {\n handleWhereChange({ or: conditions })\n setShouldUpdateQuery(false)\n }\n }, [conditions, handleWhereChange, shouldUpdateQuery])\n\n return (\n <div className={baseClass}>\n {conditions.length > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__label`}>\n {t('general:filterWhere', { label: getTranslation(collectionPluralLabel, i18n) })}\n </div>\n <ul className={`${baseClass}__or-filters`}>\n {conditions.map((or, orIndex) => (\n <li key={orIndex}>\n {orIndex !== 0 && <div className={`${baseClass}__label`}>{t('general:or')}</div>}\n <ul className={`${baseClass}__and-filters`}>\n {Array.isArray(or?.and) &&\n or.and.map((_, andIndex) => {\n const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0]\n const initialOperator =\n Object.keys(\n conditions[orIndex].and[andIndex]?.[initialFieldName] || {},\n )?.[0] || undefined\n const initialValue =\n conditions[orIndex].and[andIndex]?.[initialFieldName]?.[initialOperator] ||\n ''\n\n return (\n <li key={andIndex}>\n {andIndex !== 0 && (\n <div className={`${baseClass}__label`}>{t('general:and')}</div>\n )}\n <Condition\n addCondition={addCondition}\n andIndex={andIndex}\n fieldName={initialFieldName}\n fields={reducedFields}\n initialValue={initialValue}\n key={andIndex}\n operator={initialOperator}\n orIndex={orIndex}\n removeCondition={removeCondition}\n updateCondition={updateCondition}\n />\n </li>\n )\n })}\n </ul>\n </li>\n ))}\n </ul>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-or`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }}\n >\n {t('general:or')}\n </Button>\n </React.Fragment>\n )}\n {conditions.length === 0 && (\n <div className={`${baseClass}__no-filters`}>\n <div className={`${baseClass}__label`}>{t('general:noFiltersSet')}</div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-first-filter`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0) {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }\n }}\n >\n {t('general:addFilter')}\n </Button>\n </div>\n )}\n </div>\n )\n}\n"],"names":["getTranslation","React","useEffect","useState","useListQuery","useSearchParams","useTranslation","Button","useTableColumns","Condition","reduceFieldMap","transformWhereQuery","validateWhereQuery","baseClass","WhereBuilder","props","collectionPluralLabel","i18n","t","columns","reducedFields","setReducedColumns","searchParams","handleWhereChange","shouldUpdateQuery","setShouldUpdateQuery","conditions","setConditions","whereFromSearch","where","or","transformedWhere","console","warn","JSON","stringify","addCondition","useCallback","andIndex","fieldName","orIndex","relation","prevConditions","newConditions","and","splice","push","updateCondition","fieldNameArg","operator","operatorArg","value","valueArg","undefined","includes","removeCondition","length","div","className","Fragment","label","ul","map","li","key","Array","isArray","_","initialFieldName","Object","keys","initialOperator","initialValue","fields","buttonStyle","icon","iconPosition","iconStyle","onClick"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/elements/WhereBuilder/index.tsx"],"sourcesContent":["import { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport type { WhereBuilderProps } from './types.js'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useSearchParams } from '../../providers/SearchParams/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { useTableColumns } from '../TableColumns/index.js'\nimport { Condition } from './Condition/index.js'\nimport './index.scss'\nimport { reduceFieldMap } from './reduceFieldMap.js'\nimport { transformWhereQuery } from './transformWhereQuery.js'\nimport validateWhereQuery from './validateWhereQuery.js'\n\nconst baseClass = 'where-builder'\n\nexport { WhereBuilderProps }\n\n/**\n * The WhereBuilder component is used to render the filter controls for a collection's list view.\n * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where).\n */\nexport const WhereBuilder: React.FC<WhereBuilderProps> = (props) => {\n const { collectionPluralLabel } = props\n const { i18n, t } = useTranslation()\n const { columns } = useTableColumns()\n\n const [reducedFields, setReducedColumns] = useState(() => reduceFieldMap(columns, i18n))\n\n useEffect(() => {\n setReducedColumns(reduceFieldMap(columns, i18n))\n }, [columns, i18n])\n\n const { searchParams } = useSearchParams()\n const { handleWhereChange } = useListQuery()\n const [shouldUpdateQuery, setShouldUpdateQuery] = React.useState(false)\n\n // This handles initializing the where conditions from the search query (URL). That way, if you pass in\n // query params to the URL, the where conditions will be initialized from those and displayed in the UI.\n // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post\n /*\n stored conditions look like this:\n [\n _or_ & _and_ queries have the same shape:\n {\n and: [{\n category: {\n equals: 'category-a'\n }\n }]\n },\n\n {\n and:[{\n category: {\n equals: 'category-b'\n },\n text: {\n not_equals: 'oranges'\n },\n }]\n }\n ]\n */\n\n const [conditions, setConditions] = React.useState(() => {\n const whereFromSearch = searchParams.where\n if (whereFromSearch) {\n if (validateWhereQuery(whereFromSearch)) {\n return whereFromSearch.or\n }\n\n // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format\n const transformedWhere = transformWhereQuery(whereFromSearch)\n\n if (validateWhereQuery(transformedWhere)) {\n return transformedWhere.or\n }\n\n console.warn(`Invalid where query in URL: ${JSON.stringify(whereFromSearch)}`)\n }\n\n return []\n })\n\n const addCondition = React.useCallback(({ andIndex, fieldName, orIndex, relation }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n if (relation === 'and') {\n newConditions[orIndex].and.splice(andIndex, 0, { [fieldName]: {} })\n } else {\n newConditions.push({\n and: [\n {\n [fieldName]: {},\n },\n ],\n })\n }\n\n return newConditions\n })\n }, [])\n\n const updateCondition = React.useCallback(\n ({ andIndex, fieldName: fieldNameArg, operator: operatorArg, orIndex, value: valueArg }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n if (typeof newConditions[orIndex].and[andIndex] === 'object') {\n const fieldName = fieldNameArg\n const operator = operatorArg\n const value = valueArg ?? (operator ? newConditions[orIndex].and[andIndex][operator] : '')\n\n if (fieldName && operator && ![null, undefined].includes(value)) {\n newConditions[orIndex].and[andIndex] = {\n [fieldName]: operator ? { [operator]: value } : {},\n }\n setShouldUpdateQuery(true)\n }\n }\n\n return newConditions\n })\n },\n [],\n )\n\n const removeCondition = React.useCallback(({ andIndex, orIndex }) => {\n setConditions((prevConditions) => {\n const newConditions = [...prevConditions]\n newConditions[orIndex].and.splice(andIndex, 1)\n\n if (newConditions[orIndex].and.length === 0) {\n newConditions.splice(orIndex, 1)\n }\n\n return newConditions\n })\n setShouldUpdateQuery(true)\n }, [])\n\n React.useEffect(() => {\n if (shouldUpdateQuery) {\n handleWhereChange({ or: conditions })\n setShouldUpdateQuery(false)\n }\n }, [conditions, handleWhereChange, shouldUpdateQuery])\n\n return (\n <div className={baseClass}>\n {conditions.length > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__label`}>\n {t('general:filterWhere', { label: getTranslation(collectionPluralLabel, i18n) })}\n </div>\n <ul className={`${baseClass}__or-filters`}>\n {conditions.map((or, orIndex) => (\n <li key={orIndex}>\n {orIndex !== 0 && <div className={`${baseClass}__label`}>{t('general:or')}</div>}\n <ul className={`${baseClass}__and-filters`}>\n {Array.isArray(or?.and) &&\n or.and.map((_, andIndex) => {\n const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0]\n const initialOperator =\n Object.keys(\n conditions[orIndex].and[andIndex]?.[initialFieldName] || {},\n )?.[0] || undefined\n const initialValue =\n conditions[orIndex].and[andIndex]?.[initialFieldName]?.[initialOperator] ||\n ''\n\n return (\n <li key={andIndex}>\n {andIndex !== 0 && (\n <div className={`${baseClass}__label`}>{t('general:and')}</div>\n )}\n <Condition\n addCondition={addCondition}\n andIndex={andIndex}\n fieldName={initialFieldName}\n fields={reducedFields}\n initialValue={initialValue}\n key={andIndex}\n operator={initialOperator}\n orIndex={orIndex}\n removeCondition={removeCondition}\n updateCondition={updateCondition}\n />\n </li>\n )\n })}\n </ul>\n </li>\n ))}\n </ul>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-or`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }}\n >\n {t('general:or')}\n </Button>\n </React.Fragment>\n )}\n {conditions.length === 0 && (\n <div className={`${baseClass}__no-filters`}>\n <div className={`${baseClass}__label`}>{t('general:noFiltersSet')}</div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-first-filter`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0) {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }\n }}\n >\n {t('general:addFilter')}\n </Button>\n </div>\n )}\n </div>\n )\n}\n"],"names":["getTranslation","React","useEffect","useState","useListQuery","useSearchParams","useTranslation","Button","useTableColumns","Condition","reduceFieldMap","transformWhereQuery","validateWhereQuery","baseClass","WhereBuilder","props","collectionPluralLabel","i18n","t","columns","reducedFields","setReducedColumns","searchParams","handleWhereChange","shouldUpdateQuery","setShouldUpdateQuery","conditions","setConditions","whereFromSearch","where","or","transformedWhere","console","warn","JSON","stringify","addCondition","useCallback","andIndex","fieldName","orIndex","relation","prevConditions","newConditions","and","splice","push","updateCondition","fieldNameArg","operator","operatorArg","value","valueArg","undefined","includes","removeCondition","length","div","className","Fragment","label","ul","map","li","Array","isArray","_","initialFieldName","Object","keys","initialOperator","initialValue","fields","buttonStyle","icon","iconPosition","iconStyle","onClick"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,SAASC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAIlD,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,MAAM,QAAQ,qBAAoB;AAC3C,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,SAAS,QAAQ,uBAAsB;AAEhD,SAASC,cAAc,QAAQ,sBAAqB;AACpD,SAASC,mBAAmB,QAAQ,2BAA0B;AAC9D,OAAOC,wBAAwB,0BAAyB;AAExD,MAAMC,YAAY;AAIlB;;;CAGC,GACD,OAAO,MAAMC,eAA4C,CAACC;IACxD,MAAM,EAAEC,qBAAqB,EAAE,GAAGD;IAClC,MAAM,EAAEE,IAAI,EAAEC,CAAC,EAAE,GAAGZ;IACpB,MAAM,EAAEa,OAAO,EAAE,GAAGX;IAEpB,MAAM,CAACY,eAAeC,kBAAkB,GAAGlB,SAAS,IAAMO,eAAeS,SAASF;IAElFf,UAAU;QACRmB,kBAAkBX,eAAeS,SAASF;IAC5C,GAAG;QAACE;QAASF;KAAK;IAElB,MAAM,EAAEK,YAAY,EAAE,GAAGjB;IACzB,MAAM,EAAEkB,iBAAiB,EAAE,GAAGnB;IAC9B,MAAM,CAACoB,mBAAmBC,qBAAqB,GAAGxB,MAAME,QAAQ,CAAC;IAEjE,uGAAuG;IACvG,wGAAwG;IACxG,sFAAsF;IACtF;;;;;;;;;;;;;;;;;;;;;;;EAuBA,GAEA,MAAM,CAACuB,YAAYC,cAAc,GAAG1B,MAAME,QAAQ,CAAC;QACjD,MAAMyB,kBAAkBN,aAAaO,KAAK;QAC1C,IAAID,iBAAiB;YACnB,IAAIhB,mBAAmBgB,kBAAkB;gBACvC,OAAOA,gBAAgBE,EAAE;YAC3B;YAEA,mJAAmJ;YACnJ,MAAMC,mBAAmBpB,oBAAoBiB;YAE7C,IAAIhB,mBAAmBmB,mBAAmB;gBACxC,OAAOA,iBAAiBD,EAAE;YAC5B;YAEAE,QAAQC,IAAI,CAAC,CAAC,4BAA4B,EAAEC,KAAKC,SAAS,CAACP,iBAAiB,CAAC;QAC/E;QAEA,OAAO,EAAE;IACX;IAEA,MAAMQ,eAAenC,MAAMoC,WAAW,CAAC,CAAC,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,EAAE;QAChFd,cAAc,CAACe;YACb,MAAMC,gBAAgB;mBAAID;aAAe;YACzC,IAAID,aAAa,OAAO;gBACtBE,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACC,MAAM,CAACP,UAAU,GAAG;oBAAE,CAACC,UAAU,EAAE,CAAC;gBAAE;YACnE,OAAO;gBACLI,cAAcG,IAAI,CAAC;oBACjBF,KAAK;wBACH;4BACE,CAACL,UAAU,EAAE,CAAC;wBAChB;qBACD;gBACH;YACF;YAEA,OAAOI;QACT;IACF,GAAG,EAAE;IAEL,MAAMI,kBAAkB9C,MAAMoC,WAAW,CACvC,CAAC,EAAEC,QAAQ,EAAEC,WAAWS,YAAY,EAAEC,UAAUC,WAAW,EAAEV,OAAO,EAAEW,OAAOC,QAAQ,EAAE;QACrFzB,cAAc,CAACe;YACb,MAAMC,gBAAgB;mBAAID;aAAe;YACzC,IAAI,OAAOC,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACN,SAAS,KAAK,UAAU;gBAC5D,MAAMC,YAAYS;gBAClB,MAAMC,WAAWC;gBACjB,MAAMC,QAAQC,YAAaH,CAAAA,WAAWN,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACN,SAAS,CAACW,SAAS,GAAG,EAAC;gBAExF,IAAIV,aAAaU,YAAY,CAAC;oBAAC;oBAAMI;iBAAU,CAACC,QAAQ,CAACH,QAAQ;oBAC/DR,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACN,SAAS,GAAG;wBACrC,CAACC,UAAU,EAAEU,WAAW;4BAAE,CAACA,SAAS,EAAEE;wBAAM,IAAI,CAAC;oBACnD;oBACA1B,qBAAqB;gBACvB;YACF;YAEA,OAAOkB;QACT;IACF,GACA,EAAE;IAGJ,MAAMY,kBAAkBtD,MAAMoC,WAAW,CAAC,CAAC,EAAEC,QAAQ,EAAEE,OAAO,EAAE;QAC9Db,cAAc,CAACe;YACb,MAAMC,gBAAgB;mBAAID;aAAe;YACzCC,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACC,MAAM,CAACP,UAAU;YAE5C,IAAIK,aAAa,CAACH,QAAQ,CAACI,GAAG,CAACY,MAAM,KAAK,GAAG;gBAC3Cb,cAAcE,MAAM,CAACL,SAAS;YAChC;YAEA,OAAOG;QACT;QACAlB,qBAAqB;IACvB,GAAG,EAAE;IAELxB,MAAMC,SAAS,CAAC;QACd,IAAIsB,mBAAmB;YACrBD,kBAAkB;gBAAEO,IAAIJ;YAAW;YACnCD,qBAAqB;QACvB;IACF,GAAG;QAACC;QAAYH;QAAmBC;KAAkB;IAErD,qBACE,MAACiC;QAAIC,WAAW7C;;YACba,WAAW8B,MAAM,GAAG,mBACnB,MAACvD,MAAM0D,QAAQ;;kCACb,KAACF;wBAAIC,WAAW,CAAC,EAAE7C,UAAU,OAAO,CAAC;kCAClCK,EAAE,uBAAuB;4BAAE0C,OAAO5D,eAAegB,uBAAuBC;wBAAM;;kCAEjF,KAAC4C;wBAAGH,WAAW,CAAC,EAAE7C,UAAU,YAAY,CAAC;kCACtCa,WAAWoC,GAAG,CAAC,CAAChC,IAAIU,wBACnB,MAACuB;;oCACEvB,YAAY,mBAAK,KAACiB;wCAAIC,WAAW,CAAC,EAAE7C,UAAU,OAAO,CAAC;kDAAGK,EAAE;;kDAC5D,KAAC2C;wCAAGH,WAAW,CAAC,EAAE7C,UAAU,aAAa,CAAC;kDACvCmD,MAAMC,OAAO,CAACnC,IAAIc,QACjBd,GAAGc,GAAG,CAACkB,GAAG,CAAC,CAACI,GAAG5B;4CACb,MAAM6B,mBAAmBC,OAAOC,IAAI,CAAC3C,UAAU,CAACc,QAAQ,CAACI,GAAG,CAACN,SAAS,CAAC,CAAC,EAAE;4CAC1E,MAAMgC,kBACJF,OAAOC,IAAI,CACT3C,UAAU,CAACc,QAAQ,CAACI,GAAG,CAACN,SAAS,EAAE,CAAC6B,iBAAiB,IAAI,CAAC,IACzD,CAAC,EAAE,IAAId;4CACZ,MAAMkB,eACJ7C,UAAU,CAACc,QAAQ,CAACI,GAAG,CAACN,SAAS,EAAE,CAAC6B,iBAAiB,EAAE,CAACG,gBAAgB,IACxE;4CAEF,qBACE,MAACP;;oDACEzB,aAAa,mBACZ,KAACmB;wDAAIC,WAAW,CAAC,EAAE7C,UAAU,OAAO,CAAC;kEAAGK,EAAE;;kEAE5C,KAACT;wDACC2B,cAAcA;wDACdE,UAAUA;wDACVC,WAAW4B;wDACXK,QAAQpD;wDACRmD,cAAcA;wDAEdtB,UAAUqB;wDACV9B,SAASA;wDACTe,iBAAiBA;wDACjBR,iBAAiBA;uDAJZT;;+CAVAA;wCAkBb;;;+BAjCGE;;kCAsCb,KAACjC;wBACCkE,aAAY;wBACZf,WAAW,CAAC,EAAE7C,UAAU,QAAQ,CAAC;wBACjC6D,MAAK;wBACLC,cAAa;wBACbC,WAAU;wBACVC,SAAS;4BACPzC,aAAa;gCACXE,UAAU;gCACVC,WAAWnB,aAAa,CAAC,EAAE,CAAC+B,KAAK;gCACjCX,SAASd,WAAW8B,MAAM;gCAC1Bf,UAAU;4BACZ;wBACF;kCAECvB,EAAE;;;;YAIRQ,WAAW8B,MAAM,KAAK,mBACrB,MAACC;gBAAIC,WAAW,CAAC,EAAE7C,UAAU,YAAY,CAAC;;kCACxC,KAAC4C;wBAAIC,WAAW,CAAC,EAAE7C,UAAU,OAAO,CAAC;kCAAGK,EAAE;;kCAC1C,KAACX;wBACCkE,aAAY;wBACZf,WAAW,CAAC,EAAE7C,UAAU,kBAAkB,CAAC;wBAC3C6D,MAAK;wBACLC,cAAa;wBACbC,WAAU;wBACVC,SAAS;4BACP,IAAIzD,cAAcoC,MAAM,GAAG,GAAG;gCAC5BpB,aAAa;oCACXE,UAAU;oCACVC,WAAWnB,aAAa,CAAC,EAAE,CAAC+B,KAAK;oCACjCX,SAASd,WAAW8B,MAAM;oCAC1Bf,UAAU;gCACZ;4BACF;wBACF;kCAECvB,EAAE;;;;;;AAMf,EAAC"}
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { isReactServerComponentOrFunction } from 'payload/utilities';
2
3
  import React from 'react';
3
4
  export const WithServerSideProps = ({ Component, serverOnlyProps, ...rest })=>{
@@ -7,9 +8,13 @@ export const WithServerSideProps = ({ Component, serverOnlyProps, ...rest })=>{
7
8
  ...passedProps,
8
9
  ...isReactServerComponentOrFunction(Component) ? serverOnlyProps ?? {} : {}
9
10
  };
10
- return /*#__PURE__*/ React.createElement(Component, propsWithServerOnlyProps);
11
+ return /*#__PURE__*/ _jsx(Component, {
12
+ ...propsWithServerOnlyProps
13
+ });
11
14
  };
12
- return /*#__PURE__*/ React.createElement(WithServerSideProps, rest);
15
+ return /*#__PURE__*/ _jsx(WithServerSideProps, {
16
+ ...rest
17
+ });
13
18
  }
14
19
  return null;
15
20
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/WithServerSideProps/index.tsx"],"sourcesContent":["import type { WithServerSidePropsComponent } from 'payload/types'\n\nimport { isReactServerComponentOrFunction } from 'payload/utilities'\nimport React from 'react'\n\nexport const WithServerSideProps: WithServerSidePropsComponent = ({\n Component,\n serverOnlyProps,\n ...rest\n}) => {\n if (Component) {\n const WithServerSideProps: React.FC = (passedProps) => {\n const propsWithServerOnlyProps = {\n ...passedProps,\n ...(isReactServerComponentOrFunction(Component) ? serverOnlyProps ?? {} : {}),\n }\n\n return <Component {...propsWithServerOnlyProps} />\n }\n\n return <WithServerSideProps {...rest} />\n }\n\n return null\n}\n"],"names":["isReactServerComponentOrFunction","React","WithServerSideProps","Component","serverOnlyProps","rest","passedProps","propsWithServerOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;","mappings":"AAEA,SAASA,gCAAgC,QAAQ,oBAAmB;AACpE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,sBAAoD,CAAC,EAChEC,SAAS,EACTC,eAAe,EACf,GAAGC,MACJ;IACC,IAAIF,WAAW;QACb,MAAMD,sBAAgC,CAACI;YACrC,MAAMC,2BAA2B;gBAC/B,GAAGD,WAAW;gBACd,GAAIN,iCAAiCG,aAAaC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC9E;YAEA,qBAAO,oBAACD,WAAcI;QACxB;QAEA,qBAAO,oBAACL,qBAAwBG;IAClC;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/elements/WithServerSideProps/index.tsx"],"sourcesContent":["import type { WithServerSidePropsComponent } from 'payload/types'\n\nimport { isReactServerComponentOrFunction } from 'payload/utilities'\nimport React from 'react'\n\nexport const WithServerSideProps: WithServerSidePropsComponent = ({\n Component,\n serverOnlyProps,\n ...rest\n}) => {\n if (Component) {\n const WithServerSideProps: React.FC = (passedProps) => {\n const propsWithServerOnlyProps = {\n ...passedProps,\n ...(isReactServerComponentOrFunction(Component) ? serverOnlyProps ?? {} : {}),\n }\n\n return <Component {...propsWithServerOnlyProps} />\n }\n\n return <WithServerSideProps {...rest} />\n }\n\n return null\n}\n"],"names":["isReactServerComponentOrFunction","React","WithServerSideProps","Component","serverOnlyProps","rest","passedProps","propsWithServerOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;","mappings":";AAEA,SAASA,gCAAgC,QAAQ,oBAAmB;AACpE,OAAOC,WAAW,QAAO;AAEzB,OAAO,MAAMC,sBAAoD,CAAC,EAChEC,SAAS,EACTC,eAAe,EACf,GAAGC,MACJ;IACC,IAAIF,WAAW;QACb,MAAMD,sBAAgC,CAACI;YACrC,MAAMC,2BAA2B;gBAC/B,GAAGD,WAAW;gBACd,GAAIN,iCAAiCG,aAAaC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC9E;YAEA,qBAAO,KAACD;gBAAW,GAAGI,wBAAwB;;QAChD;QAEA,qBAAO,KAACL;YAAqB,GAAGG,IAAI;;IACtC;IAEA,OAAO;AACT,EAAC"}
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { serverProps } from 'payload/config';
2
3
  import { deepMerge } from 'payload/utilities';
3
4
  import React from 'react';
@@ -27,7 +28,9 @@ import React from 'react';
27
28
  delete mergedProps[prop];
28
29
  });
29
30
  }
30
- return /*#__PURE__*/ React.createElement(Component, mergedProps);
31
+ return /*#__PURE__*/ _jsx(Component, {
32
+ ...mergedProps
33
+ });
31
34
  };
32
35
  return MergedPropsComponent;
33
36
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/withMergedProps/index.tsx"],"sourcesContent":["import { serverProps } from 'payload/config'\nimport { deepMerge } from 'payload/utilities'\nimport React from 'react'\n\n/**\n * Creates a higher-order component (HOC) that merges predefined properties (`toMergeIntoProps`)\n * with any properties passed to the resulting component.\n *\n * Use this when you want to pre-specify some props for a component, while also allowing users to\n * pass in their own props. The HOC ensures the passed props and predefined props are combined before\n * rendering the original component.\n *\n * @example\n * const PredefinedComponent = getMergedPropsComponent({\n * Component: OriginalComponent,\n * toMergeIntoProps: { someExtraValue: 5 }\n * });\n * // Using <PredefinedComponent customProp=\"value\" /> will result in\n * // <OriginalComponent customProp=\"value\" someExtraValue={5} />\n *\n * @returns A higher-order component with combined properties.\n */\nexport function withMergedProps<ToMergeIntoProps, CompleteReturnProps>({\n Component,\n sanitizeServerOnlyProps = true,\n toMergeIntoProps,\n}: {\n Component: React.FC<CompleteReturnProps>\n sanitizeServerOnlyProps?: boolean\n toMergeIntoProps: ToMergeIntoProps\n}): React.FC<CompleteReturnProps> {\n // A wrapper around the args.Component to inject the args.toMergeArgs as props, which are merged with the passed props\n const MergedPropsComponent: React.FC<CompleteReturnProps> = (passedProps) => {\n const mergedProps = deepMerge(passedProps, toMergeIntoProps)\n\n if (sanitizeServerOnlyProps) {\n serverProps.forEach((prop) => {\n delete (mergedProps)[prop]\n })\n }\n\n return <Component {...mergedProps} />\n }\n\n return MergedPropsComponent\n}\n"],"names":["serverProps","deepMerge","React","withMergedProps","Component","sanitizeServerOnlyProps","toMergeIntoProps","MergedPropsComponent","passedProps","mergedProps","forEach","prop"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,WAAW,QAAQ,iBAAgB;AAC5C,SAASC,SAAS,QAAQ,oBAAmB;AAC7C,OAAOC,WAAW,QAAO;AAEzB;;;;;;;;;;;;;;;;;CAiBC,GACD,OAAO,SAASC,gBAAuD,EACrEC,SAAS,EACTC,0BAA0B,IAAI,EAC9BC,gBAAgB,EAKjB;IACC,sHAAsH;IACtH,MAAMC,uBAAsD,CAACC;QAC3D,MAAMC,cAAcR,UAAUO,aAAaF;QAE3C,IAAID,yBAAyB;YAC3BL,YAAYU,OAAO,CAAC,CAACC;gBACnB,OAAO,AAACF,WAAY,CAACE,KAAK;YAC5B;QACF;QAEA,qBAAO,oBAACP,WAAcK;IACxB;IAEA,OAAOF;AACT"}
1
+ {"version":3,"sources":["../../../src/elements/withMergedProps/index.tsx"],"sourcesContent":["import { serverProps } from 'payload/config'\nimport { deepMerge } from 'payload/utilities'\nimport React from 'react'\n\n/**\n * Creates a higher-order component (HOC) that merges predefined properties (`toMergeIntoProps`)\n * with any properties passed to the resulting component.\n *\n * Use this when you want to pre-specify some props for a component, while also allowing users to\n * pass in their own props. The HOC ensures the passed props and predefined props are combined before\n * rendering the original component.\n *\n * @example\n * const PredefinedComponent = getMergedPropsComponent({\n * Component: OriginalComponent,\n * toMergeIntoProps: { someExtraValue: 5 }\n * });\n * // Using <PredefinedComponent customProp=\"value\" /> will result in\n * // <OriginalComponent customProp=\"value\" someExtraValue={5} />\n *\n * @returns A higher-order component with combined properties.\n */\nexport function withMergedProps<ToMergeIntoProps, CompleteReturnProps>({\n Component,\n sanitizeServerOnlyProps = true,\n toMergeIntoProps,\n}: {\n Component: React.FC<CompleteReturnProps>\n sanitizeServerOnlyProps?: boolean\n toMergeIntoProps: ToMergeIntoProps\n}): React.FC<CompleteReturnProps> {\n // A wrapper around the args.Component to inject the args.toMergeArgs as props, which are merged with the passed props\n const MergedPropsComponent: React.FC<CompleteReturnProps> = (passedProps) => {\n const mergedProps = deepMerge(passedProps, toMergeIntoProps)\n\n if (sanitizeServerOnlyProps) {\n serverProps.forEach((prop) => {\n delete (mergedProps)[prop]\n })\n }\n\n return <Component {...mergedProps} />\n }\n\n return MergedPropsComponent\n}\n"],"names":["serverProps","deepMerge","React","withMergedProps","Component","sanitizeServerOnlyProps","toMergeIntoProps","MergedPropsComponent","passedProps","mergedProps","forEach","prop"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAAA,SAASA,WAAW,QAAQ,iBAAgB;AAC5C,SAASC,SAAS,QAAQ,oBAAmB;AAC7C,OAAOC,WAAW,QAAO;AAEzB;;;;;;;;;;;;;;;;;CAiBC,GACD,OAAO,SAASC,gBAAuD,EACrEC,SAAS,EACTC,0BAA0B,IAAI,EAC9BC,gBAAgB,EAKjB;IACC,sHAAsH;IACtH,MAAMC,uBAAsD,CAACC;QAC3D,MAAMC,cAAcR,UAAUO,aAAaF;QAE3C,IAAID,yBAAyB;YAC3BL,YAAYU,OAAO,CAAC,CAACC;gBACnB,OAAO,AAACF,WAAY,CAACE,KAAK;YAC5B;QACF;QAEA,qBAAO,KAACP;YAAW,GAAGK,WAAW;;IACnC;IAEA,OAAOF;AACT"}
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { getTranslation } from '@payloadcms/translations';
2
3
  import React from 'react';
3
4
  import { ArrayAction } from '../../elements/ArrayAction/index.js';
@@ -18,57 +19,62 @@ export const ArrayRow = ({ CustomRowLabel, addRow, attributes, duplicateRow, err
18
19
  `${baseClass}__row`,
19
20
  fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`
20
21
  ].filter(Boolean).join(' ');
21
- return /*#__PURE__*/ React.createElement("div", {
22
+ return /*#__PURE__*/ _jsx("div", {
22
23
  id: `${parentPath.split('.').join('-')}-row-${rowIndex}`,
23
- key: `${parentPath}-row-${row.id}`,
24
24
  ref: setNodeRef,
25
25
  style: {
26
26
  transform
27
- }
28
- }, /*#__PURE__*/ React.createElement(Collapsible, {
29
- actions: !readOnly ? /*#__PURE__*/ React.createElement(ArrayAction, {
30
- addRow: addRow,
31
- duplicateRow: duplicateRow,
32
- hasMaxRows: hasMaxRows,
33
- index: rowIndex,
34
- isSortable: isSortable,
35
- moveRow: moveRow,
36
- removeRow: removeRow,
37
- rowCount: rowCount
38
- }) : undefined,
39
- className: classNames,
40
- collapsibleStyle: fieldHasErrors ? 'error' : 'default',
41
- dragHandleProps: isSortable ? {
42
- id: row.id,
43
- attributes,
44
- listeners
45
- } : undefined,
46
- header: /*#__PURE__*/ React.createElement("div", {
47
- className: `${baseClass}__row-header`
48
- }, /*#__PURE__*/ React.createElement(RowLabel, {
49
- RowLabelComponent: CustomRowLabel,
50
- i18n: i18n,
51
- path: path,
52
- rowLabel: fallbackLabel,
53
- rowNumber: rowIndex + 1
54
- }), fieldHasErrors && /*#__PURE__*/ React.createElement(ErrorPill, {
55
- count: errorCount,
56
- i18n: i18n,
57
- withMessage: true
58
- })),
59
- isCollapsed: row.collapsed,
60
- onToggle: (collapsed)=>setCollapse(row.id, collapsed)
61
- }, /*#__PURE__*/ React.createElement(RenderFields, {
62
- className: `${baseClass}__fields`,
63
- fieldMap: fieldMap,
64
- forceRender: forceRender,
65
- indexPath: indexPath,
66
- margins: "small",
67
- path: path,
68
- permissions: permissions?.fields,
69
- readOnly: readOnly,
70
- schemaPath: schemaPath
71
- })));
27
+ },
28
+ children: /*#__PURE__*/ _jsx(Collapsible, {
29
+ actions: !readOnly ? /*#__PURE__*/ _jsx(ArrayAction, {
30
+ addRow: addRow,
31
+ duplicateRow: duplicateRow,
32
+ hasMaxRows: hasMaxRows,
33
+ index: rowIndex,
34
+ isSortable: isSortable,
35
+ moveRow: moveRow,
36
+ removeRow: removeRow,
37
+ rowCount: rowCount
38
+ }) : undefined,
39
+ className: classNames,
40
+ collapsibleStyle: fieldHasErrors ? 'error' : 'default',
41
+ dragHandleProps: isSortable ? {
42
+ id: row.id,
43
+ attributes,
44
+ listeners
45
+ } : undefined,
46
+ header: /*#__PURE__*/ _jsxs("div", {
47
+ className: `${baseClass}__row-header`,
48
+ children: [
49
+ /*#__PURE__*/ _jsx(RowLabel, {
50
+ RowLabelComponent: CustomRowLabel,
51
+ i18n: i18n,
52
+ path: path,
53
+ rowLabel: fallbackLabel,
54
+ rowNumber: rowIndex + 1
55
+ }),
56
+ fieldHasErrors && /*#__PURE__*/ _jsx(ErrorPill, {
57
+ count: errorCount,
58
+ i18n: i18n,
59
+ withMessage: true
60
+ })
61
+ ]
62
+ }),
63
+ isCollapsed: row.collapsed,
64
+ onToggle: (collapsed)=>setCollapse(row.id, collapsed),
65
+ children: /*#__PURE__*/ _jsx(RenderFields, {
66
+ className: `${baseClass}__fields`,
67
+ fieldMap: fieldMap,
68
+ forceRender: forceRender,
69
+ indexPath: indexPath,
70
+ margins: "small",
71
+ path: path,
72
+ permissions: permissions?.fields,
73
+ readOnly: readOnly,
74
+ schemaPath: schemaPath
75
+ })
76
+ })
77
+ }, `${parentPath}-row-${row.id}`);
72
78
  };
73
79
 
74
80
  //# sourceMappingURL=ArrayRow.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["import type { FieldPermissions } from 'payload/auth'\nimport type { ArrayField, Row } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { FieldMap } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nimport { ArrayAction } from '../../elements/ArrayAction/index.js'\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\ntype ArrayRowProps = UseDraggableSortableReturn & {\n CustomRowLabel?: React.ReactNode\n addRow: (rowIndex: number) => void\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fieldMap: FieldMap\n forceRender?: boolean\n hasMaxRows?: boolean\n indexPath: string\n isSortable?: boolean\n labels: ArrayField['labels']\n moveRow: (fromIndex: number, toIndex: number) => void\n path: string\n permissions: FieldPermissions\n readOnly?: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (rowID: string, collapsed: boolean) => void\n}\n\nexport const ArrayRow: React.FC<ArrayRowProps> = ({\n CustomRowLabel,\n addRow,\n attributes,\n duplicateRow,\n errorCount,\n fieldMap,\n forceRender = false,\n hasMaxRows,\n indexPath,\n isSortable,\n labels,\n listeners,\n moveRow,\n path: parentPath,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n}) => {\n const path = `${parentPath}.${rowIndex}`\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(\n 2,\n '0',\n )}`\n\n const fieldHasErrors = errorCount > 0 && hasSubmitted\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div\n id={`${parentPath.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={setNodeRef}\n style={{\n transform,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <ArrayAction\n addRow={addRow}\n duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\n removeRow={removeRow}\n rowCount={rowCount}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable\n ? {\n id: row.id,\n attributes,\n listeners,\n }\n : undefined\n }\n header={\n <div className={`${baseClass}__row-header`}>\n <RowLabel\n RowLabelComponent={CustomRowLabel}\n i18n={i18n}\n path={path}\n rowLabel={fallbackLabel}\n rowNumber={rowIndex + 1}\n />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n }\n isCollapsed={row.collapsed}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n <RenderFields\n className={`${baseClass}__fields`}\n fieldMap={fieldMap}\n forceRender={forceRender}\n indexPath={indexPath}\n margins=\"small\"\n path={path}\n permissions={permissions?.fields}\n readOnly={readOnly}\n schemaPath={schemaPath}\n />\n </Collapsible>\n </div>\n )\n}\n"],"names":["getTranslation","React","ArrayAction","Collapsible","ErrorPill","useFormSubmitted","RenderFields","RowLabel","useTranslation","baseClass","ArrayRow","CustomRowLabel","addRow","attributes","duplicateRow","errorCount","fieldMap","forceRender","hasMaxRows","indexPath","isSortable","labels","listeners","moveRow","path","parentPath","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","i18n","hasSubmitted","fallbackLabel","singular","String","padStart","fieldHasErrors","classNames","filter","Boolean","join","div","id","split","key","ref","style","actions","index","undefined","className","collapsibleStyle","dragHandleProps","header","RowLabelComponent","rowLabel","rowNumber","count","withMessage","isCollapsed","collapsed","onToggle","margins","fields"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAKzB,SAASC,WAAW,QAAQ,sCAAqC;AACjE,SAASC,WAAW,QAAQ,sCAAqC;AACjE,SAASC,SAAS,QAAQ,oCAAmC;AAC7D,SAASC,gBAAgB,QAAQ,8BAA6B;AAC9D,SAASC,YAAY,QAAQ,oCAAmC;AAChE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,cAAc,QAAQ,uCAAsC;AAGrE,MAAMC,YAAY;AAyBlB,OAAO,MAAMC,WAAoC,CAAC,EAChDC,cAAc,EACdC,MAAM,EACNC,UAAU,EACVC,YAAY,EACZC,UAAU,EACVC,QAAQ,EACRC,cAAc,KAAK,EACnBC,UAAU,EACVC,SAAS,EACTC,UAAU,EACVC,MAAM,EACNC,SAAS,EACTC,OAAO,EACPC,MAAMC,UAAU,EAChBC,WAAW,EACXC,QAAQ,EACRC,SAAS,EACTC,GAAG,EACHC,QAAQ,EACRC,QAAQ,EACRC,UAAU,EACVC,WAAW,EACXC,UAAU,EACVC,SAAS,EACV;IACC,MAAMX,OAAO,CAAC,EAAEC,WAAW,CAAC,EAAEM,SAAS,CAAC;IACxC,MAAM,EAAEK,IAAI,EAAE,GAAG5B;IACjB,MAAM6B,eAAehC;IAErB,MAAMiC,gBAAgB,CAAC,EAAEtC,eAAeqB,OAAOkB,QAAQ,EAAEH,MAAM,CAAC,EAAEI,OAAOT,WAAW,GAAGU,QAAQ,CAC7F,GACA,KACA,CAAC;IAEH,MAAMC,iBAAiB3B,aAAa,KAAKsB;IAEzC,MAAMM,aAAa;QACjB,CAAC,EAAElC,UAAU,KAAK,CAAC;QACnBiC,iBAAiB,CAAC,EAAEjC,UAAU,iBAAiB,CAAC,GAAG,CAAC,EAAEA,UAAU,gBAAgB,CAAC;KAClF,CACEmC,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,qBACE,oBAACC;QACCC,IAAI,CAAC,EAAEvB,WAAWwB,KAAK,CAAC,KAAKH,IAAI,CAAC,KAAK,KAAK,EAAEf,SAAS,CAAC;QACxDmB,KAAK,CAAC,EAAEzB,WAAW,KAAK,EAAEI,IAAImB,EAAE,CAAC,CAAC;QAClCG,KAAKjB;QACLkB,OAAO;YACLjB;QACF;qBAEA,oBAAChC;QACCkD,SACE,CAAC1B,yBACC,oBAACzB;YACCU,QAAQA;YACRE,cAAcA;YACdI,YAAYA;YACZoC,OAAOvB;YACPX,YAAYA;YACZG,SAASA;YACTK,WAAWA;YACXE,UAAUA;aAEVyB;QAENC,WAAWb;QACXc,kBAAkBf,iBAAiB,UAAU;QAC7CgB,iBACEtC,aACI;YACE4B,IAAInB,IAAImB,EAAE;YACVnC;YACAS;QACF,IACAiC;QAENI,sBACE,oBAACZ;YAAIS,WAAW,CAAC,EAAE/C,UAAU,YAAY,CAAC;yBACxC,oBAACF;YACCqD,mBAAmBjD;YACnByB,MAAMA;YACNZ,MAAMA;YACNqC,UAAUvB;YACVwB,WAAW/B,WAAW;YAEvBW,gCAAkB,oBAACtC;YAAU2D,OAAOhD;YAAYqB,MAAMA;YAAM4B,aAAAA;;QAGjEC,aAAapC,IAAIqC,SAAS;QAC1BC,UAAU,CAACD,YAAcjC,YAAYJ,IAAImB,EAAE,EAAEkB;qBAE7C,oBAAC5D;QACCkD,WAAW,CAAC,EAAE/C,UAAU,QAAQ,CAAC;QACjCO,UAAUA;QACVC,aAAaA;QACbE,WAAWA;QACXiD,SAAQ;QACR5C,MAAMA;QACNE,aAAaA,aAAa2C;QAC1B1C,UAAUA;QACVK,YAAYA;;AAKtB,EAAC"}
1
+ {"version":3,"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["import type { FieldPermissions } from 'payload/auth'\nimport type { ArrayField, Row } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { FieldMap } from '../../providers/ComponentMap/buildComponentMap/types.js'\n\nimport { ArrayAction } from '../../elements/ArrayAction/index.js'\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\ntype ArrayRowProps = UseDraggableSortableReturn & {\n CustomRowLabel?: React.ReactNode\n addRow: (rowIndex: number) => void\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fieldMap: FieldMap\n forceRender?: boolean\n hasMaxRows?: boolean\n indexPath: string\n isSortable?: boolean\n labels: ArrayField['labels']\n moveRow: (fromIndex: number, toIndex: number) => void\n path: string\n permissions: FieldPermissions\n readOnly?: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (rowID: string, collapsed: boolean) => void\n}\n\nexport const ArrayRow: React.FC<ArrayRowProps> = ({\n CustomRowLabel,\n addRow,\n attributes,\n duplicateRow,\n errorCount,\n fieldMap,\n forceRender = false,\n hasMaxRows,\n indexPath,\n isSortable,\n labels,\n listeners,\n moveRow,\n path: parentPath,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n}) => {\n const path = `${parentPath}.${rowIndex}`\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(\n 2,\n '0',\n )}`\n\n const fieldHasErrors = errorCount > 0 && hasSubmitted\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div\n id={`${parentPath.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={setNodeRef}\n style={{\n transform,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <ArrayAction\n addRow={addRow}\n duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\n removeRow={removeRow}\n rowCount={rowCount}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable\n ? {\n id: row.id,\n attributes,\n listeners,\n }\n : undefined\n }\n header={\n <div className={`${baseClass}__row-header`}>\n <RowLabel\n RowLabelComponent={CustomRowLabel}\n i18n={i18n}\n path={path}\n rowLabel={fallbackLabel}\n rowNumber={rowIndex + 1}\n />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n }\n isCollapsed={row.collapsed}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n <RenderFields\n className={`${baseClass}__fields`}\n fieldMap={fieldMap}\n forceRender={forceRender}\n indexPath={indexPath}\n margins=\"small\"\n path={path}\n permissions={permissions?.fields}\n readOnly={readOnly}\n schemaPath={schemaPath}\n />\n </Collapsible>\n </div>\n )\n}\n"],"names":["getTranslation","React","ArrayAction","Collapsible","ErrorPill","useFormSubmitted","RenderFields","RowLabel","useTranslation","baseClass","ArrayRow","CustomRowLabel","addRow","attributes","duplicateRow","errorCount","fieldMap","forceRender","hasMaxRows","indexPath","isSortable","labels","listeners","moveRow","path","parentPath","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","i18n","hasSubmitted","fallbackLabel","singular","String","padStart","fieldHasErrors","classNames","filter","Boolean","join","div","id","split","ref","style","actions","index","undefined","className","collapsibleStyle","dragHandleProps","header","RowLabelComponent","rowLabel","rowNumber","count","withMessage","isCollapsed","collapsed","onToggle","margins","fields"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";AAGA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAKzB,SAASC,WAAW,QAAQ,sCAAqC;AACjE,SAASC,WAAW,QAAQ,sCAAqC;AACjE,SAASC,SAAS,QAAQ,oCAAmC;AAC7D,SAASC,gBAAgB,QAAQ,8BAA6B;AAC9D,SAASC,YAAY,QAAQ,oCAAmC;AAChE,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,cAAc,QAAQ,uCAAsC;AAGrE,MAAMC,YAAY;AAyBlB,OAAO,MAAMC,WAAoC,CAAC,EAChDC,cAAc,EACdC,MAAM,EACNC,UAAU,EACVC,YAAY,EACZC,UAAU,EACVC,QAAQ,EACRC,cAAc,KAAK,EACnBC,UAAU,EACVC,SAAS,EACTC,UAAU,EACVC,MAAM,EACNC,SAAS,EACTC,OAAO,EACPC,MAAMC,UAAU,EAChBC,WAAW,EACXC,QAAQ,EACRC,SAAS,EACTC,GAAG,EACHC,QAAQ,EACRC,QAAQ,EACRC,UAAU,EACVC,WAAW,EACXC,UAAU,EACVC,SAAS,EACV;IACC,MAAMX,OAAO,CAAC,EAAEC,WAAW,CAAC,EAAEM,SAAS,CAAC;IACxC,MAAM,EAAEK,IAAI,EAAE,GAAG5B;IACjB,MAAM6B,eAAehC;IAErB,MAAMiC,gBAAgB,CAAC,EAAEtC,eAAeqB,OAAOkB,QAAQ,EAAEH,MAAM,CAAC,EAAEI,OAAOT,WAAW,GAAGU,QAAQ,CAC7F,GACA,KACA,CAAC;IAEH,MAAMC,iBAAiB3B,aAAa,KAAKsB;IAEzC,MAAMM,aAAa;QACjB,CAAC,EAAElC,UAAU,KAAK,CAAC;QACnBiC,iBAAiB,CAAC,EAAEjC,UAAU,iBAAiB,CAAC,GAAG,CAAC,EAAEA,UAAU,gBAAgB,CAAC;KAClF,CACEmC,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,qBACE,KAACC;QACCC,IAAI,CAAC,EAAEvB,WAAWwB,KAAK,CAAC,KAAKH,IAAI,CAAC,KAAK,KAAK,EAAEf,SAAS,CAAC;QAExDmB,KAAKhB;QACLiB,OAAO;YACLhB;QACF;kBAEA,cAAA,KAAChC;YACCiD,SACE,CAACzB,yBACC,KAACzB;gBACCU,QAAQA;gBACRE,cAAcA;gBACdI,YAAYA;gBACZmC,OAAOtB;gBACPX,YAAYA;gBACZG,SAASA;gBACTK,WAAWA;gBACXE,UAAUA;iBAEVwB;YAENC,WAAWZ;YACXa,kBAAkBd,iBAAiB,UAAU;YAC7Ce,iBACErC,aACI;gBACE4B,IAAInB,IAAImB,EAAE;gBACVnC;gBACAS;YACF,IACAgC;YAENI,sBACE,MAACX;gBAAIQ,WAAW,CAAC,EAAE9C,UAAU,YAAY,CAAC;;kCACxC,KAACF;wBACCoD,mBAAmBhD;wBACnByB,MAAMA;wBACNZ,MAAMA;wBACNoC,UAAUtB;wBACVuB,WAAW9B,WAAW;;oBAEvBW,gCAAkB,KAACtC;wBAAU0D,OAAO/C;wBAAYqB,MAAMA;wBAAM2B,WAAW;;;;YAG5EC,aAAanC,IAAIoC,SAAS;YAC1BC,UAAU,CAACD,YAAchC,YAAYJ,IAAImB,EAAE,EAAEiB;sBAE7C,cAAA,KAAC3D;gBACCiD,WAAW,CAAC,EAAE9C,UAAU,QAAQ,CAAC;gBACjCO,UAAUA;gBACVC,aAAaA;gBACbE,WAAWA;gBACXgD,SAAQ;gBACR3C,MAAMA;gBACNE,aAAaA,aAAa0C;gBAC1BzC,UAAUA;gBACVK,YAAYA;;;OAxDX,CAAC,EAAEP,WAAW,KAAK,EAAEI,IAAImB,EAAE,CAAC,CAAC;AA6DxC,EAAC"}