@payloadcms/ui 3.78.0-internal-debug.f663370 → 3.78.0-internal.ab11ffa

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 (1260) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +0 -1
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AddNewRelation/index.js +273 -218
  5. package/dist/elements/AddNewRelation/index.js.map +1 -1
  6. package/dist/elements/AddNewRelation/types.js +1 -2
  7. package/dist/elements/AddNewRelation/types.js.map +1 -1
  8. package/dist/elements/AnimateHeight/index.js +73 -84
  9. package/dist/elements/AnimateHeight/index.js.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +68 -71
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/AppHeader/index.js +101 -171
  13. package/dist/elements/AppHeader/index.js.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +118 -186
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.js +181 -162
  17. package/dist/elements/Autosave/index.js.map +1 -1
  18. package/dist/elements/Banner/index.js +32 -52
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +173 -169
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.js +51 -84
  23. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js +94 -85
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +56 -30
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +27 -19
  29. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +186 -193
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditForm/types.js +1 -2
  33. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +172 -221
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.js +57 -56
  37. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/FileSidebar/index.js +316 -395
  39. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FormsManager/createFormData.js +32 -33
  41. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  42. package/dist/elements/BulkUpload/FormsManager/index.js +491 -519
  43. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  44. package/dist/elements/BulkUpload/FormsManager/reducer.js +90 -100
  45. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  46. package/dist/elements/BulkUpload/Header/index.js +15 -27
  47. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.js +271 -204
  49. package/dist/elements/BulkUpload/index.js.map +1 -1
  50. package/dist/elements/Button/index.js +160 -227
  51. package/dist/elements/Button/index.js.map +1 -1
  52. package/dist/elements/Button/index.scss +46 -27
  53. package/dist/elements/Button/types.d.ts +1 -1
  54. package/dist/elements/Button/types.d.ts.map +1 -1
  55. package/dist/elements/Button/types.js +1 -14
  56. package/dist/elements/Button/types.js.map +1 -1
  57. package/dist/elements/Card/index.js +33 -53
  58. package/dist/elements/Card/index.js.map +1 -1
  59. package/dist/elements/CheckboxPopup/index.js +36 -43
  60. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  61. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +35 -29
  62. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  63. package/dist/elements/ClipboardAction/clipboardUtilities.js +43 -33
  64. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  65. package/dist/elements/ClipboardAction/index.js +83 -110
  66. package/dist/elements/ClipboardAction/index.js.map +1 -1
  67. package/dist/elements/ClipboardAction/isClipboardDataValid.js +71 -64
  68. package/dist/elements/ClipboardAction/isClipboardDataValid.js.map +1 -1
  69. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +93 -75
  70. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  71. package/dist/elements/ClipboardAction/types.js +1 -2
  72. package/dist/elements/ClipboardAction/types.js.map +1 -1
  73. package/dist/elements/CloseModalButton/index.js +20 -25
  74. package/dist/elements/CloseModalButton/index.js.map +1 -1
  75. package/dist/elements/CloseModalOnRouteChange/index.js +43 -17
  76. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  77. package/dist/elements/CodeEditor/CodeEditor.js +97 -82
  78. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  79. package/dist/elements/CodeEditor/constants.js +14 -15
  80. package/dist/elements/CodeEditor/constants.js.map +1 -1
  81. package/dist/elements/CodeEditor/index.js +10 -22
  82. package/dist/elements/CodeEditor/index.js.map +1 -1
  83. package/dist/elements/CodeEditor/types.js +1 -4
  84. package/dist/elements/CodeEditor/types.js.map +1 -1
  85. package/dist/elements/Collapsible/index.js +141 -151
  86. package/dist/elements/Collapsible/index.js.map +1 -1
  87. package/dist/elements/Collapsible/provider.js +30 -32
  88. package/dist/elements/Collapsible/provider.js.map +1 -1
  89. package/dist/elements/ColumnSelector/index.js +54 -54
  90. package/dist/elements/ColumnSelector/index.js.map +1 -1
  91. package/dist/elements/Combobox/index.js +84 -114
  92. package/dist/elements/Combobox/index.js.map +1 -1
  93. package/dist/elements/ConfirmationModal/index.js +129 -116
  94. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  95. package/dist/elements/CopyLocaleData/index.js +276 -217
  96. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  97. package/dist/elements/CopyToClipboard/index.js +70 -47
  98. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  99. package/dist/elements/DatePicker/DatePicker.js +136 -131
  100. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  101. package/dist/elements/DatePicker/getFormattedLocale.js +10 -11
  102. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  103. package/dist/elements/DatePicker/index.js +11 -23
  104. package/dist/elements/DatePicker/index.js.map +1 -1
  105. package/dist/elements/DatePicker/types.js +1 -2
  106. package/dist/elements/DatePicker/types.js.map +1 -1
  107. package/dist/elements/DefaultListViewTabs/index.js +131 -97
  108. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  109. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  110. package/dist/elements/DeleteDocument/index.js +151 -169
  111. package/dist/elements/DeleteDocument/index.js.map +1 -1
  112. package/dist/elements/DeleteMany/index.d.ts +21 -1
  113. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  114. package/dist/elements/DeleteMany/index.js +346 -371
  115. package/dist/elements/DeleteMany/index.js.map +1 -1
  116. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  117. package/dist/elements/DocumentControls/index.js +288 -513
  118. package/dist/elements/DocumentControls/index.js.map +1 -1
  119. package/dist/elements/DocumentDrawer/DrawerContent.js +120 -138
  120. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  121. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +103 -96
  122. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  123. package/dist/elements/DocumentDrawer/Provider.js +18 -24
  124. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  125. package/dist/elements/DocumentDrawer/index.js +210 -134
  126. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  127. package/dist/elements/DocumentDrawer/types.js +1 -12
  128. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  129. package/dist/elements/DocumentFields/index.js +69 -106
  130. package/dist/elements/DocumentFields/index.js.map +1 -1
  131. package/dist/elements/DocumentLocked/index.js +179 -154
  132. package/dist/elements/DocumentLocked/index.js.map +1 -1
  133. package/dist/elements/DocumentTakeOver/index.js +113 -97
  134. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  135. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +60 -26
  136. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  137. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +1 -2
  138. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  139. package/dist/elements/DraggableSortable/index.js +127 -76
  140. package/dist/elements/DraggableSortable/index.js.map +1 -1
  141. package/dist/elements/DraggableSortable/types.js +1 -2
  142. package/dist/elements/DraggableSortable/types.js.map +1 -1
  143. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +85 -25
  144. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  145. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +1 -2
  146. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  147. package/dist/elements/Drawer/index.js +192 -166
  148. package/dist/elements/Drawer/index.js.map +1 -1
  149. package/dist/elements/Drawer/types.js +1 -2
  150. package/dist/elements/Drawer/types.js.map +1 -1
  151. package/dist/elements/Drawer/useDrawerSlug.js +19 -7
  152. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  153. package/dist/elements/DrawerActionHeader/index.js +61 -59
  154. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  155. package/dist/elements/DrawerContentContainer/index.js +9 -14
  156. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  157. package/dist/elements/Dropzone/index.js +80 -94
  158. package/dist/elements/Dropzone/index.js.map +1 -1
  159. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +87 -145
  160. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  161. package/dist/elements/DuplicateDocument/index.js +144 -154
  162. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  163. package/dist/elements/EditMany/DrawerContent.js +389 -398
  164. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  165. package/dist/elements/EditMany/index.js +131 -79
  166. package/dist/elements/EditMany/index.js.map +1 -1
  167. package/dist/elements/EditUpload/index.js +395 -572
  168. package/dist/elements/EditUpload/index.js.map +1 -1
  169. package/dist/elements/EmailAndUsername/index.js +77 -96
  170. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  171. package/dist/elements/ErrorPill/index.js +24 -38
  172. package/dist/elements/ErrorPill/index.js.map +1 -1
  173. package/dist/elements/FieldDiffContainer/index.js +34 -50
  174. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  175. package/dist/elements/FieldDiffLabel/index.js +7 -10
  176. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  177. package/dist/elements/FieldSelect/index.js +75 -45
  178. package/dist/elements/FieldSelect/index.js.map +1 -1
  179. package/dist/elements/FieldSelect/reduceFieldOptions.js +67 -69
  180. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  181. package/dist/elements/FileDetails/DraggableFileDetails/index.js +105 -113
  182. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  183. package/dist/elements/FileDetails/FileMeta/index.js +33 -72
  184. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  185. package/dist/elements/FileDetails/StaticFileDetails/index.js +58 -76
  186. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  187. package/dist/elements/FileDetails/index.js +14 -20
  188. package/dist/elements/FileDetails/index.js.map +1 -1
  189. package/dist/elements/FolderView/Breadcrumbs/index.js +86 -59
  190. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  191. package/dist/elements/FolderView/BrowseByFolderButton/index.js +30 -30
  192. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  193. package/dist/elements/FolderView/Cell/index.client.js +87 -88
  194. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  195. package/dist/elements/FolderView/Cell/index.server.js +14 -19
  196. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  197. package/dist/elements/FolderView/ColoredFolderIcon/index.js +4 -9
  198. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  199. package/dist/elements/FolderView/CurrentFolderActions/index.js +138 -174
  200. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  201. package/dist/elements/FolderView/DragOverlaySelection/index.js +51 -70
  202. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  203. package/dist/elements/FolderView/DraggableTableRow/index.js +54 -71
  204. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  205. package/dist/elements/FolderView/DraggableWithClick/index.js +79 -75
  206. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  207. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +33 -35
  208. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  209. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +569 -508
  210. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  211. package/dist/elements/FolderView/FilterFolderTypePill/index.js +89 -61
  212. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  213. package/dist/elements/FolderView/FolderField/index.server.js +10 -15
  214. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  215. package/dist/elements/FolderView/FolderFileCard/index.js +188 -218
  216. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  217. package/dist/elements/FolderView/FolderFileTable/index.js +264 -203
  218. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  219. package/dist/elements/FolderView/FolderTypeField/index.js +112 -93
  220. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  221. package/dist/elements/FolderView/ItemCardGrid/index.js +27 -35
  222. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  223. package/dist/elements/FolderView/MoveDocToFolder/index.js +264 -142
  224. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  225. package/dist/elements/FolderView/SimpleTable/index.js +83 -105
  226. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  227. package/dist/elements/FolderView/SortByPill/index.js +100 -162
  228. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  229. package/dist/elements/FolderView/ToggleViewButtons/index.js +24 -47
  230. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  231. package/dist/elements/FullscreenModal/index.js +22 -16
  232. package/dist/elements/FullscreenModal/index.js.map +1 -1
  233. package/dist/elements/GenerateConfirmation/index.js +83 -63
  234. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  235. package/dist/elements/GroupByBuilder/index.d.ts +4 -1
  236. package/dist/elements/GroupByBuilder/index.d.ts.map +1 -1
  237. package/dist/elements/GroupByBuilder/index.js +142 -142
  238. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  239. package/dist/elements/Gutter/index.js +19 -22
  240. package/dist/elements/Gutter/index.js.map +1 -1
  241. package/dist/elements/HTMLDiff/diff/index.js +502 -524
  242. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  243. package/dist/elements/HTMLDiff/escapeHtml.d.ts +11 -0
  244. package/dist/elements/HTMLDiff/escapeHtml.d.ts.map +1 -0
  245. package/dist/elements/HTMLDiff/escapeHtml.js +35 -0
  246. package/dist/elements/HTMLDiff/escapeHtml.js.map +1 -0
  247. package/dist/elements/HTMLDiff/index.d.ts +7 -1
  248. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  249. package/dist/elements/HTMLDiff/index.js +32 -31
  250. package/dist/elements/HTMLDiff/index.js.map +1 -1
  251. package/dist/elements/Hamburger/index.js +40 -51
  252. package/dist/elements/Hamburger/index.js.map +1 -1
  253. package/dist/elements/HydrateAuthProvider/index.js +27 -15
  254. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  255. package/dist/elements/IDLabel/index.js +57 -31
  256. package/dist/elements/IDLabel/index.js.map +1 -1
  257. package/dist/elements/ItemsDrawer/ItemSearch/index.js +48 -43
  258. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  259. package/dist/elements/ItemsDrawer/index.js +168 -219
  260. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  261. package/dist/elements/LeaveWithoutSaving/index.js +142 -74
  262. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  263. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +131 -115
  264. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  265. package/dist/elements/Link/formatUrl.js +56 -53
  266. package/dist/elements/Link/formatUrl.js.map +1 -1
  267. package/dist/elements/Link/index.js +54 -50
  268. package/dist/elements/Link/index.js.map +1 -1
  269. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +17 -17
  270. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  271. package/dist/elements/ListControls/index.js +168 -253
  272. package/dist/elements/ListControls/index.js.map +1 -1
  273. package/dist/elements/ListControls/types.js +1 -8
  274. package/dist/elements/ListControls/types.js.map +1 -1
  275. package/dist/elements/ListDrawer/DrawerContent.js +168 -183
  276. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  277. package/dist/elements/ListDrawer/Provider.js +19 -28
  278. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  279. package/dist/elements/ListDrawer/index.js +229 -149
  280. package/dist/elements/ListDrawer/index.js.map +1 -1
  281. package/dist/elements/ListDrawer/types.js +1 -6
  282. package/dist/elements/ListDrawer/types.js.map +1 -1
  283. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +84 -43
  284. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  285. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +33 -23
  286. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  287. package/dist/elements/ListHeader/DrawerTitleActions/index.js +0 -1
  288. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  289. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +73 -49
  290. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  291. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +40 -22
  292. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  293. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +168 -130
  294. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  295. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +148 -169
  296. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  297. package/dist/elements/ListHeader/TitleActions/index.js +0 -1
  298. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  299. package/dist/elements/ListHeader/index.js +24 -65
  300. package/dist/elements/ListHeader/index.js.map +1 -1
  301. package/dist/elements/ListSelection/index.js +58 -93
  302. package/dist/elements/ListSelection/index.js.map +1 -1
  303. package/dist/elements/ListSelection/index.scss +0 -1
  304. package/dist/elements/LivePreview/Device/index.js +83 -83
  305. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  306. package/dist/elements/LivePreview/DeviceContainer/index.js +49 -29
  307. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  308. package/dist/elements/LivePreview/IFrame/index.js +44 -20
  309. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  310. package/dist/elements/LivePreview/Toggler/index.js +26 -32
  311. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  312. package/dist/elements/LivePreview/Toolbar/Controls/index.js +141 -210
  313. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  314. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +92 -62
  315. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  316. package/dist/elements/LivePreview/Toolbar/index.js +84 -84
  317. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  318. package/dist/elements/LivePreview/ToolbarArea/index.js +33 -15
  319. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  320. package/dist/elements/LivePreview/Window/index.js +166 -132
  321. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  322. package/dist/elements/Loading/index.js +144 -112
  323. package/dist/elements/Loading/index.js.map +1 -1
  324. package/dist/elements/LoadingOverlay/index.js +67 -68
  325. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  326. package/dist/elements/LoadingOverlay/reducer.js +29 -27
  327. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  328. package/dist/elements/LoadingOverlay/types.js +1 -2
  329. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  330. package/dist/elements/Localizer/LocalizerLabel/index.js +51 -55
  331. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  332. package/dist/elements/Localizer/index.js +117 -99
  333. package/dist/elements/Localizer/index.js.map +1 -1
  334. package/dist/elements/Locked/index.js +59 -38
  335. package/dist/elements/Locked/index.js.map +1 -1
  336. package/dist/elements/Logout/index.js +51 -30
  337. package/dist/elements/Logout/index.js.map +1 -1
  338. package/dist/elements/Modal/index.js +1 -1
  339. package/dist/elements/Modal/index.js.map +1 -1
  340. package/dist/elements/Nav/NavToggler/index.js +80 -34
  341. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  342. package/dist/elements/Nav/context.js +103 -107
  343. package/dist/elements/Nav/context.js.map +1 -1
  344. package/dist/elements/NavGroup/index.js +122 -98
  345. package/dist/elements/NavGroup/index.js.map +1 -1
  346. package/dist/elements/NoListResults/index.js +14 -27
  347. package/dist/elements/NoListResults/index.js.map +1 -1
  348. package/dist/elements/PageControls/GroupByPageControls.js +71 -40
  349. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  350. package/dist/elements/PageControls/index.js +107 -77
  351. package/dist/elements/PageControls/index.js.map +1 -1
  352. package/dist/elements/Pagination/ClickableArrow/index.js +16 -24
  353. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  354. package/dist/elements/Pagination/Page/index.js +16 -19
  355. package/dist/elements/Pagination/Page/index.js.map +1 -1
  356. package/dist/elements/Pagination/Separator/index.js +6 -10
  357. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  358. package/dist/elements/Pagination/index.js +99 -102
  359. package/dist/elements/Pagination/index.js.map +1 -1
  360. package/dist/elements/PerPage/index.js +80 -93
  361. package/dist/elements/PerPage/index.js.map +1 -1
  362. package/dist/elements/PermanentlyDeleteButton/index.js +133 -150
  363. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  364. package/dist/elements/Pill/index.js +191 -109
  365. package/dist/elements/Pill/index.js.map +1 -1
  366. package/dist/elements/PillSelector/index.js +56 -79
  367. package/dist/elements/PillSelector/index.js.map +1 -1
  368. package/dist/elements/Popup/PopupButtonList/index.js +52 -65
  369. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  370. package/dist/elements/Popup/PopupDivider/index.js +5 -10
  371. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  372. package/dist/elements/Popup/PopupGroupLabel/index.js +8 -11
  373. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  374. package/dist/elements/Popup/PopupTrigger/index.js +44 -50
  375. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  376. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  377. package/dist/elements/Popup/index.js +287 -351
  378. package/dist/elements/Popup/index.js.map +1 -1
  379. package/dist/elements/PreviewButton/index.js +31 -24
  380. package/dist/elements/PreviewButton/index.js.map +1 -1
  381. package/dist/elements/PreviewSizes/index.js +132 -206
  382. package/dist/elements/PreviewSizes/index.js.map +1 -1
  383. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +110 -154
  384. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  385. package/dist/elements/PublishButton/ScheduleDrawer/index.js +308 -460
  386. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  387. package/dist/elements/PublishButton/ScheduleDrawer/types.js +1 -2
  388. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  389. package/dist/elements/PublishButton/index.js +219 -263
  390. package/dist/elements/PublishButton/index.js.map +1 -1
  391. package/dist/elements/PublishMany/DrawerContent.js +134 -137
  392. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  393. package/dist/elements/PublishMany/index.js +109 -58
  394. package/dist/elements/PublishMany/index.js.map +1 -1
  395. package/dist/elements/QueryPresets/QueryPresetBar/index.js +266 -344
  396. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  397. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +87 -80
  398. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  399. package/dist/elements/QueryPresets/cells/AccessCell/index.js +21 -47
  400. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  401. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +19 -26
  402. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  403. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +48 -61
  404. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  405. package/dist/elements/QueryPresets/cells/WhereCell/index.js +27 -29
  406. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  407. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  408. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +113 -45
  409. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  410. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  411. package/dist/elements/QueryPresets/fields/GroupByField/index.js +55 -101
  412. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  413. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  414. package/dist/elements/QueryPresets/fields/WhereField/index.js +85 -157
  415. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  416. package/dist/elements/ReactSelect/ClearIndicator/index.js +27 -29
  417. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  418. package/dist/elements/ReactSelect/Control/index.js +41 -40
  419. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  420. package/dist/elements/ReactSelect/DropdownIndicator/index.js +23 -26
  421. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  422. package/dist/elements/ReactSelect/Input/index.js +13 -20
  423. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  424. package/dist/elements/ReactSelect/MultiValue/index.js +126 -48
  425. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  426. package/dist/elements/ReactSelect/MultiValueLabel/index.js +32 -29
  427. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  428. package/dist/elements/ReactSelect/MultiValueRemove/index.js +86 -49
  429. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  430. package/dist/elements/ReactSelect/SingleValue/index.js +14 -22
  431. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  432. package/dist/elements/ReactSelect/ValueContainer/index.js +29 -38
  433. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  434. package/dist/elements/ReactSelect/index.js +201 -214
  435. package/dist/elements/ReactSelect/index.js.map +1 -1
  436. package/dist/elements/ReactSelect/types.js +1 -9
  437. package/dist/elements/ReactSelect/types.js.map +1 -1
  438. package/dist/elements/RelationshipTable/AddNewButton.js +58 -68
  439. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  440. package/dist/elements/RelationshipTable/Pagination.js +48 -21
  441. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  442. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +34 -39
  443. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  444. package/dist/elements/RelationshipTable/index.js +263 -379
  445. package/dist/elements/RelationshipTable/index.js.map +1 -1
  446. package/dist/elements/RenderComponent/index.js +20 -29
  447. package/dist/elements/RenderComponent/index.js.map +1 -1
  448. package/dist/elements/RenderCustomComponent/index.js +5 -3
  449. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  450. package/dist/elements/RenderIfInViewport/index.js +58 -27
  451. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  452. package/dist/elements/RenderServerComponent/index.js +56 -57
  453. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  454. package/dist/elements/RenderTitle/index.js +59 -44
  455. package/dist/elements/RenderTitle/index.js.map +1 -1
  456. package/dist/elements/RestoreButton/index.js +154 -187
  457. package/dist/elements/RestoreButton/index.js.map +1 -1
  458. package/dist/elements/RestoreMany/index.js +170 -177
  459. package/dist/elements/RestoreMany/index.js.map +1 -1
  460. package/dist/elements/SaveButton/index.js +49 -46
  461. package/dist/elements/SaveButton/index.js.map +1 -1
  462. package/dist/elements/SaveDraftButton/index.js +88 -84
  463. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  464. package/dist/elements/SearchBar/index.js +19 -37
  465. package/dist/elements/SearchBar/index.js.map +1 -1
  466. package/dist/elements/SearchFilter/index.js +54 -60
  467. package/dist/elements/SearchFilter/index.js.map +1 -1
  468. package/dist/elements/SearchFilter/types.js +1 -20
  469. package/dist/elements/SearchFilter/types.js.map +1 -1
  470. package/dist/elements/SelectAll/index.js +46 -21
  471. package/dist/elements/SelectAll/index.js.map +1 -1
  472. package/dist/elements/SelectMany/index.js +25 -27
  473. package/dist/elements/SelectMany/index.js.map +1 -1
  474. package/dist/elements/SelectRow/index.js +79 -27
  475. package/dist/elements/SelectRow/index.js.map +1 -1
  476. package/dist/elements/ShimmerEffect/index.js +73 -58
  477. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  478. package/dist/elements/SortColumn/index.js +106 -98
  479. package/dist/elements/SortColumn/index.js.map +1 -1
  480. package/dist/elements/SortComplex/index.js +163 -142
  481. package/dist/elements/SortComplex/index.js.map +1 -1
  482. package/dist/elements/SortHeader/index.js +87 -54
  483. package/dist/elements/SortHeader/index.js.map +1 -1
  484. package/dist/elements/SortRow/index.js +27 -21
  485. package/dist/elements/SortRow/index.js.map +1 -1
  486. package/dist/elements/Status/index.js +134 -159
  487. package/dist/elements/Status/index.js.map +1 -1
  488. package/dist/elements/StayLoggedIn/index.js +76 -38
  489. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  490. package/dist/elements/StepNav/SetStepNav.js +27 -10
  491. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  492. package/dist/elements/StepNav/context.js +41 -24
  493. package/dist/elements/StepNav/context.js.map +1 -1
  494. package/dist/elements/StepNav/index.js +92 -148
  495. package/dist/elements/StepNav/index.js.map +1 -1
  496. package/dist/elements/StepNav/types.js +1 -2
  497. package/dist/elements/StepNav/types.js.map +1 -1
  498. package/dist/elements/StickyToolbar/index.js +8 -10
  499. package/dist/elements/StickyToolbar/index.js.map +1 -1
  500. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -13
  501. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  502. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +60 -34
  503. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  504. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +27 -18
  505. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  506. package/dist/elements/Table/DefaultCell/fields/Code/index.js +17 -22
  507. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  508. package/dist/elements/Table/DefaultCell/fields/Date/index.js +41 -22
  509. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  510. package/dist/elements/Table/DefaultCell/fields/File/index.js +43 -53
  511. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  512. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +43 -35
  513. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  514. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +183 -115
  515. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  516. package/dist/elements/Table/DefaultCell/fields/Select/index.js +44 -22
  517. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  518. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +9 -11
  519. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  520. package/dist/elements/Table/DefaultCell/fields/index.js +14 -14
  521. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  522. package/dist/elements/Table/DefaultCell/index.js +151 -124
  523. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  524. package/dist/elements/Table/OrderableRow.js +32 -40
  525. package/dist/elements/Table/OrderableRow.js.map +1 -1
  526. package/dist/elements/Table/OrderableRowDragPreview.js +15 -24
  527. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  528. package/dist/elements/Table/OrderableTable.js +170 -225
  529. package/dist/elements/Table/OrderableTable.js.map +1 -1
  530. package/dist/elements/Table/RelationshipProvider/index.js +162 -106
  531. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  532. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  533. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  534. package/dist/elements/Table/index.js +45 -83
  535. package/dist/elements/Table/index.js.map +1 -1
  536. package/dist/elements/Thumbnail/createThumbnail.js +48 -53
  537. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  538. package/dist/elements/Thumbnail/index.js +148 -127
  539. package/dist/elements/Thumbnail/index.js.map +1 -1
  540. package/dist/elements/ThumbnailCard/index.js +68 -47
  541. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  542. package/dist/elements/TimezonePicker/index.js +44 -53
  543. package/dist/elements/TimezonePicker/index.js.map +1 -1
  544. package/dist/elements/TimezonePicker/types.js +1 -2
  545. package/dist/elements/TimezonePicker/types.js.map +1 -1
  546. package/dist/elements/Toasts/fieldErrors.js +77 -69
  547. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  548. package/dist/elements/Tooltip/index.js +65 -98
  549. package/dist/elements/Tooltip/index.js.map +1 -1
  550. package/dist/elements/Translation/index.js +39 -48
  551. package/dist/elements/Translation/index.js.map +1 -1
  552. package/dist/elements/TrashBanner/index.js +26 -33
  553. package/dist/elements/TrashBanner/index.js.map +1 -1
  554. package/dist/elements/UnpublishButton/index.js +170 -189
  555. package/dist/elements/UnpublishButton/index.js.map +1 -1
  556. package/dist/elements/UnpublishMany/DrawerContent.js +127 -130
  557. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  558. package/dist/elements/UnpublishMany/index.js +109 -58
  559. package/dist/elements/UnpublishMany/index.js.map +1 -1
  560. package/dist/elements/Upload/index.js +481 -633
  561. package/dist/elements/Upload/index.js.map +1 -1
  562. package/dist/elements/ViewDescription/index.js +26 -15
  563. package/dist/elements/ViewDescription/index.js.map +1 -1
  564. package/dist/elements/ViewDescription/types.js.map +1 -1
  565. package/dist/elements/WhereBuilder/Condition/Date/index.js +29 -23
  566. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  567. package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -2
  568. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  569. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.d.ts +1 -1
  570. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.d.ts.map +1 -1
  571. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +76 -95
  572. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  573. package/dist/elements/WhereBuilder/Condition/Number/index.js +129 -74
  574. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  575. package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -2
  576. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  577. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +313 -353
  578. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  579. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +67 -83
  580. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  581. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -2
  582. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  583. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js +9 -10
  584. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js.map +1 -1
  585. package/dist/elements/WhereBuilder/Condition/Select/index.js +154 -69
  586. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  587. package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -2
  588. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  589. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  590. package/dist/elements/WhereBuilder/Condition/Text/index.js +121 -72
  591. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  592. package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -2
  593. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  594. package/dist/elements/WhereBuilder/Condition/index.d.ts +2 -2
  595. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  596. package/dist/elements/WhereBuilder/Condition/index.js +143 -206
  597. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  598. package/dist/elements/WhereBuilder/Condition/types.js +1 -2
  599. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  600. package/dist/elements/WhereBuilder/Condition/validOperators.js +33 -32
  601. package/dist/elements/WhereBuilder/Condition/validOperators.js.map +1 -1
  602. package/dist/elements/WhereBuilder/field-types.js +119 -192
  603. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  604. package/dist/elements/WhereBuilder/index.d.ts +3 -2
  605. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  606. package/dist/elements/WhereBuilder/index.js +218 -268
  607. package/dist/elements/WhereBuilder/index.js.map +1 -1
  608. package/dist/elements/WhereBuilder/types.d.ts +4 -1
  609. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  610. package/dist/elements/WhereBuilder/types.js +1 -2
  611. package/dist/elements/WhereBuilder/types.js.map +1 -1
  612. package/dist/elements/WindowInfo/index.js +1 -1
  613. package/dist/elements/WindowInfo/index.js.map +1 -1
  614. package/dist/elements/WithServerSideProps/index.js +19 -20
  615. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  616. package/dist/elements/withMergedProps/index.d.ts +1 -1
  617. package/dist/elements/withMergedProps/index.js +27 -27
  618. package/dist/elements/withMergedProps/index.js.map +1 -1
  619. package/dist/exports/client/CodeEditor-X3UZSEEZ.js +14 -0
  620. package/dist/exports/client/CodeEditor-X3UZSEEZ.js.map +7 -0
  621. package/dist/exports/client/DatePicker-CL2EGBVQ.js +14 -0
  622. package/dist/exports/client/DatePicker-CL2EGBVQ.js.map +7 -0
  623. package/dist/exports/client/chunk-5LKBKI4T.js +14 -0
  624. package/dist/exports/client/chunk-5LKBKI4T.js.map +7 -0
  625. package/dist/exports/client/chunk-J46CQZ3T.js +27 -0
  626. package/dist/exports/client/chunk-J46CQZ3T.js.map +7 -0
  627. package/dist/exports/client/chunk-SH42NW5R.js +29 -0
  628. package/dist/exports/client/chunk-SH42NW5R.js.map +7 -0
  629. package/dist/exports/client/index.d.ts +1 -1
  630. package/dist/exports/client/index.d.ts.map +1 -1
  631. package/dist/exports/client/index.js +96 -298
  632. package/dist/exports/client/index.js.map +7 -1
  633. package/dist/exports/rsc/index.d.ts +1 -1
  634. package/dist/exports/rsc/index.d.ts.map +1 -1
  635. package/dist/exports/rsc/index.js +1 -2
  636. package/dist/exports/rsc/index.js.map +1 -1
  637. package/dist/exports/shared/index.js +6 -36
  638. package/dist/exports/shared/index.js.map +7 -1
  639. package/dist/fields/Array/ArrayRow.js +168 -111
  640. package/dist/fields/Array/ArrayRow.js.map +1 -1
  641. package/dist/fields/Array/index.js +398 -532
  642. package/dist/fields/Array/index.js.map +1 -1
  643. package/dist/fields/Blocks/BlockRow.js +198 -163
  644. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  645. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +38 -30
  646. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  647. package/dist/fields/Blocks/BlockSelector/index.js +103 -159
  648. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  649. package/dist/fields/Blocks/BlocksDrawer/index.js +80 -37
  650. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  651. package/dist/fields/Blocks/RowActions.js +106 -50
  652. package/dist/fields/Blocks/RowActions.js.map +1 -1
  653. package/dist/fields/Blocks/SectionTitle/index.js +78 -36
  654. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  655. package/dist/fields/Blocks/index.js +425 -566
  656. package/dist/fields/Blocks/index.js.map +1 -1
  657. package/dist/fields/Checkbox/Input.js +115 -91
  658. package/dist/fields/Checkbox/Input.js.map +1 -1
  659. package/dist/fields/Checkbox/index.js +99 -107
  660. package/dist/fields/Checkbox/index.js.map +1 -1
  661. package/dist/fields/Code/index.js +114 -146
  662. package/dist/fields/Code/index.js.map +1 -1
  663. package/dist/fields/Collapsible/index.js +134 -172
  664. package/dist/fields/Collapsible/index.js.map +1 -1
  665. package/dist/fields/ConfirmPassword/index.js +83 -67
  666. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  667. package/dist/fields/DateTime/index.js +171 -217
  668. package/dist/fields/DateTime/index.js.map +1 -1
  669. package/dist/fields/Email/index.js +86 -111
  670. package/dist/fields/Email/index.js.map +1 -1
  671. package/dist/fields/FieldDescription/index.js +43 -20
  672. package/dist/fields/FieldDescription/index.js.map +1 -1
  673. package/dist/fields/FieldError/index.js +58 -22
  674. package/dist/fields/FieldError/index.js.map +1 -1
  675. package/dist/fields/FieldLabel/index.js +45 -43
  676. package/dist/fields/FieldLabel/index.js.map +1 -1
  677. package/dist/fields/Group/index.js +102 -150
  678. package/dist/fields/Group/index.js.map +1 -1
  679. package/dist/fields/Group/provider.js +12 -13
  680. package/dist/fields/Group/provider.js.map +1 -1
  681. package/dist/fields/Hidden/index.js +67 -27
  682. package/dist/fields/Hidden/index.js.map +1 -1
  683. package/dist/fields/JSON/index.js +143 -185
  684. package/dist/fields/JSON/index.js.map +1 -1
  685. package/dist/fields/Join/index.js +189 -214
  686. package/dist/fields/Join/index.js.map +1 -1
  687. package/dist/fields/Number/index.js +169 -213
  688. package/dist/fields/Number/index.js.map +1 -1
  689. package/dist/fields/Password/index.js +101 -80
  690. package/dist/fields/Password/index.js.map +1 -1
  691. package/dist/fields/Password/input.js +122 -108
  692. package/dist/fields/Password/input.js.map +1 -1
  693. package/dist/fields/Password/types.js +1 -12
  694. package/dist/fields/Password/types.js.map +1 -1
  695. package/dist/fields/Point/index.js +127 -199
  696. package/dist/fields/Point/index.js.map +1 -1
  697. package/dist/fields/RadioGroup/Radio/index.js +81 -56
  698. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  699. package/dist/fields/RadioGroup/index.js +114 -146
  700. package/dist/fields/RadioGroup/index.js.map +1 -1
  701. package/dist/fields/Relationship/Input.js +733 -811
  702. package/dist/fields/Relationship/Input.js.map +1 -1
  703. package/dist/fields/Relationship/createRelationMap.js +33 -31
  704. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  705. package/dist/fields/Relationship/findOptionsByValue.js +32 -28
  706. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  707. package/dist/fields/Relationship/index.js +160 -152
  708. package/dist/fields/Relationship/index.js.map +1 -1
  709. package/dist/fields/Relationship/optionsReducer.js +139 -144
  710. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  711. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +82 -92
  712. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  713. package/dist/fields/Relationship/select-components/SingleValue/index.js +118 -95
  714. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  715. package/dist/fields/Relationship/types.js +1 -2
  716. package/dist/fields/Relationship/types.js.map +1 -1
  717. package/dist/fields/RichText/index.js +3 -3
  718. package/dist/fields/RichText/index.js.map +1 -1
  719. package/dist/fields/Row/index.js +35 -37
  720. package/dist/fields/Row/index.js.map +1 -1
  721. package/dist/fields/Row/provider.js +12 -13
  722. package/dist/fields/Row/provider.js.map +1 -1
  723. package/dist/fields/Select/Input.js +165 -114
  724. package/dist/fields/Select/Input.js.map +1 -1
  725. package/dist/fields/Select/index.js +108 -89
  726. package/dist/fields/Select/index.js.map +1 -1
  727. package/dist/fields/Slug/index.js +134 -103
  728. package/dist/fields/Slug/index.js.map +1 -1
  729. package/dist/fields/Tabs/Tab/index.js +60 -54
  730. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  731. package/dist/fields/Tabs/index.js +383 -213
  732. package/dist/fields/Tabs/index.js.map +1 -1
  733. package/dist/fields/Tabs/provider.js +12 -13
  734. package/dist/fields/Tabs/provider.js.map +1 -1
  735. package/dist/fields/Text/Input.js +191 -169
  736. package/dist/fields/Text/Input.js.map +1 -1
  737. package/dist/fields/Text/index.js +126 -107
  738. package/dist/fields/Text/index.js.map +1 -1
  739. package/dist/fields/Text/types.js +1 -2
  740. package/dist/fields/Text/types.js.map +1 -1
  741. package/dist/fields/Textarea/Input.js +115 -104
  742. package/dist/fields/Textarea/Input.js.map +1 -1
  743. package/dist/fields/Textarea/index.js +88 -61
  744. package/dist/fields/Textarea/index.js.map +1 -1
  745. package/dist/fields/Textarea/types.js +1 -2
  746. package/dist/fields/Textarea/types.js.map +1 -1
  747. package/dist/fields/UI/index.js +3 -3
  748. package/dist/fields/UI/index.js.map +1 -1
  749. package/dist/fields/Upload/HasMany/index.js +187 -142
  750. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  751. package/dist/fields/Upload/HasOne/index.js +61 -60
  752. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  753. package/dist/fields/Upload/Input.js +566 -755
  754. package/dist/fields/Upload/Input.js.map +1 -1
  755. package/dist/fields/Upload/RelationshipContent/index.js +145 -141
  756. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  757. package/dist/fields/Upload/UploadCard/index.js +10 -15
  758. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  759. package/dist/fields/Upload/index.js +96 -79
  760. package/dist/fields/Upload/index.js.map +1 -1
  761. package/dist/fields/Upload/types.js +1 -3
  762. package/dist/fields/Upload/types.js.map +1 -1
  763. package/dist/fields/index.js +31 -31
  764. package/dist/fields/index.js.map +1 -1
  765. package/dist/fields/mergeFieldStyles.js +12 -13
  766. package/dist/fields/mergeFieldStyles.js.map +1 -1
  767. package/dist/fields/shared/index.js +17 -8
  768. package/dist/fields/shared/index.js.map +1 -1
  769. package/dist/forms/Form/context.js +24 -17
  770. package/dist/forms/Form/context.js.map +1 -1
  771. package/dist/forms/Form/createNestedClientFieldPath.js +11 -11
  772. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  773. package/dist/forms/Form/errorMessages.js +2 -2
  774. package/dist/forms/Form/errorMessages.js.map +1 -1
  775. package/dist/forms/Form/fieldReducer.js +412 -378
  776. package/dist/forms/Form/fieldReducer.js.map +1 -1
  777. package/dist/forms/Form/index.js +694 -754
  778. package/dist/forms/Form/index.js.map +1 -1
  779. package/dist/forms/Form/initContextState.js +38 -38
  780. package/dist/forms/Form/initContextState.js.map +1 -1
  781. package/dist/forms/Form/mergeServerFormState.js +97 -93
  782. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  783. package/dist/forms/Form/reduceToSerializableFields.js +17 -20
  784. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  785. package/dist/forms/Form/rowHelpers.js +34 -27
  786. package/dist/forms/Form/rowHelpers.js.map +1 -1
  787. package/dist/forms/Form/rows.js +34 -34
  788. package/dist/forms/Form/rows.js.map +1 -1
  789. package/dist/forms/Form/types.js +1 -53
  790. package/dist/forms/Form/types.js.map +1 -1
  791. package/dist/forms/NullifyField/index.js +96 -61
  792. package/dist/forms/NullifyField/index.js.map +1 -1
  793. package/dist/forms/RenderFields/RenderField.js +259 -237
  794. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  795. package/dist/forms/RenderFields/context.js +9 -9
  796. package/dist/forms/RenderFields/context.js.map +1 -1
  797. package/dist/forms/RenderFields/index.js +115 -76
  798. package/dist/forms/RenderFields/index.js.map +1 -1
  799. package/dist/forms/RenderFields/types.js +1 -2
  800. package/dist/forms/RenderFields/types.js.map +1 -1
  801. package/dist/forms/RowLabel/Context/index.js +29 -30
  802. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  803. package/dist/forms/RowLabel/index.js +24 -33
  804. package/dist/forms/RowLabel/index.js.map +1 -1
  805. package/dist/forms/RowLabel/types.js +1 -2
  806. package/dist/forms/RowLabel/types.js.map +1 -1
  807. package/dist/forms/Submit/index.js +35 -32
  808. package/dist/forms/Submit/index.js.map +1 -1
  809. package/dist/forms/WatchChildErrors/buildPathSegments.js +29 -29
  810. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  811. package/dist/forms/WatchChildErrors/index.js +67 -44
  812. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  813. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +706 -681
  814. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  815. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +22 -14
  816. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  817. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +26 -17
  818. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  819. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +198 -186
  820. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  821. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +60 -67
  822. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
  823. package/dist/forms/fieldSchemasToFormState/index.js +79 -90
  824. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  825. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +16 -12
  826. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  827. package/dist/forms/fieldSchemasToFormState/iterateFields.js +116 -95
  828. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  829. package/dist/forms/fieldSchemasToFormState/renderField.js +276 -275
  830. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  831. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +75 -90
  832. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  833. package/dist/forms/fieldSchemasToFormState/types.js +1 -6
  834. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  835. package/dist/forms/useField/index.js +292 -180
  836. package/dist/forms/useField/index.js.map +1 -1
  837. package/dist/forms/useField/types.js +1 -20
  838. package/dist/forms/useField/types.js.map +1 -1
  839. package/dist/forms/withCondition/WatchCondition.js +27 -9
  840. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  841. package/dist/forms/withCondition/index.js +15 -21
  842. package/dist/forms/withCondition/index.js.map +1 -1
  843. package/dist/graphics/Account/Default/index.js +22 -46
  844. package/dist/graphics/Account/Default/index.js.map +1 -1
  845. package/dist/graphics/Account/Gravatar/index.js +34 -25
  846. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  847. package/dist/graphics/Account/index.js +51 -24
  848. package/dist/graphics/Account/index.js.map +1 -1
  849. package/dist/graphics/DefaultBlockImage/index.js +62 -117
  850. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  851. package/dist/graphics/File/index.js +17 -33
  852. package/dist/graphics/File/index.js.map +1 -1
  853. package/dist/graphics/Icon/index.js +19 -33
  854. package/dist/graphics/Icon/index.js.map +1 -1
  855. package/dist/graphics/Logo/index.js +39 -112
  856. package/dist/graphics/Logo/index.js.map +1 -1
  857. package/dist/hooks/useClickOutside.js +15 -19
  858. package/dist/hooks/useClickOutside.js.map +1 -1
  859. package/dist/hooks/useControllableState.js +35 -25
  860. package/dist/hooks/useControllableState.js.map +1 -1
  861. package/dist/hooks/useDebounce.js +26 -15
  862. package/dist/hooks/useDebounce.js.map +1 -1
  863. package/dist/hooks/useDebouncedCallback.js +23 -15
  864. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  865. package/dist/hooks/useDebouncedEffect.js +53 -18
  866. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  867. package/dist/hooks/useDelay.js +52 -27
  868. package/dist/hooks/useDelay.js.map +1 -1
  869. package/dist/hooks/useDelayedRender.js +76 -42
  870. package/dist/hooks/useDelayedRender.js.map +1 -1
  871. package/dist/hooks/useEffectEvent.js +13 -16
  872. package/dist/hooks/useEffectEvent.js.map +1 -1
  873. package/dist/hooks/useHotkey.js +110 -96
  874. package/dist/hooks/useHotkey.js.map +1 -1
  875. package/dist/hooks/useIntersect.js +59 -28
  876. package/dist/hooks/useIntersect.js.map +1 -1
  877. package/dist/hooks/usePayloadAPI.js +172 -78
  878. package/dist/hooks/usePayloadAPI.js.map +1 -1
  879. package/dist/hooks/usePopupWindow.js +133 -91
  880. package/dist/hooks/usePopupWindow.js.map +1 -1
  881. package/dist/hooks/useQueue.js +38 -48
  882. package/dist/hooks/useQueue.js.map +1 -1
  883. package/dist/hooks/useRelatedCollections.js +27 -15
  884. package/dist/hooks/useRelatedCollections.js.map +1 -1
  885. package/dist/hooks/useResize.js +70 -42
  886. package/dist/hooks/useResize.js.map +1 -1
  887. package/dist/hooks/useThrottledEffect.js +51 -17
  888. package/dist/hooks/useThrottledEffect.js.map +1 -1
  889. package/dist/hooks/useThrottledValue.js +13 -16
  890. package/dist/hooks/useThrottledValue.js.map +1 -1
  891. package/dist/hooks/useUseAsTitle.js +27 -7
  892. package/dist/hooks/useUseAsTitle.js.map +1 -1
  893. package/dist/icons/Calendar/index.js +11 -20
  894. package/dist/icons/Calendar/index.js.map +1 -1
  895. package/dist/icons/Check/index.js +11 -20
  896. package/dist/icons/Check/index.js.map +1 -1
  897. package/dist/icons/Chevron/index.js +22 -30
  898. package/dist/icons/Chevron/index.js.map +1 -1
  899. package/dist/icons/CloseMenu/index.js +11 -20
  900. package/dist/icons/CloseMenu/index.js.map +1 -1
  901. package/dist/icons/CodeBlock/index.js +13 -22
  902. package/dist/icons/CodeBlock/index.js.map +1 -1
  903. package/dist/icons/Copy/index.js +17 -24
  904. package/dist/icons/Copy/index.js.map +1 -1
  905. package/dist/icons/Document/index.js +16 -25
  906. package/dist/icons/Document/index.js.map +1 -1
  907. package/dist/icons/Dots/index.js +11 -32
  908. package/dist/icons/Dots/index.js.map +1 -1
  909. package/dist/icons/DragHandle/index.js +33 -70
  910. package/dist/icons/DragHandle/index.js.map +1 -1
  911. package/dist/icons/Edit/index.js +13 -23
  912. package/dist/icons/Edit/index.js.map +1 -1
  913. package/dist/icons/ExternalLink/index.js +15 -25
  914. package/dist/icons/ExternalLink/index.js.map +1 -1
  915. package/dist/icons/Eye/index.js +25 -53
  916. package/dist/icons/Eye/index.js.map +1 -1
  917. package/dist/icons/Folder/index.js +16 -26
  918. package/dist/icons/Folder/index.js.map +1 -1
  919. package/dist/icons/Gear/index.js +21 -34
  920. package/dist/icons/Gear/index.js.map +1 -1
  921. package/dist/icons/GridView/index.js +31 -57
  922. package/dist/icons/GridView/index.js.map +1 -1
  923. package/dist/icons/Line/index.js +14 -23
  924. package/dist/icons/Line/index.js.map +1 -1
  925. package/dist/icons/Link/index.js +16 -25
  926. package/dist/icons/Link/index.js.map +1 -1
  927. package/dist/icons/ListView/index.js +16 -25
  928. package/dist/icons/ListView/index.js.map +1 -1
  929. package/dist/icons/Lock/index.js +24 -41
  930. package/dist/icons/Lock/index.js.map +1 -1
  931. package/dist/icons/LogOut/index.js +14 -23
  932. package/dist/icons/LogOut/index.js.map +1 -1
  933. package/dist/icons/Menu/index.js +14 -23
  934. package/dist/icons/Menu/index.js.map +1 -1
  935. package/dist/icons/MinimizeMaximize/index.js +19 -33
  936. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  937. package/dist/icons/More/index.js +21 -43
  938. package/dist/icons/More/index.js.map +1 -1
  939. package/dist/icons/MoveFolder/index.js +34 -62
  940. package/dist/icons/MoveFolder/index.js.map +1 -1
  941. package/dist/icons/People/index.js +17 -28
  942. package/dist/icons/People/index.js.map +1 -1
  943. package/dist/icons/Plus/index.js +13 -22
  944. package/dist/icons/Plus/index.js.map +1 -1
  945. package/dist/icons/Search/index.js +12 -21
  946. package/dist/icons/Search/index.js.map +1 -1
  947. package/dist/icons/Sort/index.js +35 -48
  948. package/dist/icons/Sort/index.js.map +1 -1
  949. package/dist/icons/Swap/index.js +11 -20
  950. package/dist/icons/Swap/index.js.map +1 -1
  951. package/dist/icons/ThreeDots/index.js +8 -27
  952. package/dist/icons/ThreeDots/index.js.map +1 -1
  953. package/dist/icons/Trash/index.js +18 -28
  954. package/dist/icons/Trash/index.js.map +1 -1
  955. package/dist/icons/X/index.js +15 -25
  956. package/dist/icons/X/index.js.map +1 -1
  957. package/dist/providers/Actions/index.js +33 -21
  958. package/dist/providers/Actions/index.js.map +1 -1
  959. package/dist/providers/Auth/index.js +243 -293
  960. package/dist/providers/Auth/index.js.map +1 -1
  961. package/dist/providers/ClickOutside/index.js +35 -35
  962. package/dist/providers/ClickOutside/index.js.map +1 -1
  963. package/dist/providers/ClientFunction/index.js +104 -63
  964. package/dist/providers/ClientFunction/index.js.map +1 -1
  965. package/dist/providers/Config/index.js +91 -91
  966. package/dist/providers/Config/index.js.map +1 -1
  967. package/dist/providers/DocumentEvents/index.js +30 -19
  968. package/dist/providers/DocumentEvents/index.js.map +1 -1
  969. package/dist/providers/DocumentInfo/index.js +335 -342
  970. package/dist/providers/DocumentInfo/index.js.map +1 -1
  971. package/dist/providers/DocumentInfo/types.d.ts +7 -0
  972. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  973. package/dist/providers/DocumentInfo/types.js +1 -26
  974. package/dist/providers/DocumentInfo/types.js.map +1 -1
  975. package/dist/providers/DocumentInfo/useGetDocPermissions.js +79 -81
  976. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  977. package/dist/providers/DocumentTitle/context.js.map +1 -1
  978. package/dist/providers/DocumentTitle/index.js +55 -51
  979. package/dist/providers/DocumentTitle/index.js.map +1 -1
  980. package/dist/providers/EditDepth/index.js +25 -15
  981. package/dist/providers/EditDepth/index.js.map +1 -1
  982. package/dist/providers/EntityVisibility/index.js +48 -26
  983. package/dist/providers/EntityVisibility/index.js.map +1 -1
  984. package/dist/providers/Folders/groupItemIDsByRelation.js +7 -8
  985. package/dist/providers/Folders/groupItemIDsByRelation.js.map +1 -1
  986. package/dist/providers/Folders/index.js +600 -698
  987. package/dist/providers/Folders/index.js.map +1 -1
  988. package/dist/providers/ListQuery/context.js +2 -3
  989. package/dist/providers/ListQuery/context.js.map +1 -1
  990. package/dist/providers/ListQuery/index.js +142 -156
  991. package/dist/providers/ListQuery/index.js.map +1 -1
  992. package/dist/providers/ListQuery/mergeQuery.js +31 -49
  993. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  994. package/dist/providers/ListQuery/sanitizeQuery.js +23 -24
  995. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  996. package/dist/providers/ListQuery/types.js +1 -6
  997. package/dist/providers/ListQuery/types.js.map +1 -1
  998. package/dist/providers/LivePreview/collisionDetection.js +24 -21
  999. package/dist/providers/LivePreview/collisionDetection.js.map +1 -1
  1000. package/dist/providers/LivePreview/context.js +55 -60
  1001. package/dist/providers/LivePreview/context.js.map +1 -1
  1002. package/dist/providers/LivePreview/index.js +208 -228
  1003. package/dist/providers/LivePreview/index.js.map +1 -1
  1004. package/dist/providers/LivePreview/sizeReducer.js +18 -19
  1005. package/dist/providers/LivePreview/sizeReducer.js.map +1 -1
  1006. package/dist/providers/Locale/index.js +154 -87
  1007. package/dist/providers/Locale/index.js.map +1 -1
  1008. package/dist/providers/Operation/index.js +11 -12
  1009. package/dist/providers/Operation/index.js.map +1 -1
  1010. package/dist/providers/Params/index.js +26 -14
  1011. package/dist/providers/Params/index.js.map +1 -1
  1012. package/dist/providers/Preferences/index.js +122 -130
  1013. package/dist/providers/Preferences/index.js.map +1 -1
  1014. package/dist/providers/Root/index.js +116 -191
  1015. package/dist/providers/Root/index.js.map +1 -1
  1016. package/dist/providers/RouteCache/index.js +103 -53
  1017. package/dist/providers/RouteCache/index.js.map +1 -1
  1018. package/dist/providers/RouteTransition/ProgressBar/index.js +80 -61
  1019. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  1020. package/dist/providers/RouteTransition/index.js +94 -69
  1021. package/dist/providers/RouteTransition/index.js.map +1 -1
  1022. package/dist/providers/ScrollInfo/index.js +1 -1
  1023. package/dist/providers/ScrollInfo/index.js.map +1 -1
  1024. package/dist/providers/SearchParams/index.js +35 -36
  1025. package/dist/providers/SearchParams/index.js.map +1 -1
  1026. package/dist/providers/Selection/index.js +192 -212
  1027. package/dist/providers/Selection/index.js.map +1 -1
  1028. package/dist/providers/ServerFunctions/index.js +184 -193
  1029. package/dist/providers/ServerFunctions/index.js.map +1 -1
  1030. package/dist/providers/TableColumns/RenderDefaultCell/index.js +62 -33
  1031. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  1032. package/dist/providers/TableColumns/buildColumnState/filterFields.js +32 -32
  1033. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -1
  1034. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js +52 -50
  1035. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js.map +1 -1
  1036. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +2 -3
  1037. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -1
  1038. package/dist/providers/TableColumns/buildColumnState/index.js +144 -133
  1039. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  1040. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +14 -10
  1041. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -1
  1042. package/dist/providers/TableColumns/buildColumnState/renderCell.js +151 -150
  1043. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1044. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +15 -16
  1045. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -1
  1046. package/dist/providers/TableColumns/context.js +1 -2
  1047. package/dist/providers/TableColumns/context.js.map +1 -1
  1048. package/dist/providers/TableColumns/getInitialColumns.js +28 -42
  1049. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -1
  1050. package/dist/providers/TableColumns/index.js +85 -88
  1051. package/dist/providers/TableColumns/index.js.map +1 -1
  1052. package/dist/providers/TableColumns/types.js +1 -18
  1053. package/dist/providers/TableColumns/types.js.map +1 -1
  1054. package/dist/providers/Theme/index.js +104 -69
  1055. package/dist/providers/Theme/index.js.map +1 -1
  1056. package/dist/providers/ToastContainer/icons/Error.js +19 -34
  1057. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  1058. package/dist/providers/ToastContainer/icons/Info.js +19 -34
  1059. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  1060. package/dist/providers/ToastContainer/icons/Success.js +19 -34
  1061. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  1062. package/dist/providers/ToastContainer/icons/Warning.js +19 -34
  1063. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  1064. package/dist/providers/ToastContainer/index.js +47 -56
  1065. package/dist/providers/ToastContainer/index.js.map +1 -1
  1066. package/dist/providers/Translation/index.js +112 -66
  1067. package/dist/providers/Translation/index.js.map +1 -1
  1068. package/dist/providers/UploadControls/index.js +40 -28
  1069. package/dist/providers/UploadControls/index.js.map +1 -1
  1070. package/dist/providers/UploadEdits/index.js +73 -31
  1071. package/dist/providers/UploadEdits/index.js.map +1 -1
  1072. package/dist/providers/UploadHandlers/index.js +65 -30
  1073. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1074. package/dist/providers/WindowInfo/index.js +9 -5
  1075. package/dist/providers/WindowInfo/index.js.map +1 -1
  1076. package/dist/styles.css +1 -0
  1077. package/dist/utilities/abortAndIgnore.js +17 -15
  1078. package/dist/utilities/abortAndIgnore.js.map +1 -1
  1079. package/dist/utilities/api.js +77 -78
  1080. package/dist/utilities/api.js.map +1 -1
  1081. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts +1 -0
  1082. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  1083. package/dist/utilities/buildClientFieldSchemaMap/index.js +83 -61
  1084. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1085. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  1086. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +185 -151
  1087. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1088. package/dist/utilities/buildFieldSchemaMap/index.d.ts +1 -0
  1089. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  1090. package/dist/utilities/buildFieldSchemaMap/index.js +78 -59
  1091. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  1092. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +126 -117
  1093. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  1094. package/dist/utilities/buildFormState.d.ts.map +1 -1
  1095. package/dist/utilities/buildFormState.js +189 -151
  1096. package/dist/utilities/buildFormState.js.map +1 -1
  1097. package/dist/utilities/buildTableState.js +167 -143
  1098. package/dist/utilities/buildTableState.js.map +1 -1
  1099. package/dist/utilities/canUseDOM.js +0 -1
  1100. package/dist/utilities/canUseDOM.js.map +1 -1
  1101. package/dist/utilities/combineFieldLabel.js +26 -53
  1102. package/dist/utilities/combineFieldLabel.js.map +1 -1
  1103. package/dist/utilities/copyDataFromLocale.js +209 -201
  1104. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  1105. package/dist/utilities/dateLocales.js +27 -28
  1106. package/dist/utilities/dateLocales.js.map +1 -1
  1107. package/dist/utilities/deepMerge.js +13 -14
  1108. package/dist/utilities/deepMerge.js.map +1 -1
  1109. package/dist/utilities/fetchPreferences.js.map +1 -1
  1110. package/dist/utilities/filterOutUploadFields.js +4 -17
  1111. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1112. package/dist/utilities/findLocaleFromCode.js +5 -6
  1113. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  1114. package/dist/utilities/formatAbsoluteURL.js +8 -8
  1115. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1116. package/dist/utilities/formatAdminURL.js +1 -2
  1117. package/dist/utilities/formatAdminURL.js.map +1 -1
  1118. package/dist/utilities/formatDocTitle/formatDateTitle.js +27 -20
  1119. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  1120. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js +13 -14
  1121. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1122. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js +13 -14
  1123. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js.map +1 -1
  1124. package/dist/utilities/formatDocTitle/index.js +44 -38
  1125. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  1126. package/dist/utilities/formatFields.js +1 -2
  1127. package/dist/utilities/formatFields.js.map +1 -1
  1128. package/dist/utilities/generateFieldID.js +5 -6
  1129. package/dist/utilities/generateFieldID.js.map +1 -1
  1130. package/dist/utilities/getClientConfig.js +29 -25
  1131. package/dist/utilities/getClientConfig.js.map +1 -1
  1132. package/dist/utilities/getClientSchemaMap.d.ts +1 -0
  1133. package/dist/utilities/getClientSchemaMap.d.ts.map +1 -1
  1134. package/dist/utilities/getClientSchemaMap.js +35 -24
  1135. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1136. package/dist/utilities/getColumns.d.ts.map +1 -1
  1137. package/dist/utilities/getColumns.js +36 -31
  1138. package/dist/utilities/getColumns.js.map +1 -1
  1139. package/dist/utilities/getDisplayedFieldValue.js +15 -15
  1140. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1141. package/dist/utilities/getFolderResultsComponentAndData.js +121 -134
  1142. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  1143. package/dist/utilities/getGlobalData.js +59 -55
  1144. package/dist/utilities/getGlobalData.js.map +1 -1
  1145. package/dist/utilities/getNavGroups.js +18 -21
  1146. package/dist/utilities/getNavGroups.js.map +1 -1
  1147. package/dist/utilities/getOffsetTop.js +13 -14
  1148. package/dist/utilities/getOffsetTop.js.map +1 -1
  1149. package/dist/utilities/getRequestLanguage.js +8 -5
  1150. package/dist/utilities/getRequestLanguage.js.map +1 -1
  1151. package/dist/utilities/getSchemaMap.d.ts +1 -0
  1152. package/dist/utilities/getSchemaMap.d.ts.map +1 -1
  1153. package/dist/utilities/getSchemaMap.js +31 -22
  1154. package/dist/utilities/getSchemaMap.js.map +1 -1
  1155. package/dist/utilities/getSupportedMonacoLocale.js +13 -14
  1156. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  1157. package/dist/utilities/getVisibleEntities.js +26 -15
  1158. package/dist/utilities/getVisibleEntities.js.map +1 -1
  1159. package/dist/utilities/groupNavItems.js +50 -53
  1160. package/dist/utilities/groupNavItems.js.map +1 -1
  1161. package/dist/utilities/handleBackToDashboard.js +11 -8
  1162. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  1163. package/dist/utilities/handleFormStateLocking.js +125 -131
  1164. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  1165. package/dist/utilities/handleGoBack.js +11 -7
  1166. package/dist/utilities/handleGoBack.js.map +1 -1
  1167. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  1168. package/dist/utilities/handleLivePreview.js +76 -59
  1169. package/dist/utilities/handleLivePreview.js.map +1 -1
  1170. package/dist/utilities/handlePreview.js +52 -41
  1171. package/dist/utilities/handlePreview.js.map +1 -1
  1172. package/dist/utilities/handleTakeOver.js +39 -28
  1173. package/dist/utilities/handleTakeOver.js.map +1 -1
  1174. package/dist/utilities/hasOptionLabelJSXElement.js +11 -9
  1175. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -1
  1176. package/dist/utilities/hasSavePermission.js +14 -14
  1177. package/dist/utilities/hasSavePermission.js.map +1 -1
  1178. package/dist/utilities/isClientUserObject.js +2 -3
  1179. package/dist/utilities/isClientUserObject.js.map +1 -1
  1180. package/dist/utilities/isEditing.js +5 -2
  1181. package/dist/utilities/isEditing.js.map +1 -1
  1182. package/dist/utilities/isURLAllowed.js +29 -30
  1183. package/dist/utilities/isURLAllowed.js.map +1 -1
  1184. package/dist/utilities/isValidReactElement.js +3 -3
  1185. package/dist/utilities/isValidReactElement.js.map +1 -1
  1186. package/dist/utilities/normalizeRelationshipValue.js +28 -29
  1187. package/dist/utilities/normalizeRelationshipValue.js.map +1 -1
  1188. package/dist/utilities/normalizeRelationshipValue.spec.js +368 -407
  1189. package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
  1190. package/dist/utilities/parseSearchParams.js +7 -7
  1191. package/dist/utilities/parseSearchParams.js.map +1 -1
  1192. package/dist/utilities/reduceFieldsToOptions.js +154 -145
  1193. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  1194. package/dist/utilities/reduceFieldsToValuesWithValidation.js +20 -20
  1195. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  1196. package/dist/utilities/removeUndefined.js +1 -2
  1197. package/dist/utilities/removeUndefined.js.map +1 -1
  1198. package/dist/utilities/renderTable.js +195 -239
  1199. package/dist/utilities/renderTable.js.map +1 -1
  1200. package/dist/utilities/resolveFilterOptions.js +26 -27
  1201. package/dist/utilities/resolveFilterOptions.js.map +1 -1
  1202. package/dist/utilities/sanitizeFilterOptionsQuery.js +15 -16
  1203. package/dist/utilities/sanitizeFilterOptionsQuery.js.map +1 -1
  1204. package/dist/utilities/sanitizeID.js +7 -8
  1205. package/dist/utilities/sanitizeID.js.map +1 -1
  1206. package/dist/utilities/schedulePublishHandler.js +58 -48
  1207. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1208. package/dist/utilities/scrollToID.js +9 -10
  1209. package/dist/utilities/scrollToID.js.map +1 -1
  1210. package/dist/utilities/setsAreEqual.js +2 -3
  1211. package/dist/utilities/setsAreEqual.js.map +1 -1
  1212. package/dist/utilities/shouldPermanentlyDelete.d.ts +13 -0
  1213. package/dist/utilities/shouldPermanentlyDelete.d.ts.map +1 -0
  1214. package/dist/utilities/shouldPermanentlyDelete.js +11 -0
  1215. package/dist/utilities/shouldPermanentlyDelete.js.map +1 -0
  1216. package/dist/utilities/stringifyTruncated.js +8 -9
  1217. package/dist/utilities/stringifyTruncated.js.map +1 -1
  1218. package/dist/utilities/traverseForLocalizedFields.js +35 -36
  1219. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1220. package/dist/utilities/upsertPreferences.js +76 -76
  1221. package/dist/utilities/upsertPreferences.js.map +1 -1
  1222. package/dist/views/BrowseByFolder/index.js +304 -365
  1223. package/dist/views/BrowseByFolder/index.js.map +1 -1
  1224. package/dist/views/CollectionFolder/ListSelection/index.d.ts.map +1 -1
  1225. package/dist/views/CollectionFolder/ListSelection/index.js +159 -161
  1226. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  1227. package/dist/views/CollectionFolder/index.js +288 -373
  1228. package/dist/views/CollectionFolder/index.js.map +1 -1
  1229. package/dist/views/Edit/Auth/APIKey.js +124 -185
  1230. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1231. package/dist/views/Edit/Auth/index.js +321 -309
  1232. package/dist/views/Edit/Auth/index.js.map +1 -1
  1233. package/dist/views/Edit/Auth/types.js +1 -2
  1234. package/dist/views/Edit/Auth/types.js.map +1 -1
  1235. package/dist/views/Edit/SetDocumentStepNav/index.js +150 -84
  1236. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1237. package/dist/views/Edit/SetDocumentTitle/index.js +77 -30
  1238. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1239. package/dist/views/Edit/index.js +520 -598
  1240. package/dist/views/Edit/index.js.map +1 -1
  1241. package/dist/views/Edit/types.js +1 -2
  1242. package/dist/views/Edit/types.js.map +1 -1
  1243. package/dist/views/List/GroupByHeader/index.js +24 -35
  1244. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  1245. package/dist/views/List/ListHeader/index.d.ts +1 -0
  1246. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  1247. package/dist/views/List/ListHeader/index.js +83 -115
  1248. package/dist/views/List/ListHeader/index.js.map +1 -1
  1249. package/dist/views/List/ListSelection/index.d.ts +2 -0
  1250. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  1251. package/dist/views/List/ListSelection/index.js +117 -103
  1252. package/dist/views/List/ListSelection/index.js.map +1 -1
  1253. package/dist/views/List/index.d.ts.map +1 -1
  1254. package/dist/views/List/index.js +219 -331
  1255. package/dist/views/List/index.js.map +1 -1
  1256. package/dist/views/List/types.js +1 -2
  1257. package/dist/views/List/types.js.map +1 -1
  1258. package/dist/widgets/CollectionCards/index.js +119 -149
  1259. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1260. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/normalizeRelationshipValue.spec.ts"],"sourcesContent":["import { describe, it, expect } from 'vitest'\nimport { normalizeRelationshipValue } from './normalizeRelationshipValue.js'\n\ndescribe('normalizeRelationshipValue', () => {\n describe('Monomorphic relationships (string relationTo)', () => {\n const relationTo = 'users'\n\n it('should return simple string ID as-is', () => {\n const result = normalizeRelationshipValue('user123', relationTo)\n expect(result).toBe('user123')\n })\n\n it('should return simple number ID as-is', () => {\n const result = normalizeRelationshipValue(123, relationTo)\n expect(result).toBe(123)\n })\n\n it('should extract ID from object with relationTo and value', () => {\n const value = { relationTo: 'users', value: 'user456' }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user456')\n })\n\n it('should extract ID from nested value structure', () => {\n const value = {\n relationTo: 'users',\n value: {\n value: 'user789',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user789')\n })\n\n it('should extract ID from deeply nested value structure', () => {\n const value = {\n relationTo: 'users',\n value: {\n value: {\n value: 'user999',\n },\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user999')\n })\n\n it('should extract ID from populated document', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 'user111',\n name: 'John Doe',\n email: 'john@example.com',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user111')\n })\n\n it('should extract ID from populated document without relationTo wrapper', () => {\n const value = {\n id: 'user222',\n name: 'Jane Doe',\n email: 'jane@example.com',\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user222')\n })\n\n it('should handle null values', () => {\n const result = normalizeRelationshipValue(null, relationTo)\n expect(result).toBeNull()\n })\n\n it('should handle undefined values', () => {\n const result = normalizeRelationshipValue(undefined, relationTo)\n expect(result).toBeUndefined()\n })\n\n it('should handle empty object', () => {\n const result = normalizeRelationshipValue({}, relationTo)\n expect(result).toEqual({})\n })\n })\n\n describe('Polymorphic relationships (array relationTo)', () => {\n const relationTo = ['users', 'posts', 'pages']\n\n it('should return simple string ID as-is', () => {\n const result = normalizeRelationshipValue('user123', relationTo)\n expect(result).toBe('user123')\n })\n\n it('should return simple number ID as-is', () => {\n const result = normalizeRelationshipValue(456, relationTo)\n expect(result).toBe(456)\n })\n\n it('should preserve relationTo structure with string value', () => {\n const value = { relationTo: 'users', value: 'user789' }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'users', value: 'user789' })\n })\n\n it('should preserve relationTo structure with number value', () => {\n const value = { relationTo: 'posts', value: 123 }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 123 })\n })\n\n it('should extract ID from nested value structure', () => {\n const value = {\n relationTo: 'posts',\n value: {\n value: 'post456',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 'post456' })\n })\n\n it('should extract ID from deeply nested value structure', () => {\n const value = {\n relationTo: 'pages',\n value: {\n value: {\n value: 'page789',\n },\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'pages', value: 'page789' })\n })\n\n it('should extract ID from populated document', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 'user999',\n name: 'John Smith',\n email: 'john.smith@example.com',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'users', value: 'user999' })\n })\n\n it('should extract ID from complex populated document', () => {\n const value = {\n relationTo: 'posts',\n value: {\n id: 'post123',\n title: 'My Post',\n author: {\n id: 'author456',\n name: 'Author Name',\n },\n createdAt: '2023-01-01T00:00:00.000Z',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 'post123' })\n })\n\n it('should handle different relationTo values', () => {\n const values = [\n { relationTo: 'users', value: 'user1' },\n { relationTo: 'posts', value: 'post2' },\n { relationTo: 'pages', value: 'page3' },\n ]\n\n const results = values.map((v) => normalizeRelationshipValue(v, relationTo))\n\n expect(results).toEqual([\n { relationTo: 'users', value: 'user1' },\n { relationTo: 'posts', value: 'post2' },\n { relationTo: 'pages', value: 'page3' },\n ])\n })\n\n it('should handle null values', () => {\n const result = normalizeRelationshipValue(null, relationTo)\n expect(result).toBeNull()\n })\n\n it('should handle undefined values', () => {\n const result = normalizeRelationshipValue(undefined, relationTo)\n expect(result).toBeUndefined()\n })\n\n it('should extract ID from populated document without relationTo wrapper', () => {\n const value = {\n id: 'doc123',\n title: 'Document Title',\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('doc123')\n })\n })\n\n describe('Edge cases', () => {\n it('should handle object with only value property (no relationTo)', () => {\n const value = { value: 'someValue' }\n const result = normalizeRelationshipValue(value, 'users')\n // Since there's no 'id' field and no relationTo, it should return the value as-is\n expect(result).toEqual({ value: 'someValue' })\n })\n\n it('should handle object with relationTo but no value', () => {\n const value = { relationTo: 'users' }\n const result = normalizeRelationshipValue(value, ['users', 'posts'])\n expect(result).toEqual({ relationTo: 'users' })\n })\n\n it('should handle empty array relationTo', () => {\n const result = normalizeRelationshipValue('user123', [])\n expect(result).toBe('user123')\n })\n\n it('should handle single-item array relationTo as polymorphic', () => {\n const value = { relationTo: 'users', value: 'user123' }\n const result = normalizeRelationshipValue(value, ['users'])\n expect(result).toEqual({ relationTo: 'users', value: 'user123' })\n })\n\n it('should handle numeric IDs in populated documents', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 12345,\n name: 'User with numeric ID',\n },\n }\n const result = normalizeRelationshipValue(value, ['users', 'posts'])\n expect(result).toEqual({ relationTo: 'users', value: 12345 })\n })\n\n it('should handle nested null values', () => {\n const value = {\n relationTo: 'users',\n value: null,\n }\n const result = normalizeRelationshipValue(value, 'users')\n expect(result).toBeNull()\n })\n\n it('should handle zero as a valid ID', () => {\n const result = normalizeRelationshipValue(0, 'users')\n expect(result).toBe(0)\n })\n\n it('should handle empty string as a valid ID', () => {\n const result = normalizeRelationshipValue('', 'users')\n expect(result).toBe('')\n })\n\n it('should handle false as a value', () => {\n const result = normalizeRelationshipValue(false, 'users')\n expect(result).toBe(false)\n })\n\n it('should handle array values (return as-is)', () => {\n const result = normalizeRelationshipValue(['user1', 'user2'], 'users')\n expect(result).toEqual(['user1', 'user2'])\n })\n })\n\n describe('Real-world scenarios', () => {\n it('should normalize upload field value for monomorphic upload', () => {\n // Upload field with populated media document\n const value = {\n id: 'media123',\n filename: 'image.jpg',\n mimeType: 'image/jpeg',\n filesize: 12345,\n url: '/media/image.jpg',\n }\n const result = normalizeRelationshipValue(value, 'media')\n expect(result).toBe('media123')\n })\n\n it('should normalize upload field value for polymorphic upload', () => {\n // Upload field with relationTo structure\n const value = {\n relationTo: 'images',\n value: {\n id: 'image456',\n filename: 'photo.png',\n url: '/media/photo.png',\n },\n }\n const result = normalizeRelationshipValue(value, ['images', 'videos'])\n expect(result).toEqual({ relationTo: 'images', value: 'image456' })\n })\n\n it('should normalize form submission data', () => {\n // Data coming from form with populated relationship\n const value = {\n relationTo: 'posts',\n value: {\n id: 'post789',\n title: 'Blog Post Title',\n author: { id: 'author123', name: 'Author' },\n publishedDate: '2023-12-01',\n },\n }\n const result = normalizeRelationshipValue(value, ['posts', 'pages'])\n expect(result).toEqual({ relationTo: 'posts', value: 'post789' })\n })\n\n it('should normalize API response with nested relationships', () => {\n // Complex nested structure from API\n const value = {\n relationTo: 'categories',\n value: {\n value: {\n id: 'cat123',\n name: 'Category Name',\n },\n },\n }\n const result = normalizeRelationshipValue(value, ['categories', 'tags'])\n expect(result).toEqual({ relationTo: 'categories', value: 'cat123' })\n })\n\n it('should handle table cell data normalization', () => {\n // Cell data from table that might be just an ID\n const simpleValue = 'user123'\n const result = normalizeRelationshipValue(simpleValue, 'users')\n expect(result).toBe('user123')\n\n // Cell data with full structure\n const complexValue = {\n relationTo: 'users',\n value: {\n id: 'user456',\n name: 'John Doe',\n },\n }\n const result2 = normalizeRelationshipValue(complexValue, ['users', 'admins'])\n expect(result2).toEqual({ relationTo: 'users', value: 'user456' })\n })\n })\n})\n"],"names":["describe","it","expect","normalizeRelationshipValue","relationTo","result","toBe","value","id","name","email","toBeNull","undefined","toBeUndefined","toEqual","title","author","createdAt","values","results","map","v","filename","mimeType","filesize","url","publishedDate","simpleValue","complexValue","result2"],"mappings":"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"}
1
+ {"version":3,"file":"normalizeRelationshipValue.spec.js","names":["describe","it","expect","normalizeRelationshipValue","relationTo","result","toBe","value","id","name","email","toBeNull","undefined","toBeUndefined","toEqual","title","author","createdAt","values","results","map","v","filename","mimeType","filesize","url","publishedDate","simpleValue","complexValue","result2"],"sources":["../../src/utilities/normalizeRelationshipValue.spec.ts"],"sourcesContent":["import { describe, it, expect } from 'vitest'\nimport { normalizeRelationshipValue } from './normalizeRelationshipValue.js'\n\ndescribe('normalizeRelationshipValue', () => {\n describe('Monomorphic relationships (string relationTo)', () => {\n const relationTo = 'users'\n\n it('should return simple string ID as-is', () => {\n const result = normalizeRelationshipValue('user123', relationTo)\n expect(result).toBe('user123')\n })\n\n it('should return simple number ID as-is', () => {\n const result = normalizeRelationshipValue(123, relationTo)\n expect(result).toBe(123)\n })\n\n it('should extract ID from object with relationTo and value', () => {\n const value = { relationTo: 'users', value: 'user456' }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user456')\n })\n\n it('should extract ID from nested value structure', () => {\n const value = {\n relationTo: 'users',\n value: {\n value: 'user789',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user789')\n })\n\n it('should extract ID from deeply nested value structure', () => {\n const value = {\n relationTo: 'users',\n value: {\n value: {\n value: 'user999',\n },\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user999')\n })\n\n it('should extract ID from populated document', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 'user111',\n name: 'John Doe',\n email: 'john@example.com',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user111')\n })\n\n it('should extract ID from populated document without relationTo wrapper', () => {\n const value = {\n id: 'user222',\n name: 'Jane Doe',\n email: 'jane@example.com',\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('user222')\n })\n\n it('should handle null values', () => {\n const result = normalizeRelationshipValue(null, relationTo)\n expect(result).toBeNull()\n })\n\n it('should handle undefined values', () => {\n const result = normalizeRelationshipValue(undefined, relationTo)\n expect(result).toBeUndefined()\n })\n\n it('should handle empty object', () => {\n const result = normalizeRelationshipValue({}, relationTo)\n expect(result).toEqual({})\n })\n })\n\n describe('Polymorphic relationships (array relationTo)', () => {\n const relationTo = ['users', 'posts', 'pages']\n\n it('should return simple string ID as-is', () => {\n const result = normalizeRelationshipValue('user123', relationTo)\n expect(result).toBe('user123')\n })\n\n it('should return simple number ID as-is', () => {\n const result = normalizeRelationshipValue(456, relationTo)\n expect(result).toBe(456)\n })\n\n it('should preserve relationTo structure with string value', () => {\n const value = { relationTo: 'users', value: 'user789' }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'users', value: 'user789' })\n })\n\n it('should preserve relationTo structure with number value', () => {\n const value = { relationTo: 'posts', value: 123 }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 123 })\n })\n\n it('should extract ID from nested value structure', () => {\n const value = {\n relationTo: 'posts',\n value: {\n value: 'post456',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 'post456' })\n })\n\n it('should extract ID from deeply nested value structure', () => {\n const value = {\n relationTo: 'pages',\n value: {\n value: {\n value: 'page789',\n },\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'pages', value: 'page789' })\n })\n\n it('should extract ID from populated document', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 'user999',\n name: 'John Smith',\n email: 'john.smith@example.com',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'users', value: 'user999' })\n })\n\n it('should extract ID from complex populated document', () => {\n const value = {\n relationTo: 'posts',\n value: {\n id: 'post123',\n title: 'My Post',\n author: {\n id: 'author456',\n name: 'Author Name',\n },\n createdAt: '2023-01-01T00:00:00.000Z',\n },\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toEqual({ relationTo: 'posts', value: 'post123' })\n })\n\n it('should handle different relationTo values', () => {\n const values = [\n { relationTo: 'users', value: 'user1' },\n { relationTo: 'posts', value: 'post2' },\n { relationTo: 'pages', value: 'page3' },\n ]\n\n const results = values.map((v) => normalizeRelationshipValue(v, relationTo))\n\n expect(results).toEqual([\n { relationTo: 'users', value: 'user1' },\n { relationTo: 'posts', value: 'post2' },\n { relationTo: 'pages', value: 'page3' },\n ])\n })\n\n it('should handle null values', () => {\n const result = normalizeRelationshipValue(null, relationTo)\n expect(result).toBeNull()\n })\n\n it('should handle undefined values', () => {\n const result = normalizeRelationshipValue(undefined, relationTo)\n expect(result).toBeUndefined()\n })\n\n it('should extract ID from populated document without relationTo wrapper', () => {\n const value = {\n id: 'doc123',\n title: 'Document Title',\n }\n const result = normalizeRelationshipValue(value, relationTo)\n expect(result).toBe('doc123')\n })\n })\n\n describe('Edge cases', () => {\n it('should handle object with only value property (no relationTo)', () => {\n const value = { value: 'someValue' }\n const result = normalizeRelationshipValue(value, 'users')\n // Since there's no 'id' field and no relationTo, it should return the value as-is\n expect(result).toEqual({ value: 'someValue' })\n })\n\n it('should handle object with relationTo but no value', () => {\n const value = { relationTo: 'users' }\n const result = normalizeRelationshipValue(value, ['users', 'posts'])\n expect(result).toEqual({ relationTo: 'users' })\n })\n\n it('should handle empty array relationTo', () => {\n const result = normalizeRelationshipValue('user123', [])\n expect(result).toBe('user123')\n })\n\n it('should handle single-item array relationTo as polymorphic', () => {\n const value = { relationTo: 'users', value: 'user123' }\n const result = normalizeRelationshipValue(value, ['users'])\n expect(result).toEqual({ relationTo: 'users', value: 'user123' })\n })\n\n it('should handle numeric IDs in populated documents', () => {\n const value = {\n relationTo: 'users',\n value: {\n id: 12345,\n name: 'User with numeric ID',\n },\n }\n const result = normalizeRelationshipValue(value, ['users', 'posts'])\n expect(result).toEqual({ relationTo: 'users', value: 12345 })\n })\n\n it('should handle nested null values', () => {\n const value = {\n relationTo: 'users',\n value: null,\n }\n const result = normalizeRelationshipValue(value, 'users')\n expect(result).toBeNull()\n })\n\n it('should handle zero as a valid ID', () => {\n const result = normalizeRelationshipValue(0, 'users')\n expect(result).toBe(0)\n })\n\n it('should handle empty string as a valid ID', () => {\n const result = normalizeRelationshipValue('', 'users')\n expect(result).toBe('')\n })\n\n it('should handle false as a value', () => {\n const result = normalizeRelationshipValue(false, 'users')\n expect(result).toBe(false)\n })\n\n it('should handle array values (return as-is)', () => {\n const result = normalizeRelationshipValue(['user1', 'user2'], 'users')\n expect(result).toEqual(['user1', 'user2'])\n })\n })\n\n describe('Real-world scenarios', () => {\n it('should normalize upload field value for monomorphic upload', () => {\n // Upload field with populated media document\n const value = {\n id: 'media123',\n filename: 'image.jpg',\n mimeType: 'image/jpeg',\n filesize: 12345,\n url: '/media/image.jpg',\n }\n const result = normalizeRelationshipValue(value, 'media')\n expect(result).toBe('media123')\n })\n\n it('should normalize upload field value for polymorphic upload', () => {\n // Upload field with relationTo structure\n const value = {\n relationTo: 'images',\n value: {\n id: 'image456',\n filename: 'photo.png',\n url: '/media/photo.png',\n },\n }\n const result = normalizeRelationshipValue(value, ['images', 'videos'])\n expect(result).toEqual({ relationTo: 'images', value: 'image456' })\n })\n\n it('should normalize form submission data', () => {\n // Data coming from form with populated relationship\n const value = {\n relationTo: 'posts',\n value: {\n id: 'post789',\n title: 'Blog Post Title',\n author: { id: 'author123', name: 'Author' },\n publishedDate: '2023-12-01',\n },\n }\n const result = normalizeRelationshipValue(value, ['posts', 'pages'])\n expect(result).toEqual({ relationTo: 'posts', value: 'post789' })\n })\n\n it('should normalize API response with nested relationships', () => {\n // Complex nested structure from API\n const value = {\n relationTo: 'categories',\n value: {\n value: {\n id: 'cat123',\n name: 'Category Name',\n },\n },\n }\n const result = normalizeRelationshipValue(value, ['categories', 'tags'])\n expect(result).toEqual({ relationTo: 'categories', value: 'cat123' })\n })\n\n it('should handle table cell data normalization', () => {\n // Cell data from table that might be just an ID\n const simpleValue = 'user123'\n const result = normalizeRelationshipValue(simpleValue, 'users')\n expect(result).toBe('user123')\n\n // Cell data with full structure\n const complexValue = {\n relationTo: 'users',\n value: {\n id: 'user456',\n name: 'John Doe',\n },\n }\n const result2 = normalizeRelationshipValue(complexValue, ['users', 'admins'])\n expect(result2).toEqual({ relationTo: 'users', value: 'user456' })\n })\n })\n})\n"],"mappings":"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","ignoreList":[]}
@@ -6,12 +6,12 @@ import * as qs from 'qs-esm';
6
6
  * This function can be used to parse that object into a more usable format.
7
7
  * @param {ReadonlyURLSearchParams} searchParams - The URLSearchParams object to parse.
8
8
  * @returns {qs.ParsedQs} - The parsed query string object.
9
- */ export function parseSearchParams(searchParams) {
10
- const search = searchParams.toString();
11
- return qs.parse(search, {
12
- depth: 10,
13
- ignoreQueryPrefix: true
14
- });
9
+ */
10
+ export function parseSearchParams(searchParams) {
11
+ const search = searchParams.toString();
12
+ return qs.parse(search, {
13
+ depth: 10,
14
+ ignoreQueryPrefix: true
15
+ });
15
16
  }
16
-
17
17
  //# sourceMappingURL=parseSearchParams.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/parseSearchParams.ts"],"sourcesContent":["import type { ReadonlyURLSearchParams } from 'next/navigation.js'\n\nimport * as qs from 'qs-esm'\n\n/**\n * A utility function to parse URLSearchParams into a ParsedQs object.\n * This function is a wrapper around the `qs` library.\n * In Next.js, the `useSearchParams()` hook from `next/navigation` returns a `URLSearchParams` object.\n * This function can be used to parse that object into a more usable format.\n * @param {ReadonlyURLSearchParams} searchParams - The URLSearchParams object to parse.\n * @returns {qs.ParsedQs} - The parsed query string object.\n */\nexport function parseSearchParams(searchParams: ReadonlyURLSearchParams): qs.ParsedQs {\n const search = searchParams.toString()\n\n return qs.parse(search, {\n depth: 10,\n ignoreQueryPrefix: true,\n })\n}\n"],"names":["qs","parseSearchParams","searchParams","search","toString","parse","depth","ignoreQueryPrefix"],"mappings":"AAEA,YAAYA,QAAQ,SAAQ;AAE5B;;;;;;;CAOC,GACD,OAAO,SAASC,kBAAkBC,YAAqC;IACrE,MAAMC,SAASD,aAAaE,QAAQ;IAEpC,OAAOJ,GAAGK,KAAK,CAACF,QAAQ;QACtBG,OAAO;QACPC,mBAAmB;IACrB;AACF"}
1
+ {"version":3,"file":"parseSearchParams.js","names":["qs","parseSearchParams","searchParams","search","toString","parse","depth","ignoreQueryPrefix"],"sources":["../../src/utilities/parseSearchParams.ts"],"sourcesContent":["import type { ReadonlyURLSearchParams } from 'next/navigation.js'\n\nimport * as qs from 'qs-esm'\n\n/**\n * A utility function to parse URLSearchParams into a ParsedQs object.\n * This function is a wrapper around the `qs` library.\n * In Next.js, the `useSearchParams()` hook from `next/navigation` returns a `URLSearchParams` object.\n * This function can be used to parse that object into a more usable format.\n * @param {ReadonlyURLSearchParams} searchParams - The URLSearchParams object to parse.\n * @returns {qs.ParsedQs} - The parsed query string object.\n */\nexport function parseSearchParams(searchParams: ReadonlyURLSearchParams): qs.ParsedQs {\n const search = searchParams.toString()\n\n return qs.parse(search, {\n depth: 10,\n ignoreQueryPrefix: true,\n })\n}\n"],"mappings":"AAEA,YAAYA,EAAA,MAAQ;AAEpB;;;;;;;;AAQA,OAAO,SAASC,kBAAkBC,YAAqC;EACrE,MAAMC,MAAA,GAASD,YAAA,CAAaE,QAAQ;EAEpC,OAAOJ,EAAA,CAAGK,KAAK,CAACF,MAAA,EAAQ;IACtBG,KAAA,EAAO;IACPC,iBAAA,EAAmB;EACrB;AACF","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  'use client';
2
+
2
3
  import { getTranslation } from '@payloadcms/translations';
3
4
  import { fieldAffectsData, fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared';
4
5
  import { fieldTypeConditions, getValidFieldOperators } from '../elements/WhereBuilder/field-types.js';
@@ -7,155 +8,163 @@ import { combineFieldLabel } from './combineFieldLabel.js';
7
8
  /**
8
9
  * Transforms a fields schema into a flattened array of fields with labels and values.
9
10
  * Used in the `WhereBuilder` component to render the fields in the dropdown.
10
- */ export const reduceFieldsToOptions = ({ fieldPermissions, fields, i18n, labelPrefix, pathPrefix: pathPrefixFromArgs })=>{
11
- return fields.reduce((reduced, field)=>{
12
- let pathPrefix = pathPrefixFromArgs;
13
- // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query
14
- // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field
15
- if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field) || 'virtual' in field && field.virtual === true) {
16
- return reduced;
17
- }
18
- // IMPORTANT: We DON'T mutate field.name here because the field object is shared across
19
- // multiple components (WhereBuilder, GroupByBuilder, etc.). Mutating it would break
20
- // permission checks and cause issues in other components that need the field name.
21
- // Instead, we use a flag to determine whether to include the field name in the path.
22
- let shouldIgnoreFieldName = false;
23
- // Handle virtual:string fields (virtual relationships, e.g. "post.title")
24
- if ('virtual' in field && typeof field.virtual === 'string') {
25
- pathPrefix = pathPrefix ? pathPrefix + '.' + field.virtual : field.virtual;
26
- if (fieldAffectsData(field)) {
27
- // Mark that we should ignore the field name when constructing the field path
28
- shouldIgnoreFieldName = true;
29
- }
30
- }
31
- if (field.type === 'tabs' && 'tabs' in field) {
32
- const tabs = field.tabs;
33
- tabs.forEach((tab)=>{
34
- if (typeof tab.label !== 'boolean') {
35
- const localizedTabLabel = getTranslation(tab.label, i18n);
36
- const labelWithPrefix = labelPrefix ? labelPrefix + ' > ' + localizedTabLabel : localizedTabLabel;
37
- // Make sure we handle nested tabs
38
- const tabPathPrefix = tabHasName(tab) && tab.name ? pathPrefix ? pathPrefix + '.' + tab.name : tab.name : pathPrefix;
39
- if (typeof localizedTabLabel === 'string') {
40
- reduced.push(...reduceFieldsToOptions({
41
- fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : tabHasName(tab) && tab.name ? fieldPermissions?.[tab.name]?.fields || fieldPermissions?.[tab.name] : fieldPermissions,
42
- fields: tab.fields,
43
- i18n,
44
- labelPrefix: labelWithPrefix,
45
- pathPrefix: tabPathPrefix
46
- }));
47
- }
48
- }
49
- });
50
- return reduced;
51
- }
52
- // Rows cant have labels, so we need to handle them differently
53
- if (field.type === 'row' && 'fields' in field) {
54
- reduced.push(...reduceFieldsToOptions({
55
- fieldPermissions,
56
- fields: field.fields,
57
- i18n,
58
- labelPrefix,
59
- pathPrefix
60
- }));
61
- return reduced;
62
- }
63
- if (field.type === 'collapsible' && 'fields' in field) {
64
- const localizedTabLabel = getTranslation(field.label || '', i18n);
65
- const labelWithPrefix = labelPrefix ? labelPrefix + ' > ' + localizedTabLabel : localizedTabLabel;
11
+ */
12
+ export const reduceFieldsToOptions = ({
13
+ fieldPermissions,
14
+ fields,
15
+ i18n,
16
+ labelPrefix,
17
+ pathPrefix: pathPrefixFromArgs
18
+ }) => {
19
+ return fields.reduce((reduced, field) => {
20
+ let pathPrefix = pathPrefixFromArgs;
21
+ // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query
22
+ // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field
23
+ if (fieldIsHiddenOrDisabled(field) && !fieldIsID(field) || 'virtual' in field && field.virtual === true) {
24
+ return reduced;
25
+ }
26
+ // IMPORTANT: We DON'T mutate field.name here because the field object is shared across
27
+ // multiple components (WhereBuilder, GroupByBuilder, etc.). Mutating it would break
28
+ // permission checks and cause issues in other components that need the field name.
29
+ // Instead, we use a flag to determine whether to include the field name in the path.
30
+ let shouldIgnoreFieldName = false;
31
+ // Handle virtual:string fields (virtual relationships, e.g. "post.title")
32
+ if ('virtual' in field && typeof field.virtual === 'string') {
33
+ pathPrefix = pathPrefix ? pathPrefix + '.' + field.virtual : field.virtual;
34
+ if (fieldAffectsData(field)) {
35
+ // Mark that we should ignore the field name when constructing the field path
36
+ shouldIgnoreFieldName = true;
37
+ }
38
+ }
39
+ if (field.type === 'tabs' && 'tabs' in field) {
40
+ const tabs = field.tabs;
41
+ tabs.forEach(tab => {
42
+ if (typeof tab.label !== 'boolean') {
43
+ const localizedTabLabel = getTranslation(tab.label, i18n);
44
+ const labelWithPrefix = labelPrefix ? labelPrefix + ' > ' + localizedTabLabel : localizedTabLabel;
45
+ // Make sure we handle nested tabs
46
+ const tabPathPrefix = tabHasName(tab) && tab.name ? pathPrefix ? pathPrefix + '.' + tab.name : tab.name : pathPrefix;
47
+ if (typeof localizedTabLabel === 'string') {
66
48
  reduced.push(...reduceFieldsToOptions({
67
- fieldPermissions,
68
- fields: field.fields,
69
- i18n,
70
- labelPrefix: labelWithPrefix,
71
- pathPrefix
49
+ fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : tabHasName(tab) && tab.name ? fieldPermissions?.[tab.name]?.fields || fieldPermissions?.[tab.name] : fieldPermissions,
50
+ fields: tab.fields,
51
+ i18n,
52
+ labelPrefix: labelWithPrefix,
53
+ pathPrefix: tabPathPrefix
72
54
  }));
73
- return reduced;
74
- }
75
- if (field.type === 'group' && 'fields' in field) {
76
- const translatedLabel = getTranslation(field.label || '', i18n);
77
- const labelWithPrefix = labelPrefix ? translatedLabel ? labelPrefix + ' > ' + translatedLabel : labelPrefix : translatedLabel;
78
- if (fieldAffectsData(field)) {
79
- // Make sure we handle deeply nested groups
80
- const pathWithPrefix = field.name ? pathPrefix ? pathPrefix + '.' + field.name : field.name : pathPrefix;
81
- reduced.push(...reduceFieldsToOptions({
82
- fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],
83
- fields: field.fields,
84
- i18n,
85
- labelPrefix: labelWithPrefix,
86
- pathPrefix: pathWithPrefix
87
- }));
88
- } else {
89
- reduced.push(...reduceFieldsToOptions({
90
- fieldPermissions,
91
- fields: field.fields,
92
- i18n,
93
- labelPrefix: labelWithPrefix,
94
- pathPrefix
95
- }));
96
- }
97
- return reduced;
55
+ }
98
56
  }
99
- if (field.type === 'array' && 'fields' in field) {
100
- const translatedLabel = getTranslation(field.label || '', i18n);
101
- const labelWithPrefix = labelPrefix ? translatedLabel ? labelPrefix + ' > ' + translatedLabel : labelPrefix : translatedLabel;
102
- // Make sure we handle deeply nested groups
103
- const pathWithPrefix = field.name ? pathPrefix ? pathPrefix + '.' + field.name : field.name : pathPrefix;
104
- reduced.push(...reduceFieldsToOptions({
105
- fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],
106
- fields: field.fields,
107
- i18n,
108
- labelPrefix: labelWithPrefix,
109
- pathPrefix: pathWithPrefix
110
- }));
111
- return reduced;
112
- }
113
- if (typeof fieldTypeConditions[field.type] === 'object') {
114
- if (fieldIsID(field) || fieldPermissions === true || fieldPermissions?.[field.name] === true || fieldPermissions?.[field.name]?.read === true) {
115
- const operatorKeys = new Set();
116
- const { validOperators } = getValidFieldOperators({
117
- field
118
- });
119
- const operators = validOperators.reduce((acc, operator)=>{
120
- if (!operatorKeys.has(operator.value)) {
121
- operatorKeys.add(operator.value);
122
- const operatorKey = `operators:${operator.label}`;
123
- acc.push({
124
- ...operator,
125
- label: i18n.t(operatorKey)
126
- });
127
- }
128
- return acc;
129
- }, []);
130
- const localizedLabel = getTranslation(field.label || '', i18n);
131
- const formattedLabel = labelPrefix ? combineFieldLabel({
132
- field,
133
- prefix: labelPrefix
134
- }) : localizedLabel;
135
- // For virtual fields, we use just the pathPrefix (the virtual path) without appending the field name
136
- // For regular fields, we use createNestedClientFieldPath which appends the field name to the path
137
- let fieldPath;
138
- if (shouldIgnoreFieldName) {
139
- fieldPath = pathPrefix;
140
- } else if (pathPrefix) {
141
- fieldPath = createNestedClientFieldPath(pathPrefix, field);
142
- } else {
143
- fieldPath = field.name;
144
- }
145
- const formattedField = {
146
- label: formattedLabel,
147
- plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,
148
- value: fieldPath,
149
- ...fieldTypeConditions[field.type],
150
- field,
151
- operators
152
- };
153
- reduced.push(formattedField);
154
- return reduced;
155
- }
57
+ });
58
+ return reduced;
59
+ }
60
+ // Rows cant have labels, so we need to handle them differently
61
+ if (field.type === 'row' && 'fields' in field) {
62
+ reduced.push(...reduceFieldsToOptions({
63
+ fieldPermissions,
64
+ fields: field.fields,
65
+ i18n,
66
+ labelPrefix,
67
+ pathPrefix
68
+ }));
69
+ return reduced;
70
+ }
71
+ if (field.type === 'collapsible' && 'fields' in field) {
72
+ const localizedTabLabel = getTranslation(field.label || '', i18n);
73
+ const labelWithPrefix = labelPrefix ? labelPrefix + ' > ' + localizedTabLabel : localizedTabLabel;
74
+ reduced.push(...reduceFieldsToOptions({
75
+ fieldPermissions,
76
+ fields: field.fields,
77
+ i18n,
78
+ labelPrefix: labelWithPrefix,
79
+ pathPrefix
80
+ }));
81
+ return reduced;
82
+ }
83
+ if (field.type === 'group' && 'fields' in field) {
84
+ const translatedLabel = getTranslation(field.label || '', i18n);
85
+ const labelWithPrefix = labelPrefix ? translatedLabel ? labelPrefix + ' > ' + translatedLabel : labelPrefix : translatedLabel;
86
+ if (fieldAffectsData(field)) {
87
+ // Make sure we handle deeply nested groups
88
+ const pathWithPrefix = field.name ? pathPrefix ? pathPrefix + '.' + field.name : field.name : pathPrefix;
89
+ reduced.push(...reduceFieldsToOptions({
90
+ fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],
91
+ fields: field.fields,
92
+ i18n,
93
+ labelPrefix: labelWithPrefix,
94
+ pathPrefix: pathWithPrefix
95
+ }));
96
+ } else {
97
+ reduced.push(...reduceFieldsToOptions({
98
+ fieldPermissions,
99
+ fields: field.fields,
100
+ i18n,
101
+ labelPrefix: labelWithPrefix,
102
+ pathPrefix
103
+ }));
104
+ }
105
+ return reduced;
106
+ }
107
+ if (field.type === 'array' && 'fields' in field) {
108
+ const translatedLabel = getTranslation(field.label || '', i18n);
109
+ const labelWithPrefix = labelPrefix ? translatedLabel ? labelPrefix + ' > ' + translatedLabel : labelPrefix : translatedLabel;
110
+ // Make sure we handle deeply nested groups
111
+ const pathWithPrefix = field.name ? pathPrefix ? pathPrefix + '.' + field.name : field.name : pathPrefix;
112
+ reduced.push(...reduceFieldsToOptions({
113
+ fieldPermissions: typeof fieldPermissions === 'boolean' ? fieldPermissions : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],
114
+ fields: field.fields,
115
+ i18n,
116
+ labelPrefix: labelWithPrefix,
117
+ pathPrefix: pathWithPrefix
118
+ }));
119
+ return reduced;
120
+ }
121
+ if (typeof fieldTypeConditions[field.type] === 'object') {
122
+ if (fieldIsID(field) || fieldPermissions === true || fieldPermissions?.[field.name] === true || fieldPermissions?.[field.name]?.read === true) {
123
+ const operatorKeys = new Set();
124
+ const {
125
+ validOperators
126
+ } = getValidFieldOperators({
127
+ field
128
+ });
129
+ const operators = validOperators.reduce((acc, operator) => {
130
+ if (!operatorKeys.has(operator.value)) {
131
+ operatorKeys.add(operator.value);
132
+ const operatorKey = `operators:${operator.label}`;
133
+ acc.push({
134
+ ...operator,
135
+ label: i18n.t(operatorKey)
136
+ });
137
+ }
138
+ return acc;
139
+ }, []);
140
+ const localizedLabel = getTranslation(field.label || '', i18n);
141
+ const formattedLabel = labelPrefix ? combineFieldLabel({
142
+ field,
143
+ prefix: labelPrefix
144
+ }) : localizedLabel;
145
+ // For virtual fields, we use just the pathPrefix (the virtual path) without appending the field name
146
+ // For regular fields, we use createNestedClientFieldPath which appends the field name to the path
147
+ let fieldPath;
148
+ if (shouldIgnoreFieldName) {
149
+ fieldPath = pathPrefix;
150
+ } else if (pathPrefix) {
151
+ fieldPath = createNestedClientFieldPath(pathPrefix, field);
152
+ } else {
153
+ fieldPath = field.name;
156
154
  }
155
+ const formattedField = {
156
+ label: formattedLabel,
157
+ plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,
158
+ value: fieldPath,
159
+ ...fieldTypeConditions[field.type],
160
+ field,
161
+ operators
162
+ };
163
+ reduced.push(formattedField);
157
164
  return reduced;
158
- }, []);
165
+ }
166
+ }
167
+ return reduced;
168
+ }, []);
159
169
  };
160
-
161
170
  //# sourceMappingURL=reduceFieldsToOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField, SanitizedFieldPermissions, SanitizedFieldsPermissions } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared'\n\nimport type { ReducedField } from '../elements/WhereBuilder/types.js'\n\nimport {\n fieldTypeConditions,\n getValidFieldOperators,\n} from '../elements/WhereBuilder/field-types.js'\nimport { createNestedClientFieldPath } from '../forms/Form/createNestedClientFieldPath.js'\nimport { combineFieldLabel } from './combineFieldLabel.js'\n\ntype ReduceFieldOptionsArgs = {\n fieldPermissions?: SanitizedFieldPermissions | SanitizedFieldsPermissions\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Transforms a fields schema into a flattened array of fields with labels and values.\n * Used in the `WhereBuilder` component to render the fields in the dropdown.\n */\nexport const reduceFieldsToOptions = ({\n fieldPermissions,\n fields,\n i18n,\n labelPrefix,\n pathPrefix: pathPrefixFromArgs,\n}: ReduceFieldOptionsArgs): ReducedField[] => {\n return fields.reduce((reduced, field) => {\n let pathPrefix = pathPrefixFromArgs\n // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query\n // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field\n if (\n (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) ||\n ('virtual' in field && field.virtual === true)\n ) {\n return reduced\n }\n\n // IMPORTANT: We DON'T mutate field.name here because the field object is shared across\n // multiple components (WhereBuilder, GroupByBuilder, etc.). Mutating it would break\n // permission checks and cause issues in other components that need the field name.\n // Instead, we use a flag to determine whether to include the field name in the path.\n let shouldIgnoreFieldName = false\n\n // Handle virtual:string fields (virtual relationships, e.g. \"post.title\")\n if ('virtual' in field && typeof field.virtual === 'string') {\n pathPrefix = pathPrefix ? pathPrefix + '.' + field.virtual : field.virtual\n if (fieldAffectsData(field)) {\n // Mark that we should ignore the field name when constructing the field path\n shouldIgnoreFieldName = true\n }\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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : tabHasName(tab) && tab.name\n ? fieldPermissions?.[tab.name]?.fields || fieldPermissions?.[tab.name]\n : fieldPermissions,\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 ...reduceFieldsToOptions({\n fieldPermissions,\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 ...reduceFieldsToOptions({\n fieldPermissions,\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 if (fieldAffectsData(field)) {\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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n } else {\n reduced.push(\n ...reduceFieldsToOptions({\n fieldPermissions,\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n }\n\n return reduced\n }\n\n if (field.type === 'array' && '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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n\n return reduced\n }\n\n if (typeof fieldTypeConditions[field.type] === 'object') {\n if (\n fieldIsID(field) ||\n fieldPermissions === true ||\n fieldPermissions?.[field.name] === true ||\n fieldPermissions?.[field.name]?.read === true\n ) {\n const operatorKeys = new Set()\n\n const { validOperators } = getValidFieldOperators({\n field,\n })\n\n const operators = validOperators.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\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineFieldLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n // For virtual fields, we use just the pathPrefix (the virtual path) without appending the field name\n // For regular fields, we use createNestedClientFieldPath which appends the field name to the path\n let fieldPath: string\n if (shouldIgnoreFieldName) {\n fieldPath = pathPrefix\n } else if (pathPrefix) {\n fieldPath = createNestedClientFieldPath(pathPrefix, field)\n } else {\n fieldPath = field.name\n }\n\n const formattedField: ReducedField = {\n label: formattedLabel,\n plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,\n value: fieldPath,\n ...fieldTypeConditions[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n }\n return reduced\n }, [])\n}\n"],"names":["getTranslation","fieldAffectsData","fieldIsHiddenOrDisabled","fieldIsID","tabHasName","fieldTypeConditions","getValidFieldOperators","createNestedClientFieldPath","combineFieldLabel","reduceFieldsToOptions","fieldPermissions","fields","i18n","labelPrefix","pathPrefix","pathPrefixFromArgs","reduce","reduced","field","virtual","shouldIgnoreFieldName","type","tabs","forEach","tab","label","localizedTabLabel","labelWithPrefix","tabPathPrefix","name","push","translatedLabel","pathWithPrefix","read","operatorKeys","Set","validOperators","operators","acc","operator","has","value","add","operatorKey","t","localizedLabel","formattedLabel","prefix","fieldPath","formattedField","plainTextLabel"],"mappings":"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"}
1
+ {"version":3,"file":"reduceFieldsToOptions.js","names":["getTranslation","fieldAffectsData","fieldIsHiddenOrDisabled","fieldIsID","tabHasName","fieldTypeConditions","getValidFieldOperators","createNestedClientFieldPath","combineFieldLabel","reduceFieldsToOptions","fieldPermissions","fields","i18n","labelPrefix","pathPrefix","pathPrefixFromArgs","reduce","reduced","field","virtual","shouldIgnoreFieldName","type","tabs","forEach","tab","label","localizedTabLabel","labelWithPrefix","tabPathPrefix","name","push","translatedLabel","pathWithPrefix","read","operatorKeys","Set","validOperators","operators","acc","operator","has","value","add","operatorKey","t","localizedLabel","formattedLabel","prefix","fieldPath","formattedField","plainTextLabel"],"sources":["../../src/utilities/reduceFieldsToOptions.tsx"],"sourcesContent":["'use client'\nimport type { ClientTranslationKeys, I18nClient } from '@payloadcms/translations'\nimport type { ClientField, SanitizedFieldPermissions, SanitizedFieldsPermissions } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsHiddenOrDisabled, fieldIsID, tabHasName } from 'payload/shared'\n\nimport type { ReducedField } from '../elements/WhereBuilder/types.js'\n\nimport {\n fieldTypeConditions,\n getValidFieldOperators,\n} from '../elements/WhereBuilder/field-types.js'\nimport { createNestedClientFieldPath } from '../forms/Form/createNestedClientFieldPath.js'\nimport { combineFieldLabel } from './combineFieldLabel.js'\n\ntype ReduceFieldOptionsArgs = {\n fieldPermissions?: SanitizedFieldPermissions | SanitizedFieldsPermissions\n fields: ClientField[]\n i18n: I18nClient\n labelPrefix?: string\n pathPrefix?: string\n}\n\n/**\n * Transforms a fields schema into a flattened array of fields with labels and values.\n * Used in the `WhereBuilder` component to render the fields in the dropdown.\n */\nexport const reduceFieldsToOptions = ({\n fieldPermissions,\n fields,\n i18n,\n labelPrefix,\n pathPrefix: pathPrefixFromArgs,\n}: ReduceFieldOptionsArgs): ReducedField[] => {\n return fields.reduce((reduced, field) => {\n let pathPrefix = pathPrefixFromArgs\n // Do not filter out `field.admin.disableListFilter` fields here, as these should still render as disabled if they appear in the URL query\n // Filter out `virtual: true` fields since they are regular virtuals and not backed by a DB field\n if (\n (fieldIsHiddenOrDisabled(field) && !fieldIsID(field)) ||\n ('virtual' in field && field.virtual === true)\n ) {\n return reduced\n }\n\n // IMPORTANT: We DON'T mutate field.name here because the field object is shared across\n // multiple components (WhereBuilder, GroupByBuilder, etc.). Mutating it would break\n // permission checks and cause issues in other components that need the field name.\n // Instead, we use a flag to determine whether to include the field name in the path.\n let shouldIgnoreFieldName = false\n\n // Handle virtual:string fields (virtual relationships, e.g. \"post.title\")\n if ('virtual' in field && typeof field.virtual === 'string') {\n pathPrefix = pathPrefix ? pathPrefix + '.' + field.virtual : field.virtual\n if (fieldAffectsData(field)) {\n // Mark that we should ignore the field name when constructing the field path\n shouldIgnoreFieldName = true\n }\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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : tabHasName(tab) && tab.name\n ? fieldPermissions?.[tab.name]?.fields || fieldPermissions?.[tab.name]\n : fieldPermissions,\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 ...reduceFieldsToOptions({\n fieldPermissions,\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 ...reduceFieldsToOptions({\n fieldPermissions,\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 if (fieldAffectsData(field)) {\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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n } else {\n reduced.push(\n ...reduceFieldsToOptions({\n fieldPermissions,\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix,\n }),\n )\n }\n\n return reduced\n }\n\n if (field.type === 'array' && '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 ...reduceFieldsToOptions({\n fieldPermissions:\n typeof fieldPermissions === 'boolean'\n ? fieldPermissions\n : fieldPermissions?.[field.name]?.fields || fieldPermissions?.[field.name],\n fields: field.fields,\n i18n,\n labelPrefix: labelWithPrefix,\n pathPrefix: pathWithPrefix,\n }),\n )\n\n return reduced\n }\n\n if (typeof fieldTypeConditions[field.type] === 'object') {\n if (\n fieldIsID(field) ||\n fieldPermissions === true ||\n fieldPermissions?.[field.name] === true ||\n fieldPermissions?.[field.name]?.read === true\n ) {\n const operatorKeys = new Set()\n\n const { validOperators } = getValidFieldOperators({\n field,\n })\n\n const operators = validOperators.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\n return acc\n }, [])\n\n const localizedLabel = getTranslation(field.label || '', i18n)\n\n const formattedLabel = labelPrefix\n ? combineFieldLabel({\n field,\n prefix: labelPrefix,\n })\n : localizedLabel\n\n // For virtual fields, we use just the pathPrefix (the virtual path) without appending the field name\n // For regular fields, we use createNestedClientFieldPath which appends the field name to the path\n let fieldPath: string\n if (shouldIgnoreFieldName) {\n fieldPath = pathPrefix\n } else if (pathPrefix) {\n fieldPath = createNestedClientFieldPath(pathPrefix, field)\n } else {\n fieldPath = field.name\n }\n\n const formattedField: ReducedField = {\n label: formattedLabel,\n plainTextLabel: `${labelPrefix ? labelPrefix + ' > ' : ''}${localizedLabel}`,\n value: fieldPath,\n ...fieldTypeConditions[field.type],\n field,\n operators,\n }\n\n reduced.push(formattedField)\n return reduced\n }\n }\n return reduced\n }, [])\n}\n"],"mappings":"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","ignoreList":[]}
@@ -5,26 +5,26 @@ import { unflatten as flatleyUnflatten } from 'payload/shared';
5
5
  * @param unflatten This also unflattens the data if `unflatten` is true. The unflattened data should match the original data structure
6
6
  * @param ignoreDisableFormData - if true, will include fields that have `disableFormData` set to true, for example, blocks or arrays fields.
7
7
  *
8
- */ export const reduceFieldsToValuesWithValidation = (fields, unflatten, ignoreDisableFormData)=>{
9
- const state = {
10
- data: {},
11
- valid: true
12
- };
13
- if (!fields) {
14
- return state;
15
- }
16
- Object.keys(fields).forEach((key)=>{
17
- if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {
18
- state.data[key] = fields[key]?.value;
19
- if (!fields[key].valid) {
20
- state.valid = false;
21
- }
22
- }
23
- });
24
- if (unflatten) {
25
- state.data = flatleyUnflatten(state.data);
26
- }
8
+ */
9
+ export const reduceFieldsToValuesWithValidation = (fields, unflatten, ignoreDisableFormData) => {
10
+ const state = {
11
+ data: {},
12
+ valid: true
13
+ };
14
+ if (!fields) {
27
15
  return state;
16
+ }
17
+ Object.keys(fields).forEach(key => {
18
+ if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {
19
+ state.data[key] = fields[key]?.value;
20
+ if (!fields[key].valid) {
21
+ state.valid = false;
22
+ }
23
+ }
24
+ });
25
+ if (unflatten) {
26
+ state.data = flatleyUnflatten(state.data);
27
+ }
28
+ return state;
28
29
  };
29
-
30
30
  //# sourceMappingURL=reduceFieldsToValuesWithValidation.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"sourcesContent":["import type { Data, FormState } from 'payload'\n\nimport { unflatten as flatleyUnflatten } from 'payload/shared'\n\ntype ReturnType = {\n data: Data\n valid: boolean\n}\n\n/**\n * Reduce flattened form fields (Fields) to just map to the respective values instead of the full FormField object\n *\n * @param unflatten This also unflattens the data if `unflatten` is true. The unflattened data should match the original data structure\n * @param ignoreDisableFormData - if true, will include fields that have `disableFormData` set to true, for example, blocks or arrays fields.\n *\n */\nexport const reduceFieldsToValuesWithValidation = (\n fields: FormState,\n unflatten?: boolean,\n ignoreDisableFormData?: boolean,\n): ReturnType => {\n const state: ReturnType = {\n data: {},\n valid: true,\n }\n\n if (!fields) {\n return state\n }\n\n Object.keys(fields).forEach((key) => {\n if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {\n state.data[key] = fields[key]?.value\n if (!fields[key].valid) {\n state.valid = false\n }\n }\n })\n\n if (unflatten) {\n state.data = flatleyUnflatten(state.data)\n }\n\n return state\n}\n"],"names":["unflatten","flatleyUnflatten","reduceFieldsToValuesWithValidation","fields","ignoreDisableFormData","state","data","valid","Object","keys","forEach","key","disableFormData","value"],"mappings":"AAEA,SAASA,aAAaC,gBAAgB,QAAQ,iBAAgB;AAO9D;;;;;;CAMC,GACD,OAAO,MAAMC,qCAAqC,CAChDC,QACAH,WACAI;IAEA,MAAMC,QAAoB;QACxBC,MAAM,CAAC;QACPC,OAAO;IACT;IAEA,IAAI,CAACJ,QAAQ;QACX,OAAOE;IACT;IAEAG,OAAOC,IAAI,CAACN,QAAQO,OAAO,CAAC,CAACC;QAC3B,IAAIP,0BAA0B,QAAQ,CAACD,MAAM,CAACQ,IAAI,EAAEC,iBAAiB;YACnEP,MAAMC,IAAI,CAACK,IAAI,GAAGR,MAAM,CAACQ,IAAI,EAAEE;YAC/B,IAAI,CAACV,MAAM,CAACQ,IAAI,CAACJ,KAAK,EAAE;gBACtBF,MAAME,KAAK,GAAG;YAChB;QACF;IACF;IAEA,IAAIP,WAAW;QACbK,MAAMC,IAAI,GAAGL,iBAAiBI,MAAMC,IAAI;IAC1C;IAEA,OAAOD;AACT,EAAC"}
1
+ {"version":3,"file":"reduceFieldsToValuesWithValidation.js","names":["unflatten","flatleyUnflatten","reduceFieldsToValuesWithValidation","fields","ignoreDisableFormData","state","data","valid","Object","keys","forEach","key","disableFormData","value"],"sources":["../../src/utilities/reduceFieldsToValuesWithValidation.ts"],"sourcesContent":["import type { Data, FormState } from 'payload'\n\nimport { unflatten as flatleyUnflatten } from 'payload/shared'\n\ntype ReturnType = {\n data: Data\n valid: boolean\n}\n\n/**\n * Reduce flattened form fields (Fields) to just map to the respective values instead of the full FormField object\n *\n * @param unflatten This also unflattens the data if `unflatten` is true. The unflattened data should match the original data structure\n * @param ignoreDisableFormData - if true, will include fields that have `disableFormData` set to true, for example, blocks or arrays fields.\n *\n */\nexport const reduceFieldsToValuesWithValidation = (\n fields: FormState,\n unflatten?: boolean,\n ignoreDisableFormData?: boolean,\n): ReturnType => {\n const state: ReturnType = {\n data: {},\n valid: true,\n }\n\n if (!fields) {\n return state\n }\n\n Object.keys(fields).forEach((key) => {\n if (ignoreDisableFormData === true || !fields[key]?.disableFormData) {\n state.data[key] = fields[key]?.value\n if (!fields[key].valid) {\n state.valid = false\n }\n }\n })\n\n if (unflatten) {\n state.data = flatleyUnflatten(state.data)\n }\n\n return state\n}\n"],"mappings":"AAEA,SAASA,SAAA,IAAaC,gBAAgB,QAAQ;AAO9C;;;;;;;AAOA,OAAO,MAAMC,kCAAA,GAAqCA,CAChDC,MAAA,EACAH,SAAA,EACAI,qBAAA;EAEA,MAAMC,KAAA,GAAoB;IACxBC,IAAA,EAAM,CAAC;IACPC,KAAA,EAAO;EACT;EAEA,IAAI,CAACJ,MAAA,EAAQ;IACX,OAAOE,KAAA;EACT;EAEAG,MAAA,CAAOC,IAAI,CAACN,MAAA,EAAQO,OAAO,CAAEC,GAAA;IAC3B,IAAIP,qBAAA,KAA0B,QAAQ,CAACD,MAAM,CAACQ,GAAA,CAAI,EAAEC,eAAA,EAAiB;MACnEP,KAAA,CAAMC,IAAI,CAACK,GAAA,CAAI,GAAGR,MAAM,CAACQ,GAAA,CAAI,EAAEE,KAAA;MAC/B,IAAI,CAACV,MAAM,CAACQ,GAAA,CAAI,CAACJ,KAAK,EAAE;QACtBF,KAAA,CAAME,KAAK,GAAG;MAChB;IACF;EACF;EAEA,IAAIP,SAAA,EAAW;IACbK,KAAA,CAAMC,IAAI,GAAGL,gBAAA,CAAiBI,KAAA,CAAMC,IAAI;EAC1C;EAEA,OAAOD,KAAA;AACT","ignoreList":[]}
@@ -1,5 +1,4 @@
1
1
  export function removeUndefined(obj) {
2
- return Object.fromEntries(Object.entries(obj).filter(([, value])=>value !== undefined));
2
+ return Object.fromEntries(Object.entries(obj).filter(([, value]) => value !== undefined));
3
3
  }
4
-
5
4
  //# sourceMappingURL=removeUndefined.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utilities/removeUndefined.ts"],"sourcesContent":["export function removeUndefined<T extends object>(obj: T): T {\n return Object.fromEntries(Object.entries(obj).filter(([, value]) => value !== undefined)) as T\n}\n"],"names":["removeUndefined","obj","Object","fromEntries","entries","filter","value","undefined"],"mappings":"AAAA,OAAO,SAASA,gBAAkCC,GAAM;IACtD,OAAOC,OAAOC,WAAW,CAACD,OAAOE,OAAO,CAACH,KAAKI,MAAM,CAAC,CAAC,GAAGC,MAAM,GAAKA,UAAUC;AAChF"}
1
+ {"version":3,"file":"removeUndefined.js","names":["removeUndefined","obj","Object","fromEntries","entries","filter","value","undefined"],"sources":["../../src/utilities/removeUndefined.ts"],"sourcesContent":["export function removeUndefined<T extends object>(obj: T): T {\n return Object.fromEntries(Object.entries(obj).filter(([, value]) => value !== undefined)) as T\n}\n"],"mappings":"AAAA,OAAO,SAASA,gBAAkCC,GAAM;EACtD,OAAOC,MAAA,CAAOC,WAAW,CAACD,MAAA,CAAOE,OAAO,CAACH,GAAA,EAAKI,MAAM,CAAC,CAAC,GAAGC,KAAA,CAAM,KAAKA,KAAA,KAAUC,SAAA;AAChF","ignoreList":[]}