@payloadcms/ui 3.2.3-canary.673b4b5 → 3.4.0

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 (373) hide show
  1. package/dist/elements/AddNewRelation/index.js +40 -40
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AddNewRelation/useRelatedCollections.js +3 -3
  4. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -1
  5. package/dist/elements/AnimateHeight/index.d.ts.map +1 -1
  6. package/dist/elements/AnimateHeight/index.js +4 -1
  7. package/dist/elements/AnimateHeight/index.js.map +1 -1
  8. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts +2 -1
  9. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +67 -79
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/ArrayAction/index.js +10 -10
  13. package/dist/elements/ArrayAction/index.js.map +1 -1
  14. package/dist/elements/BulkUpload/ActionsBar/index.js +13 -13
  15. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/AddingFilesView/index.js +14 -14
  17. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  18. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  19. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +3 -3
  21. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/FileSidebar/index.js +29 -26
  23. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/FormsManager/index.js +2 -0
  25. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/index.js +8 -8
  27. package/dist/elements/BulkUpload/index.js.map +1 -1
  28. package/dist/elements/CodeEditor/CodeEditor.js +28 -32
  29. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  30. package/dist/elements/Collapsible/index.js +13 -13
  31. package/dist/elements/Collapsible/index.js.map +1 -1
  32. package/dist/elements/ColumnSelector/index.js +10 -10
  33. package/dist/elements/ColumnSelector/index.js.map +1 -1
  34. package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
  35. package/dist/elements/CopyLocaleData/index.js +4 -3
  36. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  37. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  38. package/dist/elements/DatePicker/DatePicker.js +4 -4
  39. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  40. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  41. package/dist/elements/DeleteMany/index.js +10 -14
  42. package/dist/elements/DeleteMany/index.js.map +1 -1
  43. package/dist/elements/DocumentControls/index.js +9 -9
  44. package/dist/elements/DocumentControls/index.js.map +1 -1
  45. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +4 -4
  46. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  47. package/dist/elements/DocumentDrawer/index.js +47 -47
  48. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  49. package/dist/elements/DocumentLocked/index.js +21 -21
  50. package/dist/elements/DocumentLocked/index.js.map +1 -1
  51. package/dist/elements/DocumentTakeOver/index.js +10 -10
  52. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  53. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +9 -9
  54. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  55. package/dist/elements/DraggableSortable/index.js +11 -11
  56. package/dist/elements/DraggableSortable/index.js.map +1 -1
  57. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +8 -8
  58. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  59. package/dist/elements/Drawer/index.js +38 -38
  60. package/dist/elements/Drawer/index.js.map +1 -1
  61. package/dist/elements/Drawer/useDrawerSlug.js +3 -3
  62. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  63. package/dist/elements/EditMany/index.d.ts.map +1 -1
  64. package/dist/elements/EditMany/index.js +32 -33
  65. package/dist/elements/EditMany/index.js.map +1 -1
  66. package/dist/elements/FieldSelect/index.js +19 -18
  67. package/dist/elements/FieldSelect/index.js.map +1 -1
  68. package/dist/elements/FileDetails/DraggableFileDetails/index.js +15 -15
  69. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  70. package/dist/elements/FileDetails/FileMeta/index.js +15 -15
  71. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  72. package/dist/elements/FullscreenModal/index.js +4 -4
  73. package/dist/elements/FullscreenModal/index.js.map +1 -1
  74. package/dist/elements/Hamburger/index.js +4 -4
  75. package/dist/elements/Hamburger/index.js.map +1 -1
  76. package/dist/elements/HydrateAuthProvider/index.js +3 -3
  77. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  78. package/dist/elements/LeaveWithoutSaving/index.js +11 -11
  79. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  80. package/dist/elements/ListDrawer/index.js +19 -18
  81. package/dist/elements/ListDrawer/index.js.map +1 -1
  82. package/dist/elements/ListSelection/index.js +3 -3
  83. package/dist/elements/ListSelection/index.js.map +1 -1
  84. package/dist/elements/Loading/index.js +15 -15
  85. package/dist/elements/Loading/index.js.map +1 -1
  86. package/dist/elements/LoadingOverlay/index.js +18 -16
  87. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  88. package/dist/elements/Localizer/LocalizerLabel/index.js +5 -5
  89. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  90. package/dist/elements/Localizer/index.d.ts.map +1 -1
  91. package/dist/elements/Localizer/index.js +20 -19
  92. package/dist/elements/Localizer/index.js.map +1 -1
  93. package/dist/elements/Locked/index.js +3 -3
  94. package/dist/elements/Locked/index.js.map +1 -1
  95. package/dist/elements/Logout/index.js +7 -7
  96. package/dist/elements/Logout/index.js.map +1 -1
  97. package/dist/elements/Nav/NavToggler/index.js +13 -13
  98. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  99. package/dist/elements/NavGroup/index.js +12 -12
  100. package/dist/elements/NavGroup/index.js.map +1 -1
  101. package/dist/elements/PerPage/index.js +7 -7
  102. package/dist/elements/PerPage/index.js.map +1 -1
  103. package/dist/elements/Pill/index.js +8 -8
  104. package/dist/elements/Pill/index.js.map +1 -1
  105. package/dist/elements/Popup/index.js +1 -0
  106. package/dist/elements/Popup/index.js.map +1 -1
  107. package/dist/elements/PreviewButton/index.js +3 -3
  108. package/dist/elements/PreviewButton/index.js.map +1 -1
  109. package/dist/elements/PublishButton/index.js +28 -28
  110. package/dist/elements/PublishButton/index.js.map +1 -1
  111. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  112. package/dist/elements/PublishMany/index.js +10 -10
  113. package/dist/elements/PublishMany/index.js.map +1 -1
  114. package/dist/elements/ReactSelect/Input/index.d.ts +2 -2
  115. package/dist/elements/ReactSelect/Input/index.d.ts.map +1 -1
  116. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  117. package/dist/elements/ReactSelect/MultiValue/index.js +10 -10
  118. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  119. package/dist/elements/ReactSelect/MultiValueRemove/index.js +5 -5
  120. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  121. package/dist/elements/ReactSelect/index.js.map +1 -1
  122. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +4 -4
  123. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  124. package/dist/elements/RelationshipTable/index.d.ts +2 -0
  125. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  126. package/dist/elements/RelationshipTable/index.js +283 -143
  127. package/dist/elements/RelationshipTable/index.js.map +1 -1
  128. package/dist/elements/RenderIfInViewport/index.js +3 -3
  129. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  130. package/dist/elements/RenderTitle/index.js +6 -6
  131. package/dist/elements/RenderTitle/index.js.map +1 -1
  132. package/dist/elements/SelectAll/index.js +3 -3
  133. package/dist/elements/SelectAll/index.js.map +1 -1
  134. package/dist/elements/SelectRow/index.js +6 -6
  135. package/dist/elements/SelectRow/index.js.map +1 -1
  136. package/dist/elements/ShimmerEffect/index.js +7 -7
  137. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  138. package/dist/elements/SortColumn/index.js +16 -16
  139. package/dist/elements/SortColumn/index.js.map +1 -1
  140. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  141. package/dist/elements/SortComplex/index.js +38 -51
  142. package/dist/elements/SortComplex/index.js.map +1 -1
  143. package/dist/elements/Status/index.js +38 -35
  144. package/dist/elements/Status/index.js.map +1 -1
  145. package/dist/elements/StayLoggedIn/index.js +12 -12
  146. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  147. package/dist/elements/StepNav/SetStepNav.js +3 -3
  148. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  149. package/dist/elements/StepNav/context.js +3 -3
  150. package/dist/elements/StepNav/context.js.map +1 -1
  151. package/dist/elements/StepNav/index.js +9 -9
  152. package/dist/elements/StepNav/index.js.map +1 -1
  153. package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
  154. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  155. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +31 -31
  156. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  157. package/dist/elements/Table/DefaultCell/fields/Select/index.js +3 -3
  158. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  159. package/dist/elements/Table/DefaultCell/index.js +17 -17
  160. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  161. package/dist/elements/Table/RelationshipProvider/index.js +12 -9
  162. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  163. package/dist/elements/TableColumns/RenderDefaultCell/index.js +6 -6
  164. package/dist/elements/TableColumns/RenderDefaultCell/index.js.map +1 -1
  165. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  166. package/dist/elements/TableColumns/buildColumnState.js +5 -2
  167. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  168. package/dist/elements/Thumbnail/index.js +27 -27
  169. package/dist/elements/Thumbnail/index.js.map +1 -1
  170. package/dist/elements/ThumbnailCard/index.js +10 -10
  171. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  172. package/dist/elements/Tooltip/index.js +29 -24
  173. package/dist/elements/Tooltip/index.js.map +1 -1
  174. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  175. package/dist/elements/UnpublishMany/index.js +11 -11
  176. package/dist/elements/UnpublishMany/index.js.map +1 -1
  177. package/dist/elements/Upload/index.js +5 -5
  178. package/dist/elements/Upload/index.js.map +1 -1
  179. package/dist/elements/WhereBuilder/Condition/Number/index.js +3 -3
  180. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  181. package/dist/elements/WhereBuilder/Condition/Select/index.js +13 -10
  182. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  183. package/dist/elements/WhereBuilder/Condition/Text/index.js +5 -5
  184. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  185. package/dist/elements/WhereBuilder/Condition/index.js +45 -45
  186. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  187. package/dist/elements/WhereBuilder/index.js +11 -11
  188. package/dist/elements/WhereBuilder/index.js.map +1 -1
  189. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
  190. package/dist/elements/WhereBuilder/reduceClientFields.js +2 -2
  191. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  192. package/dist/exports/client/{DatePicker-QST7QHAX.js → CodeEditor-RZ32B2QF.js} +2 -2
  193. package/dist/exports/client/DatePicker-QW5V4BQV.js +14 -0
  194. package/dist/exports/client/DatePicker-QW5V4BQV.js.map +8 -0
  195. package/dist/exports/client/chunk-CKHKQPOO.js +26 -0
  196. package/dist/exports/client/{CodeEditor-5MCGR4GL.js.map → chunk-CKHKQPOO.js.map} +4 -4
  197. package/dist/exports/client/chunk-KZPVHMBR.js +29 -0
  198. package/dist/exports/client/chunk-KZPVHMBR.js.map +8 -0
  199. package/dist/exports/client/index.d.ts +4 -1
  200. package/dist/exports/client/index.d.ts.map +1 -1
  201. package/dist/exports/client/index.js +16 -16
  202. package/dist/exports/client/index.js.map +4 -4
  203. package/dist/fields/Array/ArrayRow.js +38 -38
  204. package/dist/fields/Array/ArrayRow.js.map +1 -1
  205. package/dist/fields/Array/index.d.ts.map +1 -1
  206. package/dist/fields/Array/index.js +27 -25
  207. package/dist/fields/Array/index.js.map +1 -1
  208. package/dist/fields/Blocks/BlockRow.js +51 -49
  209. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  210. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +3 -3
  211. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  212. package/dist/fields/Blocks/BlocksDrawer/index.js +13 -13
  213. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  214. package/dist/fields/Blocks/RowActions.js +25 -25
  215. package/dist/fields/Blocks/RowActions.js.map +1 -1
  216. package/dist/fields/Blocks/SectionTitle/index.js +8 -8
  217. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  218. package/dist/fields/Blocks/index.d.ts.map +1 -1
  219. package/dist/fields/Blocks/index.js +26 -24
  220. package/dist/fields/Blocks/index.js.map +1 -1
  221. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  222. package/dist/fields/Collapsible/index.js +4 -2
  223. package/dist/fields/Collapsible/index.js.map +1 -1
  224. package/dist/fields/ConfirmPassword/index.js +6 -6
  225. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  226. package/dist/fields/FieldLabel/index.js +18 -18
  227. package/dist/fields/FieldLabel/index.js.map +1 -1
  228. package/dist/fields/Group/index.d.ts.map +1 -1
  229. package/dist/fields/Group/index.js +6 -4
  230. package/dist/fields/Group/index.js.map +1 -1
  231. package/dist/fields/Hidden/index.js +7 -7
  232. package/dist/fields/Hidden/index.js.map +1 -1
  233. package/dist/fields/Join/index.d.ts.map +1 -1
  234. package/dist/fields/Join/index.js +15 -3
  235. package/dist/fields/Join/index.js.map +1 -1
  236. package/dist/fields/Number/index.js +5 -5
  237. package/dist/fields/Number/index.js.map +1 -1
  238. package/dist/fields/Password/input.js +24 -24
  239. package/dist/fields/Password/input.js.map +1 -1
  240. package/dist/fields/RadioGroup/Radio/index.js +9 -9
  241. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  242. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  243. package/dist/fields/RadioGroup/index.js +4 -2
  244. package/dist/fields/RadioGroup/index.js.map +1 -1
  245. package/dist/fields/Relationship/index.d.ts.map +1 -1
  246. package/dist/fields/Relationship/index.js +4 -2
  247. package/dist/fields/Relationship/index.js.map +1 -1
  248. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +18 -18
  249. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  250. package/dist/fields/Relationship/select-components/SingleValue/index.js +18 -18
  251. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  252. package/dist/fields/Select/Input.js +28 -28
  253. package/dist/fields/Select/Input.js.map +1 -1
  254. package/dist/fields/Tabs/Tab/index.js +10 -10
  255. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  256. package/dist/fields/Tabs/index.js +69 -69
  257. package/dist/fields/Tabs/index.js.map +1 -1
  258. package/dist/fields/Text/Input.js +24 -24
  259. package/dist/fields/Text/Input.js.map +1 -1
  260. package/dist/fields/Textarea/Input.js +19 -19
  261. package/dist/fields/Textarea/Input.js.map +1 -1
  262. package/dist/fields/Upload/HasMany/index.js +11 -11
  263. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  264. package/dist/fields/Upload/Input.js +109 -104
  265. package/dist/fields/Upload/Input.js.map +1 -1
  266. package/dist/fields/Upload/RelationshipContent/index.js +20 -20
  267. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  268. package/dist/forms/NullifyField/index.js +3 -3
  269. package/dist/forms/NullifyField/index.js.map +1 -1
  270. package/dist/forms/RenderFields/RenderField.js +9 -9
  271. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  272. package/dist/forms/RenderFields/index.js +18 -18
  273. package/dist/forms/RenderFields/index.js.map +1 -1
  274. package/dist/forms/WatchChildErrors/index.js +10 -10
  275. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  276. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  277. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +5 -8
  278. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  279. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  280. package/dist/forms/fieldSchemasToFormState/renderField.js +4 -0
  281. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  282. package/dist/forms/useField/index.js +44 -44
  283. package/dist/forms/useField/index.js.map +1 -1
  284. package/dist/hooks/useDebounce.js +3 -3
  285. package/dist/hooks/useDebounce.js.map +1 -1
  286. package/dist/hooks/useDebouncedEffect.js +6 -6
  287. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  288. package/dist/hooks/useDelay.js +3 -3
  289. package/dist/hooks/useDelay.js.map +1 -1
  290. package/dist/hooks/useHotkey.js +18 -14
  291. package/dist/hooks/useHotkey.js.map +1 -1
  292. package/dist/hooks/usePayloadAPI.js +13 -13
  293. package/dist/hooks/usePayloadAPI.js.map +1 -1
  294. package/dist/hooks/useThrottledEffect.js +3 -3
  295. package/dist/hooks/useThrottledEffect.js.map +1 -1
  296. package/dist/providers/Actions/index.js +4 -4
  297. package/dist/providers/Actions/index.js.map +1 -1
  298. package/dist/providers/ClientFunction/index.js +3 -3
  299. package/dist/providers/ClientFunction/index.js.map +1 -1
  300. package/dist/providers/Config/index.js +9 -10
  301. package/dist/providers/Config/index.js.map +1 -1
  302. package/dist/providers/DocumentEvents/index.js +3 -3
  303. package/dist/providers/DocumentEvents/index.js.map +1 -1
  304. package/dist/providers/EditDepth/index.js +3 -3
  305. package/dist/providers/EditDepth/index.js.map +1 -1
  306. package/dist/providers/EntityVisibility/index.js +9 -10
  307. package/dist/providers/EntityVisibility/index.js.map +1 -1
  308. package/dist/providers/ListQuery/index.js +2 -2
  309. package/dist/providers/ListQuery/index.js.map +1 -1
  310. package/dist/providers/Locale/index.d.ts.map +1 -1
  311. package/dist/providers/Locale/index.js +65 -59
  312. package/dist/providers/Locale/index.js.map +1 -1
  313. package/dist/providers/Params/index.d.ts +16 -0
  314. package/dist/providers/Params/index.d.ts.map +1 -1
  315. package/dist/providers/Params/index.js +19 -4
  316. package/dist/providers/Params/index.js.map +1 -1
  317. package/dist/providers/RouteCache/index.js +6 -6
  318. package/dist/providers/RouteCache/index.js.map +1 -1
  319. package/dist/providers/SearchParams/index.d.ts +22 -4
  320. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  321. package/dist/providers/SearchParams/index.js +28 -14
  322. package/dist/providers/SearchParams/index.js.map +1 -1
  323. package/dist/providers/Selection/index.d.ts.map +1 -1
  324. package/dist/providers/Selection/index.js +7 -8
  325. package/dist/providers/Selection/index.js.map +1 -1
  326. package/dist/providers/Theme/index.js +7 -7
  327. package/dist/providers/Theme/index.js.map +1 -1
  328. package/dist/providers/Translation/index.js +12 -12
  329. package/dist/providers/Translation/index.js.map +1 -1
  330. package/dist/providers/UploadEdits/index.js +3 -3
  331. package/dist/providers/UploadEdits/index.js.map +1 -1
  332. package/dist/styles.css +1 -1
  333. package/dist/utilities/buildClientFieldSchemaMap/index.js +2 -0
  334. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  335. package/dist/utilities/buildFieldSchemaMap/index.js +2 -0
  336. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  337. package/dist/utilities/buildTableState.d.ts.map +1 -1
  338. package/dist/utilities/buildTableState.js.map +1 -1
  339. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  340. package/dist/utilities/copyDataFromLocale.js +11 -4
  341. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  342. package/dist/utilities/formatFields.d.ts.map +1 -1
  343. package/dist/utilities/formatFields.js +2 -2
  344. package/dist/utilities/formatFields.js.map +1 -1
  345. package/dist/utilities/groupNavItems.js +3 -3
  346. package/dist/utilities/groupNavItems.js.map +1 -1
  347. package/dist/utilities/parseSearchParams.d.ts +4 -0
  348. package/dist/utilities/parseSearchParams.d.ts.map +1 -0
  349. package/dist/utilities/parseSearchParams.js +9 -0
  350. package/dist/utilities/parseSearchParams.js.map +1 -0
  351. package/dist/utilities/renderTable.d.ts.map +1 -1
  352. package/dist/utilities/renderTable.js +4 -0
  353. package/dist/utilities/renderTable.js.map +1 -1
  354. package/dist/views/Edit/Auth/index.js +47 -47
  355. package/dist/views/Edit/Auth/index.js.map +1 -1
  356. package/dist/views/Edit/Auth/types.d.ts +1 -1
  357. package/dist/views/Edit/Auth/types.d.ts.map +1 -1
  358. package/dist/views/Edit/Auth/types.js.map +1 -1
  359. package/dist/views/Edit/SetDocumentStepNav/index.js +14 -14
  360. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  361. package/dist/views/Edit/SetDocumentTitle/index.js +5 -5
  362. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  363. package/dist/views/Edit/index.js +2 -2
  364. package/dist/views/Edit/index.js.map +1 -1
  365. package/dist/views/List/index.js +20 -24
  366. package/dist/views/List/index.js.map +1 -1
  367. package/package.json +17 -18
  368. package/dist/exports/client/CodeEditor-5MCGR4GL.js +0 -26
  369. package/dist/exports/client/chunk-4SO5UCQD.js +0 -14
  370. package/dist/exports/client/chunk-4SO5UCQD.js.map +0 -8
  371. package/dist/exports/client/chunk-5LUHGAPX.js +0 -30
  372. package/dist/exports/client/chunk-5LUHGAPX.js.map +0 -8
  373. /package/dist/exports/client/{DatePicker-QST7QHAX.js.map → CodeEditor-RZ32B2QF.js.map} +0 -0
