@payloadcms/ui 3.68.0-internal-debug.2eb12b9 → 3.68.0-internal-debug.dafc24d

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 (871) hide show
  1. package/dist/elements/AddNewRelation/index.js +83 -27
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AnimateHeight/index.js +13 -5
  4. package/dist/elements/AnimateHeight/index.js.map +1 -1
  5. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +2 -2
  6. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  7. package/dist/elements/AppHeader/index.js +107 -35
  8. package/dist/elements/AppHeader/index.js.map +1 -1
  9. package/dist/elements/ArrayAction/index.js +116 -36
  10. package/dist/elements/ArrayAction/index.js.map +1 -1
  11. package/dist/elements/Autosave/index.js +19 -6
  12. package/dist/elements/Autosave/index.js.map +1 -1
  13. package/dist/elements/Banner/index.js +25 -9
  14. package/dist/elements/Banner/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/ActionsBar/index.js +97 -33
  16. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.js +43 -15
  18. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/AddingFilesView/index.js +47 -15
  20. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +7 -3
  22. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  23. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +12 -4
  24. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  25. package/dist/elements/BulkUpload/EditForm/index.js +53 -17
  26. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  27. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +90 -30
  28. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  29. package/dist/elements/BulkUpload/EditMany/index.js +33 -13
  30. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  31. package/dist/elements/BulkUpload/FileSidebar/index.js +214 -70
  32. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/FormsManager/index.js +21 -13
  34. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  35. package/dist/elements/BulkUpload/Header/index.js +19 -7
  36. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  37. package/dist/elements/BulkUpload/index.js +70 -19
  38. package/dist/elements/BulkUpload/index.js.map +1 -1
  39. package/dist/elements/Button/index.js +103 -35
  40. package/dist/elements/Button/index.js.map +1 -1
  41. package/dist/elements/Button/types.js +13 -1
  42. package/dist/elements/Button/types.js.map +1 -1
  43. package/dist/elements/Card/index.js +30 -10
  44. package/dist/elements/Card/index.js.map +1 -1
  45. package/dist/elements/CheckboxPopup/index.js +19 -7
  46. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  47. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +16 -4
  48. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  49. package/dist/elements/ClipboardAction/index.js +42 -14
  50. package/dist/elements/ClipboardAction/index.js.map +1 -1
  51. package/dist/elements/CloseModalButton/index.js +12 -4
  52. package/dist/elements/CloseModalButton/index.js.map +1 -1
  53. package/dist/elements/CodeEditor/CodeEditor.js +15 -7
  54. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  55. package/dist/elements/CodeEditor/index.js +18 -6
  56. package/dist/elements/CodeEditor/index.js.map +1 -1
  57. package/dist/elements/CodeEditor/types.js +3 -1
  58. package/dist/elements/CodeEditor/types.js.map +1 -1
  59. package/dist/elements/Collapsible/index.js +92 -29
  60. package/dist/elements/Collapsible/index.js.map +1 -1
  61. package/dist/elements/Collapsible/provider.js +7 -3
  62. package/dist/elements/Collapsible/provider.js.map +1 -1
  63. package/dist/elements/ColumnSelector/index.js +13 -5
  64. package/dist/elements/ColumnSelector/index.js.map +1 -1
  65. package/dist/elements/Combobox/index.js +43 -13
  66. package/dist/elements/Combobox/index.js.map +1 -1
  67. package/dist/elements/ConfirmationModal/index.js +49 -17
  68. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  69. package/dist/elements/CopyLocaleData/index.js +73 -25
  70. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  71. package/dist/elements/CopyToClipboard/index.js +18 -6
  72. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  73. package/dist/elements/DatePicker/DatePicker.js +42 -13
  74. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  75. package/dist/elements/DatePicker/getFormattedLocale.js +1 -0
  76. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  77. package/dist/elements/DatePicker/index.js +19 -7
  78. package/dist/elements/DatePicker/index.js.map +1 -1
  79. package/dist/elements/DefaultListViewTabs/index.js +25 -9
  80. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  81. package/dist/elements/DeleteDocument/index.js +49 -17
  82. package/dist/elements/DeleteDocument/index.js.map +1 -1
  83. package/dist/elements/DeleteMany/index.js +98 -26
  84. package/dist/elements/DeleteMany/index.js.map +1 -1
  85. package/dist/elements/DocumentControls/index.js +304 -96
  86. package/dist/elements/DocumentControls/index.js.map +1 -1
  87. package/dist/elements/DocumentDrawer/DrawerContent.js +12 -4
  88. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  89. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +59 -19
  90. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  91. package/dist/elements/DocumentDrawer/Provider.js +12 -4
  92. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  93. package/dist/elements/DocumentDrawer/index.js +32 -10
  94. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  95. package/dist/elements/DocumentDrawer/types.js +11 -1
  96. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  97. package/dist/elements/DocumentFields/index.js +54 -18
  98. package/dist/elements/DocumentFields/index.js.map +1 -1
  99. package/dist/elements/DocumentLocked/index.js +73 -25
  100. package/dist/elements/DocumentLocked/index.js.map +1 -1
  101. package/dist/elements/DocumentTakeOver/index.js +49 -17
  102. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  103. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +7 -3
  104. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  105. package/dist/elements/DraggableSortable/index.js +19 -7
  106. package/dist/elements/DraggableSortable/index.js.map +1 -1
  107. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +1 -0
  108. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  109. package/dist/elements/Drawer/index.js +80 -26
  110. package/dist/elements/Drawer/index.js.map +1 -1
  111. package/dist/elements/DrawerActionHeader/index.js +37 -13
  112. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  113. package/dist/elements/DrawerContentContainer/index.js +7 -3
  114. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  115. package/dist/elements/Dropzone/index.js +7 -3
  116. package/dist/elements/Dropzone/index.js.map +1 -1
  117. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +61 -21
  118. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  119. package/dist/elements/DuplicateDocument/index.js +25 -9
  120. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  121. package/dist/elements/EditMany/DrawerContent.js +146 -44
  122. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  123. package/dist/elements/EditMany/index.js +40 -14
  124. package/dist/elements/EditMany/index.js.map +1 -1
  125. package/dist/elements/EditUpload/index.js +232 -76
  126. package/dist/elements/EditUpload/index.js.map +1 -1
  127. package/dist/elements/EmailAndUsername/index.js +31 -11
  128. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  129. package/dist/elements/ErrorPill/index.js +19 -7
  130. package/dist/elements/ErrorPill/index.js.map +1 -1
  131. package/dist/elements/FieldDiffContainer/index.js +25 -9
  132. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  133. package/dist/elements/FieldDiffLabel/index.js +7 -3
  134. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  135. package/dist/elements/FieldSelect/index.js +19 -7
  136. package/dist/elements/FieldSelect/index.js.map +1 -1
  137. package/dist/elements/FileDetails/DraggableFileDetails/index.js +70 -22
  138. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  139. package/dist/elements/FileDetails/FileMeta/index.js +43 -15
  140. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  141. package/dist/elements/FileDetails/StaticFileDetails/index.js +43 -15
  142. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  143. package/dist/elements/FileDetails/index.js +13 -5
  144. package/dist/elements/FileDetails/index.js.map +1 -1
  145. package/dist/elements/FolderView/Breadcrumbs/index.js +31 -11
  146. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  147. package/dist/elements/FolderView/BrowseByFolderButton/index.js +12 -4
  148. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  149. package/dist/elements/FolderView/Cell/index.client.js +7 -3
  150. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  151. package/dist/elements/FolderView/Cell/index.server.js +7 -3
  152. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  153. package/dist/elements/FolderView/ColoredFolderIcon/index.js +7 -3
  154. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  155. package/dist/elements/FolderView/CurrentFolderActions/index.js +68 -24
  156. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  157. package/dist/elements/FolderView/DragOverlaySelection/index.js +31 -11
  158. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  159. package/dist/elements/FolderView/DraggableTableRow/index.js +25 -9
  160. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  161. package/dist/elements/FolderView/DraggableWithClick/index.js +7 -3
  162. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  163. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +15 -7
  164. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  165. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +189 -62
  166. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  167. package/dist/elements/FolderView/FilterFolderTypePill/index.js +19 -7
  168. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  169. package/dist/elements/FolderView/FolderField/index.server.js +7 -3
  170. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  171. package/dist/elements/FolderView/FolderFileCard/index.js +104 -31
  172. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  173. package/dist/elements/FolderView/FolderFileTable/index.js +49 -17
  174. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  175. package/dist/elements/FolderView/FolderTypeField/index.js +7 -3
  176. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  177. package/dist/elements/FolderView/ItemCardGrid/index.js +21 -9
  178. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  179. package/dist/elements/FolderView/MoveDocToFolder/index.js +28 -13
  180. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  181. package/dist/elements/FolderView/SimpleTable/index.js +67 -23
  182. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  183. package/dist/elements/FolderView/SortByPill/index.js +86 -30
  184. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  185. package/dist/elements/FolderView/ToggleViewButtons/index.js +25 -9
  186. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  187. package/dist/elements/FullscreenModal/index.js +7 -3
  188. package/dist/elements/FullscreenModal/index.js.map +1 -1
  189. package/dist/elements/GenerateConfirmation/index.js +31 -11
  190. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  191. package/dist/elements/GroupByBuilder/index.js +43 -15
  192. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  193. package/dist/elements/Gutter/index.js +7 -3
  194. package/dist/elements/Gutter/index.js.map +1 -1
  195. package/dist/elements/HTMLDiff/diff/index.js +24 -3
  196. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  197. package/dist/elements/HTMLDiff/index.js +13 -5
  198. package/dist/elements/HTMLDiff/index.js.map +1 -1
  199. package/dist/elements/Hamburger/index.js +35 -11
  200. package/dist/elements/Hamburger/index.js.map +1 -1
  201. package/dist/elements/HydrateAuthProvider/index.js +6 -1
  202. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  203. package/dist/elements/IDLabel/index.js +13 -5
  204. package/dist/elements/IDLabel/index.js.map +1 -1
  205. package/dist/elements/LeaveWithoutSaving/index.js +13 -5
  206. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  207. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +3 -1
  208. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  209. package/dist/elements/Link/index.js +12 -4
  210. package/dist/elements/Link/index.js.map +1 -1
  211. package/dist/elements/ListControls/index.js +126 -42
  212. package/dist/elements/ListControls/index.js.map +1 -1
  213. package/dist/elements/ListControls/types.js +7 -1
  214. package/dist/elements/ListControls/types.js.map +1 -1
  215. package/dist/elements/ListDrawer/DrawerContent.js +20 -8
  216. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  217. package/dist/elements/ListDrawer/Provider.js +15 -4
  218. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  219. package/dist/elements/ListDrawer/index.js +34 -11
  220. package/dist/elements/ListDrawer/index.js.map +1 -1
  221. package/dist/elements/ListDrawer/types.js +5 -1
  222. package/dist/elements/ListDrawer/types.js.map +1 -1
  223. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +19 -7
  224. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  225. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +13 -5
  226. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  227. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +12 -4
  228. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  229. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +7 -3
  230. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  231. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +48 -16
  232. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  233. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +37 -13
  234. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  235. package/dist/elements/ListHeader/index.js +43 -15
  236. package/dist/elements/ListHeader/index.js.map +1 -1
  237. package/dist/elements/ListSelection/index.js +66 -20
  238. package/dist/elements/ListSelection/index.js.map +1 -1
  239. package/dist/elements/LivePreview/Device/index.js +13 -5
  240. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  241. package/dist/elements/LivePreview/DeviceContainer/index.js +7 -3
  242. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  243. package/dist/elements/LivePreview/IFrame/index.js +7 -3
  244. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  245. package/dist/elements/LivePreview/Toggler/index.js +13 -5
  246. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  247. package/dist/elements/LivePreview/Toolbar/Controls/index.js +137 -45
  248. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  249. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +7 -3
  250. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  251. package/dist/elements/LivePreview/Toolbar/index.js +48 -16
  252. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  253. package/dist/elements/LivePreview/ToolbarArea/index.js +7 -3
  254. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  255. package/dist/elements/LivePreview/Window/index.js +41 -13
  256. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  257. package/dist/elements/Loading/index.js +55 -19
  258. package/dist/elements/Loading/index.js.map +1 -1
  259. package/dist/elements/LoadingOverlay/index.js +13 -5
  260. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  261. package/dist/elements/Localizer/LocalizerLabel/index.js +31 -11
  262. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  263. package/dist/elements/Localizer/index.js +47 -15
  264. package/dist/elements/Localizer/index.js.map +1 -1
  265. package/dist/elements/Locked/index.js +18 -6
  266. package/dist/elements/Locked/index.js.map +1 -1
  267. package/dist/elements/Logout/index.js +17 -5
  268. package/dist/elements/Logout/index.js.map +1 -1
  269. package/dist/elements/Nav/NavToggler/index.js +7 -3
  270. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  271. package/dist/elements/Nav/context.js +7 -3
  272. package/dist/elements/Nav/context.js.map +1 -1
  273. package/dist/elements/NavGroup/index.js +49 -17
  274. package/dist/elements/NavGroup/index.js.map +1 -1
  275. package/dist/elements/NoListResults/index.js +19 -7
  276. package/dist/elements/NoListResults/index.js.map +1 -1
  277. package/dist/elements/PageControls/GroupByPageControls.js +7 -3
  278. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  279. package/dist/elements/PageControls/index.js +37 -13
  280. package/dist/elements/PageControls/index.js.map +1 -1
  281. package/dist/elements/Pagination/ClickableArrow/index.js +12 -4
  282. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  283. package/dist/elements/Pagination/Page/index.js +7 -3
  284. package/dist/elements/Pagination/Page/index.js.map +1 -1
  285. package/dist/elements/Pagination/Separator/index.js +7 -3
  286. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  287. package/dist/elements/Pagination/index.js +19 -7
  288. package/dist/elements/Pagination/index.js.map +1 -1
  289. package/dist/elements/PerPage/index.js +61 -21
  290. package/dist/elements/PerPage/index.js.map +1 -1
  291. package/dist/elements/PermanentlyDeleteButton/index.js +31 -11
  292. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  293. package/dist/elements/Pill/index.js +42 -15
  294. package/dist/elements/Pill/index.js.map +1 -1
  295. package/dist/elements/PillSelector/index.js +34 -10
  296. package/dist/elements/PillSelector/index.js.map +1 -1
  297. package/dist/elements/Popup/PopupButtonList/index.js +25 -9
  298. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  299. package/dist/elements/Popup/PopupDivider/index.js +7 -3
  300. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  301. package/dist/elements/Popup/PopupGroupLabel/index.js +7 -3
  302. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  303. package/dist/elements/Popup/PopupTrigger/index.js +13 -5
  304. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  305. package/dist/elements/Popup/index.js +60 -20
  306. package/dist/elements/Popup/index.js.map +1 -1
  307. package/dist/elements/PreviewButton/index.js +12 -4
  308. package/dist/elements/PreviewButton/index.js.map +1 -1
  309. package/dist/elements/PreviewSizes/index.js +97 -33
  310. package/dist/elements/PreviewSizes/index.js.map +1 -1
  311. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +67 -23
  312. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  313. package/dist/elements/PublishButton/ScheduleDrawer/index.js +165 -53
  314. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  315. package/dist/elements/PublishButton/index.js +49 -17
  316. package/dist/elements/PublishButton/index.js.map +1 -1
  317. package/dist/elements/PublishMany/DrawerContent.js +7 -3
  318. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  319. package/dist/elements/PublishMany/index.js +28 -10
  320. package/dist/elements/PublishMany/index.js.map +1 -1
  321. package/dist/elements/QueryPresets/QueryPresetBar/index.js +109 -38
  322. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  323. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +42 -14
  324. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  325. package/dist/elements/QueryPresets/cells/AccessCell/index.js +25 -9
  326. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  327. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +13 -5
  328. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  329. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +13 -5
  330. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  331. package/dist/elements/QueryPresets/cells/WhereCell/index.js +7 -3
  332. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  333. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +25 -9
  334. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  335. package/dist/elements/QueryPresets/fields/GroupByField/index.js +31 -11
  336. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  337. package/dist/elements/QueryPresets/fields/WhereField/index.js +79 -27
  338. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  339. package/dist/elements/ReactSelect/ClearIndicator/index.js +13 -5
  340. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  341. package/dist/elements/ReactSelect/Control/index.js +13 -5
  342. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  343. package/dist/elements/ReactSelect/DropdownIndicator/index.js +13 -5
  344. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  345. package/dist/elements/ReactSelect/Input/index.js +13 -5
  346. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  347. package/dist/elements/ReactSelect/MultiValue/index.js +13 -5
  348. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  349. package/dist/elements/ReactSelect/MultiValueLabel/index.js +13 -5
  350. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  351. package/dist/elements/ReactSelect/MultiValueRemove/index.js +19 -7
  352. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  353. package/dist/elements/ReactSelect/SingleValue/index.js +13 -5
  354. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  355. package/dist/elements/ReactSelect/ValueContainer/index.js +19 -7
  356. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  357. package/dist/elements/ReactSelect/index.js +45 -17
  358. package/dist/elements/ReactSelect/index.js.map +1 -1
  359. package/dist/elements/ReactSelect/types.js +8 -1
  360. package/dist/elements/ReactSelect/types.js.map +1 -1
  361. package/dist/elements/RelationshipTable/AddNewButton.js +37 -13
  362. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  363. package/dist/elements/RelationshipTable/Pagination.js +7 -3
  364. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  365. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +24 -8
  366. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  367. package/dist/elements/RelationshipTable/index.js +121 -41
  368. package/dist/elements/RelationshipTable/index.js.map +1 -1
  369. package/dist/elements/RenderComponent/index.js +19 -7
  370. package/dist/elements/RenderComponent/index.js.map +1 -1
  371. package/dist/elements/RenderIfInViewport/index.js +7 -3
  372. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  373. package/dist/elements/RenderServerComponent/index.js +13 -5
  374. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  375. package/dist/elements/RenderTitle/index.js +25 -9
  376. package/dist/elements/RenderTitle/index.js.map +1 -1
  377. package/dist/elements/RestoreButton/index.js +49 -17
  378. package/dist/elements/RestoreButton/index.js.map +1 -1
  379. package/dist/elements/RestoreMany/index.js +38 -13
  380. package/dist/elements/RestoreMany/index.js.map +1 -1
  381. package/dist/elements/SaveButton/index.js +8 -5
  382. package/dist/elements/SaveButton/index.js.map +1 -1
  383. package/dist/elements/SaveDraftButton/index.js +8 -5
  384. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  385. package/dist/elements/SearchBar/index.js +24 -8
  386. package/dist/elements/SearchBar/index.js.map +1 -1
  387. package/dist/elements/SearchFilter/index.js +13 -5
  388. package/dist/elements/SearchFilter/index.js.map +1 -1
  389. package/dist/elements/SearchFilter/types.js +19 -1
  390. package/dist/elements/SearchFilter/types.js.map +1 -1
  391. package/dist/elements/SelectAll/index.js +7 -3
  392. package/dist/elements/SelectAll/index.js.map +1 -1
  393. package/dist/elements/SelectMany/index.js +7 -3
  394. package/dist/elements/SelectMany/index.js.map +1 -1
  395. package/dist/elements/SelectRow/index.js +13 -5
  396. package/dist/elements/SelectRow/index.js.map +1 -1
  397. package/dist/elements/ShimmerEffect/index.js +31 -11
  398. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  399. package/dist/elements/SortColumn/index.js +48 -16
  400. package/dist/elements/SortColumn/index.js.map +1 -1
  401. package/dist/elements/SortComplex/index.js +55 -19
  402. package/dist/elements/SortComplex/index.js.map +1 -1
  403. package/dist/elements/SortHeader/index.js +24 -8
  404. package/dist/elements/SortHeader/index.js.map +1 -1
  405. package/dist/elements/SortRow/index.js +13 -5
  406. package/dist/elements/SortRow/index.js.map +1 -1
  407. package/dist/elements/Status/index.js +63 -23
  408. package/dist/elements/Status/index.js.map +1 -1
  409. package/dist/elements/StayLoggedIn/index.js +7 -3
  410. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  411. package/dist/elements/StepNav/context.js +7 -3
  412. package/dist/elements/StepNav/context.js.map +1 -1
  413. package/dist/elements/StepNav/index.js +109 -33
  414. package/dist/elements/StepNav/index.js.map +1 -1
  415. package/dist/elements/StickyToolbar/index.js +7 -3
  416. package/dist/elements/StickyToolbar/index.js.map +1 -1
  417. package/dist/elements/Table/DefaultCell/fields/Array/index.js +7 -3
  418. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  419. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +7 -3
  420. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  421. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +13 -5
  422. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  423. package/dist/elements/Table/DefaultCell/fields/Code/index.js +13 -5
  424. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  425. package/dist/elements/Table/DefaultCell/fields/Date/index.js +7 -3
  426. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  427. package/dist/elements/Table/DefaultCell/fields/File/index.js +21 -9
  428. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  429. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +13 -5
  430. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  431. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +19 -7
  432. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  433. package/dist/elements/Table/DefaultCell/fields/Select/index.js +11 -7
  434. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  435. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +7 -3
  436. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  437. package/dist/elements/Table/DefaultCell/index.js +45 -16
  438. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  439. package/dist/elements/Table/OrderableRow.js +25 -9
  440. package/dist/elements/Table/OrderableRow.js.map +1 -1
  441. package/dist/elements/Table/OrderableRowDragPreview.js +19 -7
  442. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  443. package/dist/elements/Table/OrderableTable.js +79 -27
  444. package/dist/elements/Table/OrderableTable.js.map +1 -1
  445. package/dist/elements/Table/RelationshipProvider/index.js +10 -3
  446. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  447. package/dist/elements/Table/index.js +55 -19
  448. package/dist/elements/Table/index.js.map +1 -1
  449. package/dist/elements/Thumbnail/createThumbnail.js +12 -12
  450. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  451. package/dist/elements/Thumbnail/index.js +47 -15
  452. package/dist/elements/Thumbnail/index.js.map +1 -1
  453. package/dist/elements/ThumbnailCard/index.js +19 -7
  454. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  455. package/dist/elements/TimezonePicker/index.js +19 -7
  456. package/dist/elements/TimezonePicker/index.js.map +1 -1
  457. package/dist/elements/Toasts/fieldErrors.js +24 -8
  458. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  459. package/dist/elements/Tooltip/index.js +34 -12
  460. package/dist/elements/Tooltip/index.js.map +1 -1
  461. package/dist/elements/Translation/index.js +25 -9
  462. package/dist/elements/Translation/index.js.map +1 -1
  463. package/dist/elements/TrashBanner/index.js +18 -6
  464. package/dist/elements/TrashBanner/index.js.map +1 -1
  465. package/dist/elements/UnpublishMany/DrawerContent.js +7 -3
  466. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  467. package/dist/elements/UnpublishMany/index.js +28 -10
  468. package/dist/elements/UnpublishMany/index.js.map +1 -1
  469. package/dist/elements/Upload/index.js +235 -83
  470. package/dist/elements/Upload/index.js.map +1 -1
  471. package/dist/elements/ViewDescription/index.js +7 -3
  472. package/dist/elements/ViewDescription/index.js.map +1 -1
  473. package/dist/elements/WhereBuilder/Condition/Date/index.js +13 -5
  474. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  475. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +37 -13
  476. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  477. package/dist/elements/WhereBuilder/Condition/Number/index.js +13 -4
  478. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  479. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +23 -12
  480. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  481. package/dist/elements/WhereBuilder/Condition/Select/index.js +7 -3
  482. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  483. package/dist/elements/WhereBuilder/Condition/Text/index.js +13 -4
  484. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  485. package/dist/elements/WhereBuilder/Condition/index.js +73 -25
  486. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  487. package/dist/elements/WhereBuilder/index.js +87 -31
  488. package/dist/elements/WhereBuilder/index.js.map +1 -1
  489. package/dist/elements/WithServerSideProps/index.js +7 -3
  490. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  491. package/dist/elements/withMergedProps/index.js +7 -3
  492. package/dist/elements/withMergedProps/index.js.map +1 -1
  493. package/dist/exports/client/index.js +26 -2
  494. package/dist/exports/client/index.js.map +1 -1
  495. package/dist/exports/shared/index.js +2 -1
  496. package/dist/exports/shared/index.js.map +1 -1
  497. package/dist/fields/Array/ArrayRow.js +52 -16
  498. package/dist/fields/Array/ArrayRow.js.map +1 -1
  499. package/dist/fields/Array/index.js +169 -57
  500. package/dist/fields/Array/index.js.map +1 -1
  501. package/dist/fields/Blocks/BlockRow.js +72 -24
  502. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  503. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +18 -6
  504. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  505. package/dist/fields/Blocks/BlockSelector/index.js +74 -24
  506. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  507. package/dist/fields/Blocks/BlocksDrawer/index.js +13 -5
  508. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  509. package/dist/fields/Blocks/RowActions.js +19 -7
  510. package/dist/fields/Blocks/RowActions.js.map +1 -1
  511. package/dist/fields/Blocks/SectionTitle/index.js +13 -5
  512. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  513. package/dist/fields/Blocks/index.js +187 -63
  514. package/dist/fields/Blocks/index.js.map +1 -1
  515. package/dist/fields/Checkbox/Input.js +47 -15
  516. package/dist/fields/Checkbox/Input.js.map +1 -1
  517. package/dist/fields/Checkbox/index.js +37 -13
  518. package/dist/fields/Checkbox/index.js.map +1 -1
  519. package/dist/fields/Code/index.js +55 -19
  520. package/dist/fields/Code/index.js.map +1 -1
  521. package/dist/fields/Collapsible/index.js +61 -21
  522. package/dist/fields/Collapsible/index.js.map +1 -1
  523. package/dist/fields/ConfirmPassword/index.js +31 -11
  524. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  525. package/dist/fields/DateTime/index.js +61 -21
  526. package/dist/fields/DateTime/index.js.map +1 -1
  527. package/dist/fields/Email/index.js +55 -19
  528. package/dist/fields/Email/index.js.map +1 -1
  529. package/dist/fields/FieldDescription/index.js +7 -3
  530. package/dist/fields/FieldDescription/index.js.map +1 -1
  531. package/dist/fields/FieldError/index.js +7 -3
  532. package/dist/fields/FieldError/index.js.map +1 -1
  533. package/dist/fields/FieldLabel/index.js +19 -7
  534. package/dist/fields/FieldLabel/index.js.map +1 -1
  535. package/dist/fields/Group/index.js +78 -26
  536. package/dist/fields/Group/index.js.map +1 -1
  537. package/dist/fields/Group/provider.js +7 -3
  538. package/dist/fields/Group/provider.js.map +1 -1
  539. package/dist/fields/Hidden/index.js +7 -3
  540. package/dist/fields/Hidden/index.js.map +1 -1
  541. package/dist/fields/JSON/index.js +55 -19
  542. package/dist/fields/JSON/index.js.map +1 -1
  543. package/dist/fields/Join/index.js +49 -17
  544. package/dist/fields/Join/index.js.map +1 -1
  545. package/dist/fields/Number/index.js +71 -25
  546. package/dist/fields/Number/index.js.map +1 -1
  547. package/dist/fields/Password/index.js +7 -3
  548. package/dist/fields/Password/index.js.map +1 -1
  549. package/dist/fields/Password/input.js +61 -21
  550. package/dist/fields/Password/input.js.map +1 -1
  551. package/dist/fields/Password/types.js +11 -1
  552. package/dist/fields/Password/types.js.map +1 -1
  553. package/dist/fields/Point/index.js +97 -33
  554. package/dist/fields/Point/index.js.map +1 -1
  555. package/dist/fields/RadioGroup/Radio/index.js +31 -11
  556. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  557. package/dist/fields/RadioGroup/index.js +67 -23
  558. package/dist/fields/RadioGroup/index.js.map +1 -1
  559. package/dist/fields/Relationship/Input.js +84 -28
  560. package/dist/fields/Relationship/Input.js.map +1 -1
  561. package/dist/fields/Relationship/index.js +7 -3
  562. package/dist/fields/Relationship/index.js.map +1 -1
  563. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +47 -16
  564. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  565. package/dist/fields/Relationship/select-components/SingleValue/index.js +52 -17
  566. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  567. package/dist/fields/Row/index.js +19 -7
  568. package/dist/fields/Row/index.js.map +1 -1
  569. package/dist/fields/Row/provider.js +7 -3
  570. package/dist/fields/Row/provider.js.map +1 -1
  571. package/dist/fields/Select/Input.js +55 -19
  572. package/dist/fields/Select/Input.js.map +1 -1
  573. package/dist/fields/Select/index.js +7 -3
  574. package/dist/fields/Select/index.js.map +1 -1
  575. package/dist/fields/Slug/index.js +37 -13
  576. package/dist/fields/Slug/index.js.map +1 -1
  577. package/dist/fields/Tabs/Tab/index.js +25 -9
  578. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  579. package/dist/fields/Tabs/index.js +67 -23
  580. package/dist/fields/Tabs/index.js.map +1 -1
  581. package/dist/fields/Tabs/provider.js +7 -3
  582. package/dist/fields/Tabs/provider.js.map +1 -1
  583. package/dist/fields/Text/Input.js +60 -20
  584. package/dist/fields/Text/Input.js.map +1 -1
  585. package/dist/fields/Text/index.js +10 -5
  586. package/dist/fields/Text/index.js.map +1 -1
  587. package/dist/fields/Textarea/Input.js +61 -21
  588. package/dist/fields/Textarea/Input.js.map +1 -1
  589. package/dist/fields/Textarea/index.js +7 -3
  590. package/dist/fields/Textarea/index.js.map +1 -1
  591. package/dist/fields/Upload/HasMany/index.js +48 -16
  592. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  593. package/dist/fields/Upload/HasOne/index.js +13 -5
  594. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  595. package/dist/fields/Upload/Input.js +154 -56
  596. package/dist/fields/Upload/Input.js.map +1 -1
  597. package/dist/fields/Upload/RelationshipContent/index.js +73 -25
  598. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  599. package/dist/fields/Upload/UploadCard/index.js +7 -3
  600. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  601. package/dist/fields/Upload/index.js +13 -5
  602. package/dist/fields/Upload/index.js.map +1 -1
  603. package/dist/fields/Upload/types.js +1 -0
  604. package/dist/fields/Upload/types.js.map +1 -1
  605. package/dist/fields/shared/index.js +2 -3
  606. package/dist/fields/shared/index.js.map +1 -1
  607. package/dist/forms/Form/fieldReducer.js +2 -1
  608. package/dist/forms/Form/fieldReducer.js.map +1 -1
  609. package/dist/forms/Form/index.js +78 -31
  610. package/dist/forms/Form/index.js.map +1 -1
  611. package/dist/forms/Form/mergeServerFormState.js +11 -3
  612. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  613. package/dist/forms/Form/reduceToSerializableFields.js +2 -2
  614. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  615. package/dist/forms/Form/types.js +52 -1
  616. package/dist/forms/Form/types.js.map +1 -1
  617. package/dist/forms/NullifyField/index.js +15 -6
  618. package/dist/forms/NullifyField/index.js.map +1 -1
  619. package/dist/forms/RenderFields/RenderField.js +138 -46
  620. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  621. package/dist/forms/RenderFields/index.js +19 -7
  622. package/dist/forms/RenderFields/index.js.map +1 -1
  623. package/dist/forms/RowLabel/Context/index.js +7 -3
  624. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  625. package/dist/forms/RowLabel/index.js +19 -7
  626. package/dist/forms/RowLabel/index.js.map +1 -1
  627. package/dist/forms/Submit/index.js +13 -5
  628. package/dist/forms/Submit/index.js.map +1 -1
  629. package/dist/forms/WatchChildErrors/index.js +6 -1
  630. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  631. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +20 -0
  632. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  633. package/dist/forms/fieldSchemasToFormState/index.js +33 -1
  634. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  635. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +2 -2
  636. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  637. package/dist/forms/fieldSchemasToFormState/iterateFields.js +16 -0
  638. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  639. package/dist/forms/fieldSchemasToFormState/renderField.js +21 -9
  640. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  641. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +22 -1
  642. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  643. package/dist/forms/fieldSchemasToFormState/types.js +5 -1
  644. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  645. package/dist/forms/useField/index.js +1 -0
  646. package/dist/forms/useField/index.js.map +1 -1
  647. package/dist/forms/useField/types.js +19 -1
  648. package/dist/forms/useField/types.js.map +1 -1
  649. package/dist/forms/withCondition/index.js +13 -5
  650. package/dist/forms/withCondition/index.js.map +1 -1
  651. package/dist/graphics/Account/Default/index.js +25 -9
  652. package/dist/graphics/Account/Default/index.js.map +1 -1
  653. package/dist/graphics/Account/Gravatar/index.js +7 -3
  654. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  655. package/dist/graphics/Account/index.js +12 -4
  656. package/dist/graphics/Account/index.js.map +1 -1
  657. package/dist/graphics/DefaultBlockImage/index.js +67 -23
  658. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  659. package/dist/graphics/File/index.js +19 -7
  660. package/dist/graphics/File/index.js.map +1 -1
  661. package/dist/graphics/Icon/index.js +19 -7
  662. package/dist/graphics/Icon/index.js.map +1 -1
  663. package/dist/graphics/Logo/index.js +85 -29
  664. package/dist/graphics/Logo/index.js.map +1 -1
  665. package/dist/hooks/useControllableState.js +9 -1
  666. package/dist/hooks/useControllableState.js.map +1 -1
  667. package/dist/hooks/useDelayedRender.js +3 -1
  668. package/dist/hooks/useDelayedRender.js.map +1 -1
  669. package/dist/hooks/useHotkey.js +2 -2
  670. package/dist/hooks/useHotkey.js.map +1 -1
  671. package/dist/hooks/usePayloadAPI.js +3 -4
  672. package/dist/hooks/usePayloadAPI.js.map +1 -1
  673. package/dist/hooks/usePopupWindow.js +2 -2
  674. package/dist/hooks/usePopupWindow.js.map +1 -1
  675. package/dist/hooks/useQueue.js +15 -7
  676. package/dist/hooks/useQueue.js.map +1 -1
  677. package/dist/hooks/useResize.js +4 -3
  678. package/dist/hooks/useResize.js.map +1 -1
  679. package/dist/icons/Calendar/index.js +13 -5
  680. package/dist/icons/Calendar/index.js.map +1 -1
  681. package/dist/icons/Check/index.js +13 -5
  682. package/dist/icons/Check/index.js.map +1 -1
  683. package/dist/icons/Chevron/index.js +13 -5
  684. package/dist/icons/Chevron/index.js.map +1 -1
  685. package/dist/icons/CloseMenu/index.js +13 -5
  686. package/dist/icons/CloseMenu/index.js.map +1 -1
  687. package/dist/icons/CodeBlock/index.js +13 -5
  688. package/dist/icons/CodeBlock/index.js.map +1 -1
  689. package/dist/icons/Copy/index.js +13 -5
  690. package/dist/icons/Copy/index.js.map +1 -1
  691. package/dist/icons/Document/index.js +13 -5
  692. package/dist/icons/Document/index.js.map +1 -1
  693. package/dist/icons/Dots/index.js +22 -6
  694. package/dist/icons/Dots/index.js.map +1 -1
  695. package/dist/icons/DragHandle/index.js +43 -15
  696. package/dist/icons/DragHandle/index.js.map +1 -1
  697. package/dist/icons/Edit/index.js +13 -5
  698. package/dist/icons/Edit/index.js.map +1 -1
  699. package/dist/icons/ExternalLink/index.js +13 -5
  700. package/dist/icons/ExternalLink/index.js.map +1 -1
  701. package/dist/icons/Eye/index.js +36 -12
  702. package/dist/icons/Eye/index.js.map +1 -1
  703. package/dist/icons/Folder/index.js +13 -5
  704. package/dist/icons/Folder/index.js.map +1 -1
  705. package/dist/icons/Gear/index.js +19 -7
  706. package/dist/icons/Gear/index.js.map +1 -1
  707. package/dist/icons/GridView/index.js +31 -11
  708. package/dist/icons/GridView/index.js.map +1 -1
  709. package/dist/icons/Line/index.js +13 -5
  710. package/dist/icons/Line/index.js.map +1 -1
  711. package/dist/icons/Link/index.js +13 -5
  712. package/dist/icons/Link/index.js.map +1 -1
  713. package/dist/icons/ListView/index.js +13 -5
  714. package/dist/icons/ListView/index.js.map +1 -1
  715. package/dist/icons/Lock/index.js +19 -7
  716. package/dist/icons/Lock/index.js.map +1 -1
  717. package/dist/icons/LogOut/index.js +13 -5
  718. package/dist/icons/LogOut/index.js.map +1 -1
  719. package/dist/icons/Menu/index.js +13 -5
  720. package/dist/icons/Menu/index.js.map +1 -1
  721. package/dist/icons/MinimizeMaximize/index.js +18 -6
  722. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  723. package/dist/icons/More/index.js +25 -9
  724. package/dist/icons/More/index.js.map +1 -1
  725. package/dist/icons/MoveFolder/index.js +37 -13
  726. package/dist/icons/MoveFolder/index.js.map +1 -1
  727. package/dist/icons/People/index.js +13 -5
  728. package/dist/icons/People/index.js.map +1 -1
  729. package/dist/icons/Plus/index.js +13 -5
  730. package/dist/icons/Plus/index.js.map +1 -1
  731. package/dist/icons/Search/index.js +13 -5
  732. package/dist/icons/Search/index.js.map +1 -1
  733. package/dist/icons/Sort/index.js +25 -9
  734. package/dist/icons/Sort/index.js.map +1 -1
  735. package/dist/icons/Swap/index.js +13 -5
  736. package/dist/icons/Swap/index.js.map +1 -1
  737. package/dist/icons/ThreeDots/index.js +22 -6
  738. package/dist/icons/ThreeDots/index.js.map +1 -1
  739. package/dist/icons/Trash/index.js +13 -5
  740. package/dist/icons/Trash/index.js.map +1 -1
  741. package/dist/icons/X/index.js +13 -5
  742. package/dist/icons/X/index.js.map +1 -1
  743. package/dist/providers/Actions/index.js +7 -3
  744. package/dist/providers/Actions/index.js.map +1 -1
  745. package/dist/providers/Auth/index.js +42 -6
  746. package/dist/providers/Auth/index.js.map +1 -1
  747. package/dist/providers/ClickOutside/index.js +7 -3
  748. package/dist/providers/ClickOutside/index.js.map +1 -1
  749. package/dist/providers/ClientFunction/index.js +13 -5
  750. package/dist/providers/ClientFunction/index.js.map +1 -1
  751. package/dist/providers/Config/index.js +23 -6
  752. package/dist/providers/Config/index.js.map +1 -1
  753. package/dist/providers/DocumentEvents/index.js +7 -3
  754. package/dist/providers/DocumentEvents/index.js.map +1 -1
  755. package/dist/providers/DocumentInfo/index.js +31 -16
  756. package/dist/providers/DocumentInfo/index.js.map +1 -1
  757. package/dist/providers/DocumentInfo/types.js +25 -1
  758. package/dist/providers/DocumentInfo/types.js.map +1 -1
  759. package/dist/providers/DocumentTitle/index.js +7 -3
  760. package/dist/providers/DocumentTitle/index.js.map +1 -1
  761. package/dist/providers/EditDepth/index.js +7 -3
  762. package/dist/providers/EditDepth/index.js.map +1 -1
  763. package/dist/providers/EntityVisibility/index.js +7 -3
  764. package/dist/providers/EntityVisibility/index.js.map +1 -1
  765. package/dist/providers/Folders/index.js +51 -5
  766. package/dist/providers/Folders/index.js.map +1 -1
  767. package/dist/providers/ListQuery/index.js +13 -5
  768. package/dist/providers/ListQuery/index.js.map +1 -1
  769. package/dist/providers/ListQuery/types.js +5 -1
  770. package/dist/providers/ListQuery/types.js.map +1 -1
  771. package/dist/providers/LivePreview/context.js +11 -1
  772. package/dist/providers/LivePreview/context.js.map +1 -1
  773. package/dist/providers/LivePreview/index.js +20 -9
  774. package/dist/providers/LivePreview/index.js.map +1 -1
  775. package/dist/providers/Locale/index.js +13 -5
  776. package/dist/providers/Locale/index.js.map +1 -1
  777. package/dist/providers/Operation/index.js +7 -3
  778. package/dist/providers/Operation/index.js.map +1 -1
  779. package/dist/providers/Params/index.js +7 -3
  780. package/dist/providers/Params/index.js.map +1 -1
  781. package/dist/providers/Preferences/index.js +14 -5
  782. package/dist/providers/Preferences/index.js.map +1 -1
  783. package/dist/providers/Root/index.js +154 -50
  784. package/dist/providers/Root/index.js.map +1 -1
  785. package/dist/providers/RouteCache/index.js +7 -3
  786. package/dist/providers/RouteCache/index.js.map +1 -1
  787. package/dist/providers/RouteTransition/ProgressBar/index.js +13 -5
  788. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  789. package/dist/providers/RouteTransition/index.js +16 -12
  790. package/dist/providers/RouteTransition/index.js.map +1 -1
  791. package/dist/providers/SearchParams/index.js +7 -3
  792. package/dist/providers/SearchParams/index.js.map +1 -1
  793. package/dist/providers/Selection/index.js +14 -5
  794. package/dist/providers/Selection/index.js.map +1 -1
  795. package/dist/providers/ServerFunctions/index.js +32 -25
  796. package/dist/providers/ServerFunctions/index.js.map +1 -1
  797. package/dist/providers/TableColumns/RenderDefaultCell/index.js +13 -5
  798. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  799. package/dist/providers/TableColumns/buildColumnState/index.js +17 -12
  800. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  801. package/dist/providers/TableColumns/buildColumnState/renderCell.js +17 -8
  802. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  803. package/dist/providers/TableColumns/index.js +7 -3
  804. package/dist/providers/TableColumns/index.js.map +1 -1
  805. package/dist/providers/TableColumns/types.js +17 -1
  806. package/dist/providers/TableColumns/types.js.map +1 -1
  807. package/dist/providers/Theme/index.js +7 -3
  808. package/dist/providers/Theme/index.js.map +1 -1
  809. package/dist/providers/ToastContainer/icons/Error.js +19 -7
  810. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  811. package/dist/providers/ToastContainer/icons/Info.js +19 -7
  812. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  813. package/dist/providers/ToastContainer/icons/Success.js +19 -7
  814. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  815. package/dist/providers/ToastContainer/icons/Warning.js +19 -7
  816. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  817. package/dist/providers/ToastContainer/index.js +27 -7
  818. package/dist/providers/ToastContainer/index.js.map +1 -1
  819. package/dist/providers/Translation/index.js +7 -3
  820. package/dist/providers/Translation/index.js.map +1 -1
  821. package/dist/providers/UploadControls/index.js +7 -3
  822. package/dist/providers/UploadControls/index.js.map +1 -1
  823. package/dist/providers/UploadEdits/index.js +7 -3
  824. package/dist/providers/UploadEdits/index.js.map +1 -1
  825. package/dist/providers/UploadHandlers/index.js +7 -3
  826. package/dist/providers/UploadHandlers/index.js.map +1 -1
  827. package/dist/utilities/abortAndIgnore.js +4 -6
  828. package/dist/utilities/abortAndIgnore.js.map +1 -1
  829. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +2 -2
  830. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  831. package/dist/utilities/combineFieldLabel.js +37 -13
  832. package/dist/utilities/combineFieldLabel.js.map +1 -1
  833. package/dist/utilities/copyDataFromLocale.js +6 -2
  834. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  835. package/dist/utilities/getDisplayedFieldValue.js +8 -8
  836. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  837. package/dist/utilities/getFolderResultsComponentAndData.js +31 -14
  838. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  839. package/dist/utilities/handleFormStateLocking.js +2 -2
  840. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  841. package/dist/utilities/hasSavePermission.js +5 -1
  842. package/dist/utilities/hasSavePermission.js.map +1 -1
  843. package/dist/utilities/isURLAllowed.js +6 -6
  844. package/dist/utilities/isURLAllowed.js.map +1 -1
  845. package/dist/utilities/renderTable.js +84 -27
  846. package/dist/utilities/renderTable.js.map +1 -1
  847. package/dist/utilities/schedulePublishHandler.js +3 -1
  848. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  849. package/dist/utilities/upsertPreferences.js +1 -0
  850. package/dist/utilities/upsertPreferences.js.map +1 -1
  851. package/dist/views/BrowseByFolder/index.js +168 -56
  852. package/dist/views/BrowseByFolder/index.js.map +1 -1
  853. package/dist/views/CollectionFolder/ListSelection/index.js +67 -23
  854. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  855. package/dist/views/CollectionFolder/index.js +147 -47
  856. package/dist/views/CollectionFolder/index.js.map +1 -1
  857. package/dist/views/Edit/Auth/APIKey.js +67 -23
  858. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  859. package/dist/views/Edit/Auth/index.js +91 -31
  860. package/dist/views/Edit/Auth/index.js.map +1 -1
  861. package/dist/views/Edit/index.js +124 -48
  862. package/dist/views/Edit/index.js.map +1 -1
  863. package/dist/views/List/GroupByHeader/index.js +19 -7
  864. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  865. package/dist/views/List/ListHeader/index.js +68 -23
  866. package/dist/views/List/ListHeader/index.js.map +1 -1
  867. package/dist/views/List/ListSelection/index.js +49 -17
  868. package/dist/views/List/ListSelection/index.js.map +1 -1
  869. package/dist/views/List/index.js +162 -54
  870. package/dist/views/List/index.js.map +1 -1
  871. package/package.json +7 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { Option } from '../../../ReactSelect/types.js'\nimport type { RelationshipFilterProps as Props, ValueWithRelation } from './types.js'\n\nimport { useDebounce } from '../../../../hooks/useDebounce.js'\nimport { useEffectEvent } from '../../../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useLocale } from '../../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport optionsReducer from './optionsReducer.js'\nimport './index.scss'\n\nconst baseClass = 'condition-value-relationship'\n\nconst maxResultsPerRequest = 10\n\nexport const RelationshipFilter: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { admin = {}, hasMany, relationTo },\n filterOptions,\n onChange,\n value,\n } = props\n\n const placeholder = 'placeholder' in admin ? admin?.placeholder : undefined\n const isSortable = admin?.isSortable\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [search, setSearch] = useState('')\n const debouncedSearch = useDebounce(search, 300)\n const [errorLoading, setErrorLoading] = useState('')\n const [hasLoadedFirstOptions, setHasLoadedFirstOptions] = useState(false)\n const { i18n, t } = useTranslation()\n const locale = useLocale()\n\n const relationSlugs = hasMultipleRelations ? relationTo : [relationTo]\n\n const loadedRelationships = React.useRef<\n Map<\n string,\n {\n hasLoadedAll: boolean\n nextPage: number\n }\n >\n >(\n new Map(\n relationSlugs.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n ),\n )\n\n const addOptions = useCallback(\n (data, relation) => {\n const collection = getEntityConfig({ collectionSlug: relation })\n dispatchOptions({ type: 'ADD', collection, data, hasMultipleRelations, i18n, relation })\n },\n [hasMultipleRelations, i18n, getEntityConfig],\n )\n\n const loadOptions = useEffectEvent(\n async ({\n abortController,\n relationSlug,\n }: {\n abortController: AbortController\n relationSlug: string\n }) => {\n const loadedRelationship = loadedRelationships.current.get(relationSlug)\n\n if (relationSlug && !loadedRelationship.hasLoadedAll) {\n const collection = getEntityConfig({\n collectionSlug: relationSlug,\n })\n\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n\n const where: Where = {\n and: [],\n }\n\n const query = {\n depth: 0,\n limit: maxResultsPerRequest,\n locale: locale.code,\n page: loadedRelationship.nextPage,\n select: {\n [fieldToSearch]: true,\n },\n where,\n }\n\n if (filterOptions && filterOptions?.[relationSlug]) {\n query.where.and.push(filterOptions[relationSlug])\n }\n\n if (debouncedSearch) {\n query.where.and.push({\n [fieldToSearch]: {\n like: debouncedSearch,\n },\n })\n }\n\n try {\n const response = await fetch(\n `${serverURL}${api}/${relationSlug}${qs.stringify(query, { addQueryPrefix: true })}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n signal: abortController.signal,\n },\n )\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n if (data.docs.length > 0) {\n addOptions(data, relationSlug)\n\n if (data.nextPage) {\n loadedRelationships.current.set(relationSlug, {\n hasLoadedAll: false,\n nextPage: data.nextPage,\n })\n } else {\n loadedRelationships.current.set(relationSlug, {\n hasLoadedAll: true,\n nextPage: null,\n })\n }\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n } catch (e) {\n if (!abortController.signal.aborted) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n }\n\n setHasLoadedFirstOptions(true)\n },\n )\n\n const handleScrollToBottom = React.useCallback(() => {\n const relationshipToLoad = loadedRelationships.current.entries().next().value\n\n if (relationshipToLoad[0] && !relationshipToLoad[1].hasLoadedAll) {\n const abortController = new AbortController()\n\n void loadOptions({\n abortController,\n relationSlug: relationshipToLoad[0],\n })\n }\n }, [])\n\n const findOptionsByValue = useCallback((): Option | Option[] => {\n if (value) {\n if (hasMany) {\n if (Array.isArray(value)) {\n return value.map((val) => {\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n options.forEach((opt) => {\n if (opt.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == val.value) {\n matchedOption = subOpt\n return true\n }\n\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == val)\n })\n }\n\n return undefined\n }\n\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n const valueWithRelation = value as ValueWithRelation\n\n options.forEach((opt) => {\n if (opt?.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == valueWithRelation.value) {\n matchedOption = subOpt\n return true\n }\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == value)\n }\n\n return undefined\n }, [hasMany, hasMultipleRelations, value, options])\n\n const handleInputChange = useCallback(\n (input: string) => {\n if (input !== search) {\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n\n const relationSlugs = Array.isArray(relationTo) ? relationTo : [relationTo]\n\n loadedRelationships.current = new Map(\n relationSlugs.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n )\n\n setSearch(input)\n }\n },\n [i18n, relationTo, search],\n )\n\n const addOptionByID = useCallback(\n async (id, relation) => {\n if (!errorLoading && id !== 'null' && id && relation) {\n const response = await fetch(`${serverURL}${api}/${relation}/${id}?depth=0`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data = await response.json()\n addOptions({ docs: [data] }, relation)\n } else {\n // eslint-disable-next-line no-console\n console.error(t('error:loadingDocument', { id }))\n }\n }\n },\n [i18n, addOptions, api, errorLoading, serverURL, t],\n )\n\n /**\n * When `relationTo` changes externally, reset the options and reload them from scratch\n * The `loadOptions` dependency is a useEffectEvent which has no dependencies of its own\n * This means we can safely depend on it without it triggering this effect to run\n * This is useful because this effect should _only_ run when `relationTo` changes\n */\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n\n loadedRelationships.current = new Map(\n relations.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n )\n\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n setHasLoadedFirstOptions(false)\n\n const abortControllers: AbortController[] = []\n\n relations.forEach((relation) => {\n const abortController = new AbortController()\n\n void loadOptions({\n abortController,\n relationSlug: relation,\n })\n\n abortControllers.push(abortController)\n })\n\n return () => {\n abortControllers.forEach((controller) => {\n if (controller.signal) {\n try {\n controller.abort()\n } catch (_err) {\n // swallow error\n }\n }\n })\n }\n }, [i18n, relationTo, debouncedSearch, filterOptions])\n\n /**\n * Load any other options that might exist in the value that were not loaded already\n */\n useEffect(() => {\n if (value && hasLoadedFirstOptions) {\n if (hasMany) {\n const matchedOptions = findOptionsByValue()\n\n ;((matchedOptions as Option[]) || []).forEach((option, i) => {\n if (!option) {\n if (hasMultipleRelations) {\n void addOptionByID(value[i].value, value[i].relationTo)\n } else {\n void addOptionByID(value[i], relationTo)\n }\n }\n })\n } else {\n const matchedOption = findOptionsByValue()\n\n if (!matchedOption) {\n if (hasMultipleRelations) {\n const valueWithRelation = value as ValueWithRelation\n void addOptionByID(valueWithRelation.value, valueWithRelation.relationTo)\n } else {\n void addOptionByID(value, relationTo)\n }\n }\n }\n }\n }, [\n addOptionByID,\n findOptionsByValue,\n hasMany,\n hasMultipleRelations,\n relationTo,\n value,\n hasLoadedFirstOptions,\n ])\n\n const classes = ['field-type', baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')\n\n const valueToRender = (findOptionsByValue() || value) as Option\n\n return (\n <div className={classes}>\n {errorLoading ? (\n <div className={`${baseClass}__error-loading`}>{errorLoading}</div>\n ) : (\n <ReactSelect\n disabled={disabled}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={(selected) => {\n if (!selected) {\n onChange(null)\n return\n }\n\n if (hasMany && Array.isArray(selected)) {\n onChange(\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 onChange({\n relationTo: selected?.relationTo,\n value: selected?.value,\n })\n } else if (!Array.isArray(selected)) {\n onChange(selected?.value)\n }\n }}\n onInputChange={handleInputChange}\n onMenuScrollToBottom={handleScrollToBottom}\n options={options}\n placeholder={placeholder}\n value={valueToRender}\n />\n )}\n </div>\n )\n}\n"],"names":["qs","React","useCallback","useEffect","useReducer","useState","useDebounce","useEffectEvent","useConfig","useLocale","useTranslation","ReactSelect","optionsReducer","baseClass","maxResultsPerRequest","RelationshipFilter","props","disabled","field","admin","hasMany","relationTo","filterOptions","onChange","value","placeholder","undefined","isSortable","config","routes","api","serverURL","getEntityConfig","hasMultipleRelations","Array","isArray","options","dispatchOptions","search","setSearch","debouncedSearch","errorLoading","setErrorLoading","hasLoadedFirstOptions","setHasLoadedFirstOptions","i18n","t","locale","relationSlugs","loadedRelationships","useRef","Map","map","relation","hasLoadedAll","nextPage","addOptions","data","collection","collectionSlug","type","loadOptions","abortController","relationSlug","loadedRelationship","current","get","fieldToSearch","useAsTitle","where","and","query","depth","limit","code","page","select","push","like","response","fetch","stringify","addQueryPrefix","credentials","headers","language","signal","ok","json","docs","length","set","e","aborted","console","error","handleScrollToBottom","relationshipToLoad","entries","next","AbortController","findOptionsByValue","val","matchedOption","forEach","opt","some","subOpt","find","valueWithRelation","handleInputChange","input","required","addOptionByID","id","relations","abortControllers","controller","abort","_err","matchedOptions","option","i","classes","filter","Boolean","join","valueToRender","div","className","isMulti","selected","onInputChange","onMenuScrollToBottom"],"mappings":"AAAA;;AAGA,YAAYA,QAAQ,SAAQ;AAC5B,OAAOC,SAASC,WAAW,EAAEC,SAAS,EAAEC,UAAU,EAAEC,QAAQ,QAAQ,QAAO;AAK3E,SAASC,WAAW,QAAQ,mCAAkC;AAC9D,SAASC,cAAc,QAAQ,sCAAqC;AACpE,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,OAAOC,oBAAoB,sBAAqB;AAChD,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,MAAMC,uBAAuB;AAE7B,OAAO,MAAMC,qBAAsC,CAACC;IAClD,MAAM,EACJC,QAAQ,EACRC,OAAO,EAAEC,QAAQ,CAAC,CAAC,EAAEC,OAAO,EAAEC,UAAU,EAAE,EAC1CC,aAAa,EACbC,QAAQ,EACRC,KAAK,EACN,GAAGR;IAEJ,MAAMS,cAAc,iBAAiBN,QAAQA,OAAOM,cAAcC;IAClE,MAAMC,aAAaR,OAAOQ;IAE1B,MAAM,EACJC,QAAQ,EACNC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,EACDC,eAAe,EAChB,GAAGxB;IAEJ,MAAMyB,uBAAuBC,MAAMC,OAAO,CAACd;IAC3C,MAAM,CAACe,SAASC,gBAAgB,GAAGjC,WAAWQ,gBAAgB,EAAE;IAChE,MAAM,CAAC0B,QAAQC,UAAU,GAAGlC,SAAS;IACrC,MAAMmC,kBAAkBlC,YAAYgC,QAAQ;IAC5C,MAAM,CAACG,cAAcC,gBAAgB,GAAGrC,SAAS;IACjD,MAAM,CAACsC,uBAAuBC,yBAAyB,GAAGvC,SAAS;IACnE,MAAM,EAAEwC,IAAI,EAAEC,CAAC,EAAE,GAAGpC;IACpB,MAAMqC,SAAStC;IAEf,MAAMuC,gBAAgBf,uBAAuBZ,aAAa;QAACA;KAAW;IAEtE,MAAM4B,sBAAsBhD,MAAMiD,MAAM,CAStC,IAAIC,IACFH,cAAcI,GAAG,CAAC,CAACC,WAAa;YAC9BA;YACA;gBACEC,cAAc;gBACdC,UAAU;YACZ;SACD;IAIL,MAAMC,aAAatD,YACjB,CAACuD,MAAMJ;QACL,MAAMK,aAAa1B,gBAAgB;YAAE2B,gBAAgBN;QAAS;QAC9DhB,gBAAgB;YAAEuB,MAAM;YAAOF;YAAYD;YAAMxB;YAAsBY;YAAMQ;QAAS;IACxF,GACA;QAACpB;QAAsBY;QAAMb;KAAgB;IAG/C,MAAM6B,cAActD,eAClB,OAAO,EACLuD,eAAe,EACfC,YAAY,EAIb;QACC,MAAMC,qBAAqBf,oBAAoBgB,OAAO,CAACC,GAAG,CAACH;QAE3D,IAAIA,gBAAgB,CAACC,mBAAmBV,YAAY,EAAE;YACpD,MAAMI,aAAa1B,gBAAgB;gBACjC2B,gBAAgBI;YAClB;YAEA,MAAMI,gBAAgBT,YAAYvC,OAAOiD,cAAc;YAEvD,MAAMC,QAAe;gBACnBC,KAAK,EAAE;YACT;YAEA,MAAMC,QAAQ;gBACZC,OAAO;gBACPC,OAAO3D;gBACPiC,QAAQA,OAAO2B,IAAI;gBACnBC,MAAMX,mBAAmBT,QAAQ;gBACjCqB,QAAQ;oBACN,CAACT,cAAc,EAAE;gBACnB;gBACAE;YACF;YAEA,IAAI/C,iBAAiBA,eAAe,CAACyC,aAAa,EAAE;gBAClDQ,MAAMF,KAAK,CAACC,GAAG,CAACO,IAAI,CAACvD,aAAa,CAACyC,aAAa;YAClD;YAEA,IAAIvB,iBAAiB;gBACnB+B,MAAMF,KAAK,CAACC,GAAG,CAACO,IAAI,CAAC;oBACnB,CAACV,cAAc,EAAE;wBACfW,MAAMtC;oBACR;gBACF;YACF;YAEA,IAAI;gBACF,MAAMuC,WAAW,MAAMC,MACrB,GAAGjD,YAAYD,IAAI,CAAC,EAAEiC,eAAe/D,GAAGiF,SAAS,CAACV,OAAO;oBAAEW,gBAAgB;gBAAK,IAAI,EACpF;oBACEC,aAAa;oBACbC,SAAS;wBACP,mBAAmBvC,KAAKwC,QAAQ;oBAClC;oBACAC,QAAQxB,gBAAgBwB,MAAM;gBAChC;gBAGF,IAAIP,SAASQ,EAAE,EAAE;oBACf,MAAM9B,OAAsB,MAAMsB,SAASS,IAAI;oBAC/C,IAAI/B,KAAKgC,IAAI,CAACC,MAAM,GAAG,GAAG;wBACxBlC,WAAWC,MAAMM;wBAEjB,IAAIN,KAAKF,QAAQ,EAAE;4BACjBN,oBAAoBgB,OAAO,CAAC0B,GAAG,CAAC5B,cAAc;gCAC5CT,cAAc;gCACdC,UAAUE,KAAKF,QAAQ;4BACzB;wBACF,OAAO;4BACLN,oBAAoBgB,OAAO,CAAC0B,GAAG,CAAC5B,cAAc;gCAC5CT,cAAc;gCACdC,UAAU;4BACZ;wBACF;oBACF;gBACF,OAAO;oBACLb,gBAAgBI,EAAE;gBACpB;YACF,EAAE,OAAO8C,GAAG;gBACV,IAAI,CAAC9B,gBAAgBwB,MAAM,CAACO,OAAO,EAAE;oBACnCC,QAAQC,KAAK,CAACH,GAAG,iCAAiC;;gBACpD;YACF;QACF;QAEAhD,yBAAyB;IAC3B;IAGF,MAAMoD,uBAAuB/F,MAAMC,WAAW,CAAC;QAC7C,MAAM+F,qBAAqBhD,oBAAoBgB,OAAO,CAACiC,OAAO,GAAGC,IAAI,GAAG3E,KAAK;QAE7E,IAAIyE,kBAAkB,CAAC,EAAE,IAAI,CAACA,kBAAkB,CAAC,EAAE,CAAC3C,YAAY,EAAE;YAChE,MAAMQ,kBAAkB,IAAIsC;YAE5B,KAAKvC,YAAY;gBACfC;gBACAC,cAAckC,kBAAkB,CAAC,EAAE;YACrC;QACF;IACF,GAAG,EAAE;IAEL,MAAMI,qBAAqBnG,YAAY;QACrC,IAAIsB,OAAO;YACT,IAAIJ,SAAS;gBACX,IAAIc,MAAMC,OAAO,CAACX,QAAQ;oBACxB,OAAOA,MAAM4B,GAAG,CAAC,CAACkD;wBAChB,IAAIrE,sBAAsB;4BACxB,IAAIsE;4BAEJnE,QAAQoE,OAAO,CAAC,CAACC;gCACf,IAAIA,IAAIrE,OAAO,EAAE;oCACfqE,IAAIrE,OAAO,CAACsE,IAAI,CAAC,CAACC;wCAChB,IAAIA,QAAQnF,SAAS8E,IAAI9E,KAAK,EAAE;4CAC9B+E,gBAAgBI;4CAChB,OAAO;wCACT;wCAEA,OAAO;oCACT;gCACF;4BACF;4BAEA,OAAOJ;wBACT;wBAEA,OAAOnE,QAAQwE,IAAI,CAAC,CAACH,MAAQA,IAAIjF,KAAK,IAAI8E;oBAC5C;gBACF;gBAEA,OAAO5E;YACT;YAEA,IAAIO,sBAAsB;gBACxB,IAAIsE;gBAEJ,MAAMM,oBAAoBrF;gBAE1BY,QAAQoE,OAAO,CAAC,CAACC;oBACf,IAAIA,KAAKrE,SAAS;wBAChBqE,IAAIrE,OAAO,CAACsE,IAAI,CAAC,CAACC;4BAChB,IAAIA,QAAQnF,SAASqF,kBAAkBrF,KAAK,EAAE;gCAC5C+E,gBAAgBI;gCAChB,OAAO;4BACT;4BACA,OAAO;wBACT;oBACF;gBACF;gBAEA,OAAOJ;YACT;YAEA,OAAOnE,QAAQwE,IAAI,CAAC,CAACH,MAAQA,IAAIjF,KAAK,IAAIA;QAC5C;QAEA,OAAOE;IACT,GAAG;QAACN;QAASa;QAAsBT;QAAOY;KAAQ;IAElD,MAAM0E,oBAAoB5G,YACxB,CAAC6G;QACC,IAAIA,UAAUzE,QAAQ;YACpBD,gBAAgB;gBAAEuB,MAAM;gBAASf;gBAAMmE,UAAU;YAAM;YAEvD,MAAMhE,gBAAgBd,MAAMC,OAAO,CAACd,cAAcA,aAAa;gBAACA;aAAW;YAE3E4B,oBAAoBgB,OAAO,GAAG,IAAId,IAChCH,cAAcI,GAAG,CAAC,CAACC,WAAa;oBAC9BA;oBACA;wBACEC,cAAc;wBACdC,UAAU;oBACZ;iBACD;YAGHhB,UAAUwE;QACZ;IACF,GACA;QAAClE;QAAMxB;QAAYiB;KAAO;IAG5B,MAAM2E,gBAAgB/G,YACpB,OAAOgH,IAAI7D;QACT,IAAI,CAACZ,gBAAgByE,OAAO,UAAUA,MAAM7D,UAAU;YACpD,MAAM0B,WAAW,MAAMC,MAAM,GAAGjD,YAAYD,IAAI,CAAC,EAAEuB,SAAS,CAAC,EAAE6D,GAAG,QAAQ,CAAC,EAAE;gBAC3E/B,aAAa;gBACbC,SAAS;oBACP,mBAAmBvC,KAAKwC,QAAQ;gBAClC;YACF;YAEA,IAAIN,SAASQ,EAAE,EAAE;gBACf,MAAM9B,OAAO,MAAMsB,SAASS,IAAI;gBAChChC,WAAW;oBAAEiC,MAAM;wBAAChC;qBAAK;gBAAC,GAAGJ;YAC/B,OAAO;gBACL,sCAAsC;gBACtCyC,QAAQC,KAAK,CAACjD,EAAE,yBAAyB;oBAAEoE;gBAAG;YAChD;QACF;IACF,GACA;QAACrE;QAAMW;QAAY1B;QAAKW;QAAcV;QAAWe;KAAE;IAGrD;;;;;GAKC,GACD3C,UAAU;QACR,MAAMgH,YAAYjF,MAAMC,OAAO,CAACd,cAAcA,aAAa;YAACA;SAAW;QAEvE4B,oBAAoBgB,OAAO,GAAG,IAAId,IAChCgE,UAAU/D,GAAG,CAAC,CAACC,WAAa;gBAC1BA;gBACA;oBACEC,cAAc;oBACdC,UAAU;gBACZ;aACD;QAGHlB,gBAAgB;YAAEuB,MAAM;YAASf;YAAMmE,UAAU;QAAM;QACvDpE,yBAAyB;QAEzB,MAAMwE,mBAAsC,EAAE;QAE9CD,UAAUX,OAAO,CAAC,CAACnD;YACjB,MAAMS,kBAAkB,IAAIsC;YAE5B,KAAKvC,YAAY;gBACfC;gBACAC,cAAcV;YAChB;YAEA+D,iBAAiBvC,IAAI,CAACf;QACxB;QAEA,OAAO;YACLsD,iBAAiBZ,OAAO,CAAC,CAACa;gBACxB,IAAIA,WAAW/B,MAAM,EAAE;oBACrB,IAAI;wBACF+B,WAAWC,KAAK;oBAClB,EAAE,OAAOC,MAAM;oBACb,gBAAgB;oBAClB;gBACF;YACF;QACF;IACF,GAAG;QAAC1E;QAAMxB;QAAYmB;QAAiBlB;KAAc;IAErD;;GAEC,GACDnB,UAAU;QACR,IAAIqB,SAASmB,uBAAuB;YAClC,IAAIvB,SAAS;gBACX,MAAMoG,iBAAiBnB;gBAErB,CAAA,AAACmB,kBAA+B,EAAE,AAAD,EAAGhB,OAAO,CAAC,CAACiB,QAAQC;oBACrD,IAAI,CAACD,QAAQ;wBACX,IAAIxF,sBAAsB;4BACxB,KAAKgF,cAAczF,KAAK,CAACkG,EAAE,CAAClG,KAAK,EAAEA,KAAK,CAACkG,EAAE,CAACrG,UAAU;wBACxD,OAAO;4BACL,KAAK4F,cAAczF,KAAK,CAACkG,EAAE,EAAErG;wBAC/B;oBACF;gBACF;YACF,OAAO;gBACL,MAAMkF,gBAAgBF;gBAEtB,IAAI,CAACE,eAAe;oBAClB,IAAItE,sBAAsB;wBACxB,MAAM4E,oBAAoBrF;wBAC1B,KAAKyF,cAAcJ,kBAAkBrF,KAAK,EAAEqF,kBAAkBxF,UAAU;oBAC1E,OAAO;wBACL,KAAK4F,cAAczF,OAAOH;oBAC5B;gBACF;YACF;QACF;IACF,GAAG;QACD4F;QACAZ;QACAjF;QACAa;QACAZ;QACAG;QACAmB;KACD;IAED,MAAMgF,UAAU;QAAC;QAAc9G;QAAW4B,gBAAgB;KAAgB,CACvEmF,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,MAAMC,gBAAiB1B,wBAAwB7E;IAE/C,qBACE,KAACwG;QAAIC,WAAWN;kBACblF,6BACC,KAACuF;YAAIC,WAAW,GAAGpH,UAAU,eAAe,CAAC;sBAAG4B;2BAEhD,KAAC9B;YACCM,UAAUA;YACViH,SAAS9G;YACTO,YAAYA;YACZJ,UAAU,CAAC4G;gBACT,IAAI,CAACA,UAAU;oBACb5G,SAAS;oBACT;gBACF;gBAEA,IAAIH,WAAWc,MAAMC,OAAO,CAACgG,WAAW;oBACtC5G,SACE4G,WACIA,SAAS/E,GAAG,CAAC,CAACqE;wBACZ,IAAIxF,sBAAsB;4BACxB,OAAO;gCACLZ,YAAYoG,QAAQpG;gCACpBG,OAAOiG,QAAQjG;4BACjB;wBACF;wBAEA,OAAOiG,QAAQjG;oBACjB,KACA;gBAER,OAAO,IAAIS,wBAAwB,CAACC,MAAMC,OAAO,CAACgG,WAAW;oBAC3D5G,SAAS;wBACPF,YAAY8G,UAAU9G;wBACtBG,OAAO2G,UAAU3G;oBACnB;gBACF,OAAO,IAAI,CAACU,MAAMC,OAAO,CAACgG,WAAW;oBACnC5G,SAAS4G,UAAU3G;gBACrB;YACF;YACA4G,eAAetB;YACfuB,sBAAsBrC;YACtB5D,SAASA;YACTX,aAAaA;YACbD,OAAOuG;;;AAKjB,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useReducer, useState } from 'react'\n\nimport type { Option } from '../../../ReactSelect/types.js'\nimport type { RelationshipFilterProps as Props, ValueWithRelation } from './types.js'\n\nimport { useDebounce } from '../../../../hooks/useDebounce.js'\nimport { useEffectEvent } from '../../../../hooks/useEffectEvent.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useLocale } from '../../../../providers/Locale/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport optionsReducer from './optionsReducer.js'\nimport './index.scss'\n\nconst baseClass = 'condition-value-relationship'\n\nconst maxResultsPerRequest = 10\n\nexport const RelationshipFilter: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { admin = {}, hasMany, relationTo },\n filterOptions,\n onChange,\n value,\n } = props\n\n const placeholder = 'placeholder' in admin ? admin?.placeholder : undefined\n const isSortable = admin?.isSortable\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const hasMultipleRelations = Array.isArray(relationTo)\n const [options, dispatchOptions] = useReducer(optionsReducer, [])\n const [search, setSearch] = useState('')\n const debouncedSearch = useDebounce(search, 300)\n const [errorLoading, setErrorLoading] = useState('')\n const [hasLoadedFirstOptions, setHasLoadedFirstOptions] = useState(false)\n const { i18n, t } = useTranslation()\n const locale = useLocale()\n\n const relationSlugs = hasMultipleRelations ? relationTo : [relationTo]\n\n const loadedRelationships = React.useRef<\n Map<\n string,\n {\n hasLoadedAll: boolean\n nextPage: number\n }\n >\n >(\n new Map(\n relationSlugs.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n ),\n )\n\n const addOptions = useCallback(\n (data, relation) => {\n const collection = getEntityConfig({ collectionSlug: relation })\n dispatchOptions({ type: 'ADD', collection, data, hasMultipleRelations, i18n, relation })\n },\n [hasMultipleRelations, i18n, getEntityConfig],\n )\n\n const loadOptions = useEffectEvent(\n async ({\n abortController,\n relationSlug,\n }: {\n abortController: AbortController\n relationSlug: string\n }) => {\n const loadedRelationship = loadedRelationships.current.get(relationSlug)\n\n if (relationSlug && !loadedRelationship.hasLoadedAll) {\n const collection = getEntityConfig({\n collectionSlug: relationSlug,\n })\n\n const fieldToSearch = collection?.admin?.useAsTitle || 'id'\n\n const where: Where = {\n and: [],\n }\n\n const query = {\n depth: 0,\n limit: maxResultsPerRequest,\n locale: locale.code,\n page: loadedRelationship.nextPage,\n select: {\n [fieldToSearch]: true,\n },\n where,\n }\n\n if (filterOptions && filterOptions?.[relationSlug]) {\n query.where.and.push(filterOptions[relationSlug])\n }\n\n if (debouncedSearch) {\n query.where.and.push({\n [fieldToSearch]: {\n like: debouncedSearch,\n },\n })\n }\n\n try {\n const response = await fetch(\n `${serverURL}${api}/${relationSlug}${qs.stringify(query, { addQueryPrefix: true })}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n signal: abortController.signal,\n },\n )\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n if (data.docs.length > 0) {\n addOptions(data, relationSlug)\n\n if (data.nextPage) {\n loadedRelationships.current.set(relationSlug, {\n hasLoadedAll: false,\n nextPage: data.nextPage,\n })\n } else {\n loadedRelationships.current.set(relationSlug, {\n hasLoadedAll: true,\n nextPage: null,\n })\n }\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n } catch (e) {\n if (!abortController.signal.aborted) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n }\n\n setHasLoadedFirstOptions(true)\n },\n )\n\n const handleScrollToBottom = React.useCallback(() => {\n const relationshipToLoad = loadedRelationships.current.entries().next().value\n\n if (relationshipToLoad[0] && !relationshipToLoad[1].hasLoadedAll) {\n const abortController = new AbortController()\n\n void loadOptions({\n abortController,\n relationSlug: relationshipToLoad[0],\n })\n }\n }, [])\n\n const findOptionsByValue = useCallback((): Option | Option[] => {\n if (value) {\n if (hasMany) {\n if (Array.isArray(value)) {\n return value.map((val) => {\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n options.forEach((opt) => {\n if (opt.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == val.value) {\n matchedOption = subOpt\n return true\n }\n\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == val)\n })\n }\n\n return undefined\n }\n\n if (hasMultipleRelations) {\n let matchedOption: Option\n\n const valueWithRelation = value as ValueWithRelation\n\n options.forEach((opt) => {\n if (opt?.options) {\n opt.options.some((subOpt) => {\n if (subOpt?.value == valueWithRelation.value) {\n matchedOption = subOpt\n return true\n }\n return false\n })\n }\n })\n\n return matchedOption\n }\n\n return options.find((opt) => opt.value == value)\n }\n\n return undefined\n }, [hasMany, hasMultipleRelations, value, options])\n\n const handleInputChange = useCallback(\n (input: string) => {\n if (input !== search) {\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n\n const relationSlugs = Array.isArray(relationTo) ? relationTo : [relationTo]\n\n loadedRelationships.current = new Map(\n relationSlugs.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n )\n\n setSearch(input)\n }\n },\n [i18n, relationTo, search],\n )\n\n const addOptionByID = useCallback(\n async (id, relation) => {\n if (!errorLoading && id !== 'null' && id && relation) {\n const response = await fetch(`${serverURL}${api}/${relation}/${id}?depth=0`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data = await response.json()\n addOptions({ docs: [data] }, relation)\n } else {\n // eslint-disable-next-line no-console\n console.error(t('error:loadingDocument', { id }))\n }\n }\n },\n [i18n, addOptions, api, errorLoading, serverURL, t],\n )\n\n /**\n * When `relationTo` changes externally, reset the options and reload them from scratch\n * The `loadOptions` dependency is a useEffectEvent which has no dependencies of its own\n * This means we can safely depend on it without it triggering this effect to run\n * This is useful because this effect should _only_ run when `relationTo` changes\n */\n useEffect(() => {\n const relations = Array.isArray(relationTo) ? relationTo : [relationTo]\n\n loadedRelationships.current = new Map(\n relations.map((relation) => [\n relation,\n {\n hasLoadedAll: false,\n nextPage: 1,\n },\n ]),\n )\n\n dispatchOptions({ type: 'CLEAR', i18n, required: false })\n setHasLoadedFirstOptions(false)\n\n const abortControllers: AbortController[] = []\n\n relations.forEach((relation) => {\n const abortController = new AbortController()\n\n void loadOptions({\n abortController,\n relationSlug: relation,\n })\n\n abortControllers.push(abortController)\n })\n\n return () => {\n abortControllers.forEach((controller) => {\n if (controller.signal) {\n try {\n controller.abort()\n } catch (_err) {\n // swallow error\n }\n }\n })\n }\n }, [i18n, relationTo, debouncedSearch, filterOptions])\n\n /**\n * Load any other options that might exist in the value that were not loaded already\n */\n useEffect(() => {\n if (value && hasLoadedFirstOptions) {\n if (hasMany) {\n const matchedOptions = findOptionsByValue()\n\n ;((matchedOptions as Option[]) || []).forEach((option, i) => {\n if (!option) {\n if (hasMultipleRelations) {\n void addOptionByID(value[i].value, value[i].relationTo)\n } else {\n void addOptionByID(value[i], relationTo)\n }\n }\n })\n } else {\n const matchedOption = findOptionsByValue()\n\n if (!matchedOption) {\n if (hasMultipleRelations) {\n const valueWithRelation = value as ValueWithRelation\n void addOptionByID(valueWithRelation.value, valueWithRelation.relationTo)\n } else {\n void addOptionByID(value, relationTo)\n }\n }\n }\n }\n }, [\n addOptionByID,\n findOptionsByValue,\n hasMany,\n hasMultipleRelations,\n relationTo,\n value,\n hasLoadedFirstOptions,\n ])\n\n const classes = ['field-type', baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')\n\n const valueToRender = (findOptionsByValue() || value) as Option\n\n return (\n <div className={classes}>\n {errorLoading ? (\n <div className={`${baseClass}__error-loading`}>{errorLoading}</div>\n ) : (\n <ReactSelect\n disabled={disabled}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={(selected) => {\n if (!selected) {\n onChange(null)\n return\n }\n\n if (hasMany && Array.isArray(selected)) {\n onChange(\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 onChange({\n relationTo: selected?.relationTo,\n value: selected?.value,\n })\n } else if (!Array.isArray(selected)) {\n onChange(selected?.value)\n }\n }}\n onInputChange={handleInputChange}\n onMenuScrollToBottom={handleScrollToBottom}\n options={options}\n placeholder={placeholder}\n value={valueToRender}\n />\n )}\n </div>\n )\n}\n"],"names":["qs","React","useCallback","useEffect","useReducer","useState","useDebounce","useEffectEvent","useConfig","useLocale","useTranslation","ReactSelect","optionsReducer","baseClass","maxResultsPerRequest","RelationshipFilter","props","disabled","field","admin","hasMany","relationTo","filterOptions","onChange","value","placeholder","undefined","isSortable","config","routes","api","serverURL","getEntityConfig","hasMultipleRelations","Array","isArray","options","dispatchOptions","search","setSearch","debouncedSearch","errorLoading","setErrorLoading","hasLoadedFirstOptions","setHasLoadedFirstOptions","i18n","t","locale","relationSlugs","loadedRelationships","useRef","Map","map","relation","hasLoadedAll","nextPage","addOptions","data","collection","collectionSlug","type","loadOptions","abortController","relationSlug","loadedRelationship","current","get","fieldToSearch","useAsTitle","where","and","query","depth","limit","code","page","select","push","like","response","fetch","stringify","addQueryPrefix","credentials","headers","language","signal","ok","json","docs","length","set","e","aborted","console","error","handleScrollToBottom","relationshipToLoad","entries","next","AbortController","findOptionsByValue","val","matchedOption","forEach","opt","some","subOpt","find","valueWithRelation","handleInputChange","input","required","addOptionByID","id","relations","abortControllers","controller","abort","_err","matchedOptions","option","i","classes","filter","Boolean","join","valueToRender","div","className","isMulti","selected","onInputChange","onMenuScrollToBottom"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import React from 'react';
5
5
  import { useTranslation } from '../../../../providers/Translation/index.js';
@@ -60,7 +60,7 @@ export const Select = ({ disabled, field: { admin: { placeholder } }, isClearabl
60
60
  onChange,
61
61
  value
62
62
  ]);
63
- return /*#__PURE__*/ _jsx(ReactSelect, {
63
+ return /*#__PURE__*/ _jsxDEV(ReactSelect, {
64
64
  disabled: disabled,
65
65
  isClearable: isClearable,
66
66
  isMulti: isMulti,
@@ -71,7 +71,11 @@ export const Select = ({ disabled, field: { admin: { placeholder } }, isClearabl
71
71
  })),
72
72
  placeholder: placeholder,
73
73
  value: valueToRender
74
- });
74
+ }, void 0, false, {
75
+ fileName: "src/elements/WhereBuilder/Condition/Select/index.tsx",
76
+ lineNumber: 77,
77
+ columnNumber: 5
78
+ }, this);
75
79
  };
76
80
 
77
81
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Select/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { SelectFilterProps as Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport { formatOptions } from './formatOptions.js'\n\nexport const Select: React.FC<Props> = ({\n disabled,\n field: {\n admin: { placeholder },\n },\n isClearable,\n onChange,\n operator,\n options: optionsFromProps,\n value,\n}) => {\n const { i18n } = useTranslation()\n const [options, setOptions] = React.useState(formatOptions(optionsFromProps))\n\n const isMulti = ['in', 'not_in'].includes(operator)\n let valueToRender\n\n if (isMulti && Array.isArray(value)) {\n valueToRender = value.map((val) => {\n const matchingOption = options.find((option) => option.value === val)\n return {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : val,\n value: matchingOption?.value ?? val,\n }\n })\n } else if (value) {\n const matchingOption = options.find((option) => option.value === value)\n valueToRender = {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : value,\n value: matchingOption?.value ?? value,\n }\n }\n\n const onSelect = React.useCallback(\n (selectedOption) => {\n let newValue\n\n if (!selectedOption) {\n newValue = null\n } else if (isMulti) {\n if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => option.value)\n } else {\n newValue = []\n }\n } else {\n newValue = selectedOption.value\n }\n\n onChange(newValue)\n },\n [isMulti, onChange],\n )\n\n React.useEffect(() => {\n setOptions(formatOptions(optionsFromProps))\n }, [optionsFromProps])\n\n React.useEffect(() => {\n if (!isMulti && Array.isArray(value)) {\n onChange(value[0])\n }\n }, [isMulti, onChange, value])\n\n return (\n <ReactSelect\n disabled={disabled}\n isClearable={isClearable}\n isMulti={isMulti}\n onChange={onSelect}\n options={options.map((option) => ({ ...option, label: getTranslation(option.label, i18n) }))}\n placeholder={placeholder}\n value={valueToRender}\n />\n )\n}\n"],"names":["getTranslation","React","useTranslation","ReactSelect","formatOptions","Select","disabled","field","admin","placeholder","isClearable","onChange","operator","options","optionsFromProps","value","i18n","setOptions","useState","isMulti","includes","valueToRender","Array","isArray","map","val","matchingOption","find","option","label","onSelect","useCallback","selectedOption","newValue","useEffect"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,aAAa,QAAQ,qBAAoB;AAElD,OAAO,MAAMC,SAA0B,CAAC,EACtCC,QAAQ,EACRC,OAAO,EACLC,OAAO,EAAEC,WAAW,EAAE,EACvB,EACDC,WAAW,EACXC,QAAQ,EACRC,QAAQ,EACRC,SAASC,gBAAgB,EACzBC,KAAK,EACN;IACC,MAAM,EAAEC,IAAI,EAAE,GAAGd;IACjB,MAAM,CAACW,SAASI,WAAW,GAAGhB,MAAMiB,QAAQ,CAACd,cAAcU;IAE3D,MAAMK,UAAU;QAAC;QAAM;KAAS,CAACC,QAAQ,CAACR;IAC1C,IAAIS;IAEJ,IAAIF,WAAWG,MAAMC,OAAO,CAACR,QAAQ;QACnCM,gBAAgBN,MAAMS,GAAG,CAAC,CAACC;YACzB,MAAMC,iBAAiBb,QAAQc,IAAI,CAAC,CAACC,SAAWA,OAAOb,KAAK,KAAKU;YACjE,OAAO;gBACLI,OAAOH,iBAAiB1B,eAAe0B,eAAeG,KAAK,EAAEb,QAAQS;gBACrEV,OAAOW,gBAAgBX,SAASU;YAClC;QACF;IACF,OAAO,IAAIV,OAAO;QAChB,MAAMW,iBAAiBb,QAAQc,IAAI,CAAC,CAACC,SAAWA,OAAOb,KAAK,KAAKA;QACjEM,gBAAgB;YACdQ,OAAOH,iBAAiB1B,eAAe0B,eAAeG,KAAK,EAAEb,QAAQD;YACrEA,OAAOW,gBAAgBX,SAASA;QAClC;IACF;IAEA,MAAMe,WAAW7B,MAAM8B,WAAW,CAChC,CAACC;QACC,IAAIC;QAEJ,IAAI,CAACD,gBAAgB;YACnBC,WAAW;QACb,OAAO,IAAId,SAAS;YAClB,IAAIG,MAAMC,OAAO,CAACS,iBAAiB;gBACjCC,WAAWD,eAAeR,GAAG,CAAC,CAACI,SAAWA,OAAOb,KAAK;YACxD,OAAO;gBACLkB,WAAW,EAAE;YACf;QACF,OAAO;YACLA,WAAWD,eAAejB,KAAK;QACjC;QAEAJ,SAASsB;IACX,GACA;QAACd;QAASR;KAAS;IAGrBV,MAAMiC,SAAS,CAAC;QACdjB,WAAWb,cAAcU;IAC3B,GAAG;QAACA;KAAiB;IAErBb,MAAMiC,SAAS,CAAC;QACd,IAAI,CAACf,WAAWG,MAAMC,OAAO,CAACR,QAAQ;YACpCJ,SAASI,KAAK,CAAC,EAAE;QACnB;IACF,GAAG;QAACI;QAASR;QAAUI;KAAM;IAE7B,qBACE,KAACZ;QACCG,UAAUA;QACVI,aAAaA;QACbS,SAASA;QACTR,UAAUmB;QACVjB,SAASA,QAAQW,GAAG,CAAC,CAACI,SAAY,CAAA;gBAAE,GAAGA,MAAM;gBAAEC,OAAO7B,eAAe4B,OAAOC,KAAK,EAAEb;YAAM,CAAA;QACzFP,aAAaA;QACbM,OAAOM;;AAGb,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Select/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { SelectFilterProps as Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport { formatOptions } from './formatOptions.js'\n\nexport const Select: React.FC<Props> = ({\n disabled,\n field: {\n admin: { placeholder },\n },\n isClearable,\n onChange,\n operator,\n options: optionsFromProps,\n value,\n}) => {\n const { i18n } = useTranslation()\n const [options, setOptions] = React.useState(formatOptions(optionsFromProps))\n\n const isMulti = ['in', 'not_in'].includes(operator)\n let valueToRender\n\n if (isMulti && Array.isArray(value)) {\n valueToRender = value.map((val) => {\n const matchingOption = options.find((option) => option.value === val)\n return {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : val,\n value: matchingOption?.value ?? val,\n }\n })\n } else if (value) {\n const matchingOption = options.find((option) => option.value === value)\n valueToRender = {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : value,\n value: matchingOption?.value ?? value,\n }\n }\n\n const onSelect = React.useCallback(\n (selectedOption) => {\n let newValue\n\n if (!selectedOption) {\n newValue = null\n } else if (isMulti) {\n if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => option.value)\n } else {\n newValue = []\n }\n } else {\n newValue = selectedOption.value\n }\n\n onChange(newValue)\n },\n [isMulti, onChange],\n )\n\n React.useEffect(() => {\n setOptions(formatOptions(optionsFromProps))\n }, [optionsFromProps])\n\n React.useEffect(() => {\n if (!isMulti && Array.isArray(value)) {\n onChange(value[0])\n }\n }, [isMulti, onChange, value])\n\n return (\n <ReactSelect\n disabled={disabled}\n isClearable={isClearable}\n isMulti={isMulti}\n onChange={onSelect}\n options={options.map((option) => ({ ...option, label: getTranslation(option.label, i18n) }))}\n placeholder={placeholder}\n value={valueToRender}\n />\n )\n}\n"],"names":["getTranslation","React","useTranslation","ReactSelect","formatOptions","Select","disabled","field","admin","placeholder","isClearable","onChange","operator","options","optionsFromProps","value","i18n","setOptions","useState","isMulti","includes","valueToRender","Array","isArray","map","val","matchingOption","find","option","label","onSelect","useCallback","selectedOption","newValue","useEffect"],"mappings":"AAAA;;AAEA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,SAASC,aAAa,QAAQ,qBAAoB;AAElD,OAAO,MAAMC,SAA0B,CAAC,EACtCC,QAAQ,EACRC,OAAO,EACLC,OAAO,EAAEC,WAAW,EAAE,EACvB,EACDC,WAAW,EACXC,QAAQ,EACRC,QAAQ,EACRC,SAASC,gBAAgB,EACzBC,KAAK,EACN;IACC,MAAM,EAAEC,IAAI,EAAE,GAAGd;IACjB,MAAM,CAACW,SAASI,WAAW,GAAGhB,MAAMiB,QAAQ,CAACd,cAAcU;IAE3D,MAAMK,UAAU;QAAC;QAAM;KAAS,CAACC,QAAQ,CAACR;IAC1C,IAAIS;IAEJ,IAAIF,WAAWG,MAAMC,OAAO,CAACR,QAAQ;QACnCM,gBAAgBN,MAAMS,GAAG,CAAC,CAACC;YACzB,MAAMC,iBAAiBb,QAAQc,IAAI,CAAC,CAACC,SAAWA,OAAOb,KAAK,KAAKU;YACjE,OAAO;gBACLI,OAAOH,iBAAiB1B,eAAe0B,eAAeG,KAAK,EAAEb,QAAQS;gBACrEV,OAAOW,gBAAgBX,SAASU;YAClC;QACF;IACF,OAAO,IAAIV,OAAO;QAChB,MAAMW,iBAAiBb,QAAQc,IAAI,CAAC,CAACC,SAAWA,OAAOb,KAAK,KAAKA;QACjEM,gBAAgB;YACdQ,OAAOH,iBAAiB1B,eAAe0B,eAAeG,KAAK,EAAEb,QAAQD;YACrEA,OAAOW,gBAAgBX,SAASA;QAClC;IACF;IAEA,MAAMe,WAAW7B,MAAM8B,WAAW,CAChC,CAACC;QACC,IAAIC;QAEJ,IAAI,CAACD,gBAAgB;YACnBC,WAAW;QACb,OAAO,IAAId,SAAS;YAClB,IAAIG,MAAMC,OAAO,CAACS,iBAAiB;gBACjCC,WAAWD,eAAeR,GAAG,CAAC,CAACI,SAAWA,OAAOb,KAAK;YACxD,OAAO;gBACLkB,WAAW,EAAE;YACf;QACF,OAAO;YACLA,WAAWD,eAAejB,KAAK;QACjC;QAEAJ,SAASsB;IACX,GACA;QAACd;QAASR;KAAS;IAGrBV,MAAMiC,SAAS,CAAC;QACdjB,WAAWb,cAAcU;IAC3B,GAAG;QAACA;KAAiB;IAErBb,MAAMiC,SAAS,CAAC;QACd,IAAI,CAACf,WAAWG,MAAMC,OAAO,CAACR,QAAQ;YACpCJ,SAASI,KAAK,CAAC,EAAE;QACnB;IACF,GAAG;QAACI;QAASR;QAAUI;KAAM;IAE7B,qBACE,QAACZ;QACCG,UAAUA;QACVI,aAAaA;QACbS,SAASA;QACTR,UAAUmB;QACVjB,SAASA,QAAQW,GAAG,CAAC,CAACI,SAAY,CAAA;gBAAE,GAAGA,MAAM;gBAAEC,OAAO7B,eAAe4B,OAAOC,KAAK,EAAEb;YAAM,CAAA;QACzFP,aAAaA;QACbM,OAAOM;;;;;;AAGb,EAAC"}
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
3
3
  import React from 'react';
4
4
  import { useTranslation } from '../../../../providers/Translation/index.js';
5
5
  import { ReactSelect } from '../../../ReactSelect/index.js';
@@ -36,6 +36,7 @@ export const Text = (props)=>{
36
36
  setValueToRender(value.map((val, index)=>{
37
37
  return {
38
38
  id: `${val}${index}`,
39
+ // append index to avoid duplicate keys but allow duplicate numbers
39
40
  label: `${val}`,
40
41
  value: {
41
42
  toString: ()=>`${val}${index}`,
@@ -49,7 +50,7 @@ export const Text = (props)=>{
49
50
  }, [
50
51
  value
51
52
  ]);
52
- return isMulti ? /*#__PURE__*/ _jsx(ReactSelect, {
53
+ return isMulti ? /*#__PURE__*/ _jsxDEV(ReactSelect, {
53
54
  disabled: disabled,
54
55
  isClearable: true,
55
56
  isCreatable: true,
@@ -59,14 +60,22 @@ export const Text = (props)=>{
59
60
  options: [],
60
61
  placeholder: t('general:enterAValue'),
61
62
  value: valueToRender || []
62
- }) : /*#__PURE__*/ _jsx("input", {
63
+ }, void 0, false, {
64
+ fileName: "src/elements/WhereBuilder/Condition/Text/index.tsx",
65
+ lineNumber: 66,
66
+ columnNumber: 5
67
+ }, this) : /*#__PURE__*/ _jsxDEV("input", {
63
68
  className: baseClass,
64
69
  disabled: disabled,
65
70
  onChange: (e)=>onChange(e.target.value),
66
71
  placeholder: t('general:enterAValue'),
67
72
  type: "text",
68
73
  value: value || ''
69
- });
74
+ }, void 0, false, {
75
+ fileName: "src/elements/WhereBuilder/Condition/Text/index.tsx",
76
+ lineNumber: 78,
77
+ columnNumber: 5
78
+ }, this);
70
79
  };
71
80
 
72
81
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Text/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { TextFilterProps as Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'condition-value-text'\n\nexport const Text: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { hasMany },\n onChange,\n operator,\n value,\n } = props\n const { t } = useTranslation()\n\n const isMulti = ['in', 'not_in'].includes(operator) || hasMany\n\n const [valueToRender, setValueToRender] = React.useState<\n { id: string; label: string; value: { value: string } }[]\n >([])\n\n const onSelect = React.useCallback(\n (selectedOption) => {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (isMulti) {\n if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => option.value?.value || option.value)\n } else {\n newValue = [selectedOption.value?.value || selectedOption.value]\n }\n }\n\n onChange(newValue)\n },\n [isMulti, onChange],\n )\n\n React.useEffect(() => {\n if (Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as any)?.value || val,\n },\n }\n }),\n )\n } else {\n setValueToRender([])\n }\n }, [value])\n\n return isMulti ? (\n <ReactSelect\n disabled={disabled}\n isClearable\n isCreatable\n isMulti={isMulti}\n isSortable\n onChange={onSelect}\n options={[]}\n placeholder={t('general:enterAValue')}\n value={valueToRender || []}\n />\n ) : (\n <input\n className={baseClass}\n disabled={disabled}\n onChange={(e) => onChange(e.target.value)}\n placeholder={t('general:enterAValue')}\n type=\"text\"\n value={value || ''}\n />\n )\n}\n"],"names":["React","useTranslation","ReactSelect","baseClass","Text","props","disabled","field","hasMany","onChange","operator","value","t","isMulti","includes","valueToRender","setValueToRender","useState","onSelect","useCallback","selectedOption","newValue","Array","isArray","map","option","useEffect","val","index","id","label","toString","isClearable","isCreatable","isSortable","options","placeholder","input","className","e","target","type"],"mappings":"AAAA;;AACA,OAAOA,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,OAAwB,CAACC;IACpC,MAAM,EACJC,QAAQ,EACRC,OAAO,EAAEC,OAAO,EAAE,EAClBC,QAAQ,EACRC,QAAQ,EACRC,KAAK,EACN,GAAGN;IACJ,MAAM,EAAEO,CAAC,EAAE,GAAGX;IAEd,MAAMY,UAAU;QAAC;QAAM;KAAS,CAACC,QAAQ,CAACJ,aAAaF;IAEvD,MAAM,CAACO,eAAeC,iBAAiB,GAAGhB,MAAMiB,QAAQ,CAEtD,EAAE;IAEJ,MAAMC,WAAWlB,MAAMmB,WAAW,CAChC,CAACC;QACC,IAAIC;QACJ,IAAI,CAACD,gBAAgB;YACnBC,WAAW,EAAE;QACf,OAAO,IAAIR,SAAS;YAClB,IAAIS,MAAMC,OAAO,CAACH,iBAAiB;gBACjCC,WAAWD,eAAeI,GAAG,CAAC,CAACC,SAAWA,OAAOd,KAAK,EAAEA,SAASc,OAAOd,KAAK;YAC/E,OAAO;gBACLU,WAAW;oBAACD,eAAeT,KAAK,EAAEA,SAASS,eAAeT,KAAK;iBAAC;YAClE;QACF;QAEAF,SAASY;IACX,GACA;QAACR;QAASJ;KAAS;IAGrBT,MAAM0B,SAAS,CAAC;QACd,IAAIJ,MAAMC,OAAO,CAACZ,QAAQ;YACxBK,iBACEL,MAAMa,GAAG,CAAC,CAACG,KAAKC;gBACd,OAAO;oBACLC,IAAI,GAAGF,MAAMC,OAAO;oBACpBE,OAAO,GAAGH,KAAK;oBACfhB,OAAO;wBACLoB,UAAU,IAAM,GAAGJ,MAAMC,OAAO;wBAChCjB,OAAO,AAACgB,KAAahB,SAASgB;oBAChC;gBACF;YACF;QAEJ,OAAO;YACLX,iBAAiB,EAAE;QACrB;IACF,GAAG;QAACL;KAAM;IAEV,OAAOE,wBACL,KAACX;QACCI,UAAUA;QACV0B,WAAW;QACXC,WAAW;QACXpB,SAASA;QACTqB,UAAU;QACVzB,UAAUS;QACViB,SAAS,EAAE;QACXC,aAAaxB,EAAE;QACfD,OAAOI,iBAAiB,EAAE;uBAG5B,KAACsB;QACCC,WAAWnC;QACXG,UAAUA;QACVG,UAAU,CAAC8B,IAAM9B,SAAS8B,EAAEC,MAAM,CAAC7B,KAAK;QACxCyB,aAAaxB,EAAE;QACf6B,MAAK;QACL9B,OAAOA,SAAS;;AAGtB,EAAC"}
1
+ {"version":3,"sources":["../../../../../src/elements/WhereBuilder/Condition/Text/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { TextFilterProps as Props } from './types.js'\n\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { ReactSelect } from '../../../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'condition-value-text'\n\nexport const Text: React.FC<Props> = (props) => {\n const {\n disabled,\n field: { hasMany },\n onChange,\n operator,\n value,\n } = props\n const { t } = useTranslation()\n\n const isMulti = ['in', 'not_in'].includes(operator) || hasMany\n\n const [valueToRender, setValueToRender] = React.useState<\n { id: string; label: string; value: { value: string } }[]\n >([])\n\n const onSelect = React.useCallback(\n (selectedOption) => {\n let newValue\n if (!selectedOption) {\n newValue = []\n } else if (isMulti) {\n if (Array.isArray(selectedOption)) {\n newValue = selectedOption.map((option) => option.value?.value || option.value)\n } else {\n newValue = [selectedOption.value?.value || selectedOption.value]\n }\n }\n\n onChange(newValue)\n },\n [isMulti, onChange],\n )\n\n React.useEffect(() => {\n if (Array.isArray(value)) {\n setValueToRender(\n value.map((val, index) => {\n return {\n id: `${val}${index}`, // append index to avoid duplicate keys but allow duplicate numbers\n label: `${val}`,\n value: {\n toString: () => `${val}${index}`,\n value: (val as any)?.value || val,\n },\n }\n }),\n )\n } else {\n setValueToRender([])\n }\n }, [value])\n\n return isMulti ? (\n <ReactSelect\n disabled={disabled}\n isClearable\n isCreatable\n isMulti={isMulti}\n isSortable\n onChange={onSelect}\n options={[]}\n placeholder={t('general:enterAValue')}\n value={valueToRender || []}\n />\n ) : (\n <input\n className={baseClass}\n disabled={disabled}\n onChange={(e) => onChange(e.target.value)}\n placeholder={t('general:enterAValue')}\n type=\"text\"\n value={value || ''}\n />\n )\n}\n"],"names":["React","useTranslation","ReactSelect","baseClass","Text","props","disabled","field","hasMany","onChange","operator","value","t","isMulti","includes","valueToRender","setValueToRender","useState","onSelect","useCallback","selectedOption","newValue","Array","isArray","map","option","useEffect","val","index","id","label","toString","isClearable","isCreatable","isSortable","options","placeholder","input","className","e","target","type"],"mappings":"AAAA;;AACA,OAAOA,WAAW,QAAO;AAIzB,SAASC,cAAc,QAAQ,6CAA4C;AAC3E,SAASC,WAAW,QAAQ,gCAA+B;AAC3D,OAAO,eAAc;AAErB,MAAMC,YAAY;AAElB,OAAO,MAAMC,OAAwB,CAACC;IACpC,MAAM,EACJC,QAAQ,EACRC,OAAO,EAAEC,OAAO,EAAE,EAClBC,QAAQ,EACRC,QAAQ,EACRC,KAAK,EACN,GAAGN;IACJ,MAAM,EAAEO,CAAC,EAAE,GAAGX;IAEd,MAAMY,UAAU;QAAC;QAAM;KAAS,CAACC,QAAQ,CAACJ,aAAaF;IAEvD,MAAM,CAACO,eAAeC,iBAAiB,GAAGhB,MAAMiB,QAAQ,CAEtD,EAAE;IAEJ,MAAMC,WAAWlB,MAAMmB,WAAW,CAChC,CAACC;QACC,IAAIC;QACJ,IAAI,CAACD,gBAAgB;YACnBC,WAAW,EAAE;QACf,OAAO,IAAIR,SAAS;YAClB,IAAIS,MAAMC,OAAO,CAACH,iBAAiB;gBACjCC,WAAWD,eAAeI,GAAG,CAAC,CAACC,SAAWA,OAAOd,KAAK,EAAEA,SAASc,OAAOd,KAAK;YAC/E,OAAO;gBACLU,WAAW;oBAACD,eAAeT,KAAK,EAAEA,SAASS,eAAeT,KAAK;iBAAC;YAClE;QACF;QAEAF,SAASY;IACX,GACA;QAACR;QAASJ;KAAS;IAGrBT,MAAM0B,SAAS,CAAC;QACd,IAAIJ,MAAMC,OAAO,CAACZ,QAAQ;YACxBK,iBACEL,MAAMa,GAAG,CAAC,CAACG,KAAKC;gBACd,OAAO;oBACLC,IAAI,GAAGF,MAAMC,OAAO;oBAAE,mEAAmE;oBACzFE,OAAO,GAAGH,KAAK;oBACfhB,OAAO;wBACLoB,UAAU,IAAM,GAAGJ,MAAMC,OAAO;wBAChCjB,OAAO,AAACgB,KAAahB,SAASgB;oBAChC;gBACF;YACF;QAEJ,OAAO;YACLX,iBAAiB,EAAE;QACrB;IACF,GAAG;QAACL;KAAM;IAEV,OAAOE,wBACL,QAACX;QACCI,UAAUA;QACV0B,WAAW;QACXC,WAAW;QACXpB,SAASA;QACTqB,UAAU;QACVzB,UAAUS;QACViB,SAAS,EAAE;QACXC,aAAaxB,EAAE;QACfD,OAAOI,iBAAiB,EAAE;;;;;6BAG5B,QAACsB;QACCC,WAAWnC;QACXG,UAAUA;QACVG,UAAU,CAAC8B,IAAM9B,SAAS8B,EAAEC,MAAM,CAAC7B,KAAK;QACxCyB,aAAaxB,EAAE;QACf6B,MAAK;QACL9B,OAAOA,SAAS;;;;;;AAGtB,EAAC"}
@@ -1,5 +1,5 @@
1
1
  'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
