@payloadcms/ui 3.0.0-beta.78 → 3.0.0-beta.79

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 (543) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +5 -2
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/Autosave/index.d.ts.map +1 -1
  5. package/dist/elements/Autosave/index.js +1 -1
  6. package/dist/elements/Autosave/index.js.map +1 -1
  7. package/dist/elements/ColumnSelector/index.d.ts +1 -1
  8. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  9. package/dist/elements/ColumnSelector/index.js +2 -2
  10. package/dist/elements/ColumnSelector/index.js.map +1 -1
  11. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  12. package/dist/elements/DeleteDocument/index.js +1 -1
  13. package/dist/elements/DeleteDocument/index.js.map +1 -1
  14. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  15. package/dist/elements/DeleteMany/index.js +1 -1
  16. package/dist/elements/DeleteMany/index.js.map +1 -1
  17. package/dist/elements/DocumentControls/index.d.ts +10 -10
  18. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  19. package/dist/elements/DocumentControls/index.js +11 -13
  20. package/dist/elements/DocumentControls/index.js.map +1 -1
  21. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  22. package/dist/elements/DocumentDrawer/DrawerContent.js +6 -5
  23. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  24. package/dist/elements/DocumentDrawer/types.d.ts +10 -10
  25. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  26. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  27. package/dist/elements/DocumentFields/index.d.ts +9 -9
  28. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  29. package/dist/elements/DocumentFields/index.js +6 -5
  30. package/dist/elements/DocumentFields/index.js.map +1 -1
  31. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +6 -6
  32. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  33. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  34. package/dist/elements/Drawer/types.d.ts +7 -7
  35. package/dist/elements/Drawer/types.d.ts.map +1 -1
  36. package/dist/elements/Drawer/types.js.map +1 -1
  37. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  38. package/dist/elements/DuplicateDocument/index.js +1 -2
  39. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  40. package/dist/elements/EditMany/index.d.ts +3 -3
  41. package/dist/elements/EditMany/index.d.ts.map +1 -1
  42. package/dist/elements/EditMany/index.js +4 -4
  43. package/dist/elements/EditMany/index.js.map +1 -1
  44. package/dist/elements/FieldSelect/index.d.ts +4 -4
  45. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  46. package/dist/elements/FieldSelect/index.js +32 -21
  47. package/dist/elements/FieldSelect/index.js.map +1 -1
  48. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -2
  49. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  50. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +4 -3
  51. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  52. package/dist/elements/ListControls/index.d.ts +2 -2
  53. package/dist/elements/ListControls/index.d.ts.map +1 -1
  54. package/dist/elements/ListControls/index.js +8 -8
  55. package/dist/elements/ListControls/index.js.map +1 -1
  56. package/dist/elements/ListDrawer/DrawerContent.js +6 -5
  57. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  58. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  59. package/dist/elements/ListDrawer/index.js +1 -1
  60. package/dist/elements/ListDrawer/index.js.map +1 -1
  61. package/dist/elements/ListDrawer/types.d.ts +6 -6
  62. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  63. package/dist/elements/ListDrawer/types.js.map +1 -1
  64. package/dist/elements/Localizer/index.js +1 -1
  65. package/dist/elements/Localizer/index.js.map +1 -1
  66. package/dist/elements/Logout/index.d.ts.map +1 -1
  67. package/dist/elements/Logout/index.js +6 -6
  68. package/dist/elements/Logout/index.js.map +1 -1
  69. package/dist/elements/Popup/index.d.ts +1 -1
  70. package/dist/elements/Popup/index.d.ts.map +1 -1
  71. package/dist/elements/Popup/index.js.map +1 -1
  72. package/dist/elements/PreviewButton/index.d.ts +2 -1
  73. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  74. package/dist/elements/PreviewButton/index.js +6 -1
  75. package/dist/elements/PreviewButton/index.js.map +1 -1
  76. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  77. package/dist/elements/PreviewButton/usePreviewURL.js +1 -1
  78. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  79. package/dist/elements/PublishButton/index.d.ts +2 -1
  80. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  81. package/dist/elements/PublishButton/index.js +4 -1
  82. package/dist/elements/PublishButton/index.js.map +1 -1
  83. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  84. package/dist/elements/PublishMany/index.js +1 -1
  85. package/dist/elements/PublishMany/index.js.map +1 -1
  86. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  87. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  88. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  89. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  90. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  91. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  92. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  93. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  94. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  95. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  96. package/dist/elements/SaveButton/index.d.ts +2 -1
  97. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  98. package/dist/elements/SaveButton/index.js +4 -1
  99. package/dist/elements/SaveButton/index.js.map +1 -1
  100. package/dist/elements/SaveDraftButton/index.d.ts +2 -1
  101. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  102. package/dist/elements/SaveDraftButton/index.js +5 -2
  103. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  104. package/dist/elements/Status/index.d.ts.map +1 -1
  105. package/dist/elements/Status/index.js +1 -1
  106. package/dist/elements/Status/index.js.map +1 -1
  107. package/dist/elements/StayLoggedIn/index.js +1 -1
  108. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  109. package/dist/elements/StepNav/index.d.ts +2 -2
  110. package/dist/elements/StepNav/index.d.ts.map +1 -1
  111. package/dist/elements/StepNav/index.js +11 -8
  112. package/dist/elements/StepNav/index.js.map +1 -1
  113. package/dist/elements/StepNav/types.d.ts +2 -2
  114. package/dist/elements/StepNav/types.js.map +1 -1
  115. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +2 -3
  116. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  117. package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -1
  118. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  119. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -4
  120. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  121. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
  122. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  123. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
  124. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  125. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  126. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +3 -3
  127. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  128. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  129. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -2
  130. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  131. package/dist/elements/Table/DefaultCell/fields/Date/index.js +4 -4
  132. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  133. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
  134. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  135. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  136. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
  137. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  138. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  139. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -4
  140. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  141. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +6 -8
  142. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  143. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +2 -3
  144. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  145. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
  146. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  147. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
  148. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
  149. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  150. package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
  151. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  152. package/dist/elements/Table/DefaultCell/index.js +16 -12
  153. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  154. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  155. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  156. package/dist/elements/Table/RelationshipProvider/index.js +1 -2
  157. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  158. package/dist/elements/Table/TableCellProvider/index.d.ts +6 -6
  159. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  160. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  161. package/dist/elements/Table/index.d.ts +11 -14
  162. package/dist/elements/Table/index.d.ts.map +1 -1
  163. package/dist/elements/Table/index.js +7 -1
  164. package/dist/elements/Table/index.js.map +1 -1
  165. package/dist/elements/TableColumns/buildColumnState.d.ts +2 -2
  166. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  167. package/dist/elements/TableColumns/buildColumnState.js +30 -32
  168. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  169. package/dist/elements/TableColumns/filterFields.d.ts +2 -2
  170. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
  171. package/dist/elements/TableColumns/filterFields.js +8 -11
  172. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  173. package/dist/elements/TableColumns/getInitialColumns.d.ts +2 -3
  174. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
  175. package/dist/elements/TableColumns/getInitialColumns.js +9 -11
  176. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  177. package/dist/elements/TableColumns/index.d.ts +6 -6
  178. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  179. package/dist/elements/TableColumns/index.js +8 -11
  180. package/dist/elements/TableColumns/index.js.map +1 -1
  181. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  182. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  183. package/dist/elements/ThumbnailCard/index.js +1 -1
  184. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  185. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  186. package/dist/elements/UnpublishMany/index.js +2 -2
  187. package/dist/elements/UnpublishMany/index.js.map +1 -1
  188. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  189. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +5 -5
  190. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  191. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  192. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  193. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  194. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -2
  195. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  196. package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
  197. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  198. package/dist/elements/WhereBuilder/Condition/index.d.ts +9 -9
  199. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  200. package/dist/elements/WhereBuilder/Condition/index.js +25 -20
  201. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  202. package/dist/elements/WhereBuilder/index.js +9 -8
  203. package/dist/elements/WhereBuilder/index.js.map +1 -1
  204. package/dist/elements/WhereBuilder/reduceClientFields.d.ts +15 -0
  205. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -0
  206. package/dist/elements/WhereBuilder/{reduceFieldMap.js → reduceClientFields.js} +28 -26
  207. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -0
  208. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  209. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  210. package/dist/elements/WhereBuilder/types.js.map +1 -1
  211. package/dist/exports/client/{CodeEditor-UPOVAXRP.js → CodeEditor-MODTAQNB.js} +1 -1
  212. package/dist/exports/client/{CodeEditor-UPOVAXRP.js.map → CodeEditor-MODTAQNB.js.map} +1 -1
  213. package/dist/exports/client/{DatePicker-XJHHMZP7.js → DatePicker-QKRYICNS.js} +2 -2
  214. package/dist/exports/client/chunk-HR5HEGNB.js +30 -0
  215. package/dist/exports/client/{chunk-TIH7OFW3.js.map → chunk-HR5HEGNB.js.map} +4 -4
  216. package/dist/exports/client/index.d.ts +9 -2
  217. package/dist/exports/client/index.d.ts.map +1 -1
  218. package/dist/exports/client/index.js +27 -27
  219. package/dist/exports/client/index.js.map +4 -4
  220. package/dist/exports/shared/index.d.ts +4 -1
  221. package/dist/exports/shared/index.d.ts.map +1 -1
  222. package/dist/exports/shared/index.js +2 -2
  223. package/dist/exports/shared/index.js.map +4 -4
  224. package/dist/fields/Array/ArrayRow.d.ts +21 -21
  225. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  226. package/dist/fields/Array/ArrayRow.js +3 -3
  227. package/dist/fields/Array/ArrayRow.js.map +1 -1
  228. package/dist/fields/Array/index.d.ts.map +1 -1
  229. package/dist/fields/Array/index.js +11 -9
  230. package/dist/fields/Array/index.js.map +1 -1
  231. package/dist/fields/Blocks/BlockRow.d.ts +3 -3
  232. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  233. package/dist/fields/Blocks/BlockRow.js +9 -6
  234. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  235. package/dist/fields/Blocks/BlocksDrawer/index.d.ts +6 -6
  236. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  237. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  238. package/dist/fields/Blocks/RowActions.d.ts +13 -13
  239. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  240. package/dist/fields/Blocks/RowActions.js.map +1 -1
  241. package/dist/fields/Blocks/index.d.ts +2 -2
  242. package/dist/fields/Blocks/index.d.ts.map +1 -1
  243. package/dist/fields/Blocks/index.js +10 -6
  244. package/dist/fields/Blocks/index.js.map +1 -1
  245. package/dist/fields/Checkbox/Input.d.ts +15 -15
  246. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  247. package/dist/fields/Checkbox/Input.js +9 -4
  248. package/dist/fields/Checkbox/Input.js.map +1 -1
  249. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  250. package/dist/fields/Checkbox/index.js +9 -6
  251. package/dist/fields/Checkbox/index.js.map +1 -1
  252. package/dist/fields/Code/index.d.ts.map +1 -1
  253. package/dist/fields/Code/index.js +14 -6
  254. package/dist/fields/Code/index.js.map +1 -1
  255. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  256. package/dist/fields/Collapsible/index.js +7 -5
  257. package/dist/fields/Collapsible/index.js.map +1 -1
  258. package/dist/fields/ConfirmPassword/index.d.ts +2 -2
  259. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  260. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  261. package/dist/fields/DateTime/index.d.ts.map +1 -1
  262. package/dist/fields/DateTime/index.js +14 -6
  263. package/dist/fields/DateTime/index.js.map +1 -1
  264. package/dist/fields/Email/index.d.ts.map +1 -1
  265. package/dist/fields/Email/index.js +15 -6
  266. package/dist/fields/Email/index.js.map +1 -1
  267. package/dist/fields/FieldDescription/index.d.ts.map +1 -1
  268. package/dist/fields/FieldDescription/index.js +8 -4
  269. package/dist/fields/FieldDescription/index.js.map +1 -1
  270. package/dist/fields/FieldError/index.d.ts.map +1 -1
  271. package/dist/fields/FieldError/index.js +8 -4
  272. package/dist/fields/FieldError/index.js.map +1 -1
  273. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  274. package/dist/fields/FieldLabel/index.js +8 -4
  275. package/dist/fields/FieldLabel/index.js.map +1 -1
  276. package/dist/fields/Group/index.d.ts.map +1 -1
  277. package/dist/fields/Group/index.js +63 -56
  278. package/dist/fields/Group/index.js.map +1 -1
  279. package/dist/fields/Hidden/index.d.ts.map +1 -1
  280. package/dist/fields/Hidden/index.js +1 -1
  281. package/dist/fields/Hidden/index.js.map +1 -1
  282. package/dist/fields/JSON/index.d.ts.map +1 -1
  283. package/dist/fields/JSON/index.js +14 -6
  284. package/dist/fields/JSON/index.js.map +1 -1
  285. package/dist/fields/Number/Input.d.ts +2 -0
  286. package/dist/fields/Number/Input.d.ts.map +1 -0
  287. package/dist/fields/Number/Input.js +2 -0
  288. package/dist/fields/Number/Input.js.map +1 -0
  289. package/dist/fields/Number/index.d.ts.map +1 -1
  290. package/dist/fields/Number/index.js +14 -6
  291. package/dist/fields/Number/index.js.map +1 -1
  292. package/dist/fields/Password/index.d.ts +1 -24
  293. package/dist/fields/Password/index.d.ts.map +1 -1
  294. package/dist/fields/Password/index.js +8 -7
  295. package/dist/fields/Password/index.js.map +1 -1
  296. package/dist/fields/Password/input.d.ts.map +1 -1
  297. package/dist/fields/Password/input.js +18 -8
  298. package/dist/fields/Password/input.js.map +1 -1
  299. package/dist/fields/Password/types.d.ts +32 -23
  300. package/dist/fields/Password/types.d.ts.map +1 -1
  301. package/dist/fields/Password/types.js.map +1 -1
  302. package/dist/fields/Point/index.d.ts.map +1 -1
  303. package/dist/fields/Point/index.js +23 -9
  304. package/dist/fields/Point/index.js.map +1 -1
  305. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  306. package/dist/fields/RadioGroup/index.js +7 -4
  307. package/dist/fields/RadioGroup/index.js.map +1 -1
  308. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
  309. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  310. package/dist/fields/Relationship/index.d.ts.map +1 -1
  311. package/dist/fields/Relationship/index.js +8 -5
  312. package/dist/fields/Relationship/index.js.map +1 -1
  313. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  314. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  315. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  316. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  317. package/dist/fields/RichText/index.d.ts +2 -2
  318. package/dist/fields/RichText/index.d.ts.map +1 -1
  319. package/dist/fields/RichText/index.js.map +1 -1
  320. package/dist/fields/Row/index.d.ts.map +1 -1
  321. package/dist/fields/Row/index.js +6 -8
  322. package/dist/fields/Row/index.js.map +1 -1
  323. package/dist/fields/Select/Input.d.ts +26 -6
  324. package/dist/fields/Select/Input.d.ts.map +1 -1
  325. package/dist/fields/Select/Input.js +13 -6
  326. package/dist/fields/Select/Input.js.map +1 -1
  327. package/dist/fields/Select/index.d.ts.map +1 -1
  328. package/dist/fields/Select/index.js +8 -9
  329. package/dist/fields/Select/index.js.map +1 -1
  330. package/dist/fields/Tabs/Tab/index.d.ts +5 -5
  331. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  332. package/dist/fields/Tabs/Tab/index.js +4 -5
  333. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  334. package/dist/fields/Tabs/index.d.ts.map +1 -1
  335. package/dist/fields/Tabs/index.js +10 -9
  336. package/dist/fields/Tabs/index.js.map +1 -1
  337. package/dist/fields/Text/Input.d.ts.map +1 -1
  338. package/dist/fields/Text/Input.js +13 -6
  339. package/dist/fields/Text/Input.js.map +1 -1
  340. package/dist/fields/Text/index.js +9 -10
  341. package/dist/fields/Text/index.js.map +1 -1
  342. package/dist/fields/Text/types.d.ts +32 -13
  343. package/dist/fields/Text/types.d.ts.map +1 -1
  344. package/dist/fields/Text/types.js.map +1 -1
  345. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  346. package/dist/fields/Textarea/Input.js +13 -6
  347. package/dist/fields/Textarea/Input.js.map +1 -1
  348. package/dist/fields/Textarea/index.js +9 -10
  349. package/dist/fields/Textarea/index.js.map +1 -1
  350. package/dist/fields/Textarea/types.d.ts +28 -6
  351. package/dist/fields/Textarea/types.d.ts.map +1 -1
  352. package/dist/fields/Textarea/types.js.map +1 -1
  353. package/dist/fields/Upload/Input.d.ts +25 -12
  354. package/dist/fields/Upload/Input.d.ts.map +1 -1
  355. package/dist/fields/Upload/Input.js +5 -4
  356. package/dist/fields/Upload/Input.js.map +1 -1
  357. package/dist/fields/Upload/index.d.ts.map +1 -1
  358. package/dist/fields/Upload/index.js +7 -10
  359. package/dist/fields/Upload/index.js.map +1 -1
  360. package/dist/fields/index.d.ts +5 -1
  361. package/dist/fields/index.d.ts.map +1 -1
  362. package/dist/fields/index.js.map +1 -1
  363. package/dist/forms/FieldPropsProvider/index.d.ts +11 -11
  364. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  365. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  366. package/dist/forms/Form/createNestedClientFieldPath.d.ts +3 -0
  367. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -0
  368. package/dist/forms/Form/{createNestedFieldPath.js → createNestedClientFieldPath.js} +2 -13
  369. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -0
  370. package/dist/forms/Form/index.js +1 -1
  371. package/dist/forms/Form/index.js.map +1 -1
  372. package/dist/forms/Form/types.d.ts +3 -3
  373. package/dist/forms/Form/types.d.ts.map +1 -1
  374. package/dist/forms/Form/types.js.map +1 -1
  375. package/dist/forms/NullifyField/index.d.ts +3 -3
  376. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  377. package/dist/forms/NullifyField/index.js +5 -15
  378. package/dist/forms/NullifyField/index.js.map +1 -1
  379. package/dist/forms/RenderFields/RenderField.d.ts +12 -15
  380. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  381. package/dist/forms/RenderFields/RenderField.js +35 -16
  382. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  383. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  384. package/dist/forms/RenderFields/index.js +7 -14
  385. package/dist/forms/RenderFields/index.js.map +1 -1
  386. package/dist/forms/RenderFields/types.d.ts +11 -11
  387. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  388. package/dist/forms/RenderFields/types.js.map +1 -1
  389. package/dist/forms/RowLabel/Context/index.d.ts +4 -4
  390. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  391. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  392. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  393. package/dist/forms/RowLabel/index.js +8 -2
  394. package/dist/forms/RowLabel/index.js.map +1 -1
  395. package/dist/forms/RowLabel/types.d.ts +7 -8
  396. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  397. package/dist/forms/RowLabel/types.js.map +1 -1
  398. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts +2 -2
  399. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  400. package/dist/forms/WatchChildErrors/buildPathSegments.js +11 -10
  401. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  402. package/dist/forms/WatchChildErrors/index.d.ts +2 -2
  403. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  404. package/dist/forms/WatchChildErrors/index.js +3 -3
  405. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  406. package/dist/forms/useField/index.js +1 -1
  407. package/dist/forms/useField/index.js.map +1 -1
  408. package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
  409. package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
  410. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  411. package/dist/graphics/Account/index.d.ts.map +1 -1
  412. package/dist/graphics/Account/index.js +14 -8
  413. package/dist/graphics/Account/index.js.map +1 -1
  414. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  415. package/dist/hooks/useDelayedRender.js.map +1 -1
  416. package/dist/hooks/useUseAsTitle.d.ts +2 -2
  417. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  418. package/dist/hooks/useUseAsTitle.js +3 -3
  419. package/dist/hooks/useUseAsTitle.js.map +1 -1
  420. package/dist/providers/Actions/SetViewActions/index.d.ts +3 -3
  421. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  422. package/dist/providers/Actions/SetViewActions/index.js +1 -1
  423. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  424. package/dist/providers/Actions/index.d.ts +3 -3
  425. package/dist/providers/Actions/index.d.ts.map +1 -1
  426. package/dist/providers/Actions/index.js +2 -2
  427. package/dist/providers/Actions/index.js.map +1 -1
  428. package/dist/providers/Auth/index.js +1 -1
  429. package/dist/providers/Auth/index.js.map +1 -1
  430. package/dist/providers/Config/RenderComponent.d.ts +12 -0
  431. package/dist/providers/Config/RenderComponent.d.ts.map +1 -0
  432. package/dist/providers/Config/RenderComponent.js +69 -0
  433. package/dist/providers/Config/RenderComponent.js.map +1 -0
  434. package/dist/providers/Config/createClientConfig/collections.d.ts +24 -0
  435. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -0
  436. package/dist/providers/Config/createClientConfig/collections.js +173 -0
  437. package/dist/providers/Config/createClientConfig/collections.js.map +1 -0
  438. package/dist/providers/Config/createClientConfig/fields.d.ts +22 -0
  439. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -0
  440. package/dist/providers/Config/createClientConfig/fields.js +299 -0
  441. package/dist/providers/Config/createClientConfig/fields.js.map +1 -0
  442. package/dist/providers/Config/createClientConfig/getComponent.d.ts +11 -0
  443. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -0
  444. package/dist/providers/Config/createClientConfig/getComponent.js +29 -0
  445. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -0
  446. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts +11 -0
  447. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -0
  448. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +86 -0
  449. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -0
  450. package/dist/providers/Config/createClientConfig/globals.d.ts +22 -0
  451. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -0
  452. package/dist/providers/Config/createClientConfig/globals.js +103 -0
  453. package/dist/providers/Config/createClientConfig/globals.js.map +1 -0
  454. package/dist/providers/Config/createClientConfig/index.d.ts +21 -0
  455. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -0
  456. package/dist/providers/Config/createClientConfig/index.js +98 -0
  457. package/dist/providers/Config/createClientConfig/index.js.map +1 -0
  458. package/dist/providers/Config/index.d.ts +10 -3
  459. package/dist/providers/Config/index.d.ts.map +1 -1
  460. package/dist/providers/Config/index.js +17 -3
  461. package/dist/providers/Config/index.js.map +1 -1
  462. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  463. package/dist/providers/DocumentInfo/index.js +1 -1
  464. package/dist/providers/DocumentInfo/index.js.map +1 -1
  465. package/dist/providers/FieldComponents/index.d.ts +4 -3
  466. package/dist/providers/FieldComponents/index.d.ts.map +1 -1
  467. package/dist/providers/FieldComponents/index.js +2 -3
  468. package/dist/providers/FieldComponents/index.js.map +1 -1
  469. package/dist/providers/ListInfo/index.d.ts +12 -12
  470. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  471. package/dist/providers/ListInfo/index.js.map +1 -1
  472. package/dist/providers/Locale/index.d.ts.map +1 -1
  473. package/dist/providers/Locale/index.js +1 -1
  474. package/dist/providers/Locale/index.js.map +1 -1
  475. package/dist/providers/Preferences/index.js +1 -1
  476. package/dist/providers/Preferences/index.js.map +1 -1
  477. package/dist/providers/Root/index.d.ts +0 -2
  478. package/dist/providers/Root/index.d.ts.map +1 -1
  479. package/dist/providers/Root/index.js +46 -48
  480. package/dist/providers/Root/index.js.map +1 -1
  481. package/dist/styles.css +1 -1
  482. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  483. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -0
  484. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  485. package/dist/utilities/buildFormState.d.ts.map +1 -1
  486. package/dist/utilities/buildFormState.js +2 -4
  487. package/dist/utilities/buildFormState.js.map +1 -1
  488. package/dist/utilities/flattenFieldMap.d.ts +2 -2
  489. package/dist/utilities/flattenFieldMap.d.ts.map +1 -1
  490. package/dist/utilities/flattenFieldMap.js +8 -8
  491. package/dist/utilities/flattenFieldMap.js.map +1 -1
  492. package/dist/utilities/groupNavItems.d.ts +3 -3
  493. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  494. package/dist/utilities/groupNavItems.js.map +1 -1
  495. package/package.json +11 -5
  496. package/dist/elements/RenderCustomClientComponent/index.d.ts +0 -8
  497. package/dist/elements/RenderCustomClientComponent/index.d.ts.map +0 -1
  498. package/dist/elements/RenderCustomClientComponent/index.js +0 -19
  499. package/dist/elements/RenderCustomClientComponent/index.js.map +0 -1
  500. package/dist/elements/RenderCustomComponent/index.d.ts +0 -17
  501. package/dist/elements/RenderCustomComponent/index.d.ts.map +0 -1
  502. package/dist/elements/RenderCustomComponent/index.js +0 -26
  503. package/dist/elements/RenderCustomComponent/index.js.map +0 -1
  504. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +0 -14
  505. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +0 -1
  506. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +0 -1
  507. package/dist/exports/client/chunk-TIH7OFW3.js +0 -30
  508. package/dist/forms/Form/createNestedFieldPath.d.ts +0 -4
  509. package/dist/forms/Form/createNestedFieldPath.d.ts.map +0 -1
  510. package/dist/forms/Form/createNestedFieldPath.js.map +0 -1
  511. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +0 -9
  512. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +0 -1
  513. package/dist/providers/ComponentMap/buildComponentMap/actions.js +0 -45
  514. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +0 -1
  515. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +0 -18
  516. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +0 -1
  517. package/dist/providers/ComponentMap/buildComponentMap/collections.js +0 -118
  518. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +0 -1
  519. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +0 -18
  520. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +0 -1
  521. package/dist/providers/ComponentMap/buildComponentMap/fields.js +0 -703
  522. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +0 -1
  523. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +0 -19
  524. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +0 -1
  525. package/dist/providers/ComponentMap/buildComponentMap/globals.js +0 -81
  526. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +0 -1
  527. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +0 -16
  528. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +0 -1
  529. package/dist/providers/ComponentMap/buildComponentMap/index.js +0 -79
  530. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +0 -1
  531. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +0 -39
  532. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +0 -1
  533. package/dist/providers/ComponentMap/buildComponentMap/types.js +0 -3
  534. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +0 -1
  535. package/dist/providers/ComponentMap/index.d.ts +0 -25
  536. package/dist/providers/ComponentMap/index.d.ts.map +0 -1
  537. package/dist/providers/ComponentMap/index.js +0 -53
  538. package/dist/providers/ComponentMap/index.js.map +0 -1
  539. package/dist/utilities/buildComponentMap.d.ts +0 -4
  540. package/dist/utilities/buildComponentMap.d.ts.map +0 -1
  541. package/dist/utilities/buildComponentMap.js +0 -4
  542. package/dist/utilities/buildComponentMap.js.map +0 -1
  543. /package/dist/exports/client/{DatePicker-XJHHMZP7.js.map → DatePicker-QKRYICNS.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/RadioGroup/index.tsx"],"sourcesContent":["'use client'\nimport type { RadioFieldProps } from 'payload'\n\nimport { optionIsObject } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { Radio } from './Radio/index.js'\nimport './index.scss'\n\nconst baseClass = 'radio-group'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nconst RadioGroupFieldComponent: React.FC<RadioFieldProps> = (props) => {\n const {\n name,\n CustomDescription,\n CustomError,\n CustomLabel,\n className,\n descriptionProps,\n errorProps,\n label,\n labelProps,\n layout = 'horizontal',\n onChange: onChangeFromProps,\n options = [],\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n required,\n style,\n validate,\n value: valueFromProps,\n width,\n } = props\n\n const { uuid } = useForm()\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function')\n return validate(value, { ...validationOptions, options, required })\n },\n [validate, options, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n formInitializing,\n formProcessing,\n path,\n setValue,\n showError,\n value: valueFromContext,\n } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const value = valueFromContext || valueFromProps\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n `${baseClass}--layout-${layout}`,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} alignCaret=\"left\" />\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <ul className={`${baseClass}--group`} id={`field-${path.replace(/\\./g, '__')}`}>\n {options.map((option) => {\n let optionValue = ''\n\n if (optionIsObject(option)) {\n optionValue = option.value\n } else {\n optionValue = option\n }\n\n const isSelected = String(optionValue) === String(value)\n\n const id = `field-${path}-${optionValue}${uuid ? `-${uuid}` : ''}`\n\n return (\n <li key={`${path} - ${optionValue}`}>\n <Radio\n id={id}\n isSelected={isSelected}\n onChange={() => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(optionValue)\n }\n\n if (!disabled) {\n setValue(optionValue)\n }\n }}\n option={optionIsObject(option) ? option : { label: option, value: option }}\n path={path}\n readOnly={disabled}\n uuid={uuid}\n />\n </li>\n )\n })}\n </ul>\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const RadioGroupField = withCondition(RadioGroupFieldComponent)\n"],"names":["optionIsObject","React","useCallback","useForm","useField","withCondition","FieldLabel","fieldBaseClass","Radio","baseClass","useFieldProps","FieldDescription","FieldError","RadioGroupFieldComponent","props","name","CustomDescription","CustomError","CustomLabel","className","descriptionProps","errorProps","label","labelProps","layout","onChange","onChangeFromProps","options","path","pathFromProps","readOnly","readOnlyFromProps","required","style","validate","value","valueFromProps","width","uuid","memoizedValidate","validationOptions","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","valueFromContext","disabled","div","filter","Boolean","join","alignCaret","ul","id","replace","map","option","optionValue","isSelected","String","li","undefined","RadioGroupField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/RadioGroup/index.tsx"],"sourcesContent":["'use client'\nimport type { RadioFieldProps } from 'payload'\n\nimport { optionIsObject } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport { useForm } from '../../forms/Form/context.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { Radio } from './Radio/index.js'\nimport './index.scss'\n\nconst baseClass = 'radio-group'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\n\nconst RadioGroupFieldComponent: React.FC<RadioFieldProps> = (props) => {\n const {\n descriptionProps,\n errorProps,\n field,\n field: {\n name,\n _path: pathFromProps,\n admin: {\n className,\n description,\n layout = 'horizontal',\n readOnly: readOnlyFromAdmin,\n style,\n width,\n } = {} as RadioFieldProps['field']['admin'],\n label,\n options = [],\n required,\n } = {} as RadioFieldProps['field'],\n labelProps,\n onChange: onChangeFromProps,\n readOnly: readOnlyFromTopLevelProps,\n validate,\n value: valueFromProps,\n } = props\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const { uuid } = useForm()\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function')\n return validate(value, { ...validationOptions, options, required })\n },\n [validate, options, required],\n )\n\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n formInitializing,\n formProcessing,\n path,\n setValue,\n showError,\n value: valueFromContext,\n } = useField<string>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const disabled = readOnlyFromProps || readOnlyFromContext || formProcessing || formInitializing\n\n const value = valueFromContext || valueFromProps\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n `${baseClass}--layout-${layout}`,\n showError && 'error',\n disabled && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n style={{\n ...style,\n width,\n }}\n >\n <FieldError\n CustomError={field?.admin?.components?.Error}\n path={path}\n {...(errorProps || {})}\n alignCaret=\"left\"\n />\n <FieldLabel\n Label={field?.admin?.components?.Label}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <ul className={`${baseClass}--group`} id={`field-${path.replace(/\\./g, '__')}`}>\n {options.map((option) => {\n let optionValue = ''\n\n if (optionIsObject(option)) {\n optionValue = option.value\n } else {\n optionValue = option\n }\n\n const isSelected = String(optionValue) === String(value)\n\n const id = `field-${path}-${optionValue}${uuid ? `-${uuid}` : ''}`\n\n return (\n <li key={`${path} - ${optionValue}`}>\n <Radio\n id={id}\n isSelected={isSelected}\n onChange={() => {\n if (typeof onChangeFromProps === 'function') {\n onChangeFromProps(optionValue)\n }\n\n if (!disabled) {\n setValue(optionValue)\n }\n }}\n option={optionIsObject(option) ? option : { label: option, value: option }}\n path={path}\n readOnly={disabled}\n uuid={uuid}\n />\n </li>\n )\n })}\n </ul>\n <FieldDescription\n Description={field?.admin?.components?.Description}\n description={description}\n {...(descriptionProps || {})}\n />\n </div>\n </div>\n )\n}\n\nexport const RadioGroupField = withCondition(RadioGroupFieldComponent)\n"],"names":["optionIsObject","React","useCallback","useForm","useField","withCondition","FieldLabel","fieldBaseClass","Radio","baseClass","useFieldProps","FieldDescription","FieldError","RadioGroupFieldComponent","props","descriptionProps","errorProps","field","name","_path","pathFromProps","admin","className","description","layout","readOnly","readOnlyFromAdmin","style","width","label","options","required","labelProps","onChange","onChangeFromProps","readOnlyFromTopLevelProps","validate","value","valueFromProps","readOnlyFromProps","uuid","memoizedValidate","validationOptions","path","pathFromContext","readOnlyFromContext","formInitializing","formProcessing","setValue","showError","valueFromContext","disabled","div","filter","Boolean","join","CustomError","components","Error","alignCaret","Label","ul","id","replace","map","option","optionValue","isSelected","String","li","Description","RadioGroupField"],"mappings":"AAAA;;AAGA,SAASA,cAAc,QAAQ,iBAAgB;AAC/C,OAAOC,SAASC,WAAW,QAAQ,QAAO;AAE1C,SAASC,OAAO,QAAQ,8BAA6B;AACrD,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,UAAU,QAAQ,yBAAwB;AACnD,SAASC,cAAc,QAAQ,qBAAoB;AACnD,SAASC,KAAK,QAAQ,mBAAkB;AACxC,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,gBAAgB,QAAQ,+BAA8B;AAC/D,SAASC,UAAU,QAAQ,yBAAwB;AAEnD,MAAMC,2BAAsD,CAACC;IAC3D,MAAM,EACJC,gBAAgB,EAChBC,UAAU,EACVC,KAAK,EACLA,OAAO,EACLC,IAAI,EACJC,OAAOC,aAAa,EACpBC,OAAO,EACLC,SAAS,EACTC,WAAW,EACXC,SAAS,YAAY,EACrBC,UAAUC,iBAAiB,EAC3BC,KAAK,EACLC,KAAK,EACN,GAAG,CAAC,CAAsC,EAC3CC,KAAK,EACLC,UAAU,EAAE,EACZC,QAAQ,EACT,GAAG,CAAC,CAA6B,EAClCC,UAAU,EACVC,UAAUC,iBAAiB,EAC3BT,UAAUU,yBAAyB,EACnCC,QAAQ,EACRC,OAAOC,cAAc,EACtB,GAAGxB;IACJ,MAAMyB,oBAAoBJ,6BAA6BT;IAEvD,MAAM,EAAEc,IAAI,EAAE,GAAGrC;IAEjB,MAAMsC,mBAAmBvC,YACvB,CAACmC,OAAOK;QACN,IAAI,OAAON,aAAa,YACtB,OAAOA,SAASC,OAAO;YAAE,GAAGK,iBAAiB;YAAEZ;YAASC;QAAS;IACrE,GACA;QAACK;QAAUN;QAASC;KAAS;IAG/B,MAAM,EAAEY,MAAMC,eAAe,EAAEnB,UAAUoB,mBAAmB,EAAE,GAAGnC;IAEjE,MAAM,EACJoC,gBAAgB,EAChBC,cAAc,EACdJ,IAAI,EACJK,QAAQ,EACRC,SAAS,EACTZ,OAAOa,gBAAgB,EACxB,GAAG9C,SAAiB;QACnBuC,MAAMC,mBAAmBxB,iBAAiBF;QAC1CkB,UAAUK;IACZ;IAEA,MAAMU,WAAWZ,qBAAqBM,uBAAuBE,kBAAkBD;IAE/E,MAAMT,QAAQa,oBAAoBZ;IAElC,qBACE,MAACc;QACC9B,WAAW;YACTf;YACAE;YACAa;YACA,CAAC,EAAEb,UAAU,SAAS,EAAEe,OAAO,CAAC;YAChCyB,aAAa;YACbE,YAAY,CAAC,EAAE1C,UAAU,WAAW,CAAC;SACtC,CACE4C,MAAM,CAACC,SACPC,IAAI,CAAC;QACR5B,OAAO;YACL,GAAGA,KAAK;YACRC;QACF;;0BAEA,KAAChB;gBACC4C,aAAavC,OAAOI,OAAOoC,YAAYC;gBACvCf,MAAMA;gBACL,GAAI3B,cAAc,CAAC,CAAC;gBACrB2C,YAAW;;0BAEb,KAACrD;gBACCsD,OAAO3C,OAAOI,OAAOoC,YAAYG;gBACjC/B,OAAOA;gBACPE,UAAUA;gBACT,GAAIC,cAAc,CAAC,CAAC;;0BAEvB,MAACoB;gBAAI9B,WAAW,CAAC,EAAEf,eAAe,MAAM,CAAC;;kCACvC,KAACsD;wBAAGvC,WAAW,CAAC,EAAEb,UAAU,OAAO,CAAC;wBAAEqD,IAAI,CAAC,MAAM,EAAEnB,KAAKoB,OAAO,CAAC,OAAO,MAAM,CAAC;kCAC3EjC,QAAQkC,GAAG,CAAC,CAACC;4BACZ,IAAIC,cAAc;4BAElB,IAAIlE,eAAeiE,SAAS;gCAC1BC,cAAcD,OAAO5B,KAAK;4BAC5B,OAAO;gCACL6B,cAAcD;4BAChB;4BAEA,MAAME,aAAaC,OAAOF,iBAAiBE,OAAO/B;4BAElD,MAAMyB,KAAK,CAAC,MAAM,EAAEnB,KAAK,CAAC,EAAEuB,YAAY,EAAE1B,OAAO,CAAC,CAAC,EAAEA,KAAK,CAAC,GAAG,GAAG,CAAC;4BAElE,qBACE,KAAC6B;0CACC,cAAA,KAAC7D;oCACCsD,IAAIA;oCACJK,YAAYA;oCACZlC,UAAU;wCACR,IAAI,OAAOC,sBAAsB,YAAY;4CAC3CA,kBAAkBgC;wCACpB;wCAEA,IAAI,CAACf,UAAU;4CACbH,SAASkB;wCACX;oCACF;oCACAD,QAAQjE,eAAeiE,UAAUA,SAAS;wCAAEpC,OAAOoC;wCAAQ5B,OAAO4B;oCAAO;oCACzEtB,MAAMA;oCACNlB,UAAU0B;oCACVX,MAAMA;;+BAhBD,CAAC,EAAEG,KAAK,GAAG,EAAEuB,YAAY,CAAC;wBAoBvC;;kCAEF,KAACvD;wBACC2D,aAAarD,OAAOI,OAAOoC,YAAYa;wBACvC/C,aAAaA;wBACZ,GAAIR,oBAAoB,CAAC,CAAC;;;;;;AAKrC;AAEA,OAAO,MAAMwD,kBAAkBlE,cAAcQ,0BAAyB"}
@@ -1,7 +1,7 @@
1
1
  import { useState } from 'react';
2
2
  import { useConfig } from '../../../providers/Config/index.js';
3
3
  export const useRelatedCollections = (relationTo)=>{
4
- const config = useConfig();
4
+ const { config } = useConfig();
5
5
  const [relatedCollections] = useState(()=>{
6
6
  if (relationTo) {
7
7
  const relations = typeof relationTo === 'string' ? [
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/fields/Relationship/AddNew/useRelatedCollections.ts"],"sourcesContent":["import type { ClientCollectionConfig } from 'payload'\n\nimport { useState } from 'react'\n\nimport { useConfig } from '../../../providers/Config/index.js'\n\nexport const useRelatedCollections = (relationTo: string | string[]): ClientCollectionConfig[] => {\n const config = useConfig()\n\n const [relatedCollections] = useState(() => {\n if (relationTo) {\n const relations = typeof relationTo === 'string' ? [relationTo] : relationTo\n return relations.map((relation) =>\n config.collections.find((collection) => collection.slug === relation),\n )\n }\n return []\n })\n\n return relatedCollections\n}\n"],"names":["useState","useConfig","useRelatedCollections","relationTo","config","relatedCollections","relations","map","relation","collections","find","collection","slug"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,QAAO;AAEhC,SAASC,SAAS,QAAQ,qCAAoC;AAE9D,OAAO,MAAMC,wBAAwB,CAACC;IACpC,MAAMC,SAASH;IAEf,MAAM,CAACI,mBAAmB,GAAGL,SAAS;QACpC,IAAIG,YAAY;YACd,MAAMG,YAAY,OAAOH,eAAe,WAAW;gBAACA;aAAW,GAAGA;YAClE,OAAOG,UAAUC,GAAG,CAAC,CAACC,WACpBJ,OAAOK,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKJ;QAEhE;QACA,OAAO,EAAE;IACX;IAEA,OAAOH;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../../src/fields/Relationship/AddNew/useRelatedCollections.ts"],"sourcesContent":["import type { ClientCollectionConfig } from 'payload'\n\nimport { useState } from 'react'\n\nimport { useConfig } from '../../../providers/Config/index.js'\n\nexport const useRelatedCollections = (relationTo: string | string[]): ClientCollectionConfig[] => {\n const { config } = useConfig()\n\n const [relatedCollections] = useState(() => {\n if (relationTo) {\n const relations = typeof relationTo === 'string' ? [relationTo] : relationTo\n return relations.map((relation) =>\n config.collections.find((collection) => collection.slug === relation),\n )\n }\n return []\n })\n\n return relatedCollections\n}\n"],"names":["useState","useConfig","useRelatedCollections","relationTo","config","relatedCollections","relations","map","relation","collections","find","collection","slug"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,QAAO;AAEhC,SAASC,SAAS,QAAQ,qCAAoC;AAE9D,OAAO,MAAMC,wBAAwB,CAACC;IACpC,MAAM,EAAEC,MAAM,EAAE,GAAGH;IAEnB,MAAM,CAACI,mBAAmB,GAAGL,SAAS;QACpC,IAAIG,YAAY;YACd,MAAMG,YAAY,OAAOH,eAAe,WAAW;gBAACA;aAAW,GAAGA;YAClE,OAAOG,UAAUC,GAAG,CAAC,CAACC,WACpBJ,OAAOK,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKJ;QAEhE;QACA,OAAO,EAAE;IACX;IAEA,OAAOH;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,sBAAsB,EAAS,MAAM,SAAS,CAAA;AAI3E,OAAO,KAA+D,MAAM,OAAO,CAAA;AAqBnF,OAAO,cAAc,CAAA;AAqkBrB,eAAO,MAAM,iBAAiB,kCAA4C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,sBAAsB,EAAS,MAAM,SAAS,CAAA;AAI3E,OAAO,KAA+D,MAAM,OAAO,CAAA;AAqBnF,OAAO,cAAc,CAAA;AA6kBrB,eAAO,MAAM,iBAAiB,kCAA4C,CAAA"}
@@ -26,8 +26,9 @@ import { SingleValue } from './select-components/SingleValue/index.js';
26
26
  const maxResultsPerRequest = 10;
27
27
  const baseClass = 'relationship';
28
28
  const RelationshipFieldComponent = (props)=>{
29
- const { name, CustomDescription, CustomError, CustomLabel, allowCreate = true, className, descriptionProps, errorProps, hasMany, isSortable = true, label, labelProps, path: pathFromProps, readOnly: readOnlyFromProps, relationTo, required, sortOptions, style, validate, width } = props;
30
- const config = useConfig();
29
+ const { descriptionProps, errorProps, field, field: { name, _path: pathFromProps, admin: { allowCreate = true, className, description, isSortable = true, readOnly: readOnlyFromAdmin, sortOptions, style, width }, hasMany, label, relationTo, required }, labelProps, readOnly: readOnlyFromTopLevelProps, validate } = props;
30
+ const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin;
31
+ const { config } = useConfig();
31
32
  const { collections, routes: { api }, serverURL } = config;
32
33
  const { i18n, t } = useTranslation();
33
34
  const { permissions } = useAuth();
@@ -392,7 +393,7 @@ const RelationshipFieldComponent = (props)=>{
392
393
  },
393
394
  children: [
394
395
  /*#__PURE__*/ _jsx(FieldLabel, {
395
- CustomLabel: CustomLabel,
396
+ Label: field?.admin?.components?.Label,
396
397
  label: label,
397
398
  required: required,
398
399
  ...labelProps || {}
@@ -401,7 +402,7 @@ const RelationshipFieldComponent = (props)=>{
401
402
  className: `${fieldBaseClass}__wrap`,
402
403
  children: [
403
404
  /*#__PURE__*/ _jsx(FieldError, {
404
- CustomError: CustomError,
405
+ CustomError: field?.admin?.components?.Error,
405
406
  path: path,
406
407
  ...errorProps || {}
407
408
  }),
@@ -497,7 +498,9 @@ const RelationshipFieldComponent = (props)=>{
497
498
  className: `${baseClass}__error-loading`,
498
499
  children: errorLoading
499
500
  }),
500
- CustomDescription !== undefined ? CustomDescription : /*#__PURE__*/ _jsx(FieldDescription, {
501
+ /*#__PURE__*/ _jsx(FieldDescription, {
502
+ Description: field?.admin?.components?.Description,
503
+ description: description,
501
504
  ...descriptionProps || {}
502
505
  })
503
506
  ]
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, RelationshipFieldProps, Where } from 'payload'\n\nimport { wordBoundariesRegex } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../../elements/DocumentDrawer/types.js'\nimport type { GetResults, Option, Value } from './types.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDebouncedCallback } from '../../hooks/useDebouncedCallback.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { AddNewRelation } from './AddNew/index.js'\nimport { createRelationMap } from './createRelationMap.js'\nimport { findOptionsByValue } from './findOptionsByValue.js'\nimport './index.scss'\nimport { optionsReducer } from './optionsReducer.js'\nimport { MultiValueLabel } from './select-components/MultiValueLabel/index.js'\nimport { SingleValue } from './select-components/SingleValue/index.js'\n\nconst maxResultsPerRequest = 10\n\nconst baseClass = 'relationship'\n\nconst RelationshipFieldComponent: React.FC<RelationshipFieldProps> = (props) => {\n const {\n name,\n CustomDescription,\n CustomError,\n CustomLabel,\n allowCreate = true,\n className,\n descriptionProps,\n errorProps,\n hasMany,\n isSortable = true,\n label,\n labelProps,\n path: pathFromProps,\n readOnly: readOnlyFromProps,\n relationTo,\n required,\n sortOptions,\n style,\n validate,\n width,\n } = props\n\n const config = useConfig()\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1)\n const [lastLoadedPage, setLastLoadedPage] = useState<Record<string, number>>({})\n const [errorLoading, setErrorLoading] = useState('')\n const [search, setSearch] = useState('')\n const [isLoading, setIsLoading] = useState(false)\n const [enableWordBoundarySearch, setEnableWordBoundarySearch] = useState(false)\n const menuIsOpen = useRef(false)\n const hasLoadedFirstPageRef = useRef(false)\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function') {\n return validate(value, { ...validationOptions, required })\n }\n },\n [validate, required],\n )\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n filterOptions,\n formInitializing,\n formProcessing,\n initialValue,\n path,\n setValue,\n showError,\n value,\n } = useField<Value | Value[]>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const readOnly = readOnlyFromProps || readOnlyFromContext || formInitializing\n\n const valueRef = useRef(value)\n valueRef.current = value\n\n const [drawerIsOpen, setDrawerIsOpen] = useState(false)\n\n const getResults: GetResults = useCallback(\n async ({\n lastFullyLoadedRelation: lastFullyLoadedRelationArg,\n lastLoadedPage: lastLoadedPageArg,\n onSuccess,\n search: searchArg,\n sort,\n value: valueArg,\n }) => {\n if (!permissions) {\n return\n }\n const lastFullyLoadedRelationToUse =\n typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1\n\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const relationsToFetch =\n lastFullyLoadedRelationToUse === -1\n ? relations\n : relations.slice(lastFullyLoadedRelationToUse + 1)\n\n let resultsFetched = 0\n const relationMap = createRelationMap({\n hasMany,\n relationTo,\n value: valueArg,\n })\n\n if (!errorLoading) {\n await relationsToFetch.reduce(async (priorRelation, relation) => {\n const relationFilterOption = filterOptions?.[relation]\n\n let lastLoadedPageToUse\n if (search !== searchArg) {\n lastLoadedPageToUse = 1\n } else {\n lastLoadedPageToUse = lastLoadedPageArg[relation] + 1\n }\n await priorRelation\n\n if (relationFilterOption === false) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n return Promise.resolve()\n }\n\n if (resultsFetched < 10) {\n const collection = collections.find((coll) => coll.slug === relation)\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n let fieldToSort = collection?.defaultSort || 'id'\n if (typeof sortOptions === 'string') {\n fieldToSort = sortOptions\n } else if (sortOptions?.[relation]) {\n fieldToSort = sortOptions[relation]\n }\n\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n draft: true,\n limit: maxResultsPerRequest,\n locale,\n page: lastLoadedPageToUse,\n sort: fieldToSort,\n where: {\n and: [\n {\n id: {\n not_in: relationMap[relation],\n },\n },\n ],\n },\n }\n\n if (searchArg) {\n query.where.and.push({\n [fieldToSearch]: {\n like: searchArg,\n },\n })\n }\n\n if (relationFilterOption && typeof relationFilterOption !== 'boolean') {\n query.where.and.push(relationFilterOption)\n }\n\n const response = await fetch(`${serverURL}${api}/${relation}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n\n if (response.ok) {\n const data: PaginatedDocs<unknown> = await response.json()\n setLastLoadedPage((prevState) => {\n return {\n ...prevState,\n [relation]: lastLoadedPageToUse,\n }\n })\n\n if (!data.nextPage) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n }\n\n if (data.docs.length > 0) {\n resultsFetched += data.docs.length\n\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs: data.docs,\n i18n,\n sort,\n })\n }\n } else if (response.status === 403) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs: [],\n i18n,\n ids: relationMap[relation],\n sort,\n })\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n }\n }, Promise.resolve())\n\n if (typeof onSuccess === 'function') onSuccess()\n }\n },\n [\n permissions,\n relationTo,\n hasMany,\n errorLoading,\n search,\n collections,\n locale,\n filterOptions,\n serverURL,\n sortOptions,\n api,\n i18n,\n config,\n t,\n ],\n )\n\n const updateSearch = useDebouncedCallback((searchArg: string, valueArg: Value | Value[]) => {\n void getResults({ lastLoadedPage: {}, search: searchArg, sort: true, value: valueArg })\n setSearch(searchArg)\n }, 300)\n\n const handleInputChange = useCallback(\n (searchArg: string, valueArg: Value | Value[]) => {\n if (search !== searchArg) {\n setLastLoadedPage({})\n updateSearch(searchArg, valueArg, searchArg !== '')\n }\n },\n [search, updateSearch],\n )\n\n // ///////////////////////////////////\n // Ensure we have an option for each value\n // ///////////////////////////////////\n\n useEffect(() => {\n const relationMap = createRelationMap({\n hasMany,\n relationTo,\n value,\n })\n\n void Object.entries(relationMap).reduce(async (priorRelation, [relation, ids]) => {\n await priorRelation\n\n const idsToLoad = ids.filter((id) => {\n return !options.find((optionGroup) =>\n optionGroup?.options?.find(\n (option) => option.value === id && option.relationTo === relation,\n ),\n )\n })\n\n if (idsToLoad.length > 0) {\n const query = {\n depth: 0,\n draft: true,\n limit: idsToLoad.length,\n locale,\n where: {\n id: {\n in: idsToLoad,\n },\n },\n }\n\n if (!errorLoading) {\n const response = await fetch(`${serverURL}${api}/${relation}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n\n const collection = collections.find((coll) => coll.slug === relation)\n let docs = []\n\n if (response.ok) {\n const data = await response.json()\n docs = data.docs\n }\n\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs,\n i18n,\n ids: idsToLoad,\n sort: true,\n })\n }\n }\n }, Promise.resolve())\n }, [\n options,\n value,\n hasMany,\n errorLoading,\n collections,\n hasMultipleRelations,\n serverURL,\n api,\n i18n,\n relationTo,\n locale,\n config,\n ])\n\n // Determine if we should switch to word boundary search\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const isIdOnly = relations.reduce((idOnly, relation) => {\n const collection = collections.find((coll) => coll.slug === relation)\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n return fieldToSearch === 'id' && idOnly\n }, true)\n setEnableWordBoundarySearch(!isIdOnly)\n }, [relationTo, collections])\n\n // When (`relationTo` || `filterOptions` || `locale`) changes, reset component\n // Note - effect should not run on first run\n useEffect(() => {\n // If the menu is open while filterOptions changes\n // due to latency of getFormState and fast clicking into this field,\n // re-fetch options\n\n if (hasLoadedFirstPageRef.current && menuIsOpen.current) {\n setIsLoading(true)\n void getResults({\n lastLoadedPage: {},\n onSuccess: () => {\n hasLoadedFirstPageRef.current = true\n setIsLoading(false)\n },\n value: valueRef.current,\n })\n }\n\n // If the menu is not open, still reset the field state\n // because we need to get new options next time the menu\n // opens by the user\n\n dispatchOptions({ type: 'CLEAR' })\n setLastFullyLoadedRelation(-1)\n setLastLoadedPage({})\n hasLoadedFirstPageRef.current = false\n }, [\n relationTo,\n filterOptions,\n locale,\n menuIsOpen,\n getResults,\n valueRef,\n hasLoadedFirstPageRef,\n path,\n ])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n dispatchOptions({\n type: 'UPDATE',\n collection: args.collectionConfig,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n doc: args.doc,\n i18n,\n })\n },\n [i18n, config],\n )\n\n const filterOption = useCallback((item: Option, searchFilter: string) => {\n if (!searchFilter) {\n return true\n }\n const r = wordBoundariesRegex(searchFilter || '')\n // breaking the labels to search into smaller parts increases performance\n const breakApartThreshold = 250\n let string = item.label\n // strings less than breakApartThreshold length won't be chunked\n while (string.length > breakApartThreshold) {\n // slicing by the next space after the length of the search input prevents slicing the string up by partial words\n const indexOfSpace = string.indexOf(' ', searchFilter.length)\n if (r.test(string.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {\n return true\n }\n string = string.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1)\n }\n return r.test(string.slice(-breakApartThreshold))\n }, [])\n\n const valueToRender = findOptionsByValue({ options, value })\n\n if (!Array.isArray(valueToRender) && valueToRender?.value === 'null') valueToRender.value = null\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n errorLoading && 'error-loading',\n readOnly && `${baseClass}--read-only`,\n !readOnly && allowCreate && `${baseClass}--allow-create`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n CustomLabel={CustomLabel}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError CustomError={CustomError} path={path} {...(errorProps || {})} />\n\n {!errorLoading && (\n <div className={`${baseClass}__wrap`}>\n <ReactSelect\n backspaceRemovesValue={!drawerIsOpen}\n components={{\n MultiValueLabel,\n SingleValue,\n }}\n customProps={{\n disableKeyDown: drawerIsOpen,\n disableMouseDown: drawerIsOpen,\n onSave,\n setDrawerIsOpen,\n }}\n disabled={readOnly || formProcessing || drawerIsOpen}\n filterOption={enableWordBoundarySearch ? filterOption : undefined}\n getOptionValue={(option) => {\n if (!option) return undefined\n return hasMany && Array.isArray(relationTo)\n ? `${option.relationTo}_${option.value}`\n : option.value\n }}\n isLoading={isLoading}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={\n !readOnly\n ? (selected) => {\n if (selected === null) {\n setValue(hasMany ? [] : null)\n } else if (hasMany && Array.isArray(selected)) {\n setValue(\n selected\n ? selected.map((option) => {\n if (hasMultipleRelations) {\n return {\n relationTo: option.relationTo,\n value: option.value,\n }\n }\n\n return option.value\n })\n : null,\n )\n } else if (hasMultipleRelations && !Array.isArray(selected)) {\n setValue({\n relationTo: selected.relationTo,\n value: selected.value,\n })\n } else if (!Array.isArray(selected)) {\n setValue(selected.value)\n }\n }\n : undefined\n }\n onInputChange={(newSearch) => handleInputChange(newSearch, value)}\n onMenuClose={() => {\n menuIsOpen.current = false\n }}\n onMenuOpen={() => {\n menuIsOpen.current = true\n\n if (!hasLoadedFirstPageRef.current) {\n setIsLoading(true)\n void getResults({\n lastLoadedPage: {},\n onSuccess: () => {\n hasLoadedFirstPageRef.current = true\n setIsLoading(false)\n },\n value: initialValue,\n })\n }\n }}\n onMenuScrollToBottom={() => {\n void getResults({\n lastFullyLoadedRelation,\n lastLoadedPage,\n search,\n sort: false,\n value: initialValue,\n })\n }}\n options={options}\n showError={showError}\n value={valueToRender ?? null}\n />\n {!readOnly && allowCreate && (\n <AddNewRelation\n {...{\n dispatchOptions,\n hasMany,\n options,\n path,\n relationTo,\n setValue,\n value,\n }}\n />\n )}\n </div>\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n {CustomDescription !== undefined ? (\n CustomDescription\n ) : (\n <FieldDescription {...(descriptionProps || {})} />\n )}\n </div>\n </div>\n )\n}\n\nexport const RelationshipField = withCondition(RelationshipFieldComponent)\n"],"names":["wordBoundariesRegex","qs","React","useCallback","useEffect","useReducer","useRef","useState","ReactSelect","useFieldProps","useField","withCondition","useDebouncedCallback","useAuth","useConfig","useLocale","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","AddNewRelation","createRelationMap","findOptionsByValue","optionsReducer","MultiValueLabel","SingleValue","maxResultsPerRequest","baseClass","RelationshipFieldComponent","props","name","CustomDescription","CustomError","CustomLabel","allowCreate","className","descriptionProps","errorProps","hasMany","isSortable","label","labelProps","path","pathFromProps","readOnly","readOnlyFromProps","relationTo","required","sortOptions","style","validate","width","config","collections","routes","api","serverURL","i18n","t","permissions","code","locale","hasMultipleRelations","Array","isArray","options","dispatchOptions","lastFullyLoadedRelation","setLastFullyLoadedRelation","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","search","setSearch","isLoading","setIsLoading","enableWordBoundarySearch","setEnableWordBoundarySearch","menuIsOpen","hasLoadedFirstPageRef","memoizedValidate","value","validationOptions","pathFromContext","readOnlyFromContext","filterOptions","formInitializing","formProcessing","initialValue","setValue","showError","valueRef","current","drawerIsOpen","setDrawerIsOpen","getResults","lastFullyLoadedRelationArg","lastLoadedPageArg","onSuccess","searchArg","sort","valueArg","lastFullyLoadedRelationToUse","relations","relationsToFetch","slice","resultsFetched","relationMap","reduce","priorRelation","relation","relationFilterOption","lastLoadedPageToUse","indexOf","Promise","resolve","collection","find","coll","slug","fieldToSearch","admin","useAsTitle","fieldToSort","defaultSort","query","depth","draft","limit","page","where","and","id","not_in","push","like","response","fetch","body","stringify","credentials","headers","language","method","ok","data","json","prevState","nextPage","docs","length","type","status","ids","updateSearch","handleInputChange","Object","entries","idsToLoad","filter","optionGroup","option","in","isIdOnly","idOnly","onSave","args","collectionConfig","doc","filterOption","item","searchFilter","r","breakApartThreshold","string","indexOfSpace","test","valueToRender","div","Boolean","join","replace","backspaceRemovesValue","components","customProps","disableKeyDown","disableMouseDown","disabled","undefined","getOptionValue","isMulti","onChange","selected","map","onInputChange","newSearch","onMenuClose","onMenuOpen","onMenuScrollToBottom","RelationshipField"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, RelationshipFieldProps, Where } from 'payload'\n\nimport { wordBoundariesRegex } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useRef, useState } from 'react'\n\nimport type { DocumentDrawerProps } from '../../elements/DocumentDrawer/types.js'\nimport type { GetResults, Option, Value } from './types.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/index.js'\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDebouncedCallback } from '../../hooks/useDebouncedCallback.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { AddNewRelation } from './AddNew/index.js'\nimport { createRelationMap } from './createRelationMap.js'\nimport { findOptionsByValue } from './findOptionsByValue.js'\nimport './index.scss'\nimport { optionsReducer } from './optionsReducer.js'\nimport { MultiValueLabel } from './select-components/MultiValueLabel/index.js'\nimport { SingleValue } from './select-components/SingleValue/index.js'\n\nconst maxResultsPerRequest = 10\n\nconst baseClass = 'relationship'\n\nconst RelationshipFieldComponent: React.FC<RelationshipFieldProps> = (props) => {\n const {\n descriptionProps,\n errorProps,\n field,\n field: {\n name,\n _path: pathFromProps,\n admin: {\n allowCreate = true,\n className,\n description,\n isSortable = true,\n readOnly: readOnlyFromAdmin,\n sortOptions,\n style,\n width,\n },\n hasMany,\n label,\n relationTo,\n required,\n },\n labelProps,\n readOnly: readOnlyFromTopLevelProps,\n validate,\n } = props\n const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin\n\n const { config } = useConfig()\n\n const {\n collections,\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1)\n const [lastLoadedPage, setLastLoadedPage] = useState<Record<string, number>>({})\n const [errorLoading, setErrorLoading] = useState('')\n const [search, setSearch] = useState('')\n const [isLoading, setIsLoading] = useState(false)\n const [enableWordBoundarySearch, setEnableWordBoundarySearch] = useState(false)\n const menuIsOpen = useRef(false)\n const hasLoadedFirstPageRef = useRef(false)\n\n const memoizedValidate = useCallback(\n (value, validationOptions) => {\n if (typeof validate === 'function') {\n return validate(value, { ...validationOptions, required })\n }\n },\n [validate, required],\n )\n const { path: pathFromContext, readOnly: readOnlyFromContext } = useFieldProps()\n\n const {\n filterOptions,\n formInitializing,\n formProcessing,\n initialValue,\n path,\n setValue,\n showError,\n value,\n } = useField<Value | Value[]>({\n path: pathFromContext ?? pathFromProps ?? name,\n validate: memoizedValidate,\n })\n\n const readOnly = readOnlyFromProps || readOnlyFromContext || formInitializing\n\n const valueRef = useRef(value)\n valueRef.current = value\n\n const [drawerIsOpen, setDrawerIsOpen] = useState(false)\n\n const getResults: GetResults = useCallback(\n async ({\n lastFullyLoadedRelation: lastFullyLoadedRelationArg,\n lastLoadedPage: lastLoadedPageArg,\n onSuccess,\n search: searchArg,\n sort,\n value: valueArg,\n }) => {\n if (!permissions) {\n return\n }\n const lastFullyLoadedRelationToUse =\n typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1\n\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const relationsToFetch =\n lastFullyLoadedRelationToUse === -1\n ? relations\n : relations.slice(lastFullyLoadedRelationToUse + 1)\n\n let resultsFetched = 0\n const relationMap = createRelationMap({\n hasMany,\n relationTo,\n value: valueArg,\n })\n\n if (!errorLoading) {\n await relationsToFetch.reduce(async (priorRelation, relation) => {\n const relationFilterOption = filterOptions?.[relation]\n\n let lastLoadedPageToUse\n if (search !== searchArg) {\n lastLoadedPageToUse = 1\n } else {\n lastLoadedPageToUse = lastLoadedPageArg[relation] + 1\n }\n await priorRelation\n\n if (relationFilterOption === false) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n return Promise.resolve()\n }\n\n if (resultsFetched < 10) {\n const collection = collections.find((coll) => coll.slug === relation)\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n let fieldToSort = collection?.defaultSort || 'id'\n if (typeof sortOptions === 'string') {\n fieldToSort = sortOptions\n } else if (sortOptions?.[relation]) {\n fieldToSort = sortOptions[relation]\n }\n\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n draft: true,\n limit: maxResultsPerRequest,\n locale,\n page: lastLoadedPageToUse,\n sort: fieldToSort,\n where: {\n and: [\n {\n id: {\n not_in: relationMap[relation],\n },\n },\n ],\n },\n }\n\n if (searchArg) {\n query.where.and.push({\n [fieldToSearch]: {\n like: searchArg,\n },\n })\n }\n\n if (relationFilterOption && typeof relationFilterOption !== 'boolean') {\n query.where.and.push(relationFilterOption)\n }\n\n const response = await fetch(`${serverURL}${api}/${relation}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n\n if (response.ok) {\n const data: PaginatedDocs<unknown> = await response.json()\n setLastLoadedPage((prevState) => {\n return {\n ...prevState,\n [relation]: lastLoadedPageToUse,\n }\n })\n\n if (!data.nextPage) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n }\n\n if (data.docs.length > 0) {\n resultsFetched += data.docs.length\n\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs: data.docs,\n i18n,\n sort,\n })\n }\n } else if (response.status === 403) {\n setLastFullyLoadedRelation(relations.indexOf(relation))\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs: [],\n i18n,\n ids: relationMap[relation],\n sort,\n })\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n }\n }, Promise.resolve())\n\n if (typeof onSuccess === 'function') onSuccess()\n }\n },\n [\n permissions,\n relationTo,\n hasMany,\n errorLoading,\n search,\n collections,\n locale,\n filterOptions,\n serverURL,\n sortOptions,\n api,\n i18n,\n config,\n t,\n ],\n )\n\n const updateSearch = useDebouncedCallback((searchArg: string, valueArg: Value | Value[]) => {\n void getResults({ lastLoadedPage: {}, search: searchArg, sort: true, value: valueArg })\n setSearch(searchArg)\n }, 300)\n\n const handleInputChange = useCallback(\n (searchArg: string, valueArg: Value | Value[]) => {\n if (search !== searchArg) {\n setLastLoadedPage({})\n updateSearch(searchArg, valueArg, searchArg !== '')\n }\n },\n [search, updateSearch],\n )\n\n // ///////////////////////////////////\n // Ensure we have an option for each value\n // ///////////////////////////////////\n\n useEffect(() => {\n const relationMap = createRelationMap({\n hasMany,\n relationTo,\n value,\n })\n\n void Object.entries(relationMap).reduce(async (priorRelation, [relation, ids]) => {\n await priorRelation\n\n const idsToLoad = ids.filter((id) => {\n return !options.find((optionGroup) =>\n optionGroup?.options?.find(\n (option) => option.value === id && option.relationTo === relation,\n ),\n )\n })\n\n if (idsToLoad.length > 0) {\n const query = {\n depth: 0,\n draft: true,\n limit: idsToLoad.length,\n locale,\n where: {\n id: {\n in: idsToLoad,\n },\n },\n }\n\n if (!errorLoading) {\n const response = await fetch(`${serverURL}${api}/${relation}`, {\n body: qs.stringify(query),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'X-HTTP-Method-Override': 'GET',\n },\n method: 'POST',\n })\n\n const collection = collections.find((coll) => coll.slug === relation)\n let docs = []\n\n if (response.ok) {\n const data = await response.json()\n docs = data.docs\n }\n\n dispatchOptions({\n type: 'ADD',\n collection,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n docs,\n i18n,\n ids: idsToLoad,\n sort: true,\n })\n }\n }\n }, Promise.resolve())\n }, [\n options,\n value,\n hasMany,\n errorLoading,\n collections,\n hasMultipleRelations,\n serverURL,\n api,\n i18n,\n relationTo,\n locale,\n config,\n ])\n\n // Determine if we should switch to word boundary search\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n const isIdOnly = relations.reduce((idOnly, relation) => {\n const collection = collections.find((coll) => coll.slug === relation)\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n return fieldToSearch === 'id' && idOnly\n }, true)\n setEnableWordBoundarySearch(!isIdOnly)\n }, [relationTo, collections])\n\n // When (`relationTo` || `filterOptions` || `locale`) changes, reset component\n // Note - effect should not run on first run\n useEffect(() => {\n // If the menu is open while filterOptions changes\n // due to latency of getFormState and fast clicking into this field,\n // re-fetch options\n\n if (hasLoadedFirstPageRef.current && menuIsOpen.current) {\n setIsLoading(true)\n void getResults({\n lastLoadedPage: {},\n onSuccess: () => {\n hasLoadedFirstPageRef.current = true\n setIsLoading(false)\n },\n value: valueRef.current,\n })\n }\n\n // If the menu is not open, still reset the field state\n // because we need to get new options next time the menu\n // opens by the user\n\n dispatchOptions({ type: 'CLEAR' })\n setLastFullyLoadedRelation(-1)\n setLastLoadedPage({})\n hasLoadedFirstPageRef.current = false\n }, [\n relationTo,\n filterOptions,\n locale,\n menuIsOpen,\n getResults,\n valueRef,\n hasLoadedFirstPageRef,\n path,\n ])\n\n const onSave = useCallback<DocumentDrawerProps['onSave']>(\n (args) => {\n dispatchOptions({\n type: 'UPDATE',\n collection: args.collectionConfig,\n // TODO: fix this\n // @ts-expect-error-next-line\n config,\n doc: args.doc,\n i18n,\n })\n },\n [i18n, config],\n )\n\n const filterOption = useCallback((item: Option, searchFilter: string) => {\n if (!searchFilter) {\n return true\n }\n const r = wordBoundariesRegex(searchFilter || '')\n // breaking the labels to search into smaller parts increases performance\n const breakApartThreshold = 250\n let string = item.label\n // strings less than breakApartThreshold length won't be chunked\n while (string.length > breakApartThreshold) {\n // slicing by the next space after the length of the search input prevents slicing the string up by partial words\n const indexOfSpace = string.indexOf(' ', searchFilter.length)\n if (r.test(string.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {\n return true\n }\n string = string.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1)\n }\n return r.test(string.slice(-breakApartThreshold))\n }, [])\n\n const valueToRender = findOptionsByValue({ options, value })\n\n if (!Array.isArray(valueToRender) && valueToRender?.value === 'null') valueToRender.value = null\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n showError && 'error',\n errorLoading && 'error-loading',\n readOnly && `${baseClass}--read-only`,\n !readOnly && allowCreate && `${baseClass}--allow-create`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={{\n ...style,\n width,\n }}\n >\n <FieldLabel\n Label={field?.admin?.components?.Label}\n label={label}\n required={required}\n {...(labelProps || {})}\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <FieldError\n CustomError={field?.admin?.components?.Error}\n path={path}\n {...(errorProps || {})}\n />\n {!errorLoading && (\n <div className={`${baseClass}__wrap`}>\n <ReactSelect\n backspaceRemovesValue={!drawerIsOpen}\n components={{\n MultiValueLabel,\n SingleValue,\n }}\n customProps={{\n disableKeyDown: drawerIsOpen,\n disableMouseDown: drawerIsOpen,\n onSave,\n setDrawerIsOpen,\n }}\n disabled={readOnly || formProcessing || drawerIsOpen}\n filterOption={enableWordBoundarySearch ? filterOption : undefined}\n getOptionValue={(option) => {\n if (!option) return undefined\n return hasMany && Array.isArray(relationTo)\n ? `${option.relationTo}_${option.value}`\n : option.value\n }}\n isLoading={isLoading}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={\n !readOnly\n ? (selected) => {\n if (selected === null) {\n setValue(hasMany ? [] : null)\n } else if (hasMany && Array.isArray(selected)) {\n setValue(\n selected\n ? selected.map((option) => {\n if (hasMultipleRelations) {\n return {\n relationTo: option.relationTo,\n value: option.value,\n }\n }\n\n return option.value\n })\n : null,\n )\n } else if (hasMultipleRelations && !Array.isArray(selected)) {\n setValue({\n relationTo: selected.relationTo,\n value: selected.value,\n })\n } else if (!Array.isArray(selected)) {\n setValue(selected.value)\n }\n }\n : undefined\n }\n onInputChange={(newSearch) => handleInputChange(newSearch, value)}\n onMenuClose={() => {\n menuIsOpen.current = false\n }}\n onMenuOpen={() => {\n menuIsOpen.current = true\n\n if (!hasLoadedFirstPageRef.current) {\n setIsLoading(true)\n void getResults({\n lastLoadedPage: {},\n onSuccess: () => {\n hasLoadedFirstPageRef.current = true\n setIsLoading(false)\n },\n value: initialValue,\n })\n }\n }}\n onMenuScrollToBottom={() => {\n void getResults({\n lastFullyLoadedRelation,\n lastLoadedPage,\n search,\n sort: false,\n value: initialValue,\n })\n }}\n options={options}\n showError={showError}\n value={valueToRender ?? null}\n />\n {!readOnly && allowCreate && (\n <AddNewRelation\n {...{\n dispatchOptions,\n hasMany,\n options,\n path,\n relationTo,\n setValue,\n value,\n }}\n />\n )}\n </div>\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n <FieldDescription\n Description={field?.admin?.components?.Description}\n description={description}\n {...(descriptionProps || {})}\n />\n </div>\n </div>\n )\n}\n\nexport const RelationshipField = withCondition(RelationshipFieldComponent)\n"],"names":["wordBoundariesRegex","qs","React","useCallback","useEffect","useReducer","useRef","useState","ReactSelect","useFieldProps","useField","withCondition","useDebouncedCallback","useAuth","useConfig","useLocale","useTranslation","FieldDescription","FieldError","FieldLabel","fieldBaseClass","AddNewRelation","createRelationMap","findOptionsByValue","optionsReducer","MultiValueLabel","SingleValue","maxResultsPerRequest","baseClass","RelationshipFieldComponent","props","descriptionProps","errorProps","field","name","_path","pathFromProps","admin","allowCreate","className","description","isSortable","readOnly","readOnlyFromAdmin","sortOptions","style","width","hasMany","label","relationTo","required","labelProps","readOnlyFromTopLevelProps","validate","readOnlyFromProps","config","collections","routes","api","serverURL","i18n","t","permissions","code","locale","hasMultipleRelations","Array","isArray","options","dispatchOptions","lastFullyLoadedRelation","setLastFullyLoadedRelation","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","search","setSearch","isLoading","setIsLoading","enableWordBoundarySearch","setEnableWordBoundarySearch","menuIsOpen","hasLoadedFirstPageRef","memoizedValidate","value","validationOptions","path","pathFromContext","readOnlyFromContext","filterOptions","formInitializing","formProcessing","initialValue","setValue","showError","valueRef","current","drawerIsOpen","setDrawerIsOpen","getResults","lastFullyLoadedRelationArg","lastLoadedPageArg","onSuccess","searchArg","sort","valueArg","lastFullyLoadedRelationToUse","relations","relationsToFetch","slice","resultsFetched","relationMap","reduce","priorRelation","relation","relationFilterOption","lastLoadedPageToUse","indexOf","Promise","resolve","collection","find","coll","slug","fieldToSearch","useAsTitle","fieldToSort","defaultSort","query","depth","draft","limit","page","where","and","id","not_in","push","like","response","fetch","body","stringify","credentials","headers","language","method","ok","data","json","prevState","nextPage","docs","length","type","status","ids","updateSearch","handleInputChange","Object","entries","idsToLoad","filter","optionGroup","option","in","isIdOnly","idOnly","onSave","args","collectionConfig","doc","filterOption","item","searchFilter","r","breakApartThreshold","string","indexOfSpace","test","valueToRender","div","Boolean","join","replace","Label","components","CustomError","Error","backspaceRemovesValue","customProps","disableKeyDown","disableMouseDown","disabled","undefined","getOptionValue","isMulti","onChange","selected","map","onInputChange","newSearch","onMenuClose","onMenuOpen","onMenuScrollToBottom","Description","RelationshipField"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/Relationship/select-components/MultiValueLabel/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAEnD,OAAO,KAAwC,MAAM,OAAO,CAAA;AAG5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAO5C,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAmE7D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/Relationship/select-components/MultiValueLabel/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAEnD,OAAO,KAAwC,MAAM,OAAO,CAAA;AAG5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAO5C,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAkE7D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/fields/Relationship/select-components/MultiValueLabel/index.tsx"],"sourcesContent":["'use client'\nimport type { MultiValueProps } from 'react-select'\n\nimport React, { Fragment, useEffect, useState } from 'react'\nimport { components } from 'react-select'\n\nimport type { Option } from '../../types.js'\n\nimport { useDocumentDrawer } from '../../../../elements/DocumentDrawer/index.js'\nimport { Tooltip } from '../../../../elements/Tooltip/index.js'\nimport { EditIcon } from '../../../../icons/Edit/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'relationship--multi-value-label'\n\nexport const MultiValueLabel: React.FC<MultiValueProps<Option>> = (props) => {\n const {\n data: { label, relationTo, value },\n selectProps: {\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n customProps: {\n // @ts-expect-error-next-line// TODO Fix this - moduleResolution 16 breaks our declare module\n draggableProps,\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n setDrawerIsOpen,\n // onSave,\n } = {},\n } = {},\n } = props\n\n const { permissions } = useAuth()\n const [showTooltip, setShowTooltip] = useState(false)\n const { t } = useTranslation()\n const hasReadPermission = Boolean(permissions?.collections?.[relationTo]?.read?.permission)\n\n const [DocumentDrawer, DocumentDrawerToggler, { isDrawerOpen }] = useDocumentDrawer({\n id: value?.toString(),\n collectionSlug: relationTo,\n })\n\n useEffect(() => {\n if (typeof setDrawerIsOpen === 'function') setDrawerIsOpen(isDrawerOpen)\n }, [isDrawerOpen, setDrawerIsOpen])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__content`}>\n {/* @ts-expect-error // TODO Fix this - Broke with React 19 types */}\n <components.MultiValueLabel\n {...props}\n innerProps={{\n className: `${baseClass}__text`,\n ...(draggableProps || {}),\n }}\n />\n </div>\n {relationTo && hasReadPermission && (\n <Fragment>\n <DocumentDrawerToggler\n aria-label={`Edit ${label}`}\n className={`${baseClass}__drawer-toggler`}\n onClick={() => setShowTooltip(false)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation()\n }\n }}\n onMouseDown={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n onMouseEnter={() => setShowTooltip(true)}\n onMouseLeave={() => setShowTooltip(false)}\n onTouchEnd={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n >\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {t('general:editLabel', { label: '' })}\n </Tooltip>\n <EditIcon className={`${baseClass}__icon`} />\n </DocumentDrawerToggler>\n <DocumentDrawer onSave={/* onSave */ null} />\n </Fragment>\n )}\n </div>\n )\n}\n"],"names":["React","Fragment","useEffect","useState","components","useDocumentDrawer","Tooltip","EditIcon","useAuth","useTranslation","baseClass","MultiValueLabel","props","data","label","relationTo","value","selectProps","customProps","draggableProps","setDrawerIsOpen","permissions","showTooltip","setShowTooltip","t","hasReadPermission","Boolean","collections","read","permission","DocumentDrawer","DocumentDrawerToggler","isDrawerOpen","id","toString","collectionSlug","div","className","innerProps","aria-label","onClick","onKeyDown","e","key","stopPropagation","onMouseDown","onMouseEnter","onMouseLeave","onTouchEnd","show","onSave"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAC5D,SAASC,UAAU,QAAQ,eAAc;AAIzC,SAASC,iBAAiB,QAAQ,+CAA8C;AAChF,SAASC,OAAO,QAAQ,wCAAuC;AAC/D,SAASC,QAAQ,QAAQ,kCAAiC;AAC1D,SAASC,OAAO,QAAQ,sCAAqC;AAC7D,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,kBAAqD,CAACC;IACjE,MAAM,EACJC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAE,EAClCC,aAAa,EACX,8FAA8F;IAC9FC,aAAa,EACX,6FAA6F;IAC7FC,cAAc,EACd,8FAA8F;IAC9FC,eAAe,EAEhB,GAAG,CAAC,CAAC,EACP,GAAG,CAAC,CAAC,EACP,GAAGR;IAEJ,MAAM,EAAES,WAAW,EAAE,GAAGb;IACxB,MAAM,CAACc,aAAaC,eAAe,GAAGpB,SAAS;IAC/C,MAAM,EAAEqB,CAAC,EAAE,GAAGf;IACd,MAAMgB,oBAAoBC,QAAQL,aAAaM,aAAa,CAACZ,WAAW,EAAEa,MAAMC;IAEhF,MAAM,CAACC,gBAAgBC,uBAAuB,EAAEC,YAAY,EAAE,CAAC,GAAG3B,kBAAkB;QAClF4B,IAAIjB,OAAOkB;QACXC,gBAAgBpB;IAClB;IAEAb,UAAU;QACR,IAAI,OAAOkB,oBAAoB,YAAYA,gBAAgBY;IAC7D,GAAG;QAACA;QAAcZ;KAAgB;IAElC,qBACE,MAACgB;QAAIC,WAAW3B;;0BACd,KAAC0B;gBAAIC,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;0BAErC,cAAA,KAACN,WAAWO,eAAe;oBACxB,GAAGC,KAAK;oBACT0B,YAAY;wBACVD,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;wBAC/B,GAAIS,kBAAkB,CAAC,CAAC;oBAC1B;;;YAGHJ,cAAcU,mCACb,MAACxB;;kCACC,MAAC8B;wBACCQ,cAAY,CAAC,KAAK,EAAEzB,MAAM,CAAC;wBAC3BuB,WAAW,CAAC,EAAE3B,UAAU,gBAAgB,CAAC;wBACzC8B,SAAS,IAAMjB,eAAe;wBAC9BkB,WAAW,CAACC;4BACV,IAAIA,EAAEC,GAAG,KAAK,SAAS;gCACrBD,EAAEE,eAAe;4BACnB;wBACF;wBACAC,aAAa,CAACH,IAAMA,EAAEE,eAAe;wBACrCE,cAAc,IAAMvB,eAAe;wBACnCwB,cAAc,IAAMxB,eAAe;wBACnCyB,YAAY,CAACN,IAAMA,EAAEE,eAAe;;0CAEpC,KAACtC;gCAAQ+B,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;gCAAEuC,MAAM3B;0CAChDE,EAAE,qBAAqB;oCAAEV,OAAO;gCAAG;;0CAEtC,KAACP;gCAAS8B,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;;;;kCAE3C,KAACoB;wBAAeoB,QAAqB;;;;;;AAK/C,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/fields/Relationship/select-components/MultiValueLabel/index.tsx"],"sourcesContent":["'use client'\nimport type { MultiValueProps } from 'react-select'\n\nimport React, { Fragment, useEffect, useState } from 'react'\nimport { components } from 'react-select'\n\nimport type { Option } from '../../types.js'\n\nimport { useDocumentDrawer } from '../../../../elements/DocumentDrawer/index.js'\nimport { Tooltip } from '../../../../elements/Tooltip/index.js'\nimport { EditIcon } from '../../../../icons/Edit/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'relationship--multi-value-label'\n\nexport const MultiValueLabel: React.FC<MultiValueProps<Option>> = (props) => {\n const {\n data: { label, relationTo, value },\n selectProps: {\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n customProps: {\n // @ts-expect-error-next-line// TODO Fix this - moduleResolution 16 breaks our declare module\n draggableProps,\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n setDrawerIsOpen,\n // onSave,\n } = {},\n } = {},\n } = props\n\n const { permissions } = useAuth()\n const [showTooltip, setShowTooltip] = useState(false)\n const { t } = useTranslation()\n const hasReadPermission = Boolean(permissions?.collections?.[relationTo]?.read?.permission)\n\n const [DocumentDrawer, DocumentDrawerToggler, { isDrawerOpen }] = useDocumentDrawer({\n id: value?.toString(),\n collectionSlug: relationTo,\n })\n\n useEffect(() => {\n if (typeof setDrawerIsOpen === 'function') setDrawerIsOpen(isDrawerOpen)\n }, [isDrawerOpen, setDrawerIsOpen])\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__content`}>\n <components.MultiValueLabel\n {...props}\n innerProps={{\n className: `${baseClass}__text`,\n ...(draggableProps || {}),\n }}\n />\n </div>\n {relationTo && hasReadPermission && (\n <Fragment>\n <DocumentDrawerToggler\n aria-label={`Edit ${label}`}\n className={`${baseClass}__drawer-toggler`}\n onClick={() => setShowTooltip(false)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation()\n }\n }}\n onMouseDown={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n onMouseEnter={() => setShowTooltip(true)}\n onMouseLeave={() => setShowTooltip(false)}\n onTouchEnd={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n >\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {t('general:editLabel', { label: '' })}\n </Tooltip>\n <EditIcon className={`${baseClass}__icon`} />\n </DocumentDrawerToggler>\n <DocumentDrawer onSave={/* onSave */ null} />\n </Fragment>\n )}\n </div>\n )\n}\n"],"names":["React","Fragment","useEffect","useState","components","useDocumentDrawer","Tooltip","EditIcon","useAuth","useTranslation","baseClass","MultiValueLabel","props","data","label","relationTo","value","selectProps","customProps","draggableProps","setDrawerIsOpen","permissions","showTooltip","setShowTooltip","t","hasReadPermission","Boolean","collections","read","permission","DocumentDrawer","DocumentDrawerToggler","isDrawerOpen","id","toString","collectionSlug","div","className","innerProps","aria-label","onClick","onKeyDown","e","key","stopPropagation","onMouseDown","onMouseEnter","onMouseLeave","onTouchEnd","show","onSave"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAC5D,SAASC,UAAU,QAAQ,eAAc;AAIzC,SAASC,iBAAiB,QAAQ,+CAA8C;AAChF,SAASC,OAAO,QAAQ,wCAAuC;AAC/D,SAASC,QAAQ,QAAQ,kCAAiC;AAC1D,SAASC,OAAO,QAAQ,sCAAqC;AAC7D,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,kBAAqD,CAACC;IACjE,MAAM,EACJC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAE,EAClCC,aAAa,EACX,8FAA8F;IAC9FC,aAAa,EACX,6FAA6F;IAC7FC,cAAc,EACd,8FAA8F;IAC9FC,eAAe,EAEhB,GAAG,CAAC,CAAC,EACP,GAAG,CAAC,CAAC,EACP,GAAGR;IAEJ,MAAM,EAAES,WAAW,EAAE,GAAGb;IACxB,MAAM,CAACc,aAAaC,eAAe,GAAGpB,SAAS;IAC/C,MAAM,EAAEqB,CAAC,EAAE,GAAGf;IACd,MAAMgB,oBAAoBC,QAAQL,aAAaM,aAAa,CAACZ,WAAW,EAAEa,MAAMC;IAEhF,MAAM,CAACC,gBAAgBC,uBAAuB,EAAEC,YAAY,EAAE,CAAC,GAAG3B,kBAAkB;QAClF4B,IAAIjB,OAAOkB;QACXC,gBAAgBpB;IAClB;IAEAb,UAAU;QACR,IAAI,OAAOkB,oBAAoB,YAAYA,gBAAgBY;IAC7D,GAAG;QAACA;QAAcZ;KAAgB;IAElC,qBACE,MAACgB;QAAIC,WAAW3B;;0BACd,KAAC0B;gBAAIC,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;0BACrC,cAAA,KAACN,WAAWO,eAAe;oBACxB,GAAGC,KAAK;oBACT0B,YAAY;wBACVD,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;wBAC/B,GAAIS,kBAAkB,CAAC,CAAC;oBAC1B;;;YAGHJ,cAAcU,mCACb,MAACxB;;kCACC,MAAC8B;wBACCQ,cAAY,CAAC,KAAK,EAAEzB,MAAM,CAAC;wBAC3BuB,WAAW,CAAC,EAAE3B,UAAU,gBAAgB,CAAC;wBACzC8B,SAAS,IAAMjB,eAAe;wBAC9BkB,WAAW,CAACC;4BACV,IAAIA,EAAEC,GAAG,KAAK,SAAS;gCACrBD,EAAEE,eAAe;4BACnB;wBACF;wBACAC,aAAa,CAACH,IAAMA,EAAEE,eAAe;wBACrCE,cAAc,IAAMvB,eAAe;wBACnCwB,cAAc,IAAMxB,eAAe;wBACnCyB,YAAY,CAACN,IAAMA,EAAEE,eAAe;;0CAEpC,KAACtC;gCAAQ+B,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;gCAAEuC,MAAM3B;0CAChDE,EAAE,qBAAqB;oCAAEV,OAAO;gCAAG;;0CAEtC,KAACP;gCAAS8B,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;;;;kCAE3C,KAACoB;wBAAeoB,QAAqB;;;;;;AAK/C,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/Relationship/select-components/SingleValue/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,OAAO,KAAwC,MAAM,OAAO,CAAA;AAG5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAO5C,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CA4D1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/fields/Relationship/select-components/SingleValue/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAEpD,OAAO,KAAwC,MAAM,OAAO,CAAA;AAG5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAO5C,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,CA2D1D,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/fields/Relationship/select-components/SingleValue/index.tsx"],"sourcesContent":["'use client'\nimport type { SingleValueProps } from 'react-select'\n\nimport React, { Fragment, useEffect, useState } from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../../types.js'\n\nimport { useDocumentDrawer } from '../../../../elements/DocumentDrawer/index.js'\nimport { Tooltip } from '../../../../elements/Tooltip/index.js'\nimport { EditIcon } from '../../../../icons/Edit/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'relationship--single-value'\n\nexport const SingleValue: React.FC<SingleValueProps<Option>> = (props) => {\n const {\n children,\n data: { label, relationTo, value },\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n selectProps: { customProps: { onSave, setDrawerIsOpen } = {} } = {},\n } = props\n\n const [showTooltip, setShowTooltip] = useState(false)\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const hasReadPermission = Boolean(permissions?.collections?.[relationTo]?.read?.permission)\n\n const [DocumentDrawer, DocumentDrawerToggler, { isDrawerOpen }] = useDocumentDrawer({\n id: value.toString(),\n collectionSlug: relationTo,\n })\n\n useEffect(() => {\n if (typeof setDrawerIsOpen === 'function') {\n setDrawerIsOpen(isDrawerOpen)\n }\n }, [isDrawerOpen, setDrawerIsOpen])\n\n return (\n <React.Fragment>\n {/* @ts-expect-error // TODO Fix this - Broke with React 19 types */}\n <SelectComponents.SingleValue {...props} className={baseClass}>\n <div className={`${baseClass}__label`}>\n <div className={`${baseClass}__label-text`}>\n <div className={`${baseClass}__text`}>{children}</div>\n {relationTo && hasReadPermission && (\n <Fragment>\n <DocumentDrawerToggler\n aria-label={t('general:editLabel', { label })}\n className={`${baseClass}__drawer-toggler`}\n onClick={() => setShowTooltip(false)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation()\n }\n }}\n onMouseDown={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n onMouseEnter={() => setShowTooltip(true)}\n onMouseLeave={() => setShowTooltip(false)}\n onTouchEnd={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n >\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {t('general:edit')}\n </Tooltip>\n <EditIcon />\n </DocumentDrawerToggler>\n </Fragment>\n )}\n </div>\n </div>\n {relationTo && hasReadPermission && <DocumentDrawer onSave={onSave} />}\n </SelectComponents.SingleValue>\n </React.Fragment>\n )\n}\n"],"names":["React","Fragment","useEffect","useState","components","SelectComponents","useDocumentDrawer","Tooltip","EditIcon","useAuth","useTranslation","baseClass","SingleValue","props","children","data","label","relationTo","value","selectProps","customProps","onSave","setDrawerIsOpen","showTooltip","setShowTooltip","t","permissions","hasReadPermission","Boolean","collections","read","permission","DocumentDrawer","DocumentDrawerToggler","isDrawerOpen","id","toString","collectionSlug","className","div","aria-label","onClick","onKeyDown","e","key","stopPropagation","onMouseDown","onMouseEnter","onMouseLeave","onTouchEnd","show"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAC5D,SAASC,cAAcC,gBAAgB,QAAQ,eAAc;AAI7D,SAASC,iBAAiB,QAAQ,+CAA8C;AAChF,SAASC,OAAO,QAAQ,wCAAuC;AAC/D,SAASC,QAAQ,QAAQ,kCAAiC;AAC1D,SAASC,OAAO,QAAQ,sCAAqC;AAC7D,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,cAAkD,CAACC;IAC9D,MAAM,EACJC,QAAQ,EACRC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAE,EAClC,8FAA8F;IAC9FC,aAAa,EAAEC,aAAa,EAAEC,MAAM,EAAEC,eAAe,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EACpE,GAAGT;IAEJ,MAAM,CAACU,aAAaC,eAAe,GAAGrB,SAAS;IAC/C,MAAM,EAAEsB,CAAC,EAAE,GAAGf;IACd,MAAM,EAAEgB,WAAW,EAAE,GAAGjB;IACxB,MAAMkB,oBAAoBC,QAAQF,aAAaG,aAAa,CAACZ,WAAW,EAAEa,MAAMC;IAEhF,MAAM,CAACC,gBAAgBC,uBAAuB,EAAEC,YAAY,EAAE,CAAC,GAAG5B,kBAAkB;QAClF6B,IAAIjB,MAAMkB,QAAQ;QAClBC,gBAAgBpB;IAClB;IAEAf,UAAU;QACR,IAAI,OAAOoB,oBAAoB,YAAY;YACzCA,gBAAgBY;QAClB;IACF,GAAG;QAACA;QAAcZ;KAAgB;IAElC,qBACE,KAACtB,MAAMC,QAAQ;kBAEb,cAAA,MAACI,iBAAiBO,WAAW;YAAE,GAAGC,KAAK;YAAEyB,WAAW3B;;8BAClD,KAAC4B;oBAAID,WAAW,CAAC,EAAE3B,UAAU,OAAO,CAAC;8BACnC,cAAA,MAAC4B;wBAAID,WAAW,CAAC,EAAE3B,UAAU,YAAY,CAAC;;0CACxC,KAAC4B;gCAAID,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;0CAAGG;;4BACtCG,cAAcU,mCACb,KAAC1B;0CACC,cAAA,MAACgC;oCACCO,cAAYf,EAAE,qBAAqB;wCAAET;oCAAM;oCAC3CsB,WAAW,CAAC,EAAE3B,UAAU,gBAAgB,CAAC;oCACzC8B,SAAS,IAAMjB,eAAe;oCAC9BkB,WAAW,CAACC;wCACV,IAAIA,EAAEC,GAAG,KAAK,SAAS;4CACrBD,EAAEE,eAAe;wCACnB;oCACF;oCACAC,aAAa,CAACH,IAAMA,EAAEE,eAAe;oCACrCE,cAAc,IAAMvB,eAAe;oCACnCwB,cAAc,IAAMxB,eAAe;oCACnCyB,YAAY,CAACN,IAAMA,EAAEE,eAAe;;sDAEpC,KAACtC;4CAAQ+B,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;4CAAEuC,MAAM3B;sDAChDE,EAAE;;sDAEL,KAACjB;;;;;;;gBAMVS,cAAcU,mCAAqB,KAACK;oBAAeX,QAAQA;;;;;AAIpE,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/fields/Relationship/select-components/SingleValue/index.tsx"],"sourcesContent":["'use client'\nimport type { SingleValueProps } from 'react-select'\n\nimport React, { Fragment, useEffect, useState } from 'react'\nimport { components as SelectComponents } from 'react-select'\n\nimport type { Option } from '../../types.js'\n\nimport { useDocumentDrawer } from '../../../../elements/DocumentDrawer/index.js'\nimport { Tooltip } from '../../../../elements/Tooltip/index.js'\nimport { EditIcon } from '../../../../icons/Edit/index.js'\nimport { useAuth } from '../../../../providers/Auth/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'relationship--single-value'\n\nexport const SingleValue: React.FC<SingleValueProps<Option>> = (props) => {\n const {\n children,\n data: { label, relationTo, value },\n // @ts-expect-error-next-line // TODO Fix this - moduleResolution 16 breaks our declare module\n selectProps: { customProps: { onSave, setDrawerIsOpen } = {} } = {},\n } = props\n\n const [showTooltip, setShowTooltip] = useState(false)\n const { t } = useTranslation()\n const { permissions } = useAuth()\n const hasReadPermission = Boolean(permissions?.collections?.[relationTo]?.read?.permission)\n\n const [DocumentDrawer, DocumentDrawerToggler, { isDrawerOpen }] = useDocumentDrawer({\n id: value.toString(),\n collectionSlug: relationTo,\n })\n\n useEffect(() => {\n if (typeof setDrawerIsOpen === 'function') {\n setDrawerIsOpen(isDrawerOpen)\n }\n }, [isDrawerOpen, setDrawerIsOpen])\n\n return (\n <React.Fragment>\n <SelectComponents.SingleValue {...props} className={baseClass}>\n <div className={`${baseClass}__label`}>\n <div className={`${baseClass}__label-text`}>\n <div className={`${baseClass}__text`}>{children}</div>\n {relationTo && hasReadPermission && (\n <Fragment>\n <DocumentDrawerToggler\n aria-label={t('general:editLabel', { label })}\n className={`${baseClass}__drawer-toggler`}\n onClick={() => setShowTooltip(false)}\n onKeyDown={(e) => {\n if (e.key === 'Enter') {\n e.stopPropagation()\n }\n }}\n onMouseDown={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n onMouseEnter={() => setShowTooltip(true)}\n onMouseLeave={() => setShowTooltip(false)}\n onTouchEnd={(e) => e.stopPropagation()} // prevents react-select dropdown from opening\n >\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {t('general:edit')}\n </Tooltip>\n <EditIcon />\n </DocumentDrawerToggler>\n </Fragment>\n )}\n </div>\n </div>\n {relationTo && hasReadPermission && <DocumentDrawer onSave={onSave} />}\n </SelectComponents.SingleValue>\n </React.Fragment>\n )\n}\n"],"names":["React","Fragment","useEffect","useState","components","SelectComponents","useDocumentDrawer","Tooltip","EditIcon","useAuth","useTranslation","baseClass","SingleValue","props","children","data","label","relationTo","value","selectProps","customProps","onSave","setDrawerIsOpen","showTooltip","setShowTooltip","t","permissions","hasReadPermission","Boolean","collections","read","permission","DocumentDrawer","DocumentDrawerToggler","isDrawerOpen","id","toString","collectionSlug","className","div","aria-label","onClick","onKeyDown","e","key","stopPropagation","onMouseDown","onMouseEnter","onMouseLeave","onTouchEnd","show"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAC5D,SAASC,cAAcC,gBAAgB,QAAQ,eAAc;AAI7D,SAASC,iBAAiB,QAAQ,+CAA8C;AAChF,SAASC,OAAO,QAAQ,wCAAuC;AAC/D,SAASC,QAAQ,QAAQ,kCAAiC;AAC1D,SAASC,OAAO,QAAQ,sCAAqC;AAC7D,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,cAAkD,CAACC;IAC9D,MAAM,EACJC,QAAQ,EACRC,MAAM,EAAEC,KAAK,EAAEC,UAAU,EAAEC,KAAK,EAAE,EAClC,8FAA8F;IAC9FC,aAAa,EAAEC,aAAa,EAAEC,MAAM,EAAEC,eAAe,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EACpE,GAAGT;IAEJ,MAAM,CAACU,aAAaC,eAAe,GAAGrB,SAAS;IAC/C,MAAM,EAAEsB,CAAC,EAAE,GAAGf;IACd,MAAM,EAAEgB,WAAW,EAAE,GAAGjB;IACxB,MAAMkB,oBAAoBC,QAAQF,aAAaG,aAAa,CAACZ,WAAW,EAAEa,MAAMC;IAEhF,MAAM,CAACC,gBAAgBC,uBAAuB,EAAEC,YAAY,EAAE,CAAC,GAAG5B,kBAAkB;QAClF6B,IAAIjB,MAAMkB,QAAQ;QAClBC,gBAAgBpB;IAClB;IAEAf,UAAU;QACR,IAAI,OAAOoB,oBAAoB,YAAY;YACzCA,gBAAgBY;QAClB;IACF,GAAG;QAACA;QAAcZ;KAAgB;IAElC,qBACE,KAACtB,MAAMC,QAAQ;kBACb,cAAA,MAACI,iBAAiBO,WAAW;YAAE,GAAGC,KAAK;YAAEyB,WAAW3B;;8BAClD,KAAC4B;oBAAID,WAAW,CAAC,EAAE3B,UAAU,OAAO,CAAC;8BACnC,cAAA,MAAC4B;wBAAID,WAAW,CAAC,EAAE3B,UAAU,YAAY,CAAC;;0CACxC,KAAC4B;gCAAID,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;0CAAGG;;4BACtCG,cAAcU,mCACb,KAAC1B;0CACC,cAAA,MAACgC;oCACCO,cAAYf,EAAE,qBAAqB;wCAAET;oCAAM;oCAC3CsB,WAAW,CAAC,EAAE3B,UAAU,gBAAgB,CAAC;oCACzC8B,SAAS,IAAMjB,eAAe;oCAC9BkB,WAAW,CAACC;wCACV,IAAIA,EAAEC,GAAG,KAAK,SAAS;4CACrBD,EAAEE,eAAe;wCACnB;oCACF;oCACAC,aAAa,CAACH,IAAMA,EAAEE,eAAe;oCACrCE,cAAc,IAAMvB,eAAe;oCACnCwB,cAAc,IAAMxB,eAAe;oCACnCyB,YAAY,CAACN,IAAMA,EAAEE,eAAe;;sDAEpC,KAACtC;4CAAQ+B,WAAW,CAAC,EAAE3B,UAAU,SAAS,CAAC;4CAAEuC,MAAM3B;sDAChDE,EAAE;;sDAEL,KAACjB;;;;;;;gBAMVS,cAAcU,mCAAqB,KAACK;oBAAeX,QAAQA;;;;;AAIpE,EAAC"}
@@ -1,4 +1,4 @@
1
- import type { RichTextComponentProps } from 'payload';
1
+ import type { RichTextFieldProps } from 'payload';
2
2
  import type React from 'react';
3
- export declare const RichTextField: React.FC<RichTextComponentProps>;
3
+ export declare const RichTextField: React.FC<RichTextFieldProps>;
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/RichText/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAE1D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/RichText/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAEtD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/RichText/index.tsx"],"sourcesContent":["import type { RichTextComponentProps } from 'payload'\nimport type React from 'react'\n\nexport const RichTextField: React.FC<RichTextComponentProps> = () => {\n return null\n}\n"],"names":["RichTextField"],"mappings":"AAGA,OAAO,MAAMA,gBAAkD;IAC7D,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/fields/RichText/index.tsx"],"sourcesContent":["import type { RichTextFieldProps } from 'payload'\nimport type React from 'react'\n\nexport const RichTextField: React.FC<RichTextFieldProps> = () => {\n return null\n}\n"],"names":["RichTextField"],"mappings":"AAGA,OAAO,MAAMA,gBAA8C;IACzD,OAAO;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Row/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,cAAc,CAAA;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAA;AA0B9B,eAAO,MAAM,QAAQ,yBAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Row/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE5C,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,OAAO,cAAc,CAAA;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,CAAA;AAkC9B,eAAO,MAAM,QAAQ,yBAAmC,CAAA"}
@@ -10,7 +10,7 @@ import { RowProvider, useRow } from './provider.js';
10
10
  export { RowProvider, useRow };
11
11
  const baseClass = 'row';
12
12
  const RowFieldComponent = (props)=>{
13
- const { className, fieldMap, forceRender = false } = props;
13
+ const { field: { admin: { className }, fields }, forceRender = false } = props;
14
14
  const { indexPath, path, readOnly, schemaPath, siblingPermissions } = useFieldProps();
15
15
  return /*#__PURE__*/ _jsx(RowProvider, {
16
16
  children: /*#__PURE__*/ _jsx("div", {
@@ -20,17 +20,15 @@ const RowFieldComponent = (props)=>{
20
20
  className
21
21
  ].filter(Boolean).join(' '),
22
22
  children: /*#__PURE__*/ _jsx(RenderFields, {
23
- fieldMap,
24
- forceRender,
25
- path,
26
- readOnly,
27
- schemaPath,
28
23
  className: `${baseClass}__fields`,
29
- fieldMap: fieldMap,
24
+ fields: fields,
30
25
  forceRender: forceRender,
31
26
  indexPath: indexPath,
32
27
  margins: false,
33
- permissions: siblingPermissions
28
+ path: path,
29
+ permissions: siblingPermissions,
30
+ readOnly: readOnly,
31
+ schemaPath: schemaPath
34
32
  })
35
33
  })
36
34
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/fields/Row/index.tsx"],"sourcesContent":["'use client'\nimport type { RowFieldProps } from 'payload'\n\nimport React from 'react'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { RowProvider, useRow } from './provider.js'\n\nexport { RowProvider, useRow }\n\nconst baseClass = 'row'\n\nconst RowFieldComponent: React.FC<RowFieldProps> = (props) => {\n const { className, fieldMap, forceRender = false } = props\n\n const { indexPath, path, readOnly, schemaPath, siblingPermissions } = useFieldProps()\n\n return (\n <RowProvider>\n <div className={[fieldBaseClass, baseClass, className].filter(Boolean).join(' ')}>\n <RenderFields\n {...{ fieldMap, forceRender, path, readOnly, schemaPath }}\n className={`${baseClass}__fields`}\n fieldMap={fieldMap}\n forceRender={forceRender}\n indexPath={indexPath}\n margins={false}\n permissions={siblingPermissions}\n />\n </div>\n </RowProvider>\n )\n}\n\nexport const RowField = withCondition(RowFieldComponent)\n"],"names":["React","useFieldProps","RenderFields","withCondition","fieldBaseClass","RowProvider","useRow","baseClass","RowFieldComponent","props","className","fieldMap","forceRender","indexPath","path","readOnly","schemaPath","siblingPermissions","div","filter","Boolean","join","margins","permissions","RowField"],"mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,YAAY,QAAQ,oCAAmC;AAChE,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,cAAc,QAAQ,qBAAoB;AACnD,OAAO,eAAc;AACrB,SAASC,WAAW,EAAEC,MAAM,QAAQ,gBAAe;AAEnD,SAASD,WAAW,EAAEC,MAAM,GAAE;AAE9B,MAAMC,YAAY;AAElB,MAAMC,oBAA6C,CAACC;IAClD,MAAM,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,cAAc,KAAK,EAAE,GAAGH;IAErD,MAAM,EAAEI,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,kBAAkB,EAAE,GAAGhB;IAEtE,qBACE,KAACI;kBACC,cAAA,KAACa;YAAIR,WAAW;gBAACN;gBAAgBG;gBAAWG;aAAU,CAACS,MAAM,CAACC,SAASC,IAAI,CAAC;sBAC1E,cAAA,KAACnB;gBACOS;gBAAUC;gBAAaE;gBAAMC;gBAAUC;gBAC7CN,WAAW,CAAC,EAAEH,UAAU,QAAQ,CAAC;gBACjCI,UAAUA;gBACVC,aAAaA;gBACbC,WAAWA;gBACXS,SAAS;gBACTC,aAAaN;;;;AAKvB;AAEA,OAAO,MAAMO,WAAWrB,cAAcK,mBAAkB"}
1
+ {"version":3,"sources":["../../../src/fields/Row/index.tsx"],"sourcesContent":["'use client'\nimport type { RowFieldProps } from 'payload'\n\nimport React from 'react'\n\nimport { useFieldProps } from '../../forms/FieldPropsProvider/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { RowProvider, useRow } from './provider.js'\n\nexport { RowProvider, useRow }\n\nconst baseClass = 'row'\n\nconst RowFieldComponent: React.FC<RowFieldProps> = (props) => {\n const {\n field: {\n admin: { className },\n fields,\n },\n forceRender = false,\n } = props\n\n const { indexPath, path, readOnly, schemaPath, siblingPermissions } = useFieldProps()\n\n return (\n <RowProvider>\n <div className={[fieldBaseClass, baseClass, className].filter(Boolean).join(' ')}>\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n forceRender={forceRender}\n indexPath={indexPath}\n margins={false}\n path={path}\n permissions={siblingPermissions}\n readOnly={readOnly}\n schemaPath={schemaPath}\n />\n </div>\n </RowProvider>\n )\n}\n\nexport const RowField = withCondition(RowFieldComponent)\n"],"names":["React","useFieldProps","RenderFields","withCondition","fieldBaseClass","RowProvider","useRow","baseClass","RowFieldComponent","props","field","admin","className","fields","forceRender","indexPath","path","readOnly","schemaPath","siblingPermissions","div","filter","Boolean","join","margins","permissions","RowField"],"mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAEzB,SAASC,aAAa,QAAQ,0CAAyC;AACvE,SAASC,YAAY,QAAQ,oCAAmC;AAChE,SAASC,aAAa,QAAQ,qCAAoC;AAClE,SAASC,cAAc,QAAQ,qBAAoB;AACnD,OAAO,eAAc;AACrB,SAASC,WAAW,EAAEC,MAAM,QAAQ,gBAAe;AAEnD,SAASD,WAAW,EAAEC,MAAM,GAAE;AAE9B,MAAMC,YAAY;AAElB,MAAMC,oBAA6C,CAACC;IAClD,MAAM,EACJC,OAAO,EACLC,OAAO,EAAEC,SAAS,EAAE,EACpBC,MAAM,EACP,EACDC,cAAc,KAAK,EACpB,GAAGL;IAEJ,MAAM,EAAEM,SAAS,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,kBAAkB,EAAE,GAAGlB;IAEtE,qBACE,KAACI;kBACC,cAAA,KAACe;YAAIR,WAAW;gBAACR;gBAAgBG;gBAAWK;aAAU,CAACS,MAAM,CAACC,SAASC,IAAI,CAAC;sBAC1E,cAAA,KAACrB;gBACCU,WAAW,CAAC,EAAEL,UAAU,QAAQ,CAAC;gBACjCM,QAAQA;gBACRC,aAAaA;gBACbC,WAAWA;gBACXS,SAAS;gBACTR,MAAMA;gBACNS,aAAaN;gBACbF,UAAUA;gBACVC,YAAYA;;;;AAKtB;AAEA,OAAO,MAAMQ,WAAWvB,cAAcK,mBAAkB"}
@@ -1,12 +1,32 @@
1
- import type { OptionObject, SelectFieldProps } from 'payload';
1
+ import type { MappedComponent, OptionObject, StaticDescription, StaticLabel } from 'payload';
2
2
  import React from 'react';
3
3
  import type { ReactSelectAdapterProps } from '../../elements/ReactSelect/types.js';
4
4
  import './index.scss';
5
5
  export type SelectInputProps = {
6
- onChange?: ReactSelectAdapterProps['onChange'];
7
- options?: OptionObject[];
8
- showError?: boolean;
9
- value?: string | string[];
10
- } & Omit<SelectFieldProps, 'custom' | 'disabled' | 'docPreferences' | 'locale' | 'localized' | 'onChange' | 'options' | 'rtl' | 'type' | 'user' | 'validate' | 'value'>;
6
+ readonly Description?: MappedComponent;
7
+ readonly Error?: MappedComponent;
8
+ readonly Label?: MappedComponent;
9
+ readonly afterInput?: MappedComponent[];
10
+ readonly beforeInput?: MappedComponent[];
11
+ readonly className?: string;
12
+ readonly description?: StaticDescription;
13
+ readonly descriptionProps?: Record<string, unknown>;
14
+ readonly errorProps?: Record<string, unknown>;
15
+ readonly hasMany?: boolean;
16
+ readonly isClearable?: boolean;
17
+ readonly isSortable?: boolean;
18
+ readonly label: StaticLabel;
19
+ readonly labelProps?: Record<string, unknown>;
20
+ readonly name: string;
21
+ readonly onChange?: ReactSelectAdapterProps['onChange'];
22
+ readonly options?: OptionObject[];
23
+ readonly path: string;
24
+ readonly readOnly?: boolean;
25
+ readonly required?: boolean;
26
+ readonly showError?: boolean;
27
+ readonly style?: React.CSSProperties;
28
+ readonly value?: string | string[];
29
+ readonly width?: string;
30
+ };
11
31
  export declare const SelectInput: React.FC<SelectInputProps>;
12
32
  //# sourceMappingURL=Input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Select/Input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAG7D,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AAQlF,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAA;IAC9C,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAC1B,GAAG,IAAI,CACN,gBAAgB,EACd,QAAQ,GACR,UAAU,GACV,gBAAgB,GAChB,QAAQ,GACR,WAAW,GACX,UAAU,GACV,SAAS,GACT,KAAK,GACL,MAAM,GACN,MAAM,GACN,UAAU,GACV,OAAO,CACV,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA8FlD,CAAA"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Select/Input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAG5F,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AASlF,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAA;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,eAAe,CAAA;IAChC,QAAQ,CAAC,UAAU,CAAC,EAAE,eAAe,EAAE,CAAA;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;IAC3B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAA;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IAClC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA0FlD,CAAA"}
@@ -3,6 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import React from 'react';
5
5
  import { ReactSelect } from '../../elements/ReactSelect/index.js';
6
+ import { RenderComponent } from '../../providers/Config/RenderComponent.js';
6
7
  import { useTranslation } from '../../providers/Translation/index.js';
7
8
  import { FieldDescription } from '../FieldDescription/index.js';
8
9
  import { FieldError } from '../FieldError/index.js';
@@ -10,7 +11,7 @@ import { FieldLabel } from '../FieldLabel/index.js';
10
11
  import { fieldBaseClass } from '../shared/index.js';
11
12
  import './index.scss';
12
13
  export const SelectInput = (props)=>{
13
- const { AfterInput, BeforeInput, CustomDescription, CustomError, CustomLabel, className, descriptionProps, errorProps, hasMany = false, isClearable = true, isSortable = true, label, labelProps, onChange, options, path, readOnly, required, showError, style, value, width } = props;
14
+ const { Description, Error, Label, afterInput, beforeInput, className, description, descriptionProps, errorProps, hasMany = false, isClearable = true, isSortable = true, label, labelProps, onChange, options, path, readOnly, required, showError, style, value, width } = props;
14
15
  const { i18n } = useTranslation();
15
16
  let valueToRender;
16
17
  if (hasMany && Array.isArray(value)) {
@@ -43,7 +44,7 @@ export const SelectInput = (props)=>{
43
44
  },
44
45
  children: [
45
46
  /*#__PURE__*/ _jsx(FieldLabel, {
46
- CustomLabel: CustomLabel,
47
+ Label: Label,
47
48
  label: label,
48
49
  required: required,
49
50
  ...labelProps || {}
@@ -52,11 +53,13 @@ export const SelectInput = (props)=>{
52
53
  className: `${fieldBaseClass}__wrap`,
53
54
  children: [
54
55
  /*#__PURE__*/ _jsx(FieldError, {
55
- CustomError: CustomError,
56
+ CustomError: Error,
56
57
  path: path,
57
58
  ...errorProps || {}
58
59
  }),
59
- BeforeInput,
60
+ /*#__PURE__*/ _jsx(RenderComponent, {
61
+ mappedComponent: beforeInput
62
+ }),
60
63
  /*#__PURE__*/ _jsx(ReactSelect, {
61
64
  disabled: readOnly,
62
65
  isClearable: isClearable,
@@ -70,10 +73,14 @@ export const SelectInput = (props)=>{
70
73
  showError: showError,
71
74
  value: valueToRender
72
75
  }),
73
- AfterInput
76
+ /*#__PURE__*/ _jsx(RenderComponent, {
77
+ mappedComponent: afterInput
78
+ })
74
79
  ]
75
80
  }),
76
- CustomDescription !== undefined ? CustomDescription : /*#__PURE__*/ _jsx(FieldDescription, {
81
+ /*#__PURE__*/ _jsx(FieldDescription, {
82
+ Description: Description,
83
+ description: description,
77
84
  ...descriptionProps || {}
78
85
  })
79
86
  ]