@@ -25,10 +25,10 @@ export const Condition = props => {
25
25
  updateCondition
26
26
  } = props;
27
27
  let t0;
28
- if ($[0] !== fields || $[1] !== fieldName) {
28
+ if ($[0] !== fieldName || $[1] !== fields) {
29
29
  t0 = () => fields.find(field => fieldName === field.value);
30
- $[0] = fields;
31
- $[1] = fieldName;
30
+ $[0] = fieldName;
31
+ $[1] = fields;
32
32
  $[2] = t0;
33
33
  } else {
34
34
  t0 = $[2];
@@ -41,7 +41,7 @@ export const Condition = props => {
41
41
  const [internalQueryValue, setInternalQueryValue] = useState(initialValue);
42
42
  const debouncedValue = useDebounce(internalQueryValue, 300);
43
43
  let t1;
44
- if ($[3] !== internalField || $[4] !== internalOperatorOption || $[5] !== debouncedValue || $[6] !== updateCondition || $[7] !== andIndex || $[8] !== orIndex) {
44
+ if ($[3] !== andIndex || $[4] !== debouncedValue || $[5] !== internalField || $[6] !== internalOperatorOption || $[7] !== orIndex || $[8] !== updateCondition) {
45
45
  t1 = () => {
46
46
  if ((internalField?.value || typeof internalField?.value === "number") && internalOperatorOption && ![null, undefined].includes(debouncedValue)) {
47
47
  updateCondition({
@@ -53,37 +53,37 @@ export const Condition = props => {
53
53
  });
54
54
  }
55
55
  };
56
- $[3] = internalField;
57
- $[4] = internalOperatorOption;
58
- $[5] = debouncedValue;
59
- $[6] = updateCondition;
60
- $[7] = andIndex;
61
- $[8] = orIndex;
56
+ $[3] = andIndex;
57
+ $[4] = debouncedValue;
58
+ $[5] = internalField;
59
+ $[6] = internalOperatorOption;
60
+ $[7] = orIndex;
61
+ $[8] = updateCondition;
62
62
  $[9] = t1;
63
63
  } else {
64
64
  t1 = $[9];
65
65
  }
66
66
  const t2 = internalField?.value;
67
67
  let t3;
68
- if ($[10] !== debouncedValue || $[11] !== andIndex || $[12] !== t2 || $[13] !== internalOperatorOption || $[14] !== orIndex || $[15] !== updateCondition || $[16] !== operator) {
68
+ if ($[10] !== andIndex || $[11] !== debouncedValue || $[12] !== internalOperatorOption || $[13] !== operator || $[14] !== orIndex || $[15] !== t2 || $[16] !== updateCondition) {
69
69
  t3 = [debouncedValue, andIndex, t2, internalOperatorOption, orIndex, updateCondition, operator];
70
- $[10] = debouncedValue;
71
- $[11] = andIndex;
72
- $[12] = t2;
73
- $[13] = internalOperatorOption;
70
+ $[10] = andIndex;
71
+ $[11] = debouncedValue;
72
+ $[12] = internalOperatorOption;
73
+ $[13] = operator;
74
74
  $[14] = orIndex;
75
- $[15] = updateCondition;
76
- $[16] = operator;
75
+ $[15] = t2;
76
+ $[16] = updateCondition;
77
77
  $[17] = t3;
78
78
  } else {
79
79
  t3 = $[17];
80
80
  }
81
81
  useEffect(t1, t3);
82
82
  let t4;
83
- if ($[18] !== internalOperatorOption || $[19] !== internalField) {
83
+ if ($[18] !== internalField?.field?.type || $[19] !== internalOperatorOption) {
84
84
  t4 = ["exists"].includes(internalOperatorOption) || internalField?.field?.type === "checkbox";
85
- $[18] = internalOperatorOption;
86
- $[19] = internalField;
85
+ $[18] = internalField?.field?.type;
86
+ $[19] = internalOperatorOption;
87
87
  $[20] = t4;
88
88
  } else {
89
89
  t4 = $[20];
@@ -157,16 +157,16 @@ export const Condition = props => {
157
157
  t5 = $[33];
158
158
  }
159
159
  let t6;
160
- if ($[34] !== internalField || $[35] !== fields) {
160
+ if ($[34] !== fields || $[35] !== internalField?.value) {
161
161
  t6 = fields.find(field_1 => internalField?.value === field_1.value) || fields[0];
162
- $[34] = internalField;
163
- $[35] = fields;
162
+ $[34] = fields;
163
+ $[35] = internalField?.value;
164
164
  $[36] = t6;
165
165
  } else {
166
166
  t6 = $[36];
167
167
  }
168
168
  let t7;
169
- if ($[37] !== t5 || $[38] !== fields || $[39] !== t6 || $[40] !== internalField || $[41] !== internalOperatorOption || $[42] !== RenderedFilter || $[43] !== internalQueryValue || $[44] !== booleanSelect || $[45] !== valueOptions || $[46] !== removeCondition || $[47] !== andIndex || $[48] !== orIndex || $[49] !== addCondition) {
169
+ if ($[37] !== RenderedFilter || $[38] !== addCondition || $[39] !== andIndex || $[40] !== booleanSelect || $[41] !== fields || $[42] !== internalField || $[43] !== internalOperatorOption || $[44] !== internalQueryValue || $[45] !== orIndex || $[46] !== removeCondition || $[47] !== t5 || $[48] !== t6 || $[49] !== valueOptions) {
170
170
  let t8;
171
171
  if ($[51] === Symbol.for("react.memo_cache_sentinel")) {
172
172
  t8 = operator_0 => {
@@ -177,7 +177,7 @@ export const Condition = props => {
177
177
  t8 = $[51];
178
178
  }
179
179
  let t9;
180
- if ($[52] !== RenderedFilter || $[53] !== internalOperatorOption || $[54] !== internalQueryValue || $[55] !== booleanSelect || $[56] !== internalField || $[57] !== valueOptions) {
180
+ if ($[52] !== RenderedFilter || $[53] !== booleanSelect || $[54] !== internalField || $[55] !== internalOperatorOption || $[56] !== internalQueryValue || $[57] !== valueOptions) {
181
181
  t9 = RenderedFilter || _jsx(DefaultFilter, {
182
182
  booleanSelect,
183
183
  disabled: !internalOperatorOption,
@@ -188,24 +188,24 @@ export const Condition = props => {
188
188
  value: internalQueryValue ?? ""
189
189
  });
190
190
  $[52] = RenderedFilter;
191
- $[53] = internalOperatorOption;
192
- $[54] = internalQueryValue;
193
- $[55] = booleanSelect;
194
- $[56] = internalField;
191
+ $[53] = booleanSelect;
192
+ $[54] = internalField;
193
+ $[55] = internalOperatorOption;
194
+ $[56] = internalQueryValue;
195
195
  $[57] = valueOptions;
196
196
  $[58] = t9;
197
197
  } else {
198
198
  t9 = $[58];
199
199
  }
200
200
  let t10;
201
- if ($[59] !== removeCondition || $[60] !== andIndex || $[61] !== orIndex) {
201
+ if ($[59] !== andIndex || $[60] !== orIndex || $[61] !== removeCondition) {
202
202
  t10 = () => removeCondition({
203
203
  andIndex,
204
204
  orIndex
205
205
  });
206
- $[59] = removeCondition;
207
- $[60] = andIndex;
208
- $[61] = orIndex;
206
+ $[59] = andIndex;
207
+ $[60] = orIndex;
208
+ $[61] = removeCondition;
209
209
  $[62] = t10;
210
210
  } else {
211
211
  t10 = $[62];
@@ -273,19 +273,19 @@ export const Condition = props => {
273
273
  })]
274
274
  })
275
275
  });
276
- $[37] = t5;
277
- $[38] = fields;
278
- $[39] = t6;
279
- $[40] = internalField;
280
- $[41] = internalOperatorOption;
281
- $[42] = RenderedFilter;
282
- $[43] = internalQueryValue;
283
- $[44] = booleanSelect;
284
- $[45] = valueOptions;
276
+ $[37] = RenderedFilter;
277
+ $[38] = addCondition;
278
+ $[39] = andIndex;
279
+ $[40] = booleanSelect;
280
+ $[41] = fields;
281
+ $[42] = internalField;
282
+ $[43] = internalOperatorOption;
283
+ $[44] = internalQueryValue;
284
+ $[45] = orIndex;
285
285
  $[46] = removeCondition;
286
- $[47] = andIndex;
287
- $[48] = orIndex;
288
- $[49] = addCondition;
286
+ $[47] = t5;
287
+ $[48] = t6;
288
+ $[49] = valueOptions;
289
289
  $[50] = t7;
290
290
  } else {
291
291
  t7 = $[50];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useState","useDebounce","useTranslation","Button","ReactSelect","DefaultFilter","baseClass","Condition","props","$","addCondition","andIndex","fieldName","fields","initialValue","operator","orIndex","removeCondition","RenderedFilter","updateCondition","t0","find","field","value","internalField","setInternalField","t","internalOperatorOption","setInternalOperatorOption","internalQueryValue","setInternalQueryValue","debouncedValue","t1","undefined","includes","t2","t3","t4","type","booleanSelect","valueOptions","t5","t6","label","t7","t8","t9","options","field_0","f","field_1","Symbol","for","operator_0","_jsx","disabled","onChange","t10","t11","relation","className","children","_jsxs","isClearable","operators","operator_1","buttonStyle","icon","iconStyle","onClick","round"],"sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useState } from 'react'\n\nimport type { FieldCondition } from '../types.js'\n\nexport type Props = {\n readonly addCondition: ({\n andIndex,\n fieldName,\n orIndex,\n relation,\n }: {\n andIndex: number\n fieldName: string\n orIndex: number\n relation: 'and' | 'or'\n }) => void\n readonly andIndex: number\n readonly fieldName: string\n readonly fields: FieldCondition[]\n readonly initialValue: string\n readonly operator: Operator\n readonly orIndex: number\n readonly removeCondition: ({ andIndex, orIndex }: { andIndex: number; orIndex: number }) => void\n readonly RenderedFilter: React.ReactNode\n readonly updateCondition: ({\n andIndex,\n fieldName,\n operator,\n orIndex,\n value,\n }: {\n andIndex: number\n fieldName: string\n operator: string\n orIndex: number\n value: string\n }) => void\n}\n\nimport type { Operator } from 'payload'\n\nimport type { Option } from '../../ReactSelect/index.js'\n\nimport { useDebounce } from '../../../hooks/useDebounce.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 './index.scss'\n\nconst baseClass = 'condition'\n\nexport const Condition: React.FC<Props> = (props) => {\n const {\n addCondition,\n andIndex,\n fieldName,\n fields,\n initialValue,\n operator,\n orIndex,\n removeCondition,\n RenderedFilter,\n updateCondition,\n } = props\n const [internalField, setInternalField] = useState<FieldCondition>(() =>\n fields.find((field) => fieldName === field.value),\n )\n\n const { t } = useTranslation()\n const [internalOperatorOption, setInternalOperatorOption] = useState<Operator>(operator)\n const [internalQueryValue, setInternalQueryValue] = useState<string>(initialValue)\n\n const debouncedValue = useDebounce(internalQueryValue, 300)\n\n useEffect(() => {\n // This is to trigger changes when the debounced value changes\n if (\n (internalField?.value || typeof internalField?.value === 'number') &&\n internalOperatorOption &&\n ![null, undefined].includes(debouncedValue)\n ) {\n updateCondition({\n andIndex,\n fieldName: internalField.value,\n operator: internalOperatorOption,\n orIndex,\n value: debouncedValue,\n })\n }\n }, [\n debouncedValue,\n andIndex,\n internalField?.value,\n internalOperatorOption,\n orIndex,\n updateCondition,\n operator,\n ])\n\n const booleanSelect =\n ['exists'].includes(internalOperatorOption) || internalField?.field?.type === 'checkbox'\n\n let valueOptions\n\n if (booleanSelect) {\n valueOptions = [\n { label: t('general:true'), value: 'true' },\n { label: t('general:false'), value: 'false' },\n ]\n } else if (internalField?.field && 'options' in internalField.field) {\n valueOptions = internalField.field.options\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 isClearable={false}\n onChange={(field: Option) => {\n setInternalField(fields.find((f) => f.value === field.value))\n setInternalOperatorOption(undefined)\n setInternalQueryValue(undefined)\n }}\n options={fields}\n value={fields.find((field) => internalField?.value === field.value) || fields[0]}\n />\n </div>\n <div className={`${baseClass}__operator`}>\n <ReactSelect\n disabled={!internalField?.value && typeof internalField?.value !== 'number'}\n isClearable={false}\n onChange={(operator: Option<Operator>) => {\n setInternalOperatorOption(operator.value)\n }}\n options={internalField?.operators}\n value={\n internalField?.operators.find(\n (operator) => internalOperatorOption === operator.value,\n ) || null\n }\n />\n </div>\n <div className={`${baseClass}__value`}>\n {RenderedFilter || (\n <DefaultFilter\n booleanSelect={booleanSelect}\n disabled={!internalOperatorOption}\n internalField={internalField}\n onChange={setInternalQueryValue}\n operator={internalOperatorOption}\n options={valueOptions}\n value={internalQueryValue ?? ''}\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 fieldName: fields[0].value,\n orIndex,\n relation: 'and',\n })\n }\n round\n />\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useState","useDebounce","useTranslation","Button","ReactSelect","DefaultFilter","baseClass","Condition","props","$","addCondition","andIndex","fieldName","fields","initialValue","operator","orIndex","removeCondition","RenderedFilter","updateCondition","t0","find","field","value","internalField","setInternalField","t","internalOperatorOption","setInternalOperatorOption","internalQueryValue","setInternalQueryValue","debouncedValue","t1","undefined","includes","t2","t3","t4","type","booleanSelect","valueOptions","t5","t6","label","t7","t8","t9","options","field_0","f","field_1","Symbol","for","operator_0","_jsx","disabled","onChange","t10","t11","relation","className","children","_jsxs","isClearable","operators","operator_1","buttonStyle","icon","iconStyle","onClick","round"],"sources":["../../../../src/elements/WhereBuilder/Condition/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useState } from 'react'\n\nimport type { FieldCondition } from '../types.js'\n\nexport type Props = {\n readonly addCondition: ({\n andIndex,\n fieldName,\n orIndex,\n relation,\n }: {\n andIndex: number\n fieldName: string\n orIndex: number\n relation: 'and' | 'or'\n }) => void\n readonly andIndex: number\n readonly fieldName: string\n readonly fields: FieldCondition[]\n readonly initialValue: string\n readonly operator: Operator\n readonly orIndex: number\n readonly removeCondition: ({ andIndex, orIndex }: { andIndex: number; orIndex: number }) => void\n readonly RenderedFilter: React.ReactNode\n readonly updateCondition: ({\n andIndex,\n fieldName,\n operator,\n orIndex,\n value,\n }: {\n andIndex: number\n fieldName: string\n operator: string\n orIndex: number\n value: string\n }) => void\n}\n\nimport type { Operator } from 'payload'\n\nimport type { Option } from '../../ReactSelect/index.js'\n\nimport { useDebounce } from '../../../hooks/useDebounce.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 './index.scss'\n\nconst baseClass = 'condition'\n\nexport const Condition: React.FC<Props> = (props) => {\n const {\n addCondition,\n andIndex,\n fieldName,\n fields,\n initialValue,\n operator,\n orIndex,\n removeCondition,\n RenderedFilter,\n updateCondition,\n } = props\n const [internalField, setInternalField] = useState<FieldCondition>(() =>\n fields.find((field) => fieldName === field.value),\n )\n\n const { t } = useTranslation()\n const [internalOperatorOption, setInternalOperatorOption] = useState<Operator>(operator)\n const [internalQueryValue, setInternalQueryValue] = useState<string>(initialValue)\n\n const debouncedValue = useDebounce(internalQueryValue, 300)\n\n useEffect(() => {\n // This is to trigger changes when the debounced value changes\n if (\n (internalField?.value || typeof internalField?.value === 'number') &&\n internalOperatorOption &&\n ![null, undefined].includes(debouncedValue)\n ) {\n updateCondition({\n andIndex,\n fieldName: internalField.value,\n operator: internalOperatorOption,\n orIndex,\n value: debouncedValue,\n })\n }\n }, [\n debouncedValue,\n andIndex,\n internalField?.value,\n internalOperatorOption,\n orIndex,\n updateCondition,\n operator,\n ])\n\n const booleanSelect =\n ['exists'].includes(internalOperatorOption) || internalField?.field?.type === 'checkbox'\n\n let valueOptions\n\n if (booleanSelect) {\n valueOptions = [\n { label: t('general:true'), value: 'true' },\n { label: t('general:false'), value: 'false' },\n ]\n } else if (internalField?.field && 'options' in internalField.field) {\n valueOptions = internalField.field.options\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 isClearable={false}\n onChange={(field: Option) => {\n setInternalField(fields.find((f) => f.value === field.value))\n setInternalOperatorOption(undefined)\n setInternalQueryValue(undefined)\n }}\n options={fields}\n value={fields.find((field) => internalField?.value === field.value) || fields[0]}\n />\n </div>\n <div className={`${baseClass}__operator`}>\n <ReactSelect\n disabled={!internalField?.value && typeof internalField?.value !== 'number'}\n isClearable={false}\n onChange={(operator: Option<Operator>) => {\n setInternalOperatorOption(operator.value)\n }}\n options={internalField?.operators}\n value={\n internalField?.operators.find(\n (operator) => internalOperatorOption === operator.value,\n ) || null\n }\n />\n </div>\n <div className={`${baseClass}__value`}>\n {RenderedFilter || (\n <DefaultFilter\n booleanSelect={booleanSelect}\n disabled={!internalOperatorOption}\n internalField={internalField}\n onChange={setInternalQueryValue}\n operator={internalOperatorOption}\n options={valueOptions}\n value={internalQueryValue ?? ''}\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 fieldName: fields[0].value,\n orIndex,\n relation: 'and',\n })\n }\n round\n />\n </div>\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -173,7 +173,7 @@ export const WhereBuilder = props => {
173
173
  const removeCondition = t6;
174
174
  let t7;
175
175
  let t8;
176
- if ($[15] !== shouldUpdateQuery || $[16] !== handleWhereChange || $[17] !== conditions) {
176
+ if ($[15] !== conditions || $[16] !== handleWhereChange || $[17] !== shouldUpdateQuery) {
177
177
  t7 = () => {
178
178
  if (shouldUpdateQuery) {
179
179
  const handleChange = async function handleChange() {
@@ -186,9 +186,9 @@ export const WhereBuilder = props => {
186
186
  }
187
187
  };
188
188
  t8 = [conditions, handleWhereChange, shouldUpdateQuery];
189
- $[15] = shouldUpdateQuery;
189
+ $[15] = conditions;
190
190
  $[16] = handleWhereChange;
191
- $[17] = conditions;
191
+ $[17] = shouldUpdateQuery;
192
192
  $[18] = t7;
193
193
  $[19] = t8;
194
194
  } else {
@@ -197,7 +197,7 @@ export const WhereBuilder = props => {
197
197
  }
198
198
  React.useEffect(t7, t8);
199
199
  let t9;
200
- if ($[20] !== conditions || $[21] !== collectionPluralLabel || $[22] !== i18n || $[23] !== t || $[24] !== addCondition || $[25] !== reducedFields || $[26] !== removeCondition || $[27] !== renderedFilters || $[28] !== updateCondition) {
200
+ if ($[20] !== addCondition || $[21] !== collectionPluralLabel || $[22] !== conditions || $[23] !== i18n || $[24] !== reducedFields || $[25] !== removeCondition || $[26] !== renderedFilters || $[27] !== t || $[28] !== updateCondition) {
201
201
  t9 = _jsxs("div", {
202
202
  className: baseClass,
203
203
  children: [conditions.length > 0 && _jsxs(React.Fragment, {
@@ -282,14 +282,14 @@ export const WhereBuilder = props => {
282
282
  })]
283
283
  })]
284
284
  });
285
- $[20] = conditions;
285
+ $[20] = addCondition;
286
286
  $[21] = collectionPluralLabel;
287
- $[22] = i18n;
288
- $[23] = t;
289
- $[24] = addCondition;
290
- $[25] = reducedFields;
291
- $[26] = removeCondition;
292
- $[27] = renderedFilters;
287
+ $[22] = conditions;
288
+ $[23] = i18n;
289
+ $[24] = reducedFields;
290
+ $[25] = removeCondition;
291
+ $[26] = renderedFilters;
292
+ $[27] = t;
293
293
  $[28] = updateCondition;
294
294
  $[29] = t9;
295
295
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useEffect","useState","useListQuery","useTranslation","Button","Condition","reduceClientFields","transformWhereQuery","validateWhereQuery","baseClass","WhereBuilder","props","$","collectionPluralLabel","fields","renderedFilters","i18n","t","t0","reducedFields","setReducedColumns","t1","t2","handleWhereChange","query","shouldUpdateQuery","setShouldUpdateQuery","t3","where","whereFromSearch","or","transformedWhere","console","warn","JSON","stringify","conditions","setConditions","t4","t5","andIndex","fieldName","orIndex","relation","newConditions","and","splice","push","addCondition","t6","andIndex_0","fieldName_0","operator","orIndex_0","value","valueArg","existingRowCondition","newRowCondition","newConditions_0","undefined","includes","updateCondition","t7","andIndex_1","orIndex_1","newConditions_1","length","removeCondition","t8","handleChange","t9","_jsxs","className","children","Fragment","_jsx","label","map","orIndex_2","compoundOrKey","Array","isArray","_","andIndex_2","initialFieldName","Object","keys","initialOperator","initialValue","RenderedFilter","get","buttonStyle","icon","iconPosition","iconStyle","onClick"],"sources":["../../../src/elements/WhereBuilder/index.tsx"],"sourcesContent":["'use client'\nimport type { Operator } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport type { WhereBuilderProps } from './types.js'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { Condition } from './Condition/index.js'\nimport './index.scss'\nimport { reduceClientFields } from './reduceClientFields.js'\nimport { transformWhereQuery } from './transformWhereQuery.js'\nimport validateWhereQuery from './validateWhereQuery.js'\n\nconst baseClass = 'where-builder'\n\nexport { WhereBuilderProps }\n\n/**\n * The WhereBuilder component is used to render the filter controls for a collection's list view.\n * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where).\n */\nexport const WhereBuilder: React.FC<WhereBuilderProps> = (props) => {\n const { collectionPluralLabel, fields, renderedFilters } = props\n const { i18n, t } = useTranslation()\n\n const [reducedFields, setReducedColumns] = useState(() => reduceClientFields({ fields, i18n }))\n\n useEffect(() => {\n setReducedColumns(reduceClientFields({ fields, i18n }))\n }, [fields, i18n])\n\n const { handleWhereChange, query } = useListQuery()\n const [shouldUpdateQuery, setShouldUpdateQuery] = React.useState(false)\n\n // This handles initializing the where conditions from the search query (URL). That way, if you pass in\n // query params to the URL, the where conditions will be initialized from those and displayed in the UI.\n // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post\n /*\n stored conditions look like this:\n [\n _or_ & _and_ queries have the same shape:\n {\n and: [{\n category: {\n equals: 'category-a'\n }\n }]\n },\n\n {\n and:[{\n category: {\n equals: 'category-b'\n },\n text: {\n not_equals: 'oranges'\n },\n }]\n }\n ]\n */\n\n const [conditions, setConditions] = React.useState(() => {\n const whereFromSearch = query.where\n\n if (whereFromSearch) {\n if (validateWhereQuery(whereFromSearch)) {\n return whereFromSearch.or\n }\n // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format\n const transformedWhere = transformWhereQuery(whereFromSearch)\n\n if (validateWhereQuery(transformedWhere)) {\n return transformedWhere.or\n }\n\n console.warn(`Invalid where query in URL: ${JSON.stringify(whereFromSearch)}`) // eslint-disable-line no-console\n }\n\n return []\n })\n\n const addCondition = React.useCallback(\n ({ andIndex, fieldName, orIndex, relation }) => {\n const newConditions = [...conditions]\n if (relation === 'and') {\n newConditions[orIndex].and.splice(andIndex, 0, { [fieldName]: {} })\n } else {\n newConditions.push({\n and: [\n {\n [fieldName]: {},\n },\n ],\n })\n }\n setConditions(newConditions)\n },\n [conditions],\n )\n\n const updateCondition = React.useCallback(\n ({ andIndex, fieldName, operator, orIndex, value: valueArg }) => {\n const existingRowCondition = conditions[orIndex].and[andIndex]\n if (typeof existingRowCondition === 'object' && fieldName && operator) {\n const value = valueArg ?? (operator ? existingRowCondition[operator] : '')\n const newRowCondition = {\n [fieldName]: operator ? { [operator]: value } : {},\n }\n\n if (JSON.stringify(existingRowCondition) !== JSON.stringify(newRowCondition)) {\n const newConditions = [...conditions]\n newConditions[orIndex].and[andIndex] = newRowCondition\n setConditions(newConditions)\n if (![null, undefined].includes(value)) {\n // only update query when field/operator/value are filled out\n setShouldUpdateQuery(true)\n }\n }\n }\n },\n [conditions],\n )\n\n const removeCondition = React.useCallback(\n ({ andIndex, orIndex }) => {\n const newConditions = [...conditions]\n newConditions[orIndex].and.splice(andIndex, 1)\n if (newConditions[orIndex].and.length === 0) {\n newConditions.splice(orIndex, 1)\n }\n setConditions(newConditions)\n setShouldUpdateQuery(true)\n },\n [conditions],\n )\n\n React.useEffect(() => {\n if (shouldUpdateQuery) {\n async function handleChange() {\n await handleWhereChange({ or: conditions })\n setShouldUpdateQuery(false)\n }\n void handleChange()\n }\n }, [conditions, handleWhereChange, shouldUpdateQuery])\n\n return (\n <div className={baseClass}>\n {conditions.length > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__label`}>\n {t('general:filterWhere', { label: getTranslation(collectionPluralLabel, i18n) })}\n </div>\n <ul className={`${baseClass}__or-filters`}>\n {conditions.map((or, orIndex) => {\n const compoundOrKey = `${orIndex}_${Array.isArray(or?.and) ? or.and.length : ''}`\n\n return (\n <li key={compoundOrKey}>\n {orIndex !== 0 && <div className={`${baseClass}__label`}>{t('general:or')}</div>}\n <ul className={`${baseClass}__and-filters`}>\n {Array.isArray(or?.and) &&\n or.and.map((_, andIndex) => {\n const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0]\n const initialOperator =\n (Object.keys(\n conditions[orIndex].and[andIndex]?.[initialFieldName] || {},\n )?.[0] as Operator) || undefined\n const initialValue =\n conditions[orIndex].and[andIndex]?.[initialFieldName]?.[\n initialOperator\n ] || ''\n\n return (\n <li key={andIndex}>\n {andIndex !== 0 && (\n <div className={`${baseClass}__label`}>{t('general:and')}</div>\n )}\n <Condition\n addCondition={addCondition}\n andIndex={andIndex}\n fieldName={initialFieldName}\n fields={reducedFields}\n initialValue={initialValue}\n operator={initialOperator}\n orIndex={orIndex}\n removeCondition={removeCondition}\n RenderedFilter={renderedFilters?.get(initialFieldName)}\n updateCondition={updateCondition}\n />\n </li>\n )\n })}\n </ul>\n </li>\n )\n })}\n </ul>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-or`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }}\n >\n {t('general:or')}\n </Button>\n </React.Fragment>\n )}\n {conditions.length === 0 && (\n <div className={`${baseClass}__no-filters`}>\n <div className={`${baseClass}__label`}>{t('general:noFiltersSet')}</div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-first-filter`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0) {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }\n }}\n >\n {t('general:addFilter')}\n </Button>\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useEffect","useState","useListQuery","useTranslation","Button","Condition","reduceClientFields","transformWhereQuery","validateWhereQuery","baseClass","WhereBuilder","props","$","collectionPluralLabel","fields","renderedFilters","i18n","t","t0","reducedFields","setReducedColumns","t1","t2","handleWhereChange","query","shouldUpdateQuery","setShouldUpdateQuery","t3","where","whereFromSearch","or","transformedWhere","console","warn","JSON","stringify","conditions","setConditions","t4","t5","andIndex","fieldName","orIndex","relation","newConditions","and","splice","push","addCondition","t6","andIndex_0","fieldName_0","operator","orIndex_0","value","valueArg","existingRowCondition","newRowCondition","newConditions_0","undefined","includes","updateCondition","t7","andIndex_1","orIndex_1","newConditions_1","length","removeCondition","t8","handleChange","t9","_jsxs","className","children","Fragment","_jsx","label","map","orIndex_2","compoundOrKey","Array","isArray","_","andIndex_2","initialFieldName","Object","keys","initialOperator","initialValue","RenderedFilter","get","buttonStyle","icon","iconPosition","iconStyle","onClick"],"sources":["../../../src/elements/WhereBuilder/index.tsx"],"sourcesContent":["'use client'\nimport type { Operator } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useEffect, useState } from 'react'\n\nimport type { WhereBuilderProps } from './types.js'\n\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { Condition } from './Condition/index.js'\nimport './index.scss'\nimport { reduceClientFields } from './reduceClientFields.js'\nimport { transformWhereQuery } from './transformWhereQuery.js'\nimport validateWhereQuery from './validateWhereQuery.js'\n\nconst baseClass = 'where-builder'\n\nexport { WhereBuilderProps }\n\n/**\n * The WhereBuilder component is used to render the filter controls for a collection's list view.\n * It is part of the {@link ListControls} component which is used to render the controls (search, filter, where).\n */\nexport const WhereBuilder: React.FC<WhereBuilderProps> = (props) => {\n const { collectionPluralLabel, fields, renderedFilters } = props\n const { i18n, t } = useTranslation()\n\n const [reducedFields, setReducedColumns] = useState(() => reduceClientFields({ fields, i18n }))\n\n useEffect(() => {\n setReducedColumns(reduceClientFields({ fields, i18n }))\n }, [fields, i18n])\n\n const { handleWhereChange, query } = useListQuery()\n const [shouldUpdateQuery, setShouldUpdateQuery] = React.useState(false)\n\n // This handles initializing the where conditions from the search query (URL). That way, if you pass in\n // query params to the URL, the where conditions will be initialized from those and displayed in the UI.\n // Example: /admin/collections/posts?where[or][0][and][0][text][equals]=example%20post\n /*\n stored conditions look like this:\n [\n _or_ & _and_ queries have the same shape:\n {\n and: [{\n category: {\n equals: 'category-a'\n }\n }]\n },\n\n {\n and:[{\n category: {\n equals: 'category-b'\n },\n text: {\n not_equals: 'oranges'\n },\n }]\n }\n ]\n */\n\n const [conditions, setConditions] = React.useState(() => {\n const whereFromSearch = query.where\n\n if (whereFromSearch) {\n if (validateWhereQuery(whereFromSearch)) {\n return whereFromSearch.or\n }\n // Transform the where query to be in the right format. This will transform something simple like [text][equals]=example%20post to the right format\n const transformedWhere = transformWhereQuery(whereFromSearch)\n\n if (validateWhereQuery(transformedWhere)) {\n return transformedWhere.or\n }\n\n console.warn(`Invalid where query in URL: ${JSON.stringify(whereFromSearch)}`) // eslint-disable-line no-console\n }\n\n return []\n })\n\n const addCondition = React.useCallback(\n ({ andIndex, fieldName, orIndex, relation }) => {\n const newConditions = [...conditions]\n if (relation === 'and') {\n newConditions[orIndex].and.splice(andIndex, 0, { [fieldName]: {} })\n } else {\n newConditions.push({\n and: [\n {\n [fieldName]: {},\n },\n ],\n })\n }\n setConditions(newConditions)\n },\n [conditions],\n )\n\n const updateCondition = React.useCallback(\n ({ andIndex, fieldName, operator, orIndex, value: valueArg }) => {\n const existingRowCondition = conditions[orIndex].and[andIndex]\n if (typeof existingRowCondition === 'object' && fieldName && operator) {\n const value = valueArg ?? (operator ? existingRowCondition[operator] : '')\n const newRowCondition = {\n [fieldName]: operator ? { [operator]: value } : {},\n }\n\n if (JSON.stringify(existingRowCondition) !== JSON.stringify(newRowCondition)) {\n const newConditions = [...conditions]\n newConditions[orIndex].and[andIndex] = newRowCondition\n setConditions(newConditions)\n if (![null, undefined].includes(value)) {\n // only update query when field/operator/value are filled out\n setShouldUpdateQuery(true)\n }\n }\n }\n },\n [conditions],\n )\n\n const removeCondition = React.useCallback(\n ({ andIndex, orIndex }) => {\n const newConditions = [...conditions]\n newConditions[orIndex].and.splice(andIndex, 1)\n if (newConditions[orIndex].and.length === 0) {\n newConditions.splice(orIndex, 1)\n }\n setConditions(newConditions)\n setShouldUpdateQuery(true)\n },\n [conditions],\n )\n\n React.useEffect(() => {\n if (shouldUpdateQuery) {\n async function handleChange() {\n await handleWhereChange({ or: conditions })\n setShouldUpdateQuery(false)\n }\n void handleChange()\n }\n }, [conditions, handleWhereChange, shouldUpdateQuery])\n\n return (\n <div className={baseClass}>\n {conditions.length > 0 && (\n <React.Fragment>\n <div className={`${baseClass}__label`}>\n {t('general:filterWhere', { label: getTranslation(collectionPluralLabel, i18n) })}\n </div>\n <ul className={`${baseClass}__or-filters`}>\n {conditions.map((or, orIndex) => {\n const compoundOrKey = `${orIndex}_${Array.isArray(or?.and) ? or.and.length : ''}`\n\n return (\n <li key={compoundOrKey}>\n {orIndex !== 0 && <div className={`${baseClass}__label`}>{t('general:or')}</div>}\n <ul className={`${baseClass}__and-filters`}>\n {Array.isArray(or?.and) &&\n or.and.map((_, andIndex) => {\n const initialFieldName = Object.keys(conditions[orIndex].and[andIndex])[0]\n const initialOperator =\n (Object.keys(\n conditions[orIndex].and[andIndex]?.[initialFieldName] || {},\n )?.[0] as Operator) || undefined\n const initialValue =\n conditions[orIndex].and[andIndex]?.[initialFieldName]?.[\n initialOperator\n ] || ''\n\n return (\n <li key={andIndex}>\n {andIndex !== 0 && (\n <div className={`${baseClass}__label`}>{t('general:and')}</div>\n )}\n <Condition\n addCondition={addCondition}\n andIndex={andIndex}\n fieldName={initialFieldName}\n fields={reducedFields}\n initialValue={initialValue}\n operator={initialOperator}\n orIndex={orIndex}\n removeCondition={removeCondition}\n RenderedFilter={renderedFilters?.get(initialFieldName)}\n updateCondition={updateCondition}\n />\n </li>\n )\n })}\n </ul>\n </li>\n )\n })}\n </ul>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-or`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }}\n >\n {t('general:or')}\n </Button>\n </React.Fragment>\n )}\n {conditions.length === 0 && (\n <div className={`${baseClass}__no-filters`}>\n <div className={`${baseClass}__label`}>{t('general:noFiltersSet')}</div>\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-first-filter`}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n if (reducedFields.length > 0) {\n addCondition({\n andIndex: 0,\n fieldName: reducedFields[0].value,\n orIndex: conditions.length,\n relation: 'or',\n })\n }\n }}\n >\n {t('general:addFilter')}\n </Button>\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"reduceClientFields.d.ts","sourceRoot":"","sources":["../../../src/elements/WhereBuilder/reduceClientFields.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,+CAK5B,sBAAsB,KAAG,cAAc,EA2IzC,CAAA"}
1
+ {"version":3,"file":"reduceClientFields.d.ts","sourceRoot":"","sources":["../../../src/elements/WhereBuilder/reduceClientFields.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAK1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAMhD,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,IAAI,EAAE,UAAU,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,+CAK5B,sBAAsB,KAAG,cAAc,EA0IzC,CAAA"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { getTranslation } from '@payloadcms/translations';
4
- import { tabHasName } from 'payload/shared';
4
+ import { fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared';
5
5
  import { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js';
6
6
  import { combineLabel } from '../FieldSelect/index.js';
7
7
  import fieldTypes from './field-types.js';
@@ -16,7 +16,7 @@ export const reduceClientFields = ({
16
16
  pathPrefix
17
17
  }) => {
18
18
  return fields.reduce((reduced, field) => {
19
- if (field.admin?.disableListFilter) {
19
+ if (field.admin?.disableListFilter || fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) {
20
20
  return reduced;
21
21
  }
22
22
  if (field.type === 'tabs' && 'tabs' in field) {
@@ -1 +1 @@
1
- {"version":3,"file":"reduceClientFields.js","names":["getTranslation","tabHasName","createNestedClientFieldPath","combineLabel","fieldTypes","reduceClientFields","fields","i18n","labelPrefix","pathPrefix","reduce","reduced","field","admin","disableListFilter","type","tabs","forEach","tab","label","localizedTabLabel","labelWithPrefix","tabPathPrefix","name","push","translatedLabel","pathWithPrefix","operatorKeys","Set","operators","acc","operator","has","value","add","operatorKey","t","localizedLabel","formattedLabel","prefix","formattedValue","formattedField"],"sources":["../../../src/elements/WhereBuilder/reduceClientFields.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { tabHasName } from 'payload/shared'\n\nimport type { FieldCondition } from './types.js'\n\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { combineLabel } from '../FieldSelect/index.js'\nimport fieldTypes from './field-types.js'\n\nexport type ReduceClientFieldsArgs = {\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Reduces a field map to a flat array of fields with labels and values.\n * Used in the WhereBuilder component to render the fields in the dropdown.\n */\nexport const reduceClientFields = ({\n fields,\n i18n,\n labelPrefix,\n pathPrefix,\n}: ReduceClientFieldsArgs): FieldCondition[] => {\n return fields.reduce((reduced, field) => {\n if (field.admin?.disableListFilter) {\n return reduced\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const tabs = field.tabs\n\n tabs.forEach((tab) => {\n if (typeof tab.label !== 'boolean') {\n const localizedTabLabel = getTranslation(tab.label, i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n // Make sure we handle nested tabs\n const tabPathPrefix =\n tabHasName(tab) && tab.name\n ? pathPrefix\n ? pathPrefix + '.' + tab.name\n : tab.name\n : pathPrefix\n\n if (typeof localizedTabLabel === 'string') {\n reduced.push(\n ...reduceClientFields({\n fields: tab.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: tabPathPrefix,\n }),\n )\n }\n }\n })\n return reduced\n }\n\n // Rows cant have labels, so we need to handle them differently\n if (field.type === 'row' && 'fields' in field) {\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'collapsible' && 'fields' in field) {\n const localizedTabLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'group' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n return reduced\n }\n\n if (typeof fieldTypes[field.type] === 'object') {\n const operatorKeys = new Set()\n const operators = fieldTypes[field.type].operators.reduce((acc, operator) => {\n if (!operatorKeys.has(operator.value)) {\n operatorKeys.add(operator.value)\n const operatorKey = `operators:${operator.label}` as ClientTranslationKeys\n acc.push({\n ...operator,\n label: i18n.t(operatorKey),\n })\n }\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n const formattedValue = pathPrefix\n ? createNestedClientFieldPath(pathPrefix, field)\n : field.name\n\n const formattedField: FieldCondition = {\n label: formattedLabel,\n value: formattedValue,\n ...fieldTypes[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n\n return reduced\n }, [])\n}\n"],"mappings":"AAAA;;AAIA,SAASA,cAAc,QAAQ;AAC/B,SAASC,UAAU,QAAQ;AAI3B,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,YAAY,QAAQ;AAC7B,OAAOC,UAAA,MAAgB;AASvB;;;;AAIA,OAAO,MAAMC,kBAAA,GAAqBA,CAAC;EACjCC,MAAM;EACNC,IAAI;EACJC,WAAW;EACXC;AAAU,CACa;EACvB,OAAOH,MAAA,CAAOI,MAAM,CAAC,CAACC,OAAA,EAASC,KAAA;IAC7B,IAAIA,KAAA,CAAMC,KAAK,EAAEC,iBAAA,EAAmB;MAClC,OAAOH,OAAA;IACT;IAEA,IAAIC,KAAA,CAAMG,IAAI,KAAK,UAAU,UAAUH,KAAA,EAAO;MAC5C,MAAMI,IAAA,GAAOJ,KAAA,CAAMI,IAAI;MAEvBA,IAAA,CAAKC,OAAO,CAAEC,GAAA;QACZ,IAAI,OAAOA,GAAA,CAAIC,KAAK,KAAK,WAAW;UAClC,MAAMC,iBAAA,GAAoBpB,cAAA,CAAekB,GAAA,CAAIC,KAAK,EAAEZ,IAAA;UAEpD,MAAMc,eAAA,GAAkBb,WAAA,GACpBA,WAAA,GAAc,QAAQY,iBAAA,GACtBA,iBAAA;UAEJ;UACA,MAAME,aAAA,GACJrB,UAAA,CAAWiB,GAAA,KAAQA,GAAA,CAAIK,IAAI,GACvBd,UAAA,GACEA,UAAA,GAAa,MAAMS,GAAA,CAAIK,IAAI,GAC3BL,GAAA,CAAIK,IAAI,GACVd,UAAA;UAEN,IAAI,OAAOW,iBAAA,KAAsB,UAAU;YACzCT,OAAA,CAAQa,IAAI,IACPnB,kBAAA,CAAmB;cACpBC,MAAA,EAAQY,GAAA,CAAIZ,MAAM;cAClBC,IAAA;cACAC,WAAA,EAAaa,eAAA;cACbZ,UAAA,EAAYa;YACd;UAEJ;QACF;MACF;MACA,OAAOX,OAAA;IACT;IAEA;IACA,IAAIC,KAAA,CAAMG,IAAI,KAAK,SAAS,YAAYH,KAAA,EAAO;MAC7CD,OAAA,CAAQa,IAAI,IACPnB,kBAAA,CAAmB;QACpBC,MAAA,EAAQM,KAAA,CAAMN,MAAM;QACpBC,IAAA;QACAC,WAAA;QACAC;MACF;MAEF,OAAOE,OAAA;IACT;IAEA,IAAIC,KAAA,CAAMG,IAAI,KAAK,iBAAiB,YAAYH,KAAA,EAAO;MACrD,MAAMQ,iBAAA,GAAoBpB,cAAA,CAAeY,KAAA,CAAMO,KAAK,IAAI,IAAIZ,IAAA;MAE5D,MAAMc,eAAA,GAAkBb,WAAA,GACpBA,WAAA,GAAc,QAAQY,iBAAA,GACtBA,iBAAA;MAEJT,OAAA,CAAQa,IAAI,IACPnB,kBAAA,CAAmB;QACpBC,MAAA,EAAQM,KAAA,CAAMN,MAAM;QACpBC,IAAA;QACAC,WAAA,EAAaa,eAAA;QACbZ;MACF;MAEF,OAAOE,OAAA;IACT;IAEA,IAAIC,KAAA,CAAMG,IAAI,KAAK,WAAW,YAAYH,KAAA,EAAO;MAC/C,MAAMa,eAAA,GAAkBzB,cAAA,CAAeY,KAAA,CAAMO,KAAK,IAAI,IAAIZ,IAAA;MAE1D,MAAMc,eAAA,GAAkBb,WAAA,GACpBiB,eAAA,GACEjB,WAAA,GAAc,QAAQiB,eAAA,GACtBjB,WAAA,GACFiB,eAAA;MAEJ;MACA,MAAMC,cAAA,GAAiBd,KAAA,CAAMW,IAAI,GAC7Bd,UAAA,GACEA,UAAA,GAAa,MAAMG,KAAA,CAAMW,IAAI,GAC7BX,KAAA,CAAMW,IAAI,GACZd,UAAA;MAEJE,OAAA,CAAQa,IAAI,IACPnB,kBAAA,CAAmB;QACpBC,MAAA,EAAQM,KAAA,CAAMN,MAAM;QACpBC,IAAA;QACAC,WAAA,EAAaa,eAAA;QACbZ,UAAA,EAAYiB;MACd;MAEF,OAAOf,OAAA;IACT;IAEA,IAAI,OAAOP,UAAU,CAACQ,KAAA,CAAMG,IAAI,CAAC,KAAK,UAAU;MAC9C,MAAMY,YAAA,GAAe,IAAIC,GAAA;MACzB,MAAMC,SAAA,GAAYzB,UAAU,CAACQ,KAAA,CAAMG,IAAI,CAAC,CAACc,SAAS,CAACnB,MAAM,CAAC,CAACoB,GAAA,EAAKC,QAAA;QAC9D,IAAI,CAACJ,YAAA,CAAaK,GAAG,CAACD,QAAA,CAASE,KAAK,GAAG;UACrCN,YAAA,CAAaO,GAAG,CAACH,QAAA,CAASE,KAAK;UAC/B,MAAME,WAAA,GAAc,aAAaJ,QAAA,CAASZ,KAAK,EAAE;UACjDW,GAAA,CAAIN,IAAI,CAAC;YACP,GAAGO,QAAQ;YACXZ,KAAA,EAAOZ,IAAA,CAAK6B,CAAC,CAACD,WAAA;UAChB;QACF;QACA,OAAOL,GAAA;MACT,GAAG,EAAE;MAEL,MAAMO,cAAA,GAAiBrC,cAAA,CAAeY,KAAA,CAAMO,KAAK,IAAI,IAAIZ,IAAA;MAEzD,MAAM+B,cAAA,GAAiB9B,WAAA,GACnBL,YAAA,CAAa;QACXS,KAAA;QACA2B,MAAA,EAAQ/B;MACV,KACA6B,cAAA;MAEJ,MAAMG,cAAA,GAAiB/B,UAAA,GACnBP,2BAAA,CAA4BO,UAAA,EAAYG,KAAA,IACxCA,KAAA,CAAMW,IAAI;MAEd,MAAMkB,cAAA,GAAiC;QACrCtB,KAAA,EAAOmB,cAAA;QACPL,KAAA,EAAOO,cAAA;QACP,GAAGpC,UAAU,CAACQ,KAAA,CAAMG,IAAI,CAAC;QACzBH,KAAA;QACAiB;MACF;MAEAlB,OAAA,CAAQa,IAAI,CAACiB,cAAA;MACb,OAAO9B,OAAA;IACT;IAEA,OAAOA,OAAA;EACT,GAAG,EAAE;AACP","ignoreList":[]}
1
+ {"version":3,"file":"reduceClientFields.js","names":["getTranslation","fieldIsHiddenOrDisabled","fieldIsID","tabHasName","createNestedClientFieldPath","combineLabel","fieldTypes","reduceClientFields","fields","i18n","labelPrefix","pathPrefix","reduce","reduced","field","admin","disableListFilter","type","tabs","forEach","tab","label","localizedTabLabel","labelWithPrefix","tabPathPrefix","name","push","translatedLabel","pathWithPrefix","operatorKeys","Set","operators","acc","operator","has","value","add","operatorKey","t","localizedLabel","formattedLabel","prefix","formattedValue","formattedField"],"sources":["../../../src/elements/WhereBuilder/reduceClientFields.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared'\n\nimport type { FieldCondition } from './types.js'\n\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { combineLabel } from '../FieldSelect/index.js'\nimport fieldTypes from './field-types.js'\n\nexport type ReduceClientFieldsArgs = {\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Reduces a field map to a flat array of fields with labels and values.\n * Used in the WhereBuilder component to render the fields in the dropdown.\n */\nexport const reduceClientFields = ({\n fields,\n i18n,\n labelPrefix,\n pathPrefix,\n}: ReduceClientFieldsArgs): FieldCondition[] => {\n return fields.reduce((reduced, field) => {\n if (field.admin?.disableListFilter || (fieldIsHiddenOrDisabled(field) && !fieldIsID(field))) {\n return reduced\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const tabs = field.tabs\n\n tabs.forEach((tab) => {\n if (typeof tab.label !== 'boolean') {\n const localizedTabLabel = getTranslation(tab.label, i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n // Make sure we handle nested tabs\n const tabPathPrefix =\n tabHasName(tab) && tab.name\n ? pathPrefix\n ? pathPrefix + '.' + tab.name\n : tab.name\n : pathPrefix\n\n if (typeof localizedTabLabel === 'string') {\n reduced.push(\n ...reduceClientFields({\n fields: tab.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: tabPathPrefix,\n }),\n )\n }\n }\n })\n return reduced\n }\n\n // Rows cant have labels, so we need to handle them differently\n if (field.type === 'row' && 'fields' in field) {\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'collapsible' && 'fields' in field) {\n const localizedTabLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? labelPrefix + ' > ' + localizedTabLabel\n : localizedTabLabel\n\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n return reduced\n }\n\n if (field.type === 'group' && 'fields' in field) {\n const translatedLabel = getTranslation(field.label || '', i18n)\n\n const labelWithPrefix = labelPrefix\n ? translatedLabel\n ? labelPrefix + ' > ' + translatedLabel\n : labelPrefix\n : translatedLabel\n\n // Make sure we handle deeply nested groups\n const pathWithPrefix = field.name\n ? pathPrefix\n ? pathPrefix + '.' + field.name\n : field.name\n : pathPrefix\n\n reduced.push(\n ...reduceClientFields({\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n return reduced\n }\n\n if (typeof fieldTypes[field.type] === 'object') {\n const operatorKeys = new Set()\n const operators = fieldTypes[field.type].operators.reduce((acc, operator) => {\n if (!operatorKeys.has(operator.value)) {\n operatorKeys.add(operator.value)\n const operatorKey = `operators:${operator.label}` as ClientTranslationKeys\n acc.push({\n ...operator,\n label: i18n.t(operatorKey),\n })\n }\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n const formattedValue = pathPrefix\n ? createNestedClientFieldPath(pathPrefix, field)\n : field.name\n\n const formattedField: FieldCondition = {\n label: formattedLabel,\n value: formattedValue,\n ...fieldTypes[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n return reduced\n }, [])\n}\n"],"mappings":"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","ignoreList":[]}
@@ -10,5 +10,5 @@ function require(m) {
10
10
  }
11
11
  // Workaround end
12
12
 
13
- import{n as a}from"./chunk-5LUHGAPX.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
- //# sourceMappingURL=DatePicker-QST7QHAX.js.map
13
+ import{i as a}from"./chunk-CKHKQPOO.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
+ //# sourceMappingURL=CodeEditor-RZ32B2QF.js.map
@@ -0,0 +1,14 @@
1
+ "use client";
2
+ // Workaround for react-datepicker and other cjs dependencies potentially inserting require("react") statements
3
+ import * as requireReact from 'react';
4
+ import * as requireReactDom from 'react-dom';
5
+
6
+ function require(m) {
7
+ if (m === 'react') return requireReact;
8
+ if (m === 'react-dom') return requireReactDom;
9
+ throw new Error(`Unknown module ${m}`);
10
+ }
11
+ // Workaround end
12
+
13
+ import{n as a}from"./chunk-KZPVHMBR.js";import"./chunk-5LKBKI4T.js";export{a as default};
14
+ //# sourceMappingURL=DatePicker-QW5V4BQV.js.map
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ {
3
+ "version": 3,
4
+ "sources": [],
5
+ "sourcesContent": [],
6
+ "mappings": "",
7
+ "names": []
8
+ }
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ // Workaround for react-datepicker and other cjs dependencies potentially inserting require("react") statements
3
+ import * as requireReact from 'react';
4
+ import * as requireReactDom from 'react-dom';
5
+
6
+ function require(m) {
7
+ if (m === 'react') return requireReact;
8
+ if (m === 'react-dom') return requireReactDom;
9
+ throw new Error(`Unknown module ${m}`);
10
+ }
11
+ // Workaround end
12
+
13
+ import{c as Mr}from"react/compiler-runtime";import{jsx as He}from"react/jsx-runtime";function Ue(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function le(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function re(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?le(Object(r),!0).forEach(function(n){Ue(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):le(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function qe(t,e){if(t==null)return{};var r={},n=Object.keys(t),o,i;for(i=0;i<n.length;i++)o=n[i],!(e.indexOf(o)>=0)&&(r[o]=t[o]);return r}function de(t,e){if(t==null)return{};var r=qe(t,e),n,o;if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(o=0;o<i.length;o++)n=i[o],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}function me(t,e){return Be(t)||Ke(t,e)||Ge(t,e)||Ye()}function Be(t){if(Array.isArray(t))return t}function Ke(t,e){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(t)))){var r=[],n=!0,o=!1,i=void 0;try{for(var a=t[Symbol.iterator](),c;!(n=(c=a.next()).done)&&(r.push(c.value),!(e&&r.length===e));n=!0);}catch(u){o=!0,i=u}finally{try{!n&&a.return!=null&&a.return()}finally{if(o)throw i}}return r}}function Ge(t,e){if(t){if(typeof t=="string")return fe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return fe(t,e)}}function fe(t,e){(e==null||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Ye(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
14
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Je(t,e,r){return e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function pe(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,n)}return r}function ge(t){for(var e=1;e<arguments.length;e++){var r=arguments[e]!=null?arguments[e]:{};e%2?pe(Object(r),!0).forEach(function(n){Je(t,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):pe(Object(r)).forEach(function(n){Object.defineProperty(t,n,Object.getOwnPropertyDescriptor(r,n))})}return t}function Qe(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(n){return e.reduceRight(function(o,i){return i(o)},n)}}function W(t){return function e(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=t.length?t.apply(this,o):function(){for(var a=arguments.length,c=new Array(a),u=0;u<a;u++)c[u]=arguments[u];return e.apply(r,[].concat(o,c))}}}function G(t){return{}.toString.call(t).includes("Object")}function Xe(t){return!Object.keys(t).length}function F(t){return typeof t=="function"}function Ze(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function et(t,e){return G(e)||I("changeType"),Object.keys(e).some(function(r){return!Ze(t,r)})&&I("changeField"),e}function tt(t){F(t)||I("selectorType")}function rt(t){F(t)||G(t)||I("handlerType"),G(t)&&Object.values(t).some(function(e){return!F(e)})&&I("handlersType")}function nt(t){t||I("initialIsRequired"),G(t)||I("initialType"),Xe(t)&&I("initialContent")}function ot(t,e){throw new Error(t[e]||t.default)}var it={initialIsRequired:"initial state is required",initialType:"initial state should be an object",initialContent:"initial state shouldn't be an empty object",handlerType:"handler should be an object or a function",handlersType:"all handlers should be a functions",selectorType:"selector should be a function",changeType:"provided value of changes should be an object",changeField:'it seams you want to change a field in the state which is not specified in the "initial" state',default:"an unknown error accured in `state-local` package"},I=W(ot)(it),K={changes:et,selector:tt,handler:rt,initial:nt};function at(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};K.initial(t),K.handler(e);var r={current:t},n=W(st)(r,e),o=W(ut)(r),i=W(K.changes)(t),a=W(ct)(r);function c(){var s=arguments.length>0&&arguments[0]!==void 0?arguments[0]:function(f){return f};return K.selector(s),s(r.current)}function u(s){Qe(n,o,i,a)(s)}return[c,u]}function ct(t,e){return F(e)?e(t.current):e}function ut(t,e){return t.current=ge(ge({},t.current),e),e}function st(t,e,r){return F(e)?e(t.current):Object.keys(r).forEach(function(n){var o;return(o=e[n])===null||o===void 0?void 0:o.call(e,t.current[n])}),r}var lt={create:at},he=lt;var ft={paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.43.0/min/vs"}},ve=ft;function dt(t){return function e(){for(var r=this,n=arguments.length,o=new Array(n),i=0;i<n;i++)o[i]=arguments[i];return o.length>=t.length?t.apply(this,o):function(){for(var a=arguments.length,c=new Array(a),u=0;u<a;u++)c[u]=arguments[u];return e.apply(r,[].concat(o,c))}}}var ye=dt;function mt(t){return{}.toString.call(t).includes("Object")}var be=mt;function pt(t){return t||we("configIsRequired"),be(t)||we("configType"),t.urls?(gt(),{paths:{vs:t.urls.monacoBase}}):t}function gt(){console.warn(Oe.deprecation)}function ht(t,e){throw new Error(t[e]||t.default)}var Oe={configIsRequired:"the configuration object is required",configType:"the configuration object should be an object",default:"an unknown error accured in `@monaco-editor/loader` package",deprecation:`Deprecation warning!
15
+ You are using deprecated way of configuration.
16
+
17
+ Instead of using
18
+ monaco.config({ urls: { monacoBase: '...' } })
19
+ use
20
+ monaco.config({ paths: { vs: '...' } })
21
+
22
+ For more please check the link https://github.com/suren-atoyan/monaco-loader#config
23
+ `},we=ye(ht)(Oe),vt={config:pt},je=vt;var yt=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];return function(o){return r.reduceRight(function(i,a){return a(i)},o)}},Me=yt;function xe(t,e){return Object.keys(e).forEach(function(r){e[r]instanceof Object&&t[r]&&Object.assign(e[r],xe(t[r],e[r]))}),re(re({},t),e)}var Se=xe;var bt={type:"cancelation",msg:"operation is manually canceled"};function wt(t){var e=!1,r=new Promise(function(n,o){t.then(function(i){return e?o(bt):n(i)}),t.catch(o)});return r.cancel=function(){return e=!0},r}var Y=wt;var Ot=he.create({config:ve,isInitialized:!1,resolve:null,reject:null,monaco:null}),Pe=me(Ot,2),H=Pe[0],J=Pe[1];function jt(t){var e=je.config(t),r=e.monaco,n=de(e,["monaco"]);J(function(o){return{config:Se(o.config,n),monaco:r}})}function Mt(){var t=H(function(e){var r=e.monaco,n=e.isInitialized,o=e.resolve;return{monaco:r,isInitialized:n,resolve:o}});if(!t.isInitialized){if(J({isInitialized:!0}),t.monaco)return t.resolve(t.monaco),Y(ne);if(window.monaco&&window.monaco.editor)return Ce(window.monaco),t.resolve(window.monaco),Y(ne);Me(xt,Pt)(Ct)}return Y(ne)}function xt(t){return document.body.appendChild(t)}function St(t){var e=document.createElement("script");return t&&(e.src=t),e}function Pt(t){var e=H(function(n){var o=n.config,i=n.reject;return{config:o,reject:i}}),r=St("".concat(e.config.paths.vs,"/loader.js"));return r.onload=function(){return t()},r.onerror=e.reject,r}function Ct(){var t=H(function(r){var n=r.config,o=r.resolve,i=r.reject;return{config:n,resolve:o,reject:i}}),e=window.require;e.config(t.config),e(["vs/editor/editor.main"],function(r){Ce(r),t.resolve(r)},function(r){t.reject(r)})}function Ce(t){H().monaco||J({monaco:t})}function Et(){return H(function(t){var e=t.monaco;return e})}var ne=new Promise(function(t,e){return J({resolve:t,reject:e})}),Tt={config:jt,init:Mt,__getMonacoInstance:Et},R=Tt;import{memo as It}from"react";import Rt,{useState as Ee,useRef as D,useCallback as Te,useEffect as Ie}from"react";import{memo as At}from"react";import oe from"react";import Lt from"react";import{useEffect as Ht}from"react";import{useEffect as Ut,useRef as qt}from"react";import{useState as ln}from"react";import{memo as Qt}from"react";import Xt,{useState as Re,useEffect as Q,useRef as E,useCallback as Zt}from"react";import{useEffect as er,useRef as tr}from"react";var Dt={wrapper:{display:"flex",position:"relative",textAlign:"initial"},fullWidth:{width:"100%"},hide:{display:"none"}},ie=Dt,kt={container:{display:"flex",height:"100%",width:"100%",justifyContent:"center",alignItems:"center"}},_t=kt;function $t({children:t}){return Lt.createElement("div",{style:_t.container},t)}var Nt=$t,Vt=Nt;function Wt({width:t,height:e,isEditorReady:r,loading:n,_ref:o,className:i,wrapperProps:a}){return oe.createElement("section",{style:{...ie.wrapper,width:t,height:e},...a},!r&&oe.createElement(Vt,null,n),oe.createElement("div",{ref:o,style:{...ie.fullWidth,...!r&&ie.hide},className:i}))}var Ft=Wt,Ae=At(Ft);function zt(t){Ht(t,[])}var De=zt;function Bt(t,e,r=!0){let n=qt(!0);Ut(n.current||!r?()=>{n.current=!1}:t,e)}var C=Bt;function z(){}function L(t,e,r,n){return Kt(t,n)||Gt(t,e,r,n)}function Kt(t,e){return t.editor.getModel(Le(t,e))}function Gt(t,e,r,n){return t.editor.createModel(e,r,n?Le(t,n):void 0)}function Le(t,e){return t.Uri.parse(e)}function Yt({original:t,modified:e,language:r,originalLanguage:n,modifiedLanguage:o,originalModelPath:i,modifiedModelPath:a,keepCurrentOriginalModel:c=!1,keepCurrentModifiedModel:u=!1,theme:s="light",loading:f="Loading...",options:l={},height:h="100%",width:p="100%",className:b,wrapperProps:O={},beforeMount:v=z,onMount:P=z}){let[y,_]=Ee(!1),[$,w]=Ee(!0),j=D(null),g=D(null),N=D(null),x=D(P),d=D(v),A=D(!1);De(()=>{let m=R.init();return m.then(M=>(g.current=M)&&w(!1)).catch(M=>M?.type!=="cancelation"&&console.error("Monaco initialization: error:",M)),()=>j.current?V():m.cancel()}),C(()=>{if(j.current&&g.current){let m=j.current.getOriginalEditor(),M=L(g.current,t||"",n||r||"text",i||"");M!==m.getModel()&&m.setModel(M)}},[i],y),C(()=>{if(j.current&&g.current){let m=j.current.getModifiedEditor(),M=L(g.current,e||"",o||r||"text",a||"");M!==m.getModel()&&m.setModel(M)}},[a],y),C(()=>{let m=j.current.getModifiedEditor();m.getOption(g.current.editor.EditorOption.readOnly)?m.setValue(e||""):e!==m.getValue()&&(m.executeEdits("",[{range:m.getModel().getFullModelRange(),text:e||"",forceMoveMarkers:!0}]),m.pushUndoStop())},[e],y),C(()=>{j.current?.getModel()?.original.setValue(t||"")},[t],y),C(()=>{let{original:m,modified:M}=j.current.getModel();g.current.editor.setModelLanguage(m,n||r||"text"),g.current.editor.setModelLanguage(M,o||r||"text")},[r,n,o],y),C(()=>{g.current?.editor.setTheme(s)},[s],y),C(()=>{j.current?.updateOptions(l)},[l],y);let q=Te(()=>{if(!g.current)return;d.current(g.current);let m=L(g.current,t||"",n||r||"text",i||""),M=L(g.current,e||"",o||r||"text",a||"");j.current?.setModel({original:m,modified:M})},[r,e,o,t,n,i,a]),B=Te(()=>{!A.current&&N.current&&(j.current=g.current.editor.createDiffEditor(N.current,{automaticLayout:!0,...l}),q(),g.current?.editor.setTheme(s),_(!0),A.current=!0)},[l,s,q]);Ie(()=>{y&&x.current(j.current,g.current)},[y]),Ie(()=>{!$&&!y&&B()},[$,y,B]);function V(){let m=j.current?.getModel();c||m?.original?.dispose(),u||m?.modified?.dispose(),j.current?.dispose()}return Rt.createElement(Ae,{width:p,height:h,isEditorReady:y,loading:f,_ref:N,className:b,wrapperProps:O})}var Jt=Yt,un=It(Jt);function rr(t){let e=tr();return er(()=>{e.current=t},[t]),e.current}var nr=rr,X=new Map;function or({defaultValue:t,defaultLanguage:e,defaultPath:r,value:n,language:o,path:i,theme:a="light",line:c,loading:u="Loading...",options:s={},overrideServices:f={},saveViewState:l=!0,keepCurrentModel:h=!1,width:p="100%",height:b="100%",className:O,wrapperProps:v={},beforeMount:P=z,onMount:y=z,onChange:_,onValidate:$=z}){let[w,j]=Re(!1),[g,N]=Re(!0),x=E(null),d=E(null),A=E(null),q=E(y),B=E(P),V=E(),m=E(n),M=nr(i),ue=E(!1),Z=E(!1);De(()=>{let S=R.init();return S.then(T=>(x.current=T)&&N(!1)).catch(T=>T?.type!=="cancelation"&&console.error("Monaco initialization: error:",T)),()=>d.current?ze():S.cancel()}),C(()=>{let S=L(x.current,t||n||"",e||o||"",i||r||"");S!==d.current?.getModel()&&(l&&X.set(M,d.current?.saveViewState()),d.current?.setModel(S),l&&d.current?.restoreViewState(X.get(i)))},[i],w),C(()=>{d.current?.updateOptions(s)},[s],w),C(()=>{!d.current||n===void 0||(d.current.getOption(x.current.editor.EditorOption.readOnly)?d.current.setValue(n):n!==d.current.getValue()&&(Z.current=!0,d.current.executeEdits("",[{range:d.current.getModel().getFullModelRange(),text:n,forceMoveMarkers:!0}]),d.current.pushUndoStop(),Z.current=!1))},[n],w),C(()=>{let S=d.current?.getModel();S&&o&&x.current?.editor.setModelLanguage(S,o)},[o],w),C(()=>{c!==void 0&&d.current?.revealLine(c)},[c],w),C(()=>{x.current?.editor.setTheme(a)},[a],w);let se=Zt(()=>{if(!(!A.current||!x.current)&&!ue.current){B.current(x.current);let S=i||r,T=L(x.current,n||t||"",e||o||"",S||"");d.current=x.current?.editor.create(A.current,{model:T,automaticLayout:!0,...s},f),l&&d.current.restoreViewState(X.get(S)),x.current.editor.setTheme(a),c!==void 0&&d.current.revealLine(c),j(!0),ue.current=!0}},[t,e,r,n,o,i,s,f,l,a,c]);Q(()=>{w&&q.current(d.current,x.current)},[w]),Q(()=>{!g&&!w&&se()},[g,w,se]),m.current=n,Q(()=>{w&&_&&(V.current?.dispose(),V.current=d.current?.onDidChangeModelContent(S=>{Z.current||_(d.current.getValue(),S)}))},[w,_]),Q(()=>{if(w){let S=x.current.editor.onDidChangeMarkers(T=>{let ee=d.current.getModel()?.uri;if(ee&&T.find(te=>te.path===ee.path)){let te=x.current.editor.getModelMarkers({resource:ee});$?.(te)}});return()=>{S?.dispose()}}return()=>{}},[w,$]);function ze(){V.current?.dispose(),h?l&&X.set(i,d.current.saveViewState()):d.current.getModel()?.dispose(),d.current.dispose()}return Xt.createElement(Ae,{width:p,height:b,isEditorReady:w,loading:u,_ref:A,className:O,wrapperProps:v})}var ir=or,ar=Qt(ir),ae=ar;import{useState as xr}from"react";import{c as mr}from"react/compiler-runtime";import{jsx as pr}from"react/jsx-runtime";import{createContext as gr,useContext as hr,useEffect as vr,useState as $e}from"react";import{c as cr}from"react/compiler-runtime";import{jsx as ur}from"react/jsx-runtime";import{createContext as sr,useContext as lr,useEffect as fr,useState as dr}from"react";var ke=sr(void 0),jn=t=>{let e=cr(9),{children:r,config:n}=t,[o,i]=dr(n),a,c;e[0]!==n?(a=()=>{i(n)},c=[n],e[0]=n,e[1]=a,e[2]=c):(a=e[1],c=e[2]),fr(a,c);let u;e[3]!==o?(u=l=>{let{collectionSlug:h,globalSlug:p}=l;return h?o.collections.find(b=>b.slug===h):p?o.globals.find(b=>b.slug===p):null},e[3]=o,e[4]=u):u=e[4];let s=u,f;return e[5]!==r||e[6]!==o||e[7]!==s?(f=ur(ke.Provider,{value:{config:o,getEntityConfig:s,setConfig:i},children:r}),e[5]=r,e[6]=o,e[7]=s,e[8]=f):f=e[8],f},_e=()=>lr(ke);var yr={autoMode:!0,setTheme:()=>null,theme:"light"},Ve=gr(yr);function Ne(t,e,r){let n=new Date;n.setTime(n.getTime()+r*24*60*60*1e3);let o="expires="+n.toUTCString();document.cookie=t+"="+e+";"+o+";path=/"}var br=t=>{let e,r=window.document.cookie.split("; ").find(n=>n.startsWith(`${t}=`))?.split("=")[1];return r==="light"||r==="dark"?e=r:e=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light",document.documentElement.setAttribute("data-theme",e),{theme:e,themeFromCookies:r}},wr="light",In=t=>{let e=mr(11),{children:r,theme:n}=t,{config:o}=_e(),i=o.admin.theme,a=`${o.cookiePrefix||"payload"}-theme`,[c,u]=$e(n||wr),[s,f]=$e(),l,h;e[0]!==a||e[1]!==i?(l=()=>{if(i!=="all")return;let{theme:v,themeFromCookies:P}=br(a);u(v),f(!P)},h=[i,a],e[0]=a,e[1]=i,e[2]=l,e[3]=h):(l=e[2],h=e[3]),vr(l,h);let p;e[4]!==a?(p=v=>{if(v==="light"||v==="dark")u(v),f(!1),Ne(a,v,365),document.documentElement.setAttribute("data-theme",v);else if(v==="auto"){Ne(a,v,-1);let P=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";document.documentElement.setAttribute("data-theme",P),f(!0),u(P)}},e[4]=a,e[5]=p):p=e[5];let b=p,O;return e[6]!==s||e[7]!==r||e[8]!==b||e[9]!==c?(O=pr(Ve.Provider,{value:{autoMode:s,setTheme:b,theme:c},children:r}),e[6]=s,e[7]=r,e[8]=b,e[9]=c,e[10]=O):O=e[10],O},We=()=>hr(Ve);import{c as jr}from"react/compiler-runtime";import{jsx as U}from"react/jsx-runtime";import"react";import{c as Or}from"react/compiler-runtime";import*as k from"react";var Fe=(t,e)=>{let r=Or(9),n=e===void 0?!1:e,[o,i]=k.useState(!1),a=k.useRef(void 0),c;r[0]!==t?(c=()=>(i(!1),clearTimeout(a.current),a.current=setTimeout(()=>{i(!0)},t),()=>{clearTimeout(a.current)}),r[0]=t,r[1]=c):c=r[1];let u=c,s,f;r[2]!==u||r[3]!==n?(s=()=>{n&&u()},f=[u,n],r[2]=u,r[3]=n,r[4]=s,r[5]=f):(s=r[4],f=r[5]),k.useEffect(s,f);let l;return r[6]!==o||r[7]!==u?(l=[o,u],r[6]=o,r[7]=u,r[8]=l):l=r[8],l};var ce=({animationDelay:t="0ms",height:e="60px",width:r="100%"})=>U("div",{className:"shimmer-effect",style:{height:typeof e=="number"?`${e}px`:e,width:typeof r=="number"?`${r}px`:r},children:U("div",{className:"shimmer-effect__shine",style:{animationDelay:t}})}),Nn=t=>{let e=jr(7),{className:r,count:n,height:o,renderDelay:i,shimmerDelay:a,shimmerItemClassName:c,width:u}=t,s=i===void 0?500:i,f=a===void 0?25:a,l=typeof f=="number"?`${f}ms`:f,[h]=Fe(s,!0);if(!h)return null;let p;return e[0]!==r||e[1]!==n||e[2]!==o||e[3]!==l||e[4]!==c||e[5]!==u?(p=U("div",{className:r,children:[...Array(n)].map((b,O)=>U("div",{className:c,children:U(ce,{animationDelay:`calc(${O} * ${l})`,height:o,width:u})},O))}),e[0]=r,e[1]=n,e[2]=o,e[3]=l,e[4]=c,e[5]=u,e[6]=p):p=e[6],p};var Sr=ae.default||ae,Pr="code-editor",Cr=t=>{let e=Mr(21),r,n,o,i,a;e[0]!==t?({className:r,maxHeight:n,options:o,readOnly:i,...a}=t,e[0]=t,e[1]=r,e[2]=n,e[3]=o,e[4]=i,e[5]=a):(r=e[1],n=e[2],o=e[3],i=e[4],a=e[5]);let[c,u]=xr(20),{theme:s}=We(),f=a?.defaultLanguage?`language--${a.defaultLanguage}`:"",l=i&&"read-only",h;e[6]!==r||e[7]!==f||e[8]!==l?(h=[Pr,r,f,l].filter(Boolean),e[6]=r,e[7]=f,e[8]=l,e[9]=h):h=e[9];let p=h.join(" "),b;if(e[10]!==p||e[11]!==c||e[12]!==n||e[13]!==o||e[14]!==i||e[15]!==a||e[16]!==s){let O,v;e[18]!==a?(O=(P,y)=>{a.onChange?.(P,y),u(Math.max(56,P.split(`
24
+ `).length*18+2))},v=(P,y)=>{a.onMount?.(P,y),u(Math.max(56,P.getValue().split(`
25
+ `).length*18+2))},e[18]=a,e[19]=O,e[20]=v):(O=e[19],v=e[20]),b=He(Sr,{className:p,loading:He(ce,{height:c}),options:{detectIndentation:!0,hideCursorInOverviewRuler:!0,minimap:{enabled:!1},overviewRulerBorder:!1,readOnly:!!i,scrollbar:{alwaysConsumeMouseWheel:!1},scrollBeyondLastLine:!1,tabSize:2,wordWrap:"on",...o},theme:s==="dark"?"vs-dark":"vs",...a,height:n?Math.min(c,n):c,onChange:O,onMount:v}),e[10]=p,e[11]=c,e[12]=n,e[13]=o,e[14]=i,e[15]=a,e[16]=s,e[17]=b}else b=e[17];return b},Kn=Cr;export{jn as a,_e as b,Fe as c,ce as d,Nn as e,wr as f,In as g,We as h,Kn as i};
26
+ //# sourceMappingURL=chunk-CKHKQPOO.js.map