3
3
  import React, { useCallback, useEffect, useState } from 'react';
4
4
  import { useDebounce } from '../../../hooks/useDebounce.js';
5
5
  import { useEffectEvent } from '../../../hooks/useEffectEvent.js';
@@ -93,17 +93,17 @@ export const Condition = (props)=>{
93
93
  updateCondition,
94
94
  value
95
95
  ]);
96
- return /*#__PURE__*/ _jsx("div", {
96
+ return /*#__PURE__*/ _jsxDEV("div", {
97
97
  className: baseClass,
98
- children: /*#__PURE__*/ _jsxs("div", {
98
+ children: /*#__PURE__*/ _jsxDEV("div", {
99
99
  className: `${baseClass}__wrap`,
100
100
  children: [
101
- /*#__PURE__*/ _jsxs("div", {
101
+ /*#__PURE__*/ _jsxDEV("div", {
102
102
  className: `${baseClass}__inputs`,
103
103
  children: [
104
- /*#__PURE__*/ _jsx("div", {
104
+ /*#__PURE__*/ _jsxDEV("div", {
105
105
  className: `${baseClass}__field`,
106
- children: /*#__PURE__*/ _jsx(ReactSelect, {
106
+ children: /*#__PURE__*/ _jsxDEV(ReactSelect, {
107
107
  disabled: disabled,
108
108
  filterOption: (option, inputValue)=>(option?.data?.plainTextLabel || option.label).toLowerCase().includes(inputValue.toLowerCase()),
109
109
  isClearable: false,
@@ -112,21 +112,37 @@ export const Condition = (props)=>{
112
112
  value: reducedField || {
113
113
  value: reducedField?.value
114
114
  }
115
- })
116
- }),
117
- /*#__PURE__*/ _jsx("div", {
115
+ }, void 0, false, {
116
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
117
+ lineNumber: 145,
118
+ columnNumber: 13
119
+ }, this)
120
+ }, void 0, false, {
121
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
122
+ lineNumber: 144,
123
+ columnNumber: 11
124
+ }, this),
125
+ /*#__PURE__*/ _jsxDEV("div", {
118
126
  className: `${baseClass}__operator`,
119
- children: /*#__PURE__*/ _jsx(ReactSelect, {
127
+ children: /*#__PURE__*/ _jsxDEV(ReactSelect, {
120
128
  disabled: disabled,
121
129
  isClearable: false,
122
130
  onChange: handleOperatorChange,
123
131
  options: reducedField?.operators,
124
132
  value: reducedField?.operators.find((o)=>operator === o.value) || null
125
- })
126
- }),
127
- /*#__PURE__*/ _jsx("div", {
133
+ }, void 0, false, {
134
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
135
+ lineNumber: 163,
136
+ columnNumber: 13
137
+ }, this)
138
+ }, void 0, false, {
139
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
140
+ lineNumber: 162,
141
+ columnNumber: 11
142
+ }, this),
143
+ /*#__PURE__*/ _jsxDEV("div", {
128
144
  className: `${baseClass}__value`,
129
- children: RenderedFilter || /*#__PURE__*/ _jsx(DefaultFilter, {
145
+ children: RenderedFilter || /*#__PURE__*/ _jsxDEV(DefaultFilter, {
130
146
  booleanSelect: booleanSelect,
131
147
  disabled: !operator || !reducedField || reducedField?.field?.admin?.disableListFilter,
132
148
  filterOptions: filterOptions,
@@ -135,14 +151,26 @@ export const Condition = (props)=>{
135
151
  operator: operator,
136
152
  options: valueOptions,
137
153
  value: internalValue ?? ''
138
- })
139
- })
154
+ }, void 0, false, {
155
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
156
+ lineNumber: 173,
157
+ columnNumber: 15
158
+ }, this)
159
+ }, void 0, false, {
160
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
161
+ lineNumber: 171,
162
+ columnNumber: 11
163
+ }, this)
140
164
  ]
141
- }),
142
- /*#__PURE__*/ _jsxs("div", {
165
+ }, void 0, true, {
166
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
167
+ lineNumber: 143,
168
+ columnNumber: 9
169
+ }, this),
170
+ /*#__PURE__*/ _jsxDEV("div", {
143
171
  className: `${baseClass}__actions`,
144
172
  children: [
145
- /*#__PURE__*/ _jsx(Button, {
173
+ /*#__PURE__*/ _jsxDEV(Button, {
146
174
  buttonStyle: "icon-label",
147
175
  className: `${baseClass}__actions-remove`,
148
176
  icon: "x",
@@ -152,8 +180,12 @@ export const Condition = (props)=>{
152
180
  orIndex
153
181
  }),
154
182
  round: true
155
- }),
156
- /*#__PURE__*/ _jsx(Button, {
183
+ }, void 0, false, {
184
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
185
+ lineNumber: 189,
186
+ columnNumber: 11
187
+ }, this),
188
+ /*#__PURE__*/ _jsxDEV(Button, {
157
189
  buttonStyle: "icon-label",
158
190
  className: `${baseClass}__actions-add`,
159
191
  icon: "plus",
@@ -165,12 +197,28 @@ export const Condition = (props)=>{
165
197
  relation: 'and'
166
198
  }),
167
199
  round: true
168
- })
200
+ }, void 0, false, {
201
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
202
+ lineNumber: 202,
203
+ columnNumber: 11
204
+ }, this)
169
205
  ]
170
- })
206
+ }, void 0, true, {
207
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
208
+ lineNumber: 188,
209
+ columnNumber: 9
210
+ }, this)
171
211
  ]
172
- })
173
- });
212
+ }, void 0, true, {
213
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
214
+ lineNumber: 142,
215
+ columnNumber: 7
216
+ }, this)
217
+ }, void 0, false, {
218
+ fileName: "src/elements/WhereBuilder/Condition/index.tsx",
219
+ lineNumber: 141,
220
+ columnNumber: 5
221
+ }, this);
174
222
  };
175
223
 
176
224
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type {\n AddCondition,\n ReducedField,\n RemoveCondition,\n UpdateCondition,\n Value,\n} from '../types.js'\n\nexport type Props = {\n readonly addCondition: AddCondition\n readonly andIndex: number\n readonly fieldPath: string\n readonly filterOptions: ResolvedFilterOptions\n readonly operator: Operator\n readonly orIndex: number\n readonly reducedFields: ReducedField[]\n readonly removeCondition: RemoveCondition\n readonly RenderedFilter: React.ReactNode\n readonly updateCondition: UpdateCondition\n readonly value: Value\n}\n\nimport type { Operator, Option as PayloadOption, ResolvedFilterOptions } from 'payload'\n\nimport type { Option } from '../../ReactSelect/index.js'\n\nimport { useDebounce } from '../../../hooks/useDebounce.js'\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { ReactSelect } from '../../ReactSelect/index.js'\nimport { DefaultFilter } from './DefaultFilter/index.js'\nimport { getOperatorValueTypes } from './validOperators.js'\nimport './index.scss'\n\nconst baseClass = 'condition'\n\nexport const Condition: React.FC<Props> = (props) => {\n const {\n addCondition,\n andIndex,\n fieldPath,\n filterOptions,\n operator,\n orIndex,\n reducedFields,\n removeCondition,\n RenderedFilter,\n updateCondition,\n value,\n } = props\n\n const { t } = useTranslation()\n\n const reducedField = reducedFields.find((field) => field.value === fieldPath)\n\n const [internalValue, setInternalValue] = useState<Value>(value)\n\n const debouncedValue = useDebounce(internalValue, 300)\n\n const booleanSelect = ['exists'].includes(operator) || reducedField?.field?.type === 'checkbox'\n\n let valueOptions: PayloadOption[] = []\n\n if (booleanSelect) {\n valueOptions = [\n { label: t('general:true'), value: 'true' },\n { label: t('general:false'), value: 'false' },\n ]\n } else if (reducedField?.field && 'options' in reducedField.field) {\n valueOptions = reducedField.field.options\n }\n\n const updateValue = useEffectEvent(async (debouncedValue: Value) => {\n if (operator) {\n await updateCondition({\n type: 'value',\n andIndex,\n field: reducedField,\n operator,\n orIndex,\n value: debouncedValue === null || debouncedValue === '' ? undefined : debouncedValue,\n })\n }\n })\n\n useEffect(() => {\n void updateValue(debouncedValue)\n }, [debouncedValue])\n\n const disabled =\n (!reducedField?.value && typeof reducedField?.value !== 'number') ||\n reducedField?.field?.admin?.disableListFilter\n\n const handleFieldChange = useCallback(\n async (field: Option<string>) => {\n setInternalValue(undefined)\n await updateCondition({\n type: 'field',\n andIndex,\n field: reducedFields.find((option) => option.value === field.value),\n operator,\n orIndex,\n value: undefined,\n })\n },\n [andIndex, operator, orIndex, reducedFields, updateCondition],\n )\n\n const handleOperatorChange = useCallback(\n async (operator: Option<Operator>) => {\n const operatorValueTypes = getOperatorValueTypes(reducedField.field.type)\n const validOperatorValue = operatorValueTypes[operator.value] || 'any'\n const isValidValue =\n validOperatorValue === 'any' ||\n typeof value === validOperatorValue ||\n (validOperatorValue === 'boolean' && (value === 'true' || value === 'false'))\n\n if (!isValidValue) {\n // if the current value is not valid for the new operator\n // reset the value before passing it to updateCondition\n setInternalValue(undefined)\n }\n\n await updateCondition({\n type: 'operator',\n andIndex,\n field: reducedField,\n operator: operator.value,\n orIndex,\n value: isValidValue ? value : undefined,\n })\n },\n [andIndex, reducedField, orIndex, updateCondition, value],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__inputs`}>\n <div className={`${baseClass}__field`}>\n <ReactSelect\n disabled={disabled}\n filterOption={(option, inputValue) =>\n ((option?.data?.plainTextLabel as string) || option.label)\n .toLowerCase()\n .includes(inputValue.toLowerCase())\n }\n isClearable={false}\n onChange={handleFieldChange}\n options={reducedFields.filter((field) => !field.field.admin.disableListFilter)}\n value={\n reducedField || {\n value: reducedField?.value,\n }\n }\n />\n </div>\n <div className={`${baseClass}__operator`}>\n <ReactSelect\n disabled={disabled}\n isClearable={false}\n onChange={handleOperatorChange}\n options={reducedField?.operators}\n value={reducedField?.operators.find((o) => operator === o.value) || null}\n />\n </div>\n <div className={`${baseClass}__value`}>\n {RenderedFilter || (\n <DefaultFilter\n booleanSelect={booleanSelect}\n disabled={\n !operator || !reducedField || reducedField?.field?.admin?.disableListFilter\n }\n filterOptions={filterOptions}\n internalField={reducedField}\n onChange={setInternalValue}\n operator={operator}\n options={valueOptions}\n value={internalValue ?? ''}\n />\n )}\n </div>\n </div>\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={() =>\n removeCondition({\n andIndex,\n orIndex,\n })\n }\n round\n />\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-add`}\n icon=\"plus\"\n iconStyle=\"with-border\"\n onClick={() =>\n addCondition({\n andIndex: andIndex + 1,\n field: reducedFields.find((field) => !field.field.admin?.disableListFilter),\n orIndex,\n relation: 'and',\n })\n }\n round\n />\n </div>\n </div>\n </div>\n )\n}\n"],"names":["React","useCallback","useEffect","useState","useDebounce","useEffectEvent","useTranslation","Button","ReactSelect","DefaultFilter","getOperatorValueTypes","baseClass","Condition","props","addCondition","andIndex","fieldPath","filterOptions","operator","orIndex","reducedFields","removeCondition","RenderedFilter","updateCondition","value","t","reducedField","find","field","internalValue","setInternalValue","debouncedValue","booleanSelect","includes","type","valueOptions","label","options","updateValue","undefined","disabled","admin","disableListFilter","handleFieldChange","option","handleOperatorChange","operatorValueTypes","validOperatorValue","isValidValue","div","className","filterOption","inputValue","data","plainTextLabel","toLowerCase","isClearable","onChange","filter","operators","o","internalField","buttonStyle","icon","iconStyle","onClick","round","relation"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type {\n AddCondition,\n ReducedField,\n RemoveCondition,\n UpdateCondition,\n Value,\n} from '../types.js'\n\nexport type Props = {\n readonly addCondition: AddCondition\n readonly andIndex: number\n readonly fieldPath: string\n readonly filterOptions: ResolvedFilterOptions\n readonly operator: Operator\n readonly orIndex: number\n readonly reducedFields: ReducedField[]\n readonly removeCondition: RemoveCondition\n readonly RenderedFilter: React.ReactNode\n readonly updateCondition: UpdateCondition\n readonly value: Value\n}\n\nimport type { Operator, Option as PayloadOption, ResolvedFilterOptions } from 'payload'\n\nimport type { Option } from '../../ReactSelect/index.js'\n\nimport { useDebounce } from '../../../hooks/useDebounce.js'\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { ReactSelect } from '../../ReactSelect/index.js'\nimport { DefaultFilter } from './DefaultFilter/index.js'\nimport { getOperatorValueTypes } from './validOperators.js'\nimport './index.scss'\n\nconst baseClass = 'condition'\n\nexport const Condition: React.FC<Props> = (props) => {\n const {\n addCondition,\n andIndex,\n fieldPath,\n filterOptions,\n operator,\n orIndex,\n reducedFields,\n removeCondition,\n RenderedFilter,\n updateCondition,\n value,\n } = props\n\n const { t } = useTranslation()\n\n const reducedField = reducedFields.find((field) => field.value === fieldPath)\n\n const [internalValue, setInternalValue] = useState<Value>(value)\n\n const debouncedValue = useDebounce(internalValue, 300)\n\n const booleanSelect = ['exists'].includes(operator) || reducedField?.field?.type === 'checkbox'\n\n let valueOptions: PayloadOption[] = []\n\n if (booleanSelect) {\n valueOptions = [\n { label: t('general:true'), value: 'true' },\n { label: t('general:false'), value: 'false' },\n ]\n } else if (reducedField?.field && 'options' in reducedField.field) {\n valueOptions = reducedField.field.options\n }\n\n const updateValue = useEffectEvent(async (debouncedValue: Value) => {\n if (operator) {\n await updateCondition({\n type: 'value',\n andIndex,\n field: reducedField,\n operator,\n orIndex,\n value: debouncedValue === null || debouncedValue === '' ? undefined : debouncedValue,\n })\n }\n })\n\n useEffect(() => {\n void updateValue(debouncedValue)\n }, [debouncedValue])\n\n const disabled =\n (!reducedField?.value && typeof reducedField?.value !== 'number') ||\n reducedField?.field?.admin?.disableListFilter\n\n const handleFieldChange = useCallback(\n async (field: Option<string>) => {\n setInternalValue(undefined)\n await updateCondition({\n type: 'field',\n andIndex,\n field: reducedFields.find((option) => option.value === field.value),\n operator,\n orIndex,\n value: undefined,\n })\n },\n [andIndex, operator, orIndex, reducedFields, updateCondition],\n )\n\n const handleOperatorChange = useCallback(\n async (operator: Option<Operator>) => {\n const operatorValueTypes = getOperatorValueTypes(reducedField.field.type)\n const validOperatorValue = operatorValueTypes[operator.value] || 'any'\n const isValidValue =\n validOperatorValue === 'any' ||\n typeof value === validOperatorValue ||\n (validOperatorValue === 'boolean' && (value === 'true' || value === 'false'))\n\n if (!isValidValue) {\n // if the current value is not valid for the new operator\n // reset the value before passing it to updateCondition\n setInternalValue(undefined)\n }\n\n await updateCondition({\n type: 'operator',\n andIndex,\n field: reducedField,\n operator: operator.value,\n orIndex,\n value: isValidValue ? value : undefined,\n })\n },\n [andIndex, reducedField, orIndex, updateCondition, value],\n )\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__wrap`}>\n <div className={`${baseClass}__inputs`}>\n <div className={`${baseClass}__field`}>\n <ReactSelect\n disabled={disabled}\n filterOption={(option, inputValue) =>\n ((option?.data?.plainTextLabel as string) || option.label)\n .toLowerCase()\n .includes(inputValue.toLowerCase())\n }\n isClearable={false}\n onChange={handleFieldChange}\n options={reducedFields.filter((field) => !field.field.admin.disableListFilter)}\n value={\n reducedField || {\n value: reducedField?.value,\n }\n }\n />\n </div>\n <div className={`${baseClass}__operator`}>\n <ReactSelect\n disabled={disabled}\n isClearable={false}\n onChange={handleOperatorChange}\n options={reducedField?.operators}\n value={reducedField?.operators.find((o) => operator === o.value) || null}\n />\n </div>\n <div className={`${baseClass}__value`}>\n {RenderedFilter || (\n <DefaultFilter\n booleanSelect={booleanSelect}\n disabled={\n !operator || !reducedField || reducedField?.field?.admin?.disableListFilter\n }\n filterOptions={filterOptions}\n internalField={reducedField}\n onChange={setInternalValue}\n operator={operator}\n options={valueOptions}\n value={internalValue ?? ''}\n />\n )}\n </div>\n </div>\n <div className={`${baseClass}__actions`}>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-remove`}\n icon=\"x\"\n iconStyle=\"with-border\"\n onClick={() =>\n removeCondition({\n andIndex,\n orIndex,\n })\n }\n round\n />\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__actions-add`}\n icon=\"plus\"\n iconStyle=\"with-border\"\n onClick={() =>\n addCondition({\n andIndex: andIndex + 1,\n field: reducedFields.find((field) => !field.field.admin?.disableListFilter),\n orIndex,\n relation: 'and',\n })\n }\n round\n />\n </div>\n </div>\n </div>\n )\n}\n"],"names":["React","useCallback","useEffect","useState","useDebounce","useEffectEvent","useTranslation","Button","ReactSelect","DefaultFilter","getOperatorValueTypes","baseClass","Condition","props","addCondition","andIndex","fieldPath","filterOptions","operator","orIndex","reducedFields","removeCondition","RenderedFilter","updateCondition","value","t","reducedField","find","field","internalValue","setInternalValue","debouncedValue","booleanSelect","includes","type","valueOptions","label","options","updateValue","undefined","disabled","admin","disableListFilter","handleFieldChange","option","handleOperatorChange","operatorValueTypes","validOperatorValue","isValidValue","div","className","filterOption","inputValue","data","plainTextLabel","toLowerCase","isClearable","onChange","filter","operators","o","internalField","buttonStyle","icon","iconStyle","onClick","round","relation"],"mappings":"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"}