@payloadcms/ui 3.71.0-canary.2 → 3.71.0-internal-debug.dea9d74

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 (1199) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +1 -0
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AddNewRelation/index.js +218 -273
  5. package/dist/elements/AddNewRelation/index.js.map +1 -1
  6. package/dist/elements/AddNewRelation/types.js +2 -1
  7. package/dist/elements/AddNewRelation/types.js.map +1 -1
  8. package/dist/elements/AnimateHeight/index.js +84 -73
  9. package/dist/elements/AnimateHeight/index.js.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +71 -68
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/AppHeader/index.js +171 -101
  13. package/dist/elements/AppHeader/index.js.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +186 -118
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.js +162 -181
  17. package/dist/elements/Autosave/index.js.map +1 -1
  18. package/dist/elements/Banner/index.js +52 -32
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +169 -173
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.js +84 -51
  23. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js +85 -94
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +30 -56
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +19 -27
  29. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +179 -169
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditForm/types.js +2 -1
  33. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +221 -172
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.js +56 -57
  37. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/FileSidebar/index.js +395 -316
  39. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FormsManager/createFormData.js +33 -32
  41. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  42. package/dist/elements/BulkUpload/FormsManager/index.js +503 -473
  43. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  44. package/dist/elements/BulkUpload/FormsManager/reducer.js +100 -90
  45. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  46. package/dist/elements/BulkUpload/Header/index.js +27 -15
  47. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.js +204 -271
  49. package/dist/elements/BulkUpload/index.js.map +1 -1
  50. package/dist/elements/Button/index.js +227 -160
  51. package/dist/elements/Button/index.js.map +1 -1
  52. package/dist/elements/Button/types.js +14 -1
  53. package/dist/elements/Button/types.js.map +1 -1
  54. package/dist/elements/Card/index.js +53 -33
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CheckboxPopup/index.js +43 -36
  57. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  58. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +29 -35
  59. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  60. package/dist/elements/ClipboardAction/clipboardUtilities.js +33 -43
  61. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  62. package/dist/elements/ClipboardAction/index.js +110 -83
  63. package/dist/elements/ClipboardAction/index.js.map +1 -1
  64. package/dist/elements/ClipboardAction/isClipboardDataValid.js +64 -71
  65. package/dist/elements/ClipboardAction/isClipboardDataValid.js.map +1 -1
  66. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +75 -93
  67. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  68. package/dist/elements/ClipboardAction/types.js +2 -1
  69. package/dist/elements/ClipboardAction/types.js.map +1 -1
  70. package/dist/elements/CloseModalButton/index.js +25 -20
  71. package/dist/elements/CloseModalButton/index.js.map +1 -1
  72. package/dist/elements/CloseModalOnRouteChange/index.js +17 -43
  73. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  74. package/dist/elements/CodeEditor/CodeEditor.js +82 -97
  75. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  76. package/dist/elements/CodeEditor/constants.js +15 -14
  77. package/dist/elements/CodeEditor/constants.js.map +1 -1
  78. package/dist/elements/CodeEditor/index.js +22 -10
  79. package/dist/elements/CodeEditor/index.js.map +1 -1
  80. package/dist/elements/CodeEditor/types.js +4 -1
  81. package/dist/elements/CodeEditor/types.js.map +1 -1
  82. package/dist/elements/Collapsible/index.js +151 -141
  83. package/dist/elements/Collapsible/index.js.map +1 -1
  84. package/dist/elements/Collapsible/provider.js +32 -30
  85. package/dist/elements/Collapsible/provider.js.map +1 -1
  86. package/dist/elements/ColumnSelector/index.js +54 -54
  87. package/dist/elements/ColumnSelector/index.js.map +1 -1
  88. package/dist/elements/Combobox/index.js +114 -84
  89. package/dist/elements/Combobox/index.js.map +1 -1
  90. package/dist/elements/ConfirmationModal/index.js +116 -129
  91. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  92. package/dist/elements/CopyLocaleData/index.js +213 -272
  93. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  94. package/dist/elements/CopyToClipboard/index.js +47 -70
  95. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  96. package/dist/elements/DatePicker/DatePicker.js +130 -136
  97. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  98. package/dist/elements/DatePicker/getFormattedLocale.js +11 -10
  99. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  100. package/dist/elements/DatePicker/index.js +23 -11
  101. package/dist/elements/DatePicker/index.js.map +1 -1
  102. package/dist/elements/DatePicker/types.js +2 -1
  103. package/dist/elements/DatePicker/types.js.map +1 -1
  104. package/dist/elements/DefaultListViewTabs/index.js +97 -131
  105. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  106. package/dist/elements/DeleteDocument/index.js +170 -141
  107. package/dist/elements/DeleteDocument/index.js.map +1 -1
  108. package/dist/elements/DeleteMany/index.js +371 -332
  109. package/dist/elements/DeleteMany/index.js.map +1 -1
  110. package/dist/elements/DocumentControls/index.js +494 -274
  111. package/dist/elements/DocumentControls/index.js.map +1 -1
  112. package/dist/elements/DocumentDrawer/DrawerContent.js +141 -122
  113. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  114. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +96 -103
  115. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DocumentDrawer/Provider.js +24 -18
  117. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  118. package/dist/elements/DocumentDrawer/index.js +134 -210
  119. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  120. package/dist/elements/DocumentDrawer/types.js +12 -1
  121. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  122. package/dist/elements/DocumentFields/index.js +106 -69
  123. package/dist/elements/DocumentFields/index.js.map +1 -1
  124. package/dist/elements/DocumentLocked/index.js +154 -179
  125. package/dist/elements/DocumentLocked/index.js.map +1 -1
  126. package/dist/elements/DocumentTakeOver/index.js +97 -113
  127. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  128. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +26 -60
  129. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  130. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +2 -1
  131. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  132. package/dist/elements/DraggableSortable/index.js +72 -124
  133. package/dist/elements/DraggableSortable/index.js.map +1 -1
  134. package/dist/elements/DraggableSortable/types.js +2 -1
  135. package/dist/elements/DraggableSortable/types.js.map +1 -1
  136. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +25 -85
  137. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  138. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +2 -1
  139. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  140. package/dist/elements/Drawer/index.js +166 -192
  141. package/dist/elements/Drawer/index.js.map +1 -1
  142. package/dist/elements/Drawer/types.js +2 -1
  143. package/dist/elements/Drawer/types.js.map +1 -1
  144. package/dist/elements/Drawer/useDrawerSlug.js +7 -19
  145. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  146. package/dist/elements/DrawerActionHeader/index.js +59 -61
  147. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  148. package/dist/elements/DrawerContentContainer/index.js +14 -9
  149. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  150. package/dist/elements/Dropzone/index.js +90 -75
  151. package/dist/elements/Dropzone/index.js.map +1 -1
  152. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +145 -87
  153. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  154. package/dist/elements/DuplicateDocument/index.js +155 -145
  155. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  156. package/dist/elements/EditMany/DrawerContent.js +398 -392
  157. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  158. package/dist/elements/EditMany/index.js +79 -131
  159. package/dist/elements/EditMany/index.js.map +1 -1
  160. package/dist/elements/EditUpload/index.js +572 -395
  161. package/dist/elements/EditUpload/index.js.map +1 -1
  162. package/dist/elements/EmailAndUsername/index.js +96 -77
  163. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  164. package/dist/elements/ErrorPill/index.js +38 -24
  165. package/dist/elements/ErrorPill/index.js.map +1 -1
  166. package/dist/elements/FieldDiffContainer/index.js +50 -34
  167. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  168. package/dist/elements/FieldDiffLabel/index.js +10 -7
  169. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  170. package/dist/elements/FieldSelect/index.js +45 -75
  171. package/dist/elements/FieldSelect/index.js.map +1 -1
  172. package/dist/elements/FieldSelect/reduceFieldOptions.js +69 -67
  173. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  174. package/dist/elements/FileDetails/DraggableFileDetails/index.js +113 -105
  175. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  176. package/dist/elements/FileDetails/FileMeta/index.js +72 -33
  177. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  178. package/dist/elements/FileDetails/StaticFileDetails/index.js +76 -58
  179. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  180. package/dist/elements/FileDetails/index.js +20 -14
  181. package/dist/elements/FileDetails/index.js.map +1 -1
  182. package/dist/elements/FolderView/Breadcrumbs/index.js +59 -86
  183. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  184. package/dist/elements/FolderView/BrowseByFolderButton/index.js +30 -30
  185. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  186. package/dist/elements/FolderView/Cell/index.client.js +88 -87
  187. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  188. package/dist/elements/FolderView/Cell/index.server.js +19 -14
  189. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  190. package/dist/elements/FolderView/ColoredFolderIcon/index.js +9 -4
  191. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  192. package/dist/elements/FolderView/CurrentFolderActions/index.js +174 -138
  193. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  194. package/dist/elements/FolderView/DragOverlaySelection/index.js +70 -51
  195. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  196. package/dist/elements/FolderView/DraggableTableRow/index.js +71 -54
  197. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  198. package/dist/elements/FolderView/DraggableWithClick/index.js +75 -79
  199. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  200. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +35 -33
  201. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  202. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +497 -565
  203. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  204. package/dist/elements/FolderView/FilterFolderTypePill/index.js +61 -89
  205. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  206. package/dist/elements/FolderView/FolderField/index.server.js +15 -10
  207. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  208. package/dist/elements/FolderView/FolderFileCard/index.js +218 -188
  209. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  210. package/dist/elements/FolderView/FolderFileTable/index.js +203 -264
  211. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  212. package/dist/elements/FolderView/FolderTypeField/index.js +93 -114
  213. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  214. package/dist/elements/FolderView/ItemCardGrid/index.js +35 -27
  215. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  216. package/dist/elements/FolderView/MoveDocToFolder/index.js +142 -264
  217. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  218. package/dist/elements/FolderView/SimpleTable/index.js +105 -83
  219. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  220. package/dist/elements/FolderView/SortByPill/index.js +162 -100
  221. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  222. package/dist/elements/FolderView/ToggleViewButtons/index.js +47 -24
  223. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  224. package/dist/elements/FullscreenModal/index.js +16 -22
  225. package/dist/elements/FullscreenModal/index.js.map +1 -1
  226. package/dist/elements/GenerateConfirmation/index.js +63 -83
  227. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  228. package/dist/elements/GroupByBuilder/index.js +142 -100
  229. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  230. package/dist/elements/Gutter/index.js +22 -19
  231. package/dist/elements/Gutter/index.js.map +1 -1
  232. package/dist/elements/HTMLDiff/diff/index.js +522 -500
  233. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  234. package/dist/elements/HTMLDiff/index.js +31 -26
  235. package/dist/elements/HTMLDiff/index.js.map +1 -1
  236. package/dist/elements/Hamburger/index.js +51 -40
  237. package/dist/elements/Hamburger/index.js.map +1 -1
  238. package/dist/elements/HydrateAuthProvider/index.js +15 -27
  239. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  240. package/dist/elements/IDLabel/index.js +31 -57
  241. package/dist/elements/IDLabel/index.js.map +1 -1
  242. package/dist/elements/ItemsDrawer/ItemSearch/index.js +43 -48
  243. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  244. package/dist/elements/ItemsDrawer/index.js +219 -168
  245. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  246. package/dist/elements/LeaveWithoutSaving/index.js +73 -142
  247. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  248. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +113 -129
  249. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  250. package/dist/elements/Link/formatUrl.js +53 -56
  251. package/dist/elements/Link/formatUrl.js.map +1 -1
  252. package/dist/elements/Link/index.js +50 -54
  253. package/dist/elements/Link/index.js.map +1 -1
  254. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +17 -17
  255. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  256. package/dist/elements/ListControls/index.js +253 -168
  257. package/dist/elements/ListControls/index.js.map +1 -1
  258. package/dist/elements/ListControls/types.js +8 -1
  259. package/dist/elements/ListControls/types.js.map +1 -1
  260. package/dist/elements/ListDrawer/DrawerContent.js +183 -168
  261. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  262. package/dist/elements/ListDrawer/Provider.js +28 -19
  263. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  264. package/dist/elements/ListDrawer/index.js +149 -229
  265. package/dist/elements/ListDrawer/index.js.map +1 -1
  266. package/dist/elements/ListDrawer/types.js +6 -1
  267. package/dist/elements/ListDrawer/types.js.map +1 -1
  268. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +43 -84
  269. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  270. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +23 -33
  271. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  272. package/dist/elements/ListHeader/DrawerTitleActions/index.js +1 -0
  273. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  274. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +49 -73
  275. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  276. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +22 -40
  277. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  278. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +130 -162
  279. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  280. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +169 -148
  281. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  282. package/dist/elements/ListHeader/TitleActions/index.js +1 -0
  283. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  284. package/dist/elements/ListHeader/index.js +65 -24
  285. package/dist/elements/ListHeader/index.js.map +1 -1
  286. package/dist/elements/ListSelection/index.js +93 -58
  287. package/dist/elements/ListSelection/index.js.map +1 -1
  288. package/dist/elements/LivePreview/Device/index.js +83 -83
  289. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  290. package/dist/elements/LivePreview/DeviceContainer/index.js +29 -49
  291. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  292. package/dist/elements/LivePreview/IFrame/index.js +20 -44
  293. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  294. package/dist/elements/LivePreview/Toggler/index.js +32 -26
  295. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  296. package/dist/elements/LivePreview/Toolbar/Controls/index.js +210 -141
  297. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  298. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +62 -92
  299. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  300. package/dist/elements/LivePreview/Toolbar/index.js +84 -84
  301. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  302. package/dist/elements/LivePreview/ToolbarArea/index.js +15 -33
  303. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  304. package/dist/elements/LivePreview/Window/index.js +132 -166
  305. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  306. package/dist/elements/Loading/index.js +112 -144
  307. package/dist/elements/Loading/index.js.map +1 -1
  308. package/dist/elements/LoadingOverlay/index.js +68 -67
  309. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  310. package/dist/elements/LoadingOverlay/reducer.js +27 -29
  311. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  312. package/dist/elements/LoadingOverlay/types.js +2 -1
  313. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  314. package/dist/elements/Localizer/LocalizerLabel/index.js +55 -51
  315. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  316. package/dist/elements/Localizer/index.js +99 -117
  317. package/dist/elements/Localizer/index.js.map +1 -1
  318. package/dist/elements/Locked/index.js +38 -59
  319. package/dist/elements/Locked/index.js.map +1 -1
  320. package/dist/elements/Logout/index.js +30 -51
  321. package/dist/elements/Logout/index.js.map +1 -1
  322. package/dist/elements/Modal/index.js +1 -1
  323. package/dist/elements/Modal/index.js.map +1 -1
  324. package/dist/elements/Nav/NavToggler/index.js +34 -80
  325. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  326. package/dist/elements/Nav/context.js +107 -103
  327. package/dist/elements/Nav/context.js.map +1 -1
  328. package/dist/elements/NavGroup/index.js +98 -122
  329. package/dist/elements/NavGroup/index.js.map +1 -1
  330. package/dist/elements/NoListResults/index.js +27 -14
  331. package/dist/elements/NoListResults/index.js.map +1 -1
  332. package/dist/elements/PageControls/GroupByPageControls.js +40 -71
  333. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  334. package/dist/elements/PageControls/index.js +77 -107
  335. package/dist/elements/PageControls/index.js.map +1 -1
  336. package/dist/elements/Pagination/ClickableArrow/index.js +24 -16
  337. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  338. package/dist/elements/Pagination/Page/index.js +19 -16
  339. package/dist/elements/Pagination/Page/index.js.map +1 -1
  340. package/dist/elements/Pagination/Separator/index.js +10 -6
  341. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  342. package/dist/elements/Pagination/index.js +102 -99
  343. package/dist/elements/Pagination/index.js.map +1 -1
  344. package/dist/elements/PerPage/index.js +93 -80
  345. package/dist/elements/PerPage/index.js.map +1 -1
  346. package/dist/elements/PermanentlyDeleteButton/index.js +150 -133
  347. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  348. package/dist/elements/Pill/index.js +103 -121
  349. package/dist/elements/Pill/index.js.map +1 -1
  350. package/dist/elements/PillSelector/index.js +79 -56
  351. package/dist/elements/PillSelector/index.js.map +1 -1
  352. package/dist/elements/Popup/PopupButtonList/index.js +65 -52
  353. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  354. package/dist/elements/Popup/PopupDivider/index.js +10 -5
  355. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  356. package/dist/elements/Popup/PopupGroupLabel/index.js +11 -8
  357. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  358. package/dist/elements/Popup/PopupTrigger/index.js +50 -44
  359. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  360. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  361. package/dist/elements/Popup/index.js +339 -282
  362. package/dist/elements/Popup/index.js.map +1 -1
  363. package/dist/elements/PreviewButton/index.js +24 -31
  364. package/dist/elements/PreviewButton/index.js.map +1 -1
  365. package/dist/elements/PreviewSizes/index.js +206 -132
  366. package/dist/elements/PreviewSizes/index.js.map +1 -1
  367. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +154 -110
  368. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  369. package/dist/elements/PublishButton/ScheduleDrawer/index.js +461 -309
  370. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  371. package/dist/elements/PublishButton/ScheduleDrawer/types.js +2 -1
  372. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  373. package/dist/elements/PublishButton/index.js +234 -195
  374. package/dist/elements/PublishButton/index.js.map +1 -1
  375. package/dist/elements/PublishMany/DrawerContent.js +137 -134
  376. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  377. package/dist/elements/PublishMany/index.js +58 -109
  378. package/dist/elements/PublishMany/index.js.map +1 -1
  379. package/dist/elements/QueryPresets/QueryPresetBar/index.js +344 -267
  380. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  381. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +80 -87
  382. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  383. package/dist/elements/QueryPresets/cells/AccessCell/index.js +47 -21
  384. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  385. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +26 -19
  386. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  387. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +61 -48
  388. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  389. package/dist/elements/QueryPresets/cells/WhereCell/index.js +29 -27
  390. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  391. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +42 -47
  392. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  393. package/dist/elements/QueryPresets/fields/GroupByField/index.js +96 -74
  394. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  395. package/dist/elements/QueryPresets/fields/WhereField/index.js +149 -98
  396. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  397. package/dist/elements/ReactSelect/ClearIndicator/index.js +29 -27
  398. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  399. package/dist/elements/ReactSelect/Control/index.js +40 -41
  400. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  401. package/dist/elements/ReactSelect/DropdownIndicator/index.js +26 -23
  402. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  403. package/dist/elements/ReactSelect/Input/index.js +20 -13
  404. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  405. package/dist/elements/ReactSelect/MultiValue/index.js +48 -126
  406. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  407. package/dist/elements/ReactSelect/MultiValueLabel/index.js +29 -32
  408. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  409. package/dist/elements/ReactSelect/MultiValueRemove/index.js +49 -86
  410. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  411. package/dist/elements/ReactSelect/SingleValue/index.js +22 -14
  412. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  413. package/dist/elements/ReactSelect/ValueContainer/index.js +38 -29
  414. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  415. package/dist/elements/ReactSelect/index.js +211 -198
  416. package/dist/elements/ReactSelect/index.js.map +1 -1
  417. package/dist/elements/ReactSelect/types.js +9 -1
  418. package/dist/elements/ReactSelect/types.js.map +1 -1
  419. package/dist/elements/RelationshipTable/AddNewButton.js +68 -58
  420. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  421. package/dist/elements/RelationshipTable/Pagination.js +21 -48
  422. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  423. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +39 -34
  424. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  425. package/dist/elements/RelationshipTable/index.js +374 -258
  426. package/dist/elements/RelationshipTable/index.js.map +1 -1
  427. package/dist/elements/RenderComponent/index.js +29 -20
  428. package/dist/elements/RenderComponent/index.js.map +1 -1
  429. package/dist/elements/RenderCustomComponent/index.js +3 -5
  430. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  431. package/dist/elements/RenderIfInViewport/index.js +27 -58
  432. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  433. package/dist/elements/RenderServerComponent/index.js +57 -56
  434. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  435. package/dist/elements/RenderTitle/index.js +44 -59
  436. package/dist/elements/RenderTitle/index.js.map +1 -1
  437. package/dist/elements/RestoreButton/index.js +187 -154
  438. package/dist/elements/RestoreButton/index.js.map +1 -1
  439. package/dist/elements/RestoreMany/index.js +177 -170
  440. package/dist/elements/RestoreMany/index.js.map +1 -1
  441. package/dist/elements/SaveButton/index.js +46 -49
  442. package/dist/elements/SaveButton/index.js.map +1 -1
  443. package/dist/elements/SaveDraftButton/index.js +84 -88
  444. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  445. package/dist/elements/SearchBar/index.js +37 -19
  446. package/dist/elements/SearchBar/index.js.map +1 -1
  447. package/dist/elements/SearchFilter/index.js +60 -54
  448. package/dist/elements/SearchFilter/index.js.map +1 -1
  449. package/dist/elements/SearchFilter/types.js +20 -1
  450. package/dist/elements/SearchFilter/types.js.map +1 -1
  451. package/dist/elements/SelectAll/index.js +21 -46
  452. package/dist/elements/SelectAll/index.js.map +1 -1
  453. package/dist/elements/SelectMany/index.js +27 -25
  454. package/dist/elements/SelectMany/index.js.map +1 -1
  455. package/dist/elements/SelectRow/index.js +27 -79
  456. package/dist/elements/SelectRow/index.js.map +1 -1
  457. package/dist/elements/ShimmerEffect/index.js +58 -73
  458. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  459. package/dist/elements/SortColumn/index.js +98 -106
  460. package/dist/elements/SortColumn/index.js.map +1 -1
  461. package/dist/elements/SortComplex/index.js +142 -163
  462. package/dist/elements/SortComplex/index.js.map +1 -1
  463. package/dist/elements/SortHeader/index.js +54 -87
  464. package/dist/elements/SortHeader/index.js.map +1 -1
  465. package/dist/elements/SortRow/index.js +21 -27
  466. package/dist/elements/SortRow/index.js.map +1 -1
  467. package/dist/elements/Status/index.js +203 -161
  468. package/dist/elements/Status/index.js.map +1 -1
  469. package/dist/elements/StayLoggedIn/index.js +38 -76
  470. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  471. package/dist/elements/StepNav/SetStepNav.js +10 -27
  472. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  473. package/dist/elements/StepNav/context.js +24 -41
  474. package/dist/elements/StepNav/context.js.map +1 -1
  475. package/dist/elements/StepNav/index.js +148 -92
  476. package/dist/elements/StepNav/index.js.map +1 -1
  477. package/dist/elements/StepNav/types.js +2 -1
  478. package/dist/elements/StepNav/types.js.map +1 -1
  479. package/dist/elements/StickyToolbar/index.js +10 -8
  480. package/dist/elements/StickyToolbar/index.js.map +1 -1
  481. package/dist/elements/Table/DefaultCell/fields/Array/index.js +13 -28
  482. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  483. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +34 -60
  484. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  485. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +18 -27
  486. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  487. package/dist/elements/Table/DefaultCell/fields/Code/index.js +22 -17
  488. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  489. package/dist/elements/Table/DefaultCell/fields/Date/index.js +22 -41
  490. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  491. package/dist/elements/Table/DefaultCell/fields/File/index.js +52 -42
  492. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  493. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +18 -12
  494. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  495. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +115 -183
  496. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  497. package/dist/elements/Table/DefaultCell/fields/Select/index.js +22 -44
  498. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  499. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +11 -9
  500. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  501. package/dist/elements/Table/DefaultCell/fields/index.js +14 -14
  502. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  503. package/dist/elements/Table/DefaultCell/index.js +124 -151
  504. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  505. package/dist/elements/Table/OrderableRow.js +40 -32
  506. package/dist/elements/Table/OrderableRow.js.map +1 -1
  507. package/dist/elements/Table/OrderableRowDragPreview.js +24 -15
  508. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  509. package/dist/elements/Table/OrderableTable.js +224 -167
  510. package/dist/elements/Table/OrderableTable.js.map +1 -1
  511. package/dist/elements/Table/RelationshipProvider/index.js +106 -162
  512. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  513. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  514. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  515. package/dist/elements/Table/index.js +83 -45
  516. package/dist/elements/Table/index.js.map +1 -1
  517. package/dist/elements/Thumbnail/createThumbnail.js +53 -48
  518. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  519. package/dist/elements/Thumbnail/index.js +127 -148
  520. package/dist/elements/Thumbnail/index.js.map +1 -1
  521. package/dist/elements/ThumbnailCard/index.js +47 -68
  522. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  523. package/dist/elements/TimezonePicker/index.js +53 -44
  524. package/dist/elements/TimezonePicker/index.js.map +1 -1
  525. package/dist/elements/TimezonePicker/types.js +2 -1
  526. package/dist/elements/TimezonePicker/types.js.map +1 -1
  527. package/dist/elements/Toasts/fieldErrors.js +69 -77
  528. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  529. package/dist/elements/Tooltip/index.js +98 -65
  530. package/dist/elements/Tooltip/index.js.map +1 -1
  531. package/dist/elements/Translation/index.js +48 -39
  532. package/dist/elements/Translation/index.js.map +1 -1
  533. package/dist/elements/TrashBanner/index.js +33 -26
  534. package/dist/elements/TrashBanner/index.js.map +1 -1
  535. package/dist/elements/UnpublishMany/DrawerContent.js +130 -127
  536. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  537. package/dist/elements/UnpublishMany/index.js +58 -109
  538. package/dist/elements/UnpublishMany/index.js.map +1 -1
  539. package/dist/elements/Upload/index.js +633 -481
  540. package/dist/elements/Upload/index.js.map +1 -1
  541. package/dist/elements/ViewDescription/index.js +15 -26
  542. package/dist/elements/ViewDescription/index.js.map +1 -1
  543. package/dist/elements/ViewDescription/types.js.map +1 -1
  544. package/dist/elements/WhereBuilder/Condition/Date/index.js +23 -29
  545. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  546. package/dist/elements/WhereBuilder/Condition/Date/types.js +2 -1
  547. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  548. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +95 -76
  549. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  550. package/dist/elements/WhereBuilder/Condition/Number/index.js +74 -129
  551. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  552. package/dist/elements/WhereBuilder/Condition/Number/types.js +2 -1
  553. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  554. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +353 -313
  555. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  556. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +83 -67
  557. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  558. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +2 -1
  559. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  560. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js +10 -9
  561. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js.map +1 -1
  562. package/dist/elements/WhereBuilder/Condition/Select/index.js +69 -154
  563. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  564. package/dist/elements/WhereBuilder/Condition/Select/types.js +2 -1
  565. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  566. package/dist/elements/WhereBuilder/Condition/Text/index.js +72 -123
  567. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  568. package/dist/elements/WhereBuilder/Condition/Text/types.js +2 -1
  569. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  570. package/dist/elements/WhereBuilder/Condition/index.js +206 -143
  571. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  572. package/dist/elements/WhereBuilder/Condition/types.js +2 -1
  573. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  574. package/dist/elements/WhereBuilder/Condition/validOperators.js +32 -33
  575. package/dist/elements/WhereBuilder/Condition/validOperators.js.map +1 -1
  576. package/dist/elements/WhereBuilder/field-types.js +192 -119
  577. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  578. package/dist/elements/WhereBuilder/index.js +258 -193
  579. package/dist/elements/WhereBuilder/index.js.map +1 -1
  580. package/dist/elements/WhereBuilder/types.js +2 -1
  581. package/dist/elements/WhereBuilder/types.js.map +1 -1
  582. package/dist/elements/WindowInfo/index.js +1 -1
  583. package/dist/elements/WindowInfo/index.js.map +1 -1
  584. package/dist/elements/WithServerSideProps/index.js +20 -19
  585. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  586. package/dist/elements/withMergedProps/index.js +26 -26
  587. package/dist/elements/withMergedProps/index.js.map +1 -1
  588. package/dist/exports/client/index.js +297 -96
  589. package/dist/exports/client/index.js.map +1 -7
  590. package/dist/exports/rsc/index.js +1 -0
  591. package/dist/exports/rsc/index.js.map +1 -1
  592. package/dist/exports/shared/index.js +35 -6
  593. package/dist/exports/shared/index.js.map +1 -7
  594. package/dist/fields/Array/ArrayRow.js +111 -168
  595. package/dist/fields/Array/ArrayRow.js.map +1 -1
  596. package/dist/fields/Array/index.js +532 -398
  597. package/dist/fields/Array/index.js.map +1 -1
  598. package/dist/fields/Blocks/BlockRow.js +163 -198
  599. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  600. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +30 -38
  601. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  602. package/dist/fields/Blocks/BlockSelector/index.js +159 -103
  603. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  604. package/dist/fields/Blocks/BlocksDrawer/index.js +37 -80
  605. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  606. package/dist/fields/Blocks/RowActions.js +50 -106
  607. package/dist/fields/Blocks/RowActions.js.map +1 -1
  608. package/dist/fields/Blocks/SectionTitle/index.js +36 -78
  609. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  610. package/dist/fields/Blocks/index.js +566 -425
  611. package/dist/fields/Blocks/index.js.map +1 -1
  612. package/dist/fields/Checkbox/Input.js +86 -99
  613. package/dist/fields/Checkbox/Input.js.map +1 -1
  614. package/dist/fields/Checkbox/index.js +107 -99
  615. package/dist/fields/Checkbox/index.js.map +1 -1
  616. package/dist/fields/Code/index.js +146 -114
  617. package/dist/fields/Code/index.js.map +1 -1
  618. package/dist/fields/Collapsible/index.js +172 -134
  619. package/dist/fields/Collapsible/index.js.map +1 -1
  620. package/dist/fields/ConfirmPassword/index.js +67 -83
  621. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  622. package/dist/fields/DateTime/index.js +217 -171
  623. package/dist/fields/DateTime/index.js.map +1 -1
  624. package/dist/fields/Email/index.js +111 -86
  625. package/dist/fields/Email/index.js.map +1 -1
  626. package/dist/fields/FieldDescription/index.js +20 -43
  627. package/dist/fields/FieldDescription/index.js.map +1 -1
  628. package/dist/fields/FieldError/index.js +22 -58
  629. package/dist/fields/FieldError/index.js.map +1 -1
  630. package/dist/fields/FieldLabel/index.js +43 -45
  631. package/dist/fields/FieldLabel/index.js.map +1 -1
  632. package/dist/fields/Group/index.js +150 -102
  633. package/dist/fields/Group/index.js.map +1 -1
  634. package/dist/fields/Group/provider.js +13 -12
  635. package/dist/fields/Group/provider.js.map +1 -1
  636. package/dist/fields/Hidden/index.js +27 -67
  637. package/dist/fields/Hidden/index.js.map +1 -1
  638. package/dist/fields/JSON/index.js +185 -143
  639. package/dist/fields/JSON/index.js.map +1 -1
  640. package/dist/fields/Join/index.js +214 -189
  641. package/dist/fields/Join/index.js.map +1 -1
  642. package/dist/fields/Number/index.js +213 -169
  643. package/dist/fields/Number/index.js.map +1 -1
  644. package/dist/fields/Password/index.js +80 -101
  645. package/dist/fields/Password/index.js.map +1 -1
  646. package/dist/fields/Password/input.js +108 -122
  647. package/dist/fields/Password/input.js.map +1 -1
  648. package/dist/fields/Password/types.js +12 -1
  649. package/dist/fields/Password/types.js.map +1 -1
  650. package/dist/fields/Point/index.js +199 -127
  651. package/dist/fields/Point/index.js.map +1 -1
  652. package/dist/fields/RadioGroup/Radio/index.js +56 -81
  653. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  654. package/dist/fields/RadioGroup/index.js +146 -114
  655. package/dist/fields/RadioGroup/index.js.map +1 -1
  656. package/dist/fields/Relationship/Input.js +811 -733
  657. package/dist/fields/Relationship/Input.js.map +1 -1
  658. package/dist/fields/Relationship/createRelationMap.js +31 -33
  659. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  660. package/dist/fields/Relationship/findOptionsByValue.js +28 -32
  661. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  662. package/dist/fields/Relationship/index.js +152 -160
  663. package/dist/fields/Relationship/index.js.map +1 -1
  664. package/dist/fields/Relationship/optionsReducer.js +144 -139
  665. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  666. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +92 -82
  667. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  668. package/dist/fields/Relationship/select-components/SingleValue/index.js +95 -118
  669. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  670. package/dist/fields/Relationship/types.js +2 -1
  671. package/dist/fields/Relationship/types.js.map +1 -1
  672. package/dist/fields/RichText/index.js +3 -3
  673. package/dist/fields/RichText/index.js.map +1 -1
  674. package/dist/fields/Row/index.js +37 -35
  675. package/dist/fields/Row/index.js.map +1 -1
  676. package/dist/fields/Row/provider.js +13 -12
  677. package/dist/fields/Row/provider.js.map +1 -1
  678. package/dist/fields/Select/Input.js +114 -165
  679. package/dist/fields/Select/Input.js.map +1 -1
  680. package/dist/fields/Select/index.js +89 -108
  681. package/dist/fields/Select/index.js.map +1 -1
  682. package/dist/fields/Slug/index.js +103 -134
  683. package/dist/fields/Slug/index.js.map +1 -1
  684. package/dist/fields/Tabs/Tab/index.js +54 -60
  685. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  686. package/dist/fields/Tabs/index.js +213 -382
  687. package/dist/fields/Tabs/index.js.map +1 -1
  688. package/dist/fields/Tabs/provider.js +13 -12
  689. package/dist/fields/Tabs/provider.js.map +1 -1
  690. package/dist/fields/Text/Input.js +169 -191
  691. package/dist/fields/Text/Input.js.map +1 -1
  692. package/dist/fields/Text/index.js +107 -126
  693. package/dist/fields/Text/index.js.map +1 -1
  694. package/dist/fields/Text/types.js +2 -1
  695. package/dist/fields/Text/types.js.map +1 -1
  696. package/dist/fields/Textarea/Input.js +104 -115
  697. package/dist/fields/Textarea/Input.js.map +1 -1
  698. package/dist/fields/Textarea/index.js +61 -88
  699. package/dist/fields/Textarea/index.js.map +1 -1
  700. package/dist/fields/Textarea/types.js +2 -1
  701. package/dist/fields/Textarea/types.js.map +1 -1
  702. package/dist/fields/UI/index.js +3 -3
  703. package/dist/fields/UI/index.js.map +1 -1
  704. package/dist/fields/Upload/HasMany/index.js +141 -186
  705. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  706. package/dist/fields/Upload/HasOne/index.js +59 -60
  707. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  708. package/dist/fields/Upload/Input.js +755 -566
  709. package/dist/fields/Upload/Input.js.map +1 -1
  710. package/dist/fields/Upload/RelationshipContent/index.js +140 -143
  711. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  712. package/dist/fields/Upload/UploadCard/index.js +15 -10
  713. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  714. package/dist/fields/Upload/index.js +79 -96
  715. package/dist/fields/Upload/index.js.map +1 -1
  716. package/dist/fields/Upload/types.js +3 -1
  717. package/dist/fields/Upload/types.js.map +1 -1
  718. package/dist/fields/index.js +31 -31
  719. package/dist/fields/index.js.map +1 -1
  720. package/dist/fields/mergeFieldStyles.js +13 -12
  721. package/dist/fields/mergeFieldStyles.js.map +1 -1
  722. package/dist/fields/shared/index.js +8 -17
  723. package/dist/fields/shared/index.js.map +1 -1
  724. package/dist/forms/Form/context.js +17 -24
  725. package/dist/forms/Form/context.js.map +1 -1
  726. package/dist/forms/Form/createNestedClientFieldPath.js +11 -11
  727. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  728. package/dist/forms/Form/errorMessages.js +2 -2
  729. package/dist/forms/Form/errorMessages.js.map +1 -1
  730. package/dist/forms/Form/fieldReducer.js +378 -412
  731. package/dist/forms/Form/fieldReducer.js.map +1 -1
  732. package/dist/forms/Form/index.js +745 -684
  733. package/dist/forms/Form/index.js.map +1 -1
  734. package/dist/forms/Form/initContextState.js +38 -38
  735. package/dist/forms/Form/initContextState.js.map +1 -1
  736. package/dist/forms/Form/mergeServerFormState.js +93 -97
  737. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  738. package/dist/forms/Form/reduceToSerializableFields.js +20 -17
  739. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  740. package/dist/forms/Form/rowHelpers.js +27 -34
  741. package/dist/forms/Form/rowHelpers.js.map +1 -1
  742. package/dist/forms/Form/rows.js +34 -34
  743. package/dist/forms/Form/rows.js.map +1 -1
  744. package/dist/forms/Form/types.js +53 -1
  745. package/dist/forms/Form/types.js.map +1 -1
  746. package/dist/forms/NullifyField/index.js +61 -96
  747. package/dist/forms/NullifyField/index.js.map +1 -1
  748. package/dist/forms/RenderFields/RenderField.js +237 -259
  749. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  750. package/dist/forms/RenderFields/context.js +9 -9
  751. package/dist/forms/RenderFields/context.js.map +1 -1
  752. package/dist/forms/RenderFields/index.js +76 -115
  753. package/dist/forms/RenderFields/index.js.map +1 -1
  754. package/dist/forms/RenderFields/types.js +2 -1
  755. package/dist/forms/RenderFields/types.js.map +1 -1
  756. package/dist/forms/RowLabel/Context/index.js +30 -29
  757. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  758. package/dist/forms/RowLabel/index.js +33 -24
  759. package/dist/forms/RowLabel/index.js.map +1 -1
  760. package/dist/forms/RowLabel/types.js +2 -1
  761. package/dist/forms/RowLabel/types.js.map +1 -1
  762. package/dist/forms/Submit/index.js +32 -35
  763. package/dist/forms/Submit/index.js.map +1 -1
  764. package/dist/forms/WatchChildErrors/buildPathSegments.js +29 -29
  765. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  766. package/dist/forms/WatchChildErrors/index.js +41 -66
  767. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  768. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +681 -706
  769. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  770. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +14 -22
  771. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  772. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +17 -26
  773. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  774. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +186 -198
  775. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  776. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +67 -60
  777. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
  778. package/dist/forms/fieldSchemasToFormState/index.js +90 -79
  779. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  780. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +12 -16
  781. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  782. package/dist/forms/fieldSchemasToFormState/iterateFields.js +95 -116
  783. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  784. package/dist/forms/fieldSchemasToFormState/renderField.js +273 -274
  785. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  786. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +90 -75
  787. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  788. package/dist/forms/fieldSchemasToFormState/types.js +6 -1
  789. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  790. package/dist/forms/useField/index.js +180 -292
  791. package/dist/forms/useField/index.js.map +1 -1
  792. package/dist/forms/useField/types.js +20 -1
  793. package/dist/forms/useField/types.js.map +1 -1
  794. package/dist/forms/withCondition/WatchCondition.js +9 -27
  795. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  796. package/dist/forms/withCondition/index.js +21 -15
  797. package/dist/forms/withCondition/index.js.map +1 -1
  798. package/dist/graphics/Account/Default/index.js +46 -22
  799. package/dist/graphics/Account/Default/index.js.map +1 -1
  800. package/dist/graphics/Account/Gravatar/index.js +25 -34
  801. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  802. package/dist/graphics/Account/index.js +24 -51
  803. package/dist/graphics/Account/index.js.map +1 -1
  804. package/dist/graphics/DefaultBlockImage/index.js +117 -62
  805. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  806. package/dist/graphics/File/index.js +33 -17
  807. package/dist/graphics/File/index.js.map +1 -1
  808. package/dist/graphics/Icon/index.js +33 -19
  809. package/dist/graphics/Icon/index.js.map +1 -1
  810. package/dist/graphics/Logo/index.js +112 -39
  811. package/dist/graphics/Logo/index.js.map +1 -1
  812. package/dist/hooks/useClickOutside.js +19 -15
  813. package/dist/hooks/useClickOutside.js.map +1 -1
  814. package/dist/hooks/useControllableState.js +25 -35
  815. package/dist/hooks/useControllableState.js.map +1 -1
  816. package/dist/hooks/useDebounce.js +15 -26
  817. package/dist/hooks/useDebounce.js.map +1 -1
  818. package/dist/hooks/useDebouncedCallback.js +15 -23
  819. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  820. package/dist/hooks/useDebouncedEffect.js +18 -53
  821. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  822. package/dist/hooks/useDelay.js +27 -52
  823. package/dist/hooks/useDelay.js.map +1 -1
  824. package/dist/hooks/useDelayedRender.js +42 -76
  825. package/dist/hooks/useDelayedRender.js.map +1 -1
  826. package/dist/hooks/useEffectEvent.js +12 -33
  827. package/dist/hooks/useEffectEvent.js.map +1 -1
  828. package/dist/hooks/useHotkey.js +96 -110
  829. package/dist/hooks/useHotkey.js.map +1 -1
  830. package/dist/hooks/useIntersect.js +28 -59
  831. package/dist/hooks/useIntersect.js.map +1 -1
  832. package/dist/hooks/usePayloadAPI.js +78 -172
  833. package/dist/hooks/usePayloadAPI.js.map +1 -1
  834. package/dist/hooks/usePopupWindow.js +91 -133
  835. package/dist/hooks/usePopupWindow.js.map +1 -1
  836. package/dist/hooks/useQueue.js +48 -38
  837. package/dist/hooks/useQueue.js.map +1 -1
  838. package/dist/hooks/useRelatedCollections.js +15 -27
  839. package/dist/hooks/useRelatedCollections.js.map +1 -1
  840. package/dist/hooks/useResize.js +42 -70
  841. package/dist/hooks/useResize.js.map +1 -1
  842. package/dist/hooks/useThrottledEffect.js +17 -51
  843. package/dist/hooks/useThrottledEffect.js.map +1 -1
  844. package/dist/hooks/useThrottledValue.js +16 -13
  845. package/dist/hooks/useThrottledValue.js.map +1 -1
  846. package/dist/hooks/useUseAsTitle.js +7 -27
  847. package/dist/hooks/useUseAsTitle.js.map +1 -1
  848. package/dist/icons/Calendar/index.js +20 -11
  849. package/dist/icons/Calendar/index.js.map +1 -1
  850. package/dist/icons/Check/index.js +20 -11
  851. package/dist/icons/Check/index.js.map +1 -1
  852. package/dist/icons/Chevron/index.js +30 -22
  853. package/dist/icons/Chevron/index.js.map +1 -1
  854. package/dist/icons/CloseMenu/index.js +20 -11
  855. package/dist/icons/CloseMenu/index.js.map +1 -1
  856. package/dist/icons/CodeBlock/index.js +22 -13
  857. package/dist/icons/CodeBlock/index.js.map +1 -1
  858. package/dist/icons/Copy/index.js +24 -17
  859. package/dist/icons/Copy/index.js.map +1 -1
  860. package/dist/icons/Document/index.js +25 -16
  861. package/dist/icons/Document/index.js.map +1 -1
  862. package/dist/icons/Dots/index.js +32 -11
  863. package/dist/icons/Dots/index.js.map +1 -1
  864. package/dist/icons/DragHandle/index.js +70 -33
  865. package/dist/icons/DragHandle/index.js.map +1 -1
  866. package/dist/icons/Edit/index.js +23 -13
  867. package/dist/icons/Edit/index.js.map +1 -1
  868. package/dist/icons/ExternalLink/index.js +25 -15
  869. package/dist/icons/ExternalLink/index.js.map +1 -1
  870. package/dist/icons/Eye/index.js +53 -25
  871. package/dist/icons/Eye/index.js.map +1 -1
  872. package/dist/icons/Folder/index.js +26 -16
  873. package/dist/icons/Folder/index.js.map +1 -1
  874. package/dist/icons/Gear/index.js +34 -21
  875. package/dist/icons/Gear/index.js.map +1 -1
  876. package/dist/icons/GridView/index.js +57 -31
  877. package/dist/icons/GridView/index.js.map +1 -1
  878. package/dist/icons/Line/index.js +23 -14
  879. package/dist/icons/Line/index.js.map +1 -1
  880. package/dist/icons/Link/index.js +25 -16
  881. package/dist/icons/Link/index.js.map +1 -1
  882. package/dist/icons/ListView/index.js +25 -16
  883. package/dist/icons/ListView/index.js.map +1 -1
  884. package/dist/icons/Lock/index.js +41 -24
  885. package/dist/icons/Lock/index.js.map +1 -1
  886. package/dist/icons/LogOut/index.js +23 -14
  887. package/dist/icons/LogOut/index.js.map +1 -1
  888. package/dist/icons/Menu/index.js +23 -14
  889. package/dist/icons/Menu/index.js.map +1 -1
  890. package/dist/icons/MinimizeMaximize/index.js +33 -19
  891. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  892. package/dist/icons/More/index.js +43 -21
  893. package/dist/icons/More/index.js.map +1 -1
  894. package/dist/icons/MoveFolder/index.js +62 -34
  895. package/dist/icons/MoveFolder/index.js.map +1 -1
  896. package/dist/icons/People/index.js +28 -17
  897. package/dist/icons/People/index.js.map +1 -1
  898. package/dist/icons/Plus/index.js +22 -13
  899. package/dist/icons/Plus/index.js.map +1 -1
  900. package/dist/icons/Search/index.js +21 -12
  901. package/dist/icons/Search/index.js.map +1 -1
  902. package/dist/icons/Sort/index.js +48 -35
  903. package/dist/icons/Sort/index.js.map +1 -1
  904. package/dist/icons/Swap/index.js +20 -11
  905. package/dist/icons/Swap/index.js.map +1 -1
  906. package/dist/icons/ThreeDots/index.js +27 -8
  907. package/dist/icons/ThreeDots/index.js.map +1 -1
  908. package/dist/icons/Trash/index.js +28 -18
  909. package/dist/icons/Trash/index.js.map +1 -1
  910. package/dist/icons/X/index.js +25 -15
  911. package/dist/icons/X/index.js.map +1 -1
  912. package/dist/providers/Actions/index.js +21 -33
  913. package/dist/providers/Actions/index.js.map +1 -1
  914. package/dist/providers/Auth/index.js +293 -243
  915. package/dist/providers/Auth/index.js.map +1 -1
  916. package/dist/providers/ClickOutside/index.js +35 -35
  917. package/dist/providers/ClickOutside/index.js.map +1 -1
  918. package/dist/providers/ClientFunction/index.js +63 -104
  919. package/dist/providers/ClientFunction/index.js.map +1 -1
  920. package/dist/providers/Config/index.js +91 -91
  921. package/dist/providers/Config/index.js.map +1 -1
  922. package/dist/providers/DocumentEvents/index.js +19 -30
  923. package/dist/providers/DocumentEvents/index.js.map +1 -1
  924. package/dist/providers/DocumentInfo/index.js +331 -325
  925. package/dist/providers/DocumentInfo/index.js.map +1 -1
  926. package/dist/providers/DocumentInfo/types.js +26 -1
  927. package/dist/providers/DocumentInfo/types.js.map +1 -1
  928. package/dist/providers/DocumentInfo/useGetDocPermissions.js +81 -79
  929. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  930. package/dist/providers/DocumentTitle/context.js.map +1 -1
  931. package/dist/providers/DocumentTitle/index.js +51 -55
  932. package/dist/providers/DocumentTitle/index.js.map +1 -1
  933. package/dist/providers/EditDepth/index.js +15 -25
  934. package/dist/providers/EditDepth/index.js.map +1 -1
  935. package/dist/providers/EntityVisibility/index.js +26 -48
  936. package/dist/providers/EntityVisibility/index.js.map +1 -1
  937. package/dist/providers/Folders/groupItemIDsByRelation.js +8 -7
  938. package/dist/providers/Folders/groupItemIDsByRelation.js.map +1 -1
  939. package/dist/providers/Folders/index.js +698 -600
  940. package/dist/providers/Folders/index.js.map +1 -1
  941. package/dist/providers/ListQuery/context.js +3 -2
  942. package/dist/providers/ListQuery/context.js.map +1 -1
  943. package/dist/providers/ListQuery/index.js +156 -140
  944. package/dist/providers/ListQuery/index.js.map +1 -1
  945. package/dist/providers/ListQuery/mergeQuery.js +49 -31
  946. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  947. package/dist/providers/ListQuery/sanitizeQuery.js +24 -23
  948. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  949. package/dist/providers/ListQuery/types.js +6 -1
  950. package/dist/providers/ListQuery/types.js.map +1 -1
  951. package/dist/providers/LivePreview/collisionDetection.js +21 -24
  952. package/dist/providers/LivePreview/collisionDetection.js.map +1 -1
  953. package/dist/providers/LivePreview/context.js +60 -55
  954. package/dist/providers/LivePreview/context.js.map +1 -1
  955. package/dist/providers/LivePreview/index.js +225 -205
  956. package/dist/providers/LivePreview/index.js.map +1 -1
  957. package/dist/providers/LivePreview/sizeReducer.js +19 -18
  958. package/dist/providers/LivePreview/sizeReducer.js.map +1 -1
  959. package/dist/providers/Locale/index.js +87 -154
  960. package/dist/providers/Locale/index.js.map +1 -1
  961. package/dist/providers/Operation/index.js +12 -11
  962. package/dist/providers/Operation/index.js.map +1 -1
  963. package/dist/providers/Params/index.js +14 -26
  964. package/dist/providers/Params/index.js.map +1 -1
  965. package/dist/providers/Preferences/index.js +130 -122
  966. package/dist/providers/Preferences/index.js.map +1 -1
  967. package/dist/providers/Root/index.js +190 -116
  968. package/dist/providers/Root/index.js.map +1 -1
  969. package/dist/providers/RouteCache/index.js +53 -103
  970. package/dist/providers/RouteCache/index.js.map +1 -1
  971. package/dist/providers/RouteTransition/ProgressBar/index.js +61 -80
  972. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  973. package/dist/providers/RouteTransition/index.js +69 -94
  974. package/dist/providers/RouteTransition/index.js.map +1 -1
  975. package/dist/providers/ScrollInfo/index.js +1 -1
  976. package/dist/providers/ScrollInfo/index.js.map +1 -1
  977. package/dist/providers/SearchParams/index.js +36 -35
  978. package/dist/providers/SearchParams/index.js.map +1 -1
  979. package/dist/providers/Selection/index.js +203 -183
  980. package/dist/providers/Selection/index.js.map +1 -1
  981. package/dist/providers/ServerFunctions/index.js +199 -189
  982. package/dist/providers/ServerFunctions/index.js.map +1 -1
  983. package/dist/providers/TableColumns/RenderDefaultCell/index.js +33 -62
  984. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  985. package/dist/providers/TableColumns/buildColumnState/filterFields.js +32 -32
  986. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -1
  987. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js +50 -52
  988. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js.map +1 -1
  989. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +3 -2
  990. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -1
  991. package/dist/providers/TableColumns/buildColumnState/index.js +132 -143
  992. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  993. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +10 -14
  994. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -1
  995. package/dist/providers/TableColumns/buildColumnState/renderCell.js +150 -151
  996. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  997. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +16 -15
  998. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -1
  999. package/dist/providers/TableColumns/context.js +2 -1
  1000. package/dist/providers/TableColumns/context.js.map +1 -1
  1001. package/dist/providers/TableColumns/getInitialColumns.js +42 -28
  1002. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -1
  1003. package/dist/providers/TableColumns/index.js +88 -85
  1004. package/dist/providers/TableColumns/index.js.map +1 -1
  1005. package/dist/providers/TableColumns/types.js +18 -1
  1006. package/dist/providers/TableColumns/types.js.map +1 -1
  1007. package/dist/providers/Theme/index.js +69 -104
  1008. package/dist/providers/Theme/index.js.map +1 -1
  1009. package/dist/providers/ToastContainer/icons/Error.js +34 -19
  1010. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  1011. package/dist/providers/ToastContainer/icons/Info.js +34 -19
  1012. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  1013. package/dist/providers/ToastContainer/icons/Success.js +34 -19
  1014. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  1015. package/dist/providers/ToastContainer/icons/Warning.js +34 -19
  1016. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  1017. package/dist/providers/ToastContainer/index.js +56 -47
  1018. package/dist/providers/ToastContainer/index.js.map +1 -1
  1019. package/dist/providers/Translation/index.js +66 -112
  1020. package/dist/providers/Translation/index.js.map +1 -1
  1021. package/dist/providers/UploadControls/index.js +28 -40
  1022. package/dist/providers/UploadControls/index.js.map +1 -1
  1023. package/dist/providers/UploadEdits/index.js +31 -73
  1024. package/dist/providers/UploadEdits/index.js.map +1 -1
  1025. package/dist/providers/UploadHandlers/index.js +30 -65
  1026. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1027. package/dist/providers/WindowInfo/index.js +5 -9
  1028. package/dist/providers/WindowInfo/index.js.map +1 -1
  1029. package/dist/styles.css +0 -1
  1030. package/dist/utilities/abortAndIgnore.js +15 -17
  1031. package/dist/utilities/abortAndIgnore.js.map +1 -1
  1032. package/dist/utilities/api.js +78 -77
  1033. package/dist/utilities/api.js.map +1 -1
  1034. package/dist/utilities/buildClientFieldSchemaMap/index.js +61 -65
  1035. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1036. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +150 -159
  1037. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1038. package/dist/utilities/buildFieldSchemaMap/index.js +59 -61
  1039. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  1040. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +117 -126
  1041. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  1042. package/dist/utilities/buildFormState.js +151 -186
  1043. package/dist/utilities/buildFormState.js.map +1 -1
  1044. package/dist/utilities/buildTableState.js +145 -168
  1045. package/dist/utilities/buildTableState.js.map +1 -1
  1046. package/dist/utilities/canUseDOM.js +1 -0
  1047. package/dist/utilities/canUseDOM.js.map +1 -1
  1048. package/dist/utilities/combineFieldLabel.js +53 -26
  1049. package/dist/utilities/combineFieldLabel.js.map +1 -1
  1050. package/dist/utilities/copyDataFromLocale.js +202 -210
  1051. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  1052. package/dist/utilities/dateLocales.js +28 -27
  1053. package/dist/utilities/dateLocales.js.map +1 -1
  1054. package/dist/utilities/deepMerge.js +14 -13
  1055. package/dist/utilities/deepMerge.js.map +1 -1
  1056. package/dist/utilities/fetchPreferences.js.map +1 -1
  1057. package/dist/utilities/filterOutUploadFields.js +17 -4
  1058. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1059. package/dist/utilities/findLocaleFromCode.js +6 -5
  1060. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  1061. package/dist/utilities/formatAbsoluteURL.js +8 -8
  1062. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1063. package/dist/utilities/formatAdminURL.js +2 -1
  1064. package/dist/utilities/formatAdminURL.js.map +1 -1
  1065. package/dist/utilities/formatDocTitle/formatDateTitle.js +20 -27
  1066. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  1067. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js +14 -13
  1068. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1069. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js +14 -13
  1070. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js.map +1 -1
  1071. package/dist/utilities/formatDocTitle/index.js +38 -44
  1072. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  1073. package/dist/utilities/formatFields.js +2 -1
  1074. package/dist/utilities/formatFields.js.map +1 -1
  1075. package/dist/utilities/generateFieldID.js +6 -5
  1076. package/dist/utilities/generateFieldID.js.map +1 -1
  1077. package/dist/utilities/getClientConfig.js +25 -29
  1078. package/dist/utilities/getClientConfig.js.map +1 -1
  1079. package/dist/utilities/getClientSchemaMap.js +24 -32
  1080. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1081. package/dist/utilities/getColumns.js +29 -35
  1082. package/dist/utilities/getColumns.js.map +1 -1
  1083. package/dist/utilities/getDisplayedFieldValue.js +16 -16
  1084. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1085. package/dist/utilities/getFolderResultsComponentAndData.js +134 -121
  1086. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  1087. package/dist/utilities/getGlobalData.js +41 -45
  1088. package/dist/utilities/getGlobalData.js.map +1 -1
  1089. package/dist/utilities/getNavGroups.js +21 -18
  1090. package/dist/utilities/getNavGroups.js.map +1 -1
  1091. package/dist/utilities/getOffsetTop.js +14 -13
  1092. package/dist/utilities/getOffsetTop.js.map +1 -1
  1093. package/dist/utilities/getRequestLanguage.js +5 -8
  1094. package/dist/utilities/getRequestLanguage.js.map +1 -1
  1095. package/dist/utilities/getSchemaMap.js +22 -28
  1096. package/dist/utilities/getSchemaMap.js.map +1 -1
  1097. package/dist/utilities/getSupportedMonacoLocale.js +14 -13
  1098. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  1099. package/dist/utilities/getVisibleEntities.js +15 -26
  1100. package/dist/utilities/getVisibleEntities.js.map +1 -1
  1101. package/dist/utilities/groupNavItems.js +53 -50
  1102. package/dist/utilities/groupNavItems.js.map +1 -1
  1103. package/dist/utilities/handleBackToDashboard.js +8 -11
  1104. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  1105. package/dist/utilities/handleFormStateLocking.js +127 -121
  1106. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  1107. package/dist/utilities/handleGoBack.js +7 -11
  1108. package/dist/utilities/handleGoBack.js.map +1 -1
  1109. package/dist/utilities/handleLivePreview.js +59 -76
  1110. package/dist/utilities/handleLivePreview.js.map +1 -1
  1111. package/dist/utilities/handlePreview.js +41 -52
  1112. package/dist/utilities/handlePreview.js.map +1 -1
  1113. package/dist/utilities/handleTakeOver.js +28 -39
  1114. package/dist/utilities/handleTakeOver.js.map +1 -1
  1115. package/dist/utilities/hasOptionLabelJSXElement.js +9 -11
  1116. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -1
  1117. package/dist/utilities/hasSavePermission.js +14 -14
  1118. package/dist/utilities/hasSavePermission.js.map +1 -1
  1119. package/dist/utilities/isClientUserObject.js +3 -2
  1120. package/dist/utilities/isClientUserObject.js.map +1 -1
  1121. package/dist/utilities/isEditing.js +2 -5
  1122. package/dist/utilities/isEditing.js.map +1 -1
  1123. package/dist/utilities/isURLAllowed.js +31 -30
  1124. package/dist/utilities/isURLAllowed.js.map +1 -1
  1125. package/dist/utilities/isValidReactElement.js +3 -3
  1126. package/dist/utilities/isValidReactElement.js.map +1 -1
  1127. package/dist/utilities/normalizeRelationshipValue.js +29 -28
  1128. package/dist/utilities/normalizeRelationshipValue.js.map +1 -1
  1129. package/dist/utilities/normalizeRelationshipValue.spec.js +407 -368
  1130. package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
  1131. package/dist/utilities/parseSearchParams.js +7 -7
  1132. package/dist/utilities/parseSearchParams.js.map +1 -1
  1133. package/dist/utilities/reduceFieldsToOptions.js +145 -154
  1134. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  1135. package/dist/utilities/reduceFieldsToValuesWithValidation.js +20 -20
  1136. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  1137. package/dist/utilities/removeUndefined.js +2 -1
  1138. package/dist/utilities/removeUndefined.js.map +1 -1
  1139. package/dist/utilities/renderTable.js +239 -195
  1140. package/dist/utilities/renderTable.js.map +1 -1
  1141. package/dist/utilities/resolveFilterOptions.js +27 -26
  1142. package/dist/utilities/resolveFilterOptions.js.map +1 -1
  1143. package/dist/utilities/sanitizeFilterOptionsQuery.js +16 -15
  1144. package/dist/utilities/sanitizeFilterOptionsQuery.js.map +1 -1
  1145. package/dist/utilities/sanitizeID.js +8 -7
  1146. package/dist/utilities/sanitizeID.js.map +1 -1
  1147. package/dist/utilities/schedulePublishHandler.js +47 -57
  1148. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1149. package/dist/utilities/scrollToID.js +10 -9
  1150. package/dist/utilities/scrollToID.js.map +1 -1
  1151. package/dist/utilities/setsAreEqual.js +3 -2
  1152. package/dist/utilities/setsAreEqual.js.map +1 -1
  1153. package/dist/utilities/traverseForLocalizedFields.js +36 -35
  1154. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1155. package/dist/utilities/upsertPreferences.js +75 -75
  1156. package/dist/utilities/upsertPreferences.js.map +1 -1
  1157. package/dist/views/BrowseByFolder/index.js +365 -324
  1158. package/dist/views/BrowseByFolder/index.js.map +1 -1
  1159. package/dist/views/CollectionFolder/ListSelection/index.js +161 -158
  1160. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  1161. package/dist/views/CollectionFolder/index.js +360 -282
  1162. package/dist/views/CollectionFolder/index.js.map +1 -1
  1163. package/dist/views/Edit/Auth/APIKey.js +185 -124
  1164. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1165. package/dist/views/Edit/Auth/index.js +309 -321
  1166. package/dist/views/Edit/Auth/index.js.map +1 -1
  1167. package/dist/views/Edit/Auth/types.js +2 -1
  1168. package/dist/views/Edit/Auth/types.js.map +1 -1
  1169. package/dist/views/Edit/SetDocumentStepNav/index.js +84 -150
  1170. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1171. package/dist/views/Edit/SetDocumentTitle/index.js +30 -77
  1172. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1173. package/dist/views/Edit/index.js +579 -501
  1174. package/dist/views/Edit/index.js.map +1 -1
  1175. package/dist/views/Edit/types.js +2 -1
  1176. package/dist/views/Edit/types.js.map +1 -1
  1177. package/dist/views/List/GroupByHeader/index.js +35 -24
  1178. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  1179. package/dist/views/List/ListHeader/index.js +115 -80
  1180. package/dist/views/List/ListHeader/index.js.map +1 -1
  1181. package/dist/views/List/ListSelection/index.js +103 -111
  1182. package/dist/views/List/ListSelection/index.js.map +1 -1
  1183. package/dist/views/List/index.js +321 -213
  1184. package/dist/views/List/index.js.map +1 -1
  1185. package/dist/views/List/types.js +2 -1
  1186. package/dist/views/List/types.js.map +1 -1
  1187. package/dist/widgets/CollectionCards/index.js +149 -119
  1188. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1189. package/package.json +5 -5
  1190. package/dist/exports/client/CodeEditor-QOURTFMT.js +0 -14
  1191. package/dist/exports/client/CodeEditor-QOURTFMT.js.map +0 -7
  1192. package/dist/exports/client/DatePicker-VMLA35FO.js +0 -14
  1193. package/dist/exports/client/DatePicker-VMLA35FO.js.map +0 -7
  1194. package/dist/exports/client/chunk-53XJ3K67.js +0 -27
  1195. package/dist/exports/client/chunk-53XJ3K67.js.map +0 -7
  1196. package/dist/exports/client/chunk-5LKBKI4T.js +0 -14
  1197. package/dist/exports/client/chunk-5LKBKI4T.js.map +0 -7
  1198. package/dist/exports/client/chunk-7V3NHDV6.js +0 -29
  1199. package/dist/exports/client/chunk-7V3NHDV6.js.map +0 -7
@@ -1 +1 @@
1
- {"version":3,"file":"mergeServerFormState.js","names":["dequal","mergeServerFormState","acceptValues","currentState","incomingState","newState","path","incomingField","Object","entries","addedByServer","shouldAcceptValue","overrideLocalChanges","isModified","sanitizedIncomingField","initialValue","value","rest","errorPaths","Array","isArray","rows","forEach","row","indexInCurrentState","findIndex","existingRow","id","newRow","push","valid","passesCondition","blocksFilterOptions"],"sources":["../../../src/forms/Form/mergeServerFormState.ts"],"sourcesContent":["'use client'\nimport type { FormState } from 'payload'\n\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\n\n/**\n * If true, will accept all values from the server, overriding any current values in local state.\n * Can also provide an options object for more granular control.\n */\nexport type AcceptValues =\n | {\n /**\n * When `false`, will accept the values from the server _UNLESS_ the value has been modified locally since the request was made.\n * This is useful for autosave, for example, where hooks may have modified the field's value on the server while you were still making changes.\n * @default undefined\n */\n overrideLocalChanges?: boolean\n }\n | boolean\n\ntype Args = {\n acceptValues?: AcceptValues\n currentState?: FormState\n incomingState: FormState\n}\n\n/**\n * This function receives form state from the server and intelligently merges it into the client state.\n * The server contains extra properties that the client may not have, e.g. custom components and error states.\n * We typically do not want to merge properties that rely on user input, however, such as values, unless explicitly requested.\n * Doing this would cause the client to lose any local changes to those fields.\n *\n * Note: Local state is the source of truth, not the new server state that is getting merged in. This is critical for array row\n * manipulation specifically, where the user may have added, removed, or reordered rows while a request was pending and is now stale.\n *\n * This function applies some defaults, as well as cleans up the server response in preparation for the client.\n * e.g. it will set `valid` and `passesCondition` to true if undefined, and remove `addedByServer` from the response.\n */\nexport const mergeServerFormState = ({\n acceptValues,\n currentState = {},\n incomingState,\n}: Args): FormState => {\n const newState = { ...currentState }\n\n for (const [path, incomingField] of Object.entries(incomingState || {})) {\n if (!(path in currentState) && !incomingField.addedByServer) {\n continue\n }\n\n /**\n * If it's a new field added by the server, always accept the value.\n * Otherwise:\n * a. accept all values when explicitly requested, e.g. on submit\n * b. only accept values for unmodified fields, e.g. on autosave\n */\n const shouldAcceptValue =\n incomingField.addedByServer ||\n acceptValues === true ||\n (typeof acceptValues === 'object' &&\n acceptValues !== null &&\n // Note: Must be explicitly `false`, allow `null` or `undefined` to mean true\n acceptValues.overrideLocalChanges === false &&\n !currentState[path]?.isModified)\n\n let sanitizedIncomingField = incomingField\n\n if (!shouldAcceptValue) {\n /**\n * Note: do not delete properties off `incomingField` as this will mutate the original object\n * Instead, omit them from the destructured object by excluding specific keys\n * This will also ensure we don't set `undefined` into the result unnecessarily\n */\n const { initialValue, value, ...rest } = incomingField\n sanitizedIncomingField = rest\n }\n\n newState[path] = {\n ...currentState[path],\n ...sanitizedIncomingField,\n }\n\n if (\n currentState[path] &&\n 'errorPaths' in currentState[path] &&\n !('errorPaths' in incomingField)\n ) {\n newState[path].errorPaths = []\n }\n\n /**\n * Deeply merge the rows array to ensure changes to local state are not lost while the request was pending\n * For example, the server response could come back with a row which has been deleted on the client\n * Loop over the incoming rows, if it exists in client side form state, merge in any new properties from the server\n * Note: read `currentState` and not `newState` here, as the `rows` property have already been merged above\n */\n if (Array.isArray(incomingField.rows) && path in currentState) {\n newState[path].rows = [...(currentState[path]?.rows || [])] // shallow copy to avoid mutating the original array\n\n incomingField.rows.forEach((row) => {\n const indexInCurrentState = currentState[path].rows?.findIndex(\n (existingRow) => existingRow.id === row.id,\n )\n\n if (indexInCurrentState > -1) {\n newState[path].rows[indexInCurrentState] = {\n ...currentState[path].rows[indexInCurrentState],\n ...row,\n }\n } else if (row.addedByServer) {\n /**\n * Note: This is a known limitation of computed array and block rows\n * If a new row was added by the server, we append it to the _end_ of this array\n * This is because the client is the source of truth, and it has arrays ordered in a certain position\n * For example, the user may have re-ordered rows client-side while a long running request is processing\n * This means that we _cannot_ slice a new row into the second position on the server, for example\n * By the time it gets back to the client, its index is stale\n */\n const newRow = { ...row }\n delete newRow.addedByServer\n newState[path].rows.push(newRow)\n }\n })\n }\n\n // If `valid` is `undefined`, mark it as `true`\n if (incomingField.valid !== false) {\n newState[path].valid = true\n }\n\n // If `passesCondition` is `undefined`, mark it as `true`\n if (incomingField.passesCondition !== false) {\n newState[path].passesCondition = true\n }\n\n /**\n * Undefined values for blocksFilterOptions coming back should be treated as \"all blocks allowed\" and\n * should always be merged in.\n * Without this, an undefined value coming back will incorrectly be ignored, and the previous filter will remain.\n */\n if (!incomingField.blocksFilterOptions) {\n delete newState[path].blocksFilterOptions\n }\n\n // Strip away the `addedByServer` property from the client\n // This will prevent it from being passed back to the server\n delete newState[path].addedByServer\n }\n\n // Return the original object reference if the state is unchanged\n // This will avoid unnecessary re-renders and dependency updates\n return dequal(newState, currentState) ? currentState : newState\n}\n"],"mappings":"AAAA;;AAGA,SAASA,MAAM,QAAQ,cAAa,CAAC;AAuBrC;;;;;;;;;;;;AAYA,OAAO,MAAMC,oBAAA,GAAuBA,CAAC;EACnCC,YAAY;EACZC,YAAA,GAAe,CAAC,CAAC;EACjBC;AAAa,CACR;EACL,MAAMC,QAAA,GAAW;IAAE,GAAGF;EAAa;EAEnC,KAAK,MAAM,CAACG,IAAA,EAAMC,aAAA,CAAc,IAAIC,MAAA,CAAOC,OAAO,CAACL,aAAA,IAAiB,CAAC,IAAI;IACvE,IAAI,EAAEE,IAAA,IAAQH,YAAW,KAAM,CAACI,aAAA,CAAcG,aAAa,EAAE;MAC3D;IACF;IAEA;;;;;;IAMA,MAAMC,iBAAA,GACJJ,aAAA,CAAcG,aAAa,IAC3BR,YAAA,KAAiB,QAChB,OAAOA,YAAA,KAAiB,YACvBA,YAAA,KAAiB;IACjB;IACAA,YAAA,CAAaU,oBAAoB,KAAK,SACtC,CAACT,YAAY,CAACG,IAAA,CAAK,EAAEO,UAAA;IAEzB,IAAIC,sBAAA,GAAyBP,aAAA;IAE7B,IAAI,CAACI,iBAAA,EAAmB;MACtB;;;;;MAKA,MAAM;QAAEI,YAAY;QAAEC,KAAK;QAAE,GAAGC;MAAA,CAAM,GAAGV,aAAA;MACzCO,sBAAA,GAAyBG,IAAA;IAC3B;IAEAZ,QAAQ,CAACC,IAAA,CAAK,GAAG;MACf,GAAGH,YAAY,CAACG,IAAA,CAAK;MACrB,GAAGQ;IACL;IAEA,IACEX,YAAY,CAACG,IAAA,CAAK,IAClB,gBAAgBH,YAAY,CAACG,IAAA,CAAK,IAClC,EAAE,gBAAgBC,aAAY,GAC9B;MACAF,QAAQ,CAACC,IAAA,CAAK,CAACY,UAAU,GAAG,EAAE;IAChC;IAEA;;;;;;IAMA,IAAIC,KAAA,CAAMC,OAAO,CAACb,aAAA,CAAcc,IAAI,KAAKf,IAAA,IAAQH,YAAA,EAAc;MAC7DE,QAAQ,CAACC,IAAA,CAAK,CAACe,IAAI,GAAG,C,IAAKlB,YAAY,CAACG,IAAA,CAAK,EAAEe,IAAA,IAAQ,EAAE,EAAE,EAAC;MAE5Dd,aAAA,CAAcc,IAAI,CAACC,OAAO,CAAEC,GAAA;QAC1B,MAAMC,mBAAA,GAAsBrB,YAAY,CAACG,IAAA,CAAK,CAACe,IAAI,EAAEI,SAAA,CAClDC,WAAA,IAAgBA,WAAA,CAAYC,EAAE,KAAKJ,GAAA,CAAII,EAAE;QAG5C,IAAIH,mBAAA,GAAsB,CAAC,GAAG;UAC5BnB,QAAQ,CAACC,IAAA,CAAK,CAACe,IAAI,CAACG,mBAAA,CAAoB,GAAG;YACzC,GAAGrB,YAAY,CAACG,IAAA,CAAK,CAACe,IAAI,CAACG,mBAAA,CAAoB;YAC/C,GAAGD;UACL;QACF,OAAO,IAAIA,GAAA,CAAIb,aAAa,EAAE;UAC5B;;;;;;;;UAQA,MAAMkB,MAAA,GAAS;YAAE,GAAGL;UAAI;UACxB,OAAOK,MAAA,CAAOlB,aAAa;UAC3BL,QAAQ,CAACC,IAAA,CAAK,CAACe,IAAI,CAACQ,IAAI,CAACD,MAAA;QAC3B;MACF;IACF;IAEA;IACA,IAAIrB,aAAA,CAAcuB,KAAK,KAAK,OAAO;MACjCzB,QAAQ,CAACC,IAAA,CAAK,CAACwB,KAAK,GAAG;IACzB;IAEA;IACA,IAAIvB,aAAA,CAAcwB,eAAe,KAAK,OAAO;MAC3C1B,QAAQ,CAACC,IAAA,CAAK,CAACyB,eAAe,GAAG;IACnC;IAEA;;;;;IAKA,IAAI,CAACxB,aAAA,CAAcyB,mBAAmB,EAAE;MACtC,OAAO3B,QAAQ,CAACC,IAAA,CAAK,CAAC0B,mBAAmB;IAC3C;IAEA;IACA;IACA,OAAO3B,QAAQ,CAACC,IAAA,CAAK,CAACI,aAAa;EACrC;EAEA;EACA;EACA,OAAOV,MAAA,CAAOK,QAAA,EAAUF,YAAA,IAAgBA,YAAA,GAAeE,QAAA;AACzD","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/Form/mergeServerFormState.ts"],"sourcesContent":["'use client'\nimport type { FormState } from 'payload'\n\nimport { dequal } from 'dequal/lite' // lite: no need for Map and Set support\n\n/**\n * If true, will accept all values from the server, overriding any current values in local state.\n * Can also provide an options object for more granular control.\n */\nexport type AcceptValues =\n | {\n /**\n * When `false`, will accept the values from the server _UNLESS_ the value has been modified locally since the request was made.\n * This is useful for autosave, for example, where hooks may have modified the field's value on the server while you were still making changes.\n * @default undefined\n */\n overrideLocalChanges?: boolean\n }\n | boolean\n\ntype Args = {\n acceptValues?: AcceptValues\n currentState?: FormState\n incomingState: FormState\n}\n\n/**\n * This function receives form state from the server and intelligently merges it into the client state.\n * The server contains extra properties that the client may not have, e.g. custom components and error states.\n * We typically do not want to merge properties that rely on user input, however, such as values, unless explicitly requested.\n * Doing this would cause the client to lose any local changes to those fields.\n *\n * Note: Local state is the source of truth, not the new server state that is getting merged in. This is critical for array row\n * manipulation specifically, where the user may have added, removed, or reordered rows while a request was pending and is now stale.\n *\n * This function applies some defaults, as well as cleans up the server response in preparation for the client.\n * e.g. it will set `valid` and `passesCondition` to true if undefined, and remove `addedByServer` from the response.\n */\nexport const mergeServerFormState = ({\n acceptValues,\n currentState = {},\n incomingState,\n}: Args): FormState => {\n const newState = { ...currentState }\n\n for (const [path, incomingField] of Object.entries(incomingState || {})) {\n if (!(path in currentState) && !incomingField.addedByServer) {\n continue\n }\n\n /**\n * If it's a new field added by the server, always accept the value.\n * Otherwise:\n * a. accept all values when explicitly requested, e.g. on submit\n * b. only accept values for unmodified fields, e.g. on autosave\n */\n const shouldAcceptValue =\n incomingField.addedByServer ||\n acceptValues === true ||\n (typeof acceptValues === 'object' &&\n acceptValues !== null &&\n // Note: Must be explicitly `false`, allow `null` or `undefined` to mean true\n acceptValues.overrideLocalChanges === false &&\n !currentState[path]?.isModified)\n\n let sanitizedIncomingField = incomingField\n\n if (!shouldAcceptValue) {\n /**\n * Note: do not delete properties off `incomingField` as this will mutate the original object\n * Instead, omit them from the destructured object by excluding specific keys\n * This will also ensure we don't set `undefined` into the result unnecessarily\n */\n const { initialValue, value, ...rest } = incomingField\n sanitizedIncomingField = rest\n }\n\n newState[path] = {\n ...currentState[path],\n ...sanitizedIncomingField,\n }\n\n if (\n currentState[path] &&\n 'errorPaths' in currentState[path] &&\n !('errorPaths' in incomingField)\n ) {\n newState[path].errorPaths = []\n }\n\n /**\n * Deeply merge the rows array to ensure changes to local state are not lost while the request was pending\n * For example, the server response could come back with a row which has been deleted on the client\n * Loop over the incoming rows, if it exists in client side form state, merge in any new properties from the server\n * Note: read `currentState` and not `newState` here, as the `rows` property have already been merged above\n */\n if (Array.isArray(incomingField.rows) && path in currentState) {\n newState[path].rows = [...(currentState[path]?.rows || [])] // shallow copy to avoid mutating the original array\n\n incomingField.rows.forEach((row) => {\n const indexInCurrentState = currentState[path].rows?.findIndex(\n (existingRow) => existingRow.id === row.id,\n )\n\n if (indexInCurrentState > -1) {\n newState[path].rows[indexInCurrentState] = {\n ...currentState[path].rows[indexInCurrentState],\n ...row,\n }\n } else if (row.addedByServer) {\n /**\n * Note: This is a known limitation of computed array and block rows\n * If a new row was added by the server, we append it to the _end_ of this array\n * This is because the client is the source of truth, and it has arrays ordered in a certain position\n * For example, the user may have re-ordered rows client-side while a long running request is processing\n * This means that we _cannot_ slice a new row into the second position on the server, for example\n * By the time it gets back to the client, its index is stale\n */\n const newRow = { ...row }\n delete newRow.addedByServer\n newState[path].rows.push(newRow)\n }\n })\n }\n\n // If `valid` is `undefined`, mark it as `true`\n if (incomingField.valid !== false) {\n newState[path].valid = true\n }\n\n // If `passesCondition` is `undefined`, mark it as `true`\n if (incomingField.passesCondition !== false) {\n newState[path].passesCondition = true\n }\n\n /**\n * Undefined values for blocksFilterOptions coming back should be treated as \"all blocks allowed\" and\n * should always be merged in.\n * Without this, an undefined value coming back will incorrectly be ignored, and the previous filter will remain.\n */\n if (!incomingField.blocksFilterOptions) {\n delete newState[path].blocksFilterOptions\n }\n\n // Strip away the `addedByServer` property from the client\n // This will prevent it from being passed back to the server\n delete newState[path].addedByServer\n }\n\n // Return the original object reference if the state is unchanged\n // This will avoid unnecessary re-renders and dependency updates\n return dequal(newState, currentState) ? currentState : newState\n}\n"],"names":["dequal","mergeServerFormState","acceptValues","currentState","incomingState","newState","path","incomingField","Object","entries","addedByServer","shouldAcceptValue","overrideLocalChanges","isModified","sanitizedIncomingField","initialValue","value","rest","errorPaths","Array","isArray","rows","forEach","row","indexInCurrentState","findIndex","existingRow","id","newRow","push","valid","passesCondition","blocksFilterOptions"],"mappings":"AAAA;AAGA,SAASA,MAAM,QAAQ,cAAa;AAAC,wCAAwC;AAE7E;;;CAGC,GAGK;;;;OAIC,GAWP;;;;;;;;;;;CAWC,GACD,OAAO,MAAMC,uBAAuB,CAAC,EACnCC,YAAY,EACZC,eAAe,CAAC,CAAC,EACjBC,aAAa,EACR;IACL,MAAMC,WAAW;QAAE,GAAGF,YAAY;IAAC;IAEnC,KAAK,MAAM,CAACG,MAAMC,cAAc,IAAIC,OAAOC,OAAO,CAACL,iBAAiB,CAAC,GAAI;QACvE,IAAI,CAAEE,CAAAA,QAAQH,YAAW,KAAM,CAACI,cAAcG,aAAa,EAAE;YAC3D;QACF;QAEA;;;;;KAKC,GACD,MAAMC,oBACJJ,cAAcG,aAAa,IAC3BR,iBAAiB,QAChB,OAAOA,iBAAiB,YACvBA,iBAAiB,QACjB,6EAA6E;QAC7EA,aAAaU,oBAAoB,KAAK,SACtC,CAACT,YAAY,CAACG,KAAK,EAAEO;QAEzB,IAAIC,yBAAyBP;QAE7B,IAAI,CAACI,mBAAmB;YACtB;;;;OAIC,GACD,MAAM,EAAEI,YAAY,EAAEC,KAAK,EAAE,GAAGC,MAAM,GAAGV;YACzCO,yBAAyBG;QAC3B;QAEAZ,QAAQ,CAACC,KAAK,GAAG;YACf,GAAGH,YAAY,CAACG,KAAK;YACrB,GAAGQ,sBAAsB;QAC3B;QAEA,IACEX,YAAY,CAACG,KAAK,IAClB,gBAAgBH,YAAY,CAACG,KAAK,IAClC,CAAE,CAAA,gBAAgBC,aAAY,GAC9B;YACAF,QAAQ,CAACC,KAAK,CAACY,UAAU,GAAG,EAAE;QAChC;QAEA;;;;;KAKC,GACD,IAAIC,MAAMC,OAAO,CAACb,cAAcc,IAAI,KAAKf,QAAQH,cAAc;YAC7DE,QAAQ,CAACC,KAAK,CAACe,IAAI,GAAG;mBAAKlB,YAAY,CAACG,KAAK,EAAEe,QAAQ,EAAE;aAAE;YAAC,oDAAoD;YAEhHd,cAAcc,IAAI,CAACC,OAAO,CAAC,CAACC;gBAC1B,MAAMC,sBAAsBrB,YAAY,CAACG,KAAK,CAACe,IAAI,EAAEI,UACnD,CAACC,cAAgBA,YAAYC,EAAE,KAAKJ,IAAII,EAAE;gBAG5C,IAAIH,sBAAsB,CAAC,GAAG;oBAC5BnB,QAAQ,CAACC,KAAK,CAACe,IAAI,CAACG,oBAAoB,GAAG;wBACzC,GAAGrB,YAAY,CAACG,KAAK,CAACe,IAAI,CAACG,oBAAoB;wBAC/C,GAAGD,GAAG;oBACR;gBACF,OAAO,IAAIA,IAAIb,aAAa,EAAE;oBAC5B;;;;;;;WAOC,GACD,MAAMkB,SAAS;wBAAE,GAAGL,GAAG;oBAAC;oBACxB,OAAOK,OAAOlB,aAAa;oBAC3BL,QAAQ,CAACC,KAAK,CAACe,IAAI,CAACQ,IAAI,CAACD;gBAC3B;YACF;QACF;QAEA,+CAA+C;QAC/C,IAAIrB,cAAcuB,KAAK,KAAK,OAAO;YACjCzB,QAAQ,CAACC,KAAK,CAACwB,KAAK,GAAG;QACzB;QAEA,yDAAyD;QACzD,IAAIvB,cAAcwB,eAAe,KAAK,OAAO;YAC3C1B,QAAQ,CAACC,KAAK,CAACyB,eAAe,GAAG;QACnC;QAEA;;;;KAIC,GACD,IAAI,CAACxB,cAAcyB,mBAAmB,EAAE;YACtC,OAAO3B,QAAQ,CAACC,KAAK,CAAC0B,mBAAmB;QAC3C;QAEA,0DAA0D;QAC1D,4DAA4D;QAC5D,OAAO3B,QAAQ,CAACC,KAAK,CAACI,aAAa;IACrC;IAEA,iEAAiE;IACjE,gEAAgE;IAChE,OAAOV,OAAOK,UAAUF,gBAAgBA,eAAeE;AACzD,EAAC"}
@@ -1,23 +1,26 @@
1
- const blacklistedKeys = ['validate', 'customComponents'];
2
- const sanitizeField = incomingField => {
3
- const field = {
4
- ...incomingField
5
- } // shallow copy, as we only need to remove top-level keys
6
- ;
7
- for (const key of blacklistedKeys) {
8
- delete field[key];
9
- }
10
- return field;
1
+ const blacklistedKeys = [
2
+ 'validate',
3
+ 'customComponents'
4
+ ];
5
+ const sanitizeField = (incomingField)=>{
6
+ const field = {
7
+ ...incomingField
8
+ };
9
+ // shallow copy, as we only need to remove top-level keys
10
+ for (const key of blacklistedKeys){
11
+ delete field[key];
12
+ }
13
+ return field;
11
14
  };
12
15
  /**
13
16
  * Takes in FormState and removes fields that are not serializable.
14
17
  * Returns FormState without blacklisted keys.
15
- */
16
- export const reduceToSerializableFields = fields => {
17
- const result = {};
18
- for (const key in fields) {
19
- result[key] = sanitizeField(fields[key]);
20
- }
21
- return result;
18
+ */ export const reduceToSerializableFields = (fields)=>{
19
+ const result = {};
20
+ for(const key in fields){
21
+ result[key] = sanitizeField(fields[key]);
22
+ }
23
+ return result;
22
24
  };
25
+
23
26
  //# sourceMappingURL=reduceToSerializableFields.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reduceToSerializableFields.js","names":["blacklistedKeys","sanitizeField","incomingField","field","key","reduceToSerializableFields","fields","result"],"sources":["../../../src/forms/Form/reduceToSerializableFields.ts"],"sourcesContent":["import { type FormField, type FormState } from 'payload'\n\ntype BlacklistedKeys = 'customComponents' | 'validate'\nconst blacklistedKeys: BlacklistedKeys[] = ['validate', 'customComponents']\n\nconst sanitizeField = (incomingField: FormField): FormField => {\n const field = { ...incomingField } // shallow copy, as we only need to remove top-level keys\n\n for (const key of blacklistedKeys) {\n delete field[key]\n }\n\n return field\n}\n\n/**\n * Takes in FormState and removes fields that are not serializable.\n * Returns FormState without blacklisted keys.\n */\nexport const reduceToSerializableFields = (\n fields: FormState,\n): {\n [key: string]: Omit<FormField, BlacklistedKeys>\n} => {\n const result: Record<string, Omit<FormField, BlacklistedKeys>> = {}\n\n for (const key in fields) {\n result[key] = sanitizeField(fields[key])\n }\n\n return result\n}\n"],"mappings":"AAGA,MAAMA,eAAA,GAAqC,CAAC,YAAY,mBAAmB;AAE3E,MAAMC,aAAA,GAAiBC,aAAA;EACrB,MAAMC,KAAA,GAAQ;IAAE,GAAGD;EAAc,EAAE;EAAA;EAEnC,KAAK,MAAME,GAAA,IAAOJ,eAAA,EAAiB;IACjC,OAAOG,KAAK,CAACC,GAAA,CAAI;EACnB;EAEA,OAAOD,KAAA;AACT;AAEA;;;;AAIA,OAAO,MAAME,0BAAA,GACXC,MAAA;EAIA,MAAMC,MAAA,GAA2D,CAAC;EAElE,KAAK,MAAMH,GAAA,IAAOE,MAAA,EAAQ;IACxBC,MAAM,CAACH,GAAA,CAAI,GAAGH,aAAA,CAAcK,MAAM,CAACF,GAAA,CAAI;EACzC;EAEA,OAAOG,MAAA;AACT","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/Form/reduceToSerializableFields.ts"],"sourcesContent":["import { type FormField, type FormState } from 'payload'\n\ntype BlacklistedKeys = 'customComponents' | 'validate'\nconst blacklistedKeys: BlacklistedKeys[] = ['validate', 'customComponents']\n\nconst sanitizeField = (incomingField: FormField): FormField => {\n const field = { ...incomingField } // shallow copy, as we only need to remove top-level keys\n\n for (const key of blacklistedKeys) {\n delete field[key]\n }\n\n return field\n}\n\n/**\n * Takes in FormState and removes fields that are not serializable.\n * Returns FormState without blacklisted keys.\n */\nexport const reduceToSerializableFields = (\n fields: FormState,\n): {\n [key: string]: Omit<FormField, BlacklistedKeys>\n} => {\n const result: Record<string, Omit<FormField, BlacklistedKeys>> = {}\n\n for (const key in fields) {\n result[key] = sanitizeField(fields[key])\n }\n\n return result\n}\n"],"names":["blacklistedKeys","sanitizeField","incomingField","field","key","reduceToSerializableFields","fields","result"],"mappings":"AAGA,MAAMA,kBAAqC;IAAC;IAAY;CAAmB;AAE3E,MAAMC,gBAAgB,CAACC;IACrB,MAAMC,QAAQ;QAAE,GAAGD,aAAa;IAAC;IAAE,yDAAyD;IAE5F,KAAK,MAAME,OAAOJ,gBAAiB;QACjC,OAAOG,KAAK,CAACC,IAAI;IACnB;IAEA,OAAOD;AACT;AAEA;;;CAGC,GACD,OAAO,MAAME,6BAA6B,CACxCC;IAIA,MAAMC,SAA2D,CAAC;IAElE,IAAK,MAAMH,OAAOE,OAAQ;QACxBC,MAAM,CAACH,IAAI,GAAGH,cAAcK,MAAM,CAACF,IAAI;IACzC;IAEA,OAAOG;AACT,EAAC"}
@@ -1,38 +1,31 @@
1
1
  'use client';
2
-
3
- export const extractRowsAndCollapsedIDs = ({
4
- collapsed,
5
- rowID,
6
- rows
7
- }) => {
8
- return rows.reduce((acc, row) => {
9
- if (rowID === row.id) {
10
- row.collapsed = collapsed;
11
- }
12
- if (row.collapsed) {
13
- acc.collapsedIDs.push(row.id);
14
- }
15
- acc.updatedRows.push(row);
16
- return acc;
17
- }, {
18
- collapsedIDs: [],
19
- updatedRows: []
20
- });
2
+ export const extractRowsAndCollapsedIDs = ({ collapsed, rowID, rows })=>{
3
+ return rows.reduce((acc, row)=>{
4
+ if (rowID === row.id) {
5
+ row.collapsed = collapsed;
6
+ }
7
+ if (row.collapsed) {
8
+ acc.collapsedIDs.push(row.id);
9
+ }
10
+ acc.updatedRows.push(row);
11
+ return acc;
12
+ }, {
13
+ collapsedIDs: [],
14
+ updatedRows: []
15
+ });
21
16
  };
22
- export const toggleAllRows = ({
23
- collapsed,
24
- rows
25
- }) => {
26
- return rows.reduce((acc, row) => {
27
- row.collapsed = collapsed;
28
- if (collapsed) {
29
- acc.collapsedIDs.push(row.id);
30
- }
31
- acc.updatedRows.push(row);
32
- return acc;
33
- }, {
34
- collapsedIDs: [],
35
- updatedRows: []
36
- });
17
+ export const toggleAllRows = ({ collapsed, rows })=>{
18
+ return rows.reduce((acc, row)=>{
19
+ row.collapsed = collapsed;
20
+ if (collapsed) {
21
+ acc.collapsedIDs.push(row.id);
22
+ }
23
+ acc.updatedRows.push(row);
24
+ return acc;
25
+ }, {
26
+ collapsedIDs: [],
27
+ updatedRows: []
28
+ });
37
29
  };
30
+
38
31
  //# sourceMappingURL=rowHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rowHelpers.js","names":["extractRowsAndCollapsedIDs","collapsed","rowID","rows","reduce","acc","row","id","collapsedIDs","push","updatedRows","toggleAllRows"],"sources":["../../../src/forms/Form/rowHelpers.ts"],"sourcesContent":["'use client'\nimport type { Row } from 'payload'\n\nexport const extractRowsAndCollapsedIDs = ({\n collapsed,\n rowID,\n rows,\n}: {\n collapsed: boolean\n rowID: string\n rows: Row[]\n}): {\n collapsedIDs: string[]\n updatedRows: Row[]\n} => {\n return rows.reduce(\n (acc, row) => {\n if (rowID === row.id) {\n row.collapsed = collapsed\n }\n if (row.collapsed) {\n acc.collapsedIDs.push(row.id)\n }\n acc.updatedRows.push(row)\n return acc\n },\n {\n collapsedIDs: [],\n updatedRows: [],\n },\n )\n}\n\nexport const toggleAllRows = ({\n collapsed,\n rows,\n}): {\n collapsedIDs: string[]\n updatedRows: Row[]\n} => {\n return rows.reduce(\n (acc, row) => {\n row.collapsed = collapsed\n if (collapsed) {\n acc.collapsedIDs.push(row.id)\n }\n acc.updatedRows.push(row)\n return acc\n },\n {\n collapsedIDs: [],\n updatedRows: [],\n },\n )\n}\n"],"mappings":"AAAA;;AAGA,OAAO,MAAMA,0BAAA,GAA6BA,CAAC;EACzCC,SAAS;EACTC,KAAK;EACLC;AAAI,CAKL;EAIC,OAAOA,IAAA,CAAKC,MAAM,CAChB,CAACC,GAAA,EAAKC,GAAA;IACJ,IAAIJ,KAAA,KAAUI,GAAA,CAAIC,EAAE,EAAE;MACpBD,GAAA,CAAIL,SAAS,GAAGA,SAAA;IAClB;IACA,IAAIK,GAAA,CAAIL,SAAS,EAAE;MACjBI,GAAA,CAAIG,YAAY,CAACC,IAAI,CAACH,GAAA,CAAIC,EAAE;IAC9B;IACAF,GAAA,CAAIK,WAAW,CAACD,IAAI,CAACH,GAAA;IACrB,OAAOD,GAAA;EACT,GACA;IACEG,YAAA,EAAc,EAAE;IAChBE,WAAA,EAAa;EACf;AAEJ;AAEA,OAAO,MAAMC,aAAA,GAAgBA,CAAC;EAC5BV,SAAS;EACTE;AAAI,CACL;EAIC,OAAOA,IAAA,CAAKC,MAAM,CAChB,CAACC,GAAA,EAAKC,GAAA;IACJA,GAAA,CAAIL,SAAS,GAAGA,SAAA;IAChB,IAAIA,SAAA,EAAW;MACbI,GAAA,CAAIG,YAAY,CAACC,IAAI,CAACH,GAAA,CAAIC,EAAE;IAC9B;IACAF,GAAA,CAAIK,WAAW,CAACD,IAAI,CAACH,GAAA;IACrB,OAAOD,GAAA;EACT,GACA;IACEG,YAAA,EAAc,EAAE;IAChBE,WAAA,EAAa;EACf;AAEJ","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/Form/rowHelpers.ts"],"sourcesContent":["'use client'\nimport type { Row } from 'payload'\n\nexport const extractRowsAndCollapsedIDs = ({\n collapsed,\n rowID,\n rows,\n}: {\n collapsed: boolean\n rowID: string\n rows: Row[]\n}): {\n collapsedIDs: string[]\n updatedRows: Row[]\n} => {\n return rows.reduce(\n (acc, row) => {\n if (rowID === row.id) {\n row.collapsed = collapsed\n }\n if (row.collapsed) {\n acc.collapsedIDs.push(row.id)\n }\n acc.updatedRows.push(row)\n return acc\n },\n {\n collapsedIDs: [],\n updatedRows: [],\n },\n )\n}\n\nexport const toggleAllRows = ({\n collapsed,\n rows,\n}): {\n collapsedIDs: string[]\n updatedRows: Row[]\n} => {\n return rows.reduce(\n (acc, row) => {\n row.collapsed = collapsed\n if (collapsed) {\n acc.collapsedIDs.push(row.id)\n }\n acc.updatedRows.push(row)\n return acc\n },\n {\n collapsedIDs: [],\n updatedRows: [],\n },\n )\n}\n"],"names":["extractRowsAndCollapsedIDs","collapsed","rowID","rows","reduce","acc","row","id","collapsedIDs","push","updatedRows","toggleAllRows"],"mappings":"AAAA;AAGA,OAAO,MAAMA,6BAA6B,CAAC,EACzCC,SAAS,EACTC,KAAK,EACLC,IAAI,EAKL;IAIC,OAAOA,KAAKC,MAAM,CAChB,CAACC,KAAKC;QACJ,IAAIJ,UAAUI,IAAIC,EAAE,EAAE;YACpBD,IAAIL,SAAS,GAAGA;QAClB;QACA,IAAIK,IAAIL,SAAS,EAAE;YACjBI,IAAIG,YAAY,CAACC,IAAI,CAACH,IAAIC,EAAE;QAC9B;QACAF,IAAIK,WAAW,CAACD,IAAI,CAACH;QACrB,OAAOD;IACT,GACA;QACEG,cAAc,EAAE;QAChBE,aAAa,EAAE;IACjB;AAEJ,EAAC;AAED,OAAO,MAAMC,gBAAgB,CAAC,EAC5BV,SAAS,EACTE,IAAI,EACL;IAIC,OAAOA,KAAKC,MAAM,CAChB,CAACC,KAAKC;QACJA,IAAIL,SAAS,GAAGA;QAChB,IAAIA,WAAW;YACbI,IAAIG,YAAY,CAACC,IAAI,CAACH,IAAIC,EAAE;QAC9B;QACAF,IAAIK,WAAW,CAACD,IAAI,CAACH;QACrB,OAAOD;IACT,GACA;QACEG,cAAc,EAAE;QAChBE,aAAa,EAAE;IACjB;AAEJ,EAAC"}
@@ -1,38 +1,38 @@
1
1
  'use client';
2
-
3
- export const separateRows = (path, fields) => {
4
- const remainingFields = {};
5
- const rows = Object.entries(fields).reduce((incomingRows, [fieldPath, field]) => {
6
- const newRows = incomingRows;
7
- if (fieldPath.indexOf(`${path}.`) === 0) {
8
- const [rowIndex] = fieldPath.replace(`${path}.`, '').split('.');
9
- if (!newRows[rowIndex]) {
10
- newRows[rowIndex] = {};
11
- }
12
- newRows[rowIndex][fieldPath.replace(`${path}.${String(rowIndex)}.`, '')] = {
13
- ...field
14
- };
15
- } else {
16
- remainingFields[fieldPath] = field;
17
- }
18
- return newRows;
19
- }, []);
20
- return {
21
- remainingFields,
22
- rows
23
- };
24
- };
25
- export const flattenRows = (path, rows) => {
26
- return rows.reduce((fields, row, i) => ({
27
- ...fields,
28
- ...Object.entries(row).reduce((subFields, [subPath, subField]) => {
29
- return {
30
- ...subFields,
31
- [`${path}.${i}.${subPath}`]: {
32
- ...subField
2
+ export const separateRows = (path, fields)=>{
3
+ const remainingFields = {};
4
+ const rows = Object.entries(fields).reduce((incomingRows, [fieldPath, field])=>{
5
+ const newRows = incomingRows;
6
+ if (fieldPath.indexOf(`${path}.`) === 0) {
7
+ const [rowIndex] = fieldPath.replace(`${path}.`, '').split('.');
8
+ if (!newRows[rowIndex]) {
9
+ newRows[rowIndex] = {};
10
+ }
11
+ newRows[rowIndex][fieldPath.replace(`${path}.${String(rowIndex)}.`, '')] = {
12
+ ...field
13
+ };
14
+ } else {
15
+ remainingFields[fieldPath] = field;
33
16
  }
34
- };
35
- }, {})
36
- }), {});
17
+ return newRows;
18
+ }, []);
19
+ return {
20
+ remainingFields,
21
+ rows
22
+ };
37
23
  };
24
+ export const flattenRows = (path, rows)=>{
25
+ return rows.reduce((fields, row, i)=>({
26
+ ...fields,
27
+ ...Object.entries(row).reduce((subFields, [subPath, subField])=>{
28
+ return {
29
+ ...subFields,
30
+ [`${path}.${i}.${subPath}`]: {
31
+ ...subField
32
+ }
33
+ };
34
+ }, {})
35
+ }), {});
36
+ };
37
+
38
38
  //# sourceMappingURL=rows.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rows.js","names":["separateRows","path","fields","remainingFields","rows","Object","entries","reduce","incomingRows","fieldPath","field","newRows","indexOf","rowIndex","replace","split","String","flattenRows","row","i","subFields","subPath","subField"],"sources":["../../../src/forms/Form/rows.ts"],"sourcesContent":["'use client'\nimport type { FormState } from 'payload'\n\ntype Result = {\n remainingFields: FormState\n rows: FormState[]\n}\n\nexport const separateRows = (path: string, fields: FormState): Result => {\n const remainingFields: FormState = {}\n\n const rows = Object.entries(fields).reduce((incomingRows, [fieldPath, field]) => {\n const newRows = incomingRows\n\n if (fieldPath.indexOf(`${path}.`) === 0) {\n const [rowIndex] = fieldPath.replace(`${path}.`, '').split('.')\n if (!newRows[rowIndex]) {\n newRows[rowIndex] = {}\n }\n newRows[rowIndex][fieldPath.replace(`${path}.${String(rowIndex)}.`, '')] = { ...field }\n } else {\n remainingFields[fieldPath] = field\n }\n\n return newRows\n }, [])\n\n return {\n remainingFields,\n rows,\n }\n}\n\nexport const flattenRows = (path: string, rows: FormState[]): FormState => {\n return rows.reduce(\n (fields, row, i) => ({\n ...fields,\n ...Object.entries(row).reduce((subFields, [subPath, subField]) => {\n return {\n ...subFields,\n [`${path}.${i}.${subPath}`]: { ...subField },\n }\n }, {}),\n }),\n {},\n )\n}\n"],"mappings":"AAAA;;AAQA,OAAO,MAAMA,YAAA,GAAeA,CAACC,IAAA,EAAcC,MAAA;EACzC,MAAMC,eAAA,GAA6B,CAAC;EAEpC,MAAMC,IAAA,GAAOC,MAAA,CAAOC,OAAO,CAACJ,MAAA,EAAQK,MAAM,CAAC,CAACC,YAAA,EAAc,CAACC,SAAA,EAAWC,KAAA,CAAM;IAC1E,MAAMC,OAAA,GAAUH,YAAA;IAEhB,IAAIC,SAAA,CAAUG,OAAO,CAAC,GAAGX,IAAA,GAAO,MAAM,GAAG;MACvC,MAAM,CAACY,QAAA,CAAS,GAAGJ,SAAA,CAAUK,OAAO,CAAC,GAAGb,IAAA,GAAO,EAAE,IAAIc,KAAK,CAAC;MAC3D,IAAI,CAACJ,OAAO,CAACE,QAAA,CAAS,EAAE;QACtBF,OAAO,CAACE,QAAA,CAAS,GAAG,CAAC;MACvB;MACAF,OAAO,CAACE,QAAA,CAAS,CAACJ,SAAA,CAAUK,OAAO,CAAC,GAAGb,IAAA,IAAQe,MAAA,CAAOH,QAAA,IAAY,EAAE,IAAI,GAAG;QAAE,GAAGH;MAAM;IACxF,OAAO;MACLP,eAAe,CAACM,SAAA,CAAU,GAAGC,KAAA;IAC/B;IAEA,OAAOC,OAAA;EACT,GAAG,EAAE;EAEL,OAAO;IACLR,eAAA;IACAC;EACF;AACF;AAEA,OAAO,MAAMa,WAAA,GAAcA,CAAChB,IAAA,EAAcG,IAAA;EACxC,OAAOA,IAAA,CAAKG,MAAM,CAChB,CAACL,MAAA,EAAQgB,GAAA,EAAKC,CAAA,MAAO;IACnB,GAAGjB,MAAM;IACT,GAAGG,MAAA,CAAOC,OAAO,CAACY,GAAA,EAAKX,MAAM,CAAC,CAACa,SAAA,EAAW,CAACC,OAAA,EAASC,QAAA,CAAS;MAC3D,OAAO;QACL,GAAGF,SAAS;QACZ,CAAC,GAAGnB,IAAA,IAAQkB,CAAA,IAAKE,OAAA,EAAS,GAAG;UAAE,GAAGC;QAAS;MAC7C;IACF,GAAG,CAAC;EACN,IACA,CAAC;AAEL","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/Form/rows.ts"],"sourcesContent":["'use client'\nimport type { FormState } from 'payload'\n\ntype Result = {\n remainingFields: FormState\n rows: FormState[]\n}\n\nexport const separateRows = (path: string, fields: FormState): Result => {\n const remainingFields: FormState = {}\n\n const rows = Object.entries(fields).reduce((incomingRows, [fieldPath, field]) => {\n const newRows = incomingRows\n\n if (fieldPath.indexOf(`${path}.`) === 0) {\n const [rowIndex] = fieldPath.replace(`${path}.`, '').split('.')\n if (!newRows[rowIndex]) {\n newRows[rowIndex] = {}\n }\n newRows[rowIndex][fieldPath.replace(`${path}.${String(rowIndex)}.`, '')] = { ...field }\n } else {\n remainingFields[fieldPath] = field\n }\n\n return newRows\n }, [])\n\n return {\n remainingFields,\n rows,\n }\n}\n\nexport const flattenRows = (path: string, rows: FormState[]): FormState => {\n return rows.reduce(\n (fields, row, i) => ({\n ...fields,\n ...Object.entries(row).reduce((subFields, [subPath, subField]) => {\n return {\n ...subFields,\n [`${path}.${i}.${subPath}`]: { ...subField },\n }\n }, {}),\n }),\n {},\n )\n}\n"],"names":["separateRows","path","fields","remainingFields","rows","Object","entries","reduce","incomingRows","fieldPath","field","newRows","indexOf","rowIndex","replace","split","String","flattenRows","row","i","subFields","subPath","subField"],"mappings":"AAAA;AAQA,OAAO,MAAMA,eAAe,CAACC,MAAcC;IACzC,MAAMC,kBAA6B,CAAC;IAEpC,MAAMC,OAAOC,OAAOC,OAAO,CAACJ,QAAQK,MAAM,CAAC,CAACC,cAAc,CAACC,WAAWC,MAAM;QAC1E,MAAMC,UAAUH;QAEhB,IAAIC,UAAUG,OAAO,CAAC,GAAGX,KAAK,CAAC,CAAC,MAAM,GAAG;YACvC,MAAM,CAACY,SAAS,GAAGJ,UAAUK,OAAO,CAAC,GAAGb,KAAK,CAAC,CAAC,EAAE,IAAIc,KAAK,CAAC;YAC3D,IAAI,CAACJ,OAAO,CAACE,SAAS,EAAE;gBACtBF,OAAO,CAACE,SAAS,GAAG,CAAC;YACvB;YACAF,OAAO,CAACE,SAAS,CAACJ,UAAUK,OAAO,CAAC,GAAGb,KAAK,CAAC,EAAEe,OAAOH,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG;gBAAE,GAAGH,KAAK;YAAC;QACxF,OAAO;YACLP,eAAe,CAACM,UAAU,GAAGC;QAC/B;QAEA,OAAOC;IACT,GAAG,EAAE;IAEL,OAAO;QACLR;QACAC;IACF;AACF,EAAC;AAED,OAAO,MAAMa,cAAc,CAAChB,MAAcG;IACxC,OAAOA,KAAKG,MAAM,CAChB,CAACL,QAAQgB,KAAKC,IAAO,CAAA;YACnB,GAAGjB,MAAM;YACT,GAAGG,OAAOC,OAAO,CAACY,KAAKX,MAAM,CAAC,CAACa,WAAW,CAACC,SAASC,SAAS;gBAC3D,OAAO;oBACL,GAAGF,SAAS;oBACZ,CAAC,GAAGnB,KAAK,CAAC,EAAEkB,EAAE,CAAC,EAAEE,SAAS,CAAC,EAAE;wBAAE,GAAGC,QAAQ;oBAAC;gBAC7C;YACF,GAAG,CAAC,EAAE;QACR,CAAA,GACA,CAAC;AAEL,EAAC"}
@@ -1,2 +1,54 @@
1
- export {};
1
+ /**
2
+ * Arbitrary context passed to the onSuccess callback.
3
+ */ /**
4
+ * The form state that was sent with the request when retrieving the `json` arg.
5
+ */ /**
6
+ * If you would like to solely leverage server-side validation on submit,
7
+ * you can disable checks that the form makes before it submits
8
+ */ /**
9
+ * If you don't want the form to be a <form> element, you can pass a string here to use as the wrapper element.
10
+ */ /**
11
+ * By default, the form will get the field schema (not data) from the current document. If you pass this in, you can override that behavior.
12
+ * This is very useful for sub-forms, where the form's field schema is not necessarily the field schema of the current document (e.g. for the Blocks
13
+ * feature of the Lexical Rich Text field)
14
+ */ /**
15
+ * Determines if this Form is the main, top-level Form of a document. If set to true, the
16
+ * Form's children will be wrapped in a DocumentFormContext, which lets you access this document
17
+ * Form's data and fields from any child component - even if that child component is wrapped in a child
18
+ * Form (e.g. a lexical block).
19
+ */ /**
20
+ * If you want to pass additional data to the onSuccess callback, you can use this context object.
21
+ *
22
+ * @experimental This property is experimental and may change in the future.
23
+ */ /**
24
+ * When true, will disable the form while it is processing.
25
+ * @default true
26
+ */ /**
27
+ * When true, will disable the success toast after form submission.
28
+ * @default false
29
+ */ /**
30
+ * When true, will skip validation before submitting the form.
31
+ * @default false
32
+ */ /**
33
+ * Returns the form state and the response from the server.
34
+ *
35
+ * @experimental - Note: the `{ res: ... }` return type is experimental and may change in the future. Use at your own risk.
36
+ */ /**
37
+ * If mergeOverrideData true, the data will be merged with the existing data in the form state.
38
+ * @default true
39
+ */ /**
40
+ * If provided, will use this instead of of derived data from the current form state.
41
+ */ /**
42
+ * If `sanitize` is true, default values will be set for form field properties that are not present in the incoming state.
43
+ * For example, `valid` will be set to true if it is not present in the incoming state.
44
+ */ export { }; /**
45
+ * Form context fields may be outdated and should not be relied on. Instead, prefer `useFormFields`.
46
+ */ /**
47
+ * Tracks wether the form state passes validation.
48
+ * For example the state could be submitted but invalid as field errors have been returned.
49
+ */ /**
50
+ * If the form has started processing in the background (e.g.
51
+ * if autosave is running), this will be true.
52
+ */
53
+
2
54
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/forms/Form/types.ts"],"sourcesContent":["import type {\n ClientField,\n Data,\n FormField,\n FormState,\n Row,\n TypedUser,\n ValidationFieldError,\n} from 'payload'\nimport type React from 'react'\nimport type { Dispatch } from 'react'\n\nimport type { AcceptValues } from './mergeServerFormState.js'\n\nexport type Preferences = {\n [key: string]: unknown\n}\n\nexport type FormOnSuccess<T = unknown, C = Record<string, unknown>> = (\n json: T,\n ctx?: {\n /**\n * Arbitrary context passed to the onSuccess callback.\n */\n context?: C\n /**\n * The form state that was sent with the request when retrieving the `json` arg.\n */\n formState?: FormState\n },\n) => Promise<FormState | void> | void\n\nexport type FormProps = {\n beforeSubmit?: ((args: { formState: FormState }) => Promise<FormState>)[]\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n disableSuccessStatus?: boolean\n /**\n * If you would like to solely leverage server-side validation on submit,\n * you can disable checks that the form makes before it submits\n */\n disableValidationOnSubmit?: boolean\n /**\n * If you don't want the form to be a <form> element, you can pass a string here to use as the wrapper element.\n */\n el?: string\n /**\n * By default, the form will get the field schema (not data) from the current document. If you pass this in, you can override that behavior.\n * This is very useful for sub-forms, where the form's field schema is not necessarily the field schema of the current document (e.g. for the Blocks\n * feature of the Lexical Rich Text field)\n */\n fields?: ClientField[]\n handleResponse?: (\n res: Response,\n successToast: (value: string) => void,\n errorToast: (value: string) => void,\n ) => void\n initialState?: FormState\n /**\n * Determines if this Form is the main, top-level Form of a document. If set to true, the\n * Form's children will be wrapped in a DocumentFormContext, which lets you access this document\n * Form's data and fields from any child component - even if that child component is wrapped in a child\n * Form (e.g. a lexical block).\n */\n isDocumentForm?: boolean\n isInitializing?: boolean\n log?: boolean\n onChange?: ((args: { formState: FormState; submitted?: boolean }) => Promise<FormState>)[]\n onSubmit?: (fields: FormState, data: Data) => void\n onSuccess?: FormOnSuccess\n redirect?: string\n submitted?: boolean\n uuid?: string\n validationOperation?: 'create' | 'update'\n waitForAutocomplete?: boolean\n} & (\n | {\n action: (formData: FormData) => Promise<void>\n }\n | {\n action?: string\n method?: 'DELETE' | 'GET' | 'PATCH' | 'POST'\n }\n)\n\nexport type SubmitOptions<C = Record<string, unknown>> = {\n acceptValues?: AcceptValues\n action?: string\n /**\n * If you want to pass additional data to the onSuccess callback, you can use this context object.\n *\n * @experimental This property is experimental and may change in the future.\n */\n context?: C\n /**\n * When true, will disable the form while it is processing.\n * @default true\n */\n disableFormWhileProcessing?: boolean\n /**\n * When true, will disable the success toast after form submission.\n * @default false\n */\n disableSuccessStatus?: boolean\n method?: string\n overrides?: ((formState) => FormData) | Record<string, unknown>\n /**\n * When true, will skip validation before submitting the form.\n * @default false\n */\n skipValidation?: boolean\n}\n\nexport type DispatchFields = React.Dispatch<any>\n\nexport type Submit = <T extends Response, C extends Record<string, unknown>>(\n options?: SubmitOptions<C>,\n e?: React.FormEvent<HTMLFormElement>,\n) => Promise</**\n * Returns the form state and the response from the server.\n *\n * @experimental - Note: the `{ res: ... }` return type is experimental and may change in the future. Use at your own risk.\n */\n{ formState?: FormState; res: T } | void>\n\nexport type ValidateForm = () => Promise<boolean>\n\nexport type CreateFormData = (\n overrides?: Record<string, unknown>,\n /**\n * If mergeOverrideData true, the data will be merged with the existing data in the form state.\n * @default true\n */\n options?: {\n /**\n * If provided, will use this instead of of derived data from the current form state.\n */\n data?: Data\n mergeOverrideData?: boolean\n },\n) => FormData | Promise<FormData>\n\nexport type GetFields = () => FormState\nexport type GetField = (path: string) => FormField\nexport type GetData = () => Data\nexport type GetSiblingData = (path: string) => Data\nexport type GetDataByPath = <T = unknown>(path: string) => T\nexport type SetModified = (modified: boolean) => void\nexport type SetSubmitted = (submitted: boolean) => void\nexport type SetProcessing = (processing: boolean) => void\n\nexport type Reset = (data: unknown) => Promise<void>\n\nexport type REPLACE_STATE = {\n optimize?: boolean\n /**\n * If `sanitize` is true, default values will be set for form field properties that are not present in the incoming state.\n * For example, `valid` will be set to true if it is not present in the incoming state.\n */\n sanitize?: boolean\n state: FormState\n type: 'REPLACE_STATE'\n}\n\nexport type REMOVE = {\n path: string\n type: 'REMOVE'\n}\n\nexport type MODIFY_CONDITION = {\n path: string\n result: boolean\n type: 'MODIFY_CONDITION'\n user: TypedUser\n}\n\nexport type UPDATE = {\n path: string\n type: 'UPDATE'\n} & Partial<FormField>\n\nexport type UPDATE_MANY = {\n formState: FormState\n type: 'UPDATE_MANY'\n}\n\nexport type REMOVE_ROW = {\n path: string\n rowIndex: number\n type: 'REMOVE_ROW'\n}\n\nexport type ADD_ROW = {\n blockType?: string\n path: string\n rowIndex?: number\n subFieldState?: FormState\n type: 'ADD_ROW'\n}\n\nexport type MERGE_SERVER_STATE = {\n acceptValues?: AcceptValues\n prevStateRef: React.RefObject<FormState>\n serverState: FormState\n type: 'MERGE_SERVER_STATE'\n}\n\nexport type REPLACE_ROW = {\n blockType?: string\n path: string\n rowIndex: number\n subFieldState?: FormState\n type: 'REPLACE_ROW'\n}\n\nexport type DUPLICATE_ROW = {\n path: string\n rowIndex: number\n type: 'DUPLICATE_ROW'\n}\n\nexport type MOVE_ROW = {\n moveFromIndex: number\n moveToIndex: number\n path: string\n type: 'MOVE_ROW'\n}\n\nexport type ADD_SERVER_ERRORS = {\n errors: ValidationFieldError[]\n type: 'ADD_SERVER_ERRORS'\n}\n\nexport type SET_ROW_COLLAPSED = {\n path: string\n type: 'SET_ROW_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type SET_ALL_ROWS_COLLAPSED = {\n path: string\n type: 'SET_ALL_ROWS_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type FieldAction =\n | ADD_ROW\n | ADD_SERVER_ERRORS\n | DUPLICATE_ROW\n | MERGE_SERVER_STATE\n | MODIFY_CONDITION\n | MOVE_ROW\n | REMOVE\n | REMOVE_ROW\n | REPLACE_ROW\n | REPLACE_STATE\n | SET_ALL_ROWS_COLLAPSED\n | SET_ROW_COLLAPSED\n | UPDATE\n | UPDATE_MANY\n\nexport type FormFieldsContext = [FormState, Dispatch<FieldAction>]\n\nexport type Context = {\n addFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex?: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n buildRowErrors: () => void\n createFormData: CreateFormData\n disabled: boolean\n dispatchFields: Dispatch<FieldAction>\n /**\n * Form context fields may be outdated and should not be relied on. Instead, prefer `useFormFields`.\n */\n fields: FormState\n formRef: React.RefObject<HTMLFormElement>\n getData: GetData\n getDataByPath: GetDataByPath\n getField: GetField\n getFields: GetFields\n getSiblingData: GetSiblingData\n initializing: boolean\n /**\n * Tracks wether the form state passes validation.\n * For example the state could be submitted but invalid as field errors have been returned.\n */\n isValid: boolean\n moveFieldRow: ({\n moveFromIndex,\n moveToIndex,\n path,\n }: {\n moveFromIndex: number\n moveToIndex: number\n path: string\n }) => void\n removeFieldRow: ({ path, rowIndex }: { path: string; rowIndex: number }) => void\n replaceFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n replaceState: (state: FormState) => void\n reset: Reset\n /**\n * If the form has started processing in the background (e.g.\n * if autosave is running), this will be true.\n */\n setBackgroundProcessing: SetProcessing\n setDisabled: (disabled: boolean) => void\n setIsValid: (processing: boolean) => void\n setModified: SetModified\n setProcessing: SetProcessing\n setSubmitted: SetSubmitted\n submit: Submit\n uuid?: string\n validateForm: ValidateForm\n}\n"],"mappings":"AAwQA","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/Form/types.ts"],"sourcesContent":["import type {\n ClientField,\n Data,\n FormField,\n FormState,\n Row,\n TypedUser,\n ValidationFieldError,\n} from 'payload'\nimport type React from 'react'\nimport type { Dispatch } from 'react'\n\nimport type { AcceptValues } from './mergeServerFormState.js'\n\nexport type Preferences = {\n [key: string]: unknown\n}\n\nexport type FormOnSuccess<T = unknown, C = Record<string, unknown>> = (\n json: T,\n ctx?: {\n /**\n * Arbitrary context passed to the onSuccess callback.\n */\n context?: C\n /**\n * The form state that was sent with the request when retrieving the `json` arg.\n */\n formState?: FormState\n },\n) => Promise<FormState | void> | void\n\nexport type FormProps = {\n beforeSubmit?: ((args: { formState: FormState }) => Promise<FormState>)[]\n children?: React.ReactNode\n className?: string\n disabled?: boolean\n disableSuccessStatus?: boolean\n /**\n * If you would like to solely leverage server-side validation on submit,\n * you can disable checks that the form makes before it submits\n */\n disableValidationOnSubmit?: boolean\n /**\n * If you don't want the form to be a <form> element, you can pass a string here to use as the wrapper element.\n */\n el?: string\n /**\n * By default, the form will get the field schema (not data) from the current document. If you pass this in, you can override that behavior.\n * This is very useful for sub-forms, where the form's field schema is not necessarily the field schema of the current document (e.g. for the Blocks\n * feature of the Lexical Rich Text field)\n */\n fields?: ClientField[]\n handleResponse?: (\n res: Response,\n successToast: (value: string) => void,\n errorToast: (value: string) => void,\n ) => void\n initialState?: FormState\n /**\n * Determines if this Form is the main, top-level Form of a document. If set to true, the\n * Form's children will be wrapped in a DocumentFormContext, which lets you access this document\n * Form's data and fields from any child component - even if that child component is wrapped in a child\n * Form (e.g. a lexical block).\n */\n isDocumentForm?: boolean\n isInitializing?: boolean\n log?: boolean\n onChange?: ((args: { formState: FormState; submitted?: boolean }) => Promise<FormState>)[]\n onSubmit?: (fields: FormState, data: Data) => void\n onSuccess?: FormOnSuccess\n redirect?: string\n submitted?: boolean\n uuid?: string\n validationOperation?: 'create' | 'update'\n waitForAutocomplete?: boolean\n} & (\n | {\n action: (formData: FormData) => Promise<void>\n }\n | {\n action?: string\n method?: 'DELETE' | 'GET' | 'PATCH' | 'POST'\n }\n)\n\nexport type SubmitOptions<C = Record<string, unknown>> = {\n acceptValues?: AcceptValues\n action?: string\n /**\n * If you want to pass additional data to the onSuccess callback, you can use this context object.\n *\n * @experimental This property is experimental and may change in the future.\n */\n context?: C\n /**\n * When true, will disable the form while it is processing.\n * @default true\n */\n disableFormWhileProcessing?: boolean\n /**\n * When true, will disable the success toast after form submission.\n * @default false\n */\n disableSuccessStatus?: boolean\n method?: string\n overrides?: ((formState) => FormData) | Record<string, unknown>\n /**\n * When true, will skip validation before submitting the form.\n * @default false\n */\n skipValidation?: boolean\n}\n\nexport type DispatchFields = React.Dispatch<any>\n\nexport type Submit = <T extends Response, C extends Record<string, unknown>>(\n options?: SubmitOptions<C>,\n e?: React.FormEvent<HTMLFormElement>,\n) => Promise</**\n * Returns the form state and the response from the server.\n *\n * @experimental - Note: the `{ res: ... }` return type is experimental and may change in the future. Use at your own risk.\n */\n{ formState?: FormState; res: T } | void>\n\nexport type ValidateForm = () => Promise<boolean>\n\nexport type CreateFormData = (\n overrides?: Record<string, unknown>,\n /**\n * If mergeOverrideData true, the data will be merged with the existing data in the form state.\n * @default true\n */\n options?: {\n /**\n * If provided, will use this instead of of derived data from the current form state.\n */\n data?: Data\n mergeOverrideData?: boolean\n },\n) => FormData | Promise<FormData>\n\nexport type GetFields = () => FormState\nexport type GetField = (path: string) => FormField\nexport type GetData = () => Data\nexport type GetSiblingData = (path: string) => Data\nexport type GetDataByPath = <T = unknown>(path: string) => T\nexport type SetModified = (modified: boolean) => void\nexport type SetSubmitted = (submitted: boolean) => void\nexport type SetProcessing = (processing: boolean) => void\n\nexport type Reset = (data: unknown) => Promise<void>\n\nexport type REPLACE_STATE = {\n optimize?: boolean\n /**\n * If `sanitize` is true, default values will be set for form field properties that are not present in the incoming state.\n * For example, `valid` will be set to true if it is not present in the incoming state.\n */\n sanitize?: boolean\n state: FormState\n type: 'REPLACE_STATE'\n}\n\nexport type REMOVE = {\n path: string\n type: 'REMOVE'\n}\n\nexport type MODIFY_CONDITION = {\n path: string\n result: boolean\n type: 'MODIFY_CONDITION'\n user: TypedUser\n}\n\nexport type UPDATE = {\n path: string\n type: 'UPDATE'\n} & Partial<FormField>\n\nexport type UPDATE_MANY = {\n formState: FormState\n type: 'UPDATE_MANY'\n}\n\nexport type REMOVE_ROW = {\n path: string\n rowIndex: number\n type: 'REMOVE_ROW'\n}\n\nexport type ADD_ROW = {\n blockType?: string\n path: string\n rowIndex?: number\n subFieldState?: FormState\n type: 'ADD_ROW'\n}\n\nexport type MERGE_SERVER_STATE = {\n acceptValues?: AcceptValues\n prevStateRef: React.RefObject<FormState>\n serverState: FormState\n type: 'MERGE_SERVER_STATE'\n}\n\nexport type REPLACE_ROW = {\n blockType?: string\n path: string\n rowIndex: number\n subFieldState?: FormState\n type: 'REPLACE_ROW'\n}\n\nexport type DUPLICATE_ROW = {\n path: string\n rowIndex: number\n type: 'DUPLICATE_ROW'\n}\n\nexport type MOVE_ROW = {\n moveFromIndex: number\n moveToIndex: number\n path: string\n type: 'MOVE_ROW'\n}\n\nexport type ADD_SERVER_ERRORS = {\n errors: ValidationFieldError[]\n type: 'ADD_SERVER_ERRORS'\n}\n\nexport type SET_ROW_COLLAPSED = {\n path: string\n type: 'SET_ROW_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type SET_ALL_ROWS_COLLAPSED = {\n path: string\n type: 'SET_ALL_ROWS_COLLAPSED'\n updatedRows: Row[]\n}\n\nexport type FieldAction =\n | ADD_ROW\n | ADD_SERVER_ERRORS\n | DUPLICATE_ROW\n | MERGE_SERVER_STATE\n | MODIFY_CONDITION\n | MOVE_ROW\n | REMOVE\n | REMOVE_ROW\n | REPLACE_ROW\n | REPLACE_STATE\n | SET_ALL_ROWS_COLLAPSED\n | SET_ROW_COLLAPSED\n | UPDATE\n | UPDATE_MANY\n\nexport type FormFieldsContext = [FormState, Dispatch<FieldAction>]\n\nexport type Context = {\n addFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex?: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n buildRowErrors: () => void\n createFormData: CreateFormData\n disabled: boolean\n dispatchFields: Dispatch<FieldAction>\n /**\n * Form context fields may be outdated and should not be relied on. Instead, prefer `useFormFields`.\n */\n fields: FormState\n formRef: React.RefObject<HTMLFormElement>\n getData: GetData\n getDataByPath: GetDataByPath\n getField: GetField\n getFields: GetFields\n getSiblingData: GetSiblingData\n initializing: boolean\n /**\n * Tracks wether the form state passes validation.\n * For example the state could be submitted but invalid as field errors have been returned.\n */\n isValid: boolean\n moveFieldRow: ({\n moveFromIndex,\n moveToIndex,\n path,\n }: {\n moveFromIndex: number\n moveToIndex: number\n path: string\n }) => void\n removeFieldRow: ({ path, rowIndex }: { path: string; rowIndex: number }) => void\n replaceFieldRow: ({\n blockType,\n path,\n rowIndex,\n schemaPath,\n subFieldState,\n }: {\n blockType?: string\n path: string\n rowIndex: number\n schemaPath: string\n subFieldState?: FormState\n }) => void\n replaceState: (state: FormState) => void\n reset: Reset\n /**\n * If the form has started processing in the background (e.g.\n * if autosave is running), this will be true.\n */\n setBackgroundProcessing: SetProcessing\n setDisabled: (disabled: boolean) => void\n setIsValid: (processing: boolean) => void\n setModified: SetModified\n setProcessing: SetProcessing\n setSubmitted: SetSubmitted\n submit: Submit\n uuid?: string\n validateForm: ValidateForm\n}\n"],"names":[],"mappings":"AAqBI;;KAEC,GAED;;KAEC,GAWH;;;GAGC,GAED;;GAEC,GAED;;;;GAIC,GAQD;;;;;GAKC,GAyBD;;;;GAIC,GAED;;;GAGC,GAED;;;GAGC,GAID;;;GAGC,GASU;;;;CAIZ,GAOC;;;GAGC,GAEC;;KAEC,GAmBH;;;GAGC,GAyGH,WAwEC,CAtDC;;GAEC,IASD;;;GAGC,IA2BD;;;GAGC"}
@@ -1,7 +1,5 @@
1
1
  'use client';
2
-
3
- import { c as _c } from "react/compiler-runtime";
4
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
5
3
  import * as React from 'react';
6
4
  import { Banner } from '../../elements/Banner/index.js';
7
5
  import { CheckboxField } from '../../fields/Checkbox/index.js';
@@ -11,101 +9,68 @@ import { useTranslation } from '../../providers/Translation/index.js';
11
9
  import { useForm } from '../Form/context.js';
12
10
  import './index.scss';
13
11
  const baseClass = 'nullify-locale-field';
14
- export const NullifyLocaleField = t0 => {
15
- const $ = _c(13);
16
- const {
17
- fieldValue,
18
- localized,
19
- path,
20
- readOnly: t1
21
- } = t0;
22
- const readOnly = t1 === undefined ? false : t1;
23
- const {
24
- code: currentLocale
25
- } = useLocale();
26
- const {
27
- config: t2
28
- } = useConfig();
29
- const {
30
- localization
31
- } = t2;
32
- const [checked, setChecked] = React.useState(typeof fieldValue !== "number");
33
- const {
34
- t
35
- } = useTranslation();
36
- const {
37
- dispatchFields,
38
- setModified
39
- } = useForm();
40
- if (!localized || !localization) {
41
- return null;
42
- }
43
- if (localization.defaultLocale === currentLocale || !localization.fallback) {
44
- return null;
45
- }
46
- let t3;
47
- if ($[0] !== checked || $[1] !== dispatchFields || $[2] !== fieldValue || $[3] !== path || $[4] !== setModified) {
48
- t3 = () => {
49
- const useFallback = !checked;
50
- dispatchFields({
51
- type: "UPDATE",
52
- path,
53
- value: useFallback ? null : fieldValue || 0
54
- });
55
- setModified(true);
56
- setChecked(useFallback);
57
- };
58
- $[0] = checked;
59
- $[1] = dispatchFields;
60
- $[2] = fieldValue;
61
- $[3] = path;
62
- $[4] = setModified;
63
- $[5] = t3;
64
- } else {
65
- t3 = $[5];
66
- }
67
- const onChange = t3;
68
- if (fieldValue) {
69
- let hideCheckbox = false;
70
- if (typeof fieldValue === "number" && fieldValue > 0) {
71
- hideCheckbox = true;
12
+ export const NullifyLocaleField = ({ fieldValue, localized, path, readOnly = false })=>{
13
+ const { code: currentLocale } = useLocale();
14
+ const { config: { localization } } = useConfig();
15
+ const [checked, setChecked] = React.useState(typeof fieldValue !== 'number');
16
+ const { t } = useTranslation();
17
+ const { dispatchFields, setModified } = useForm();
18
+ if (!localized || !localization) {
19
+ // hide when field is not localized or localization is not enabled
20
+ return null;
72
21
  }
73
- if (Array.isArray(fieldValue) && fieldValue.length > 0) {
74
- hideCheckbox = true;
22
+ if (localization.defaultLocale === currentLocale || !localization.fallback) {
23
+ // if editing default locale or when fallback is disabled
24
+ return null;
75
25
  }
76
- if (hideCheckbox) {
77
- if (checked) {
78
- setChecked(false);
79
- }
80
- return null;
26
+ const onChange = ()=>{
27
+ const useFallback = !checked;
28
+ dispatchFields({
29
+ type: 'UPDATE',
30
+ path,
31
+ value: useFallback ? null : fieldValue || 0
32
+ });
33
+ setModified(true);
34
+ setChecked(useFallback);
35
+ };
36
+ if (fieldValue) {
37
+ let hideCheckbox = false;
38
+ if (typeof fieldValue === 'number' && fieldValue > 0) {
39
+ hideCheckbox = true;
40
+ }
41
+ if (Array.isArray(fieldValue) && fieldValue.length > 0) {
42
+ hideCheckbox = true;
43
+ }
44
+ if (hideCheckbox) {
45
+ if (checked) {
46
+ setChecked(false);
47
+ }
48
+ // uncheck when field has value
49
+ return null;
50
+ }
81
51
  }
82
- }
83
- let t4;
84
- if ($[6] !== checked || $[7] !== fieldValue || $[8] !== onChange || $[9] !== path || $[10] !== readOnly || $[11] !== t) {
85
- t4 = _jsx(Banner, {
86
- className: baseClass,
87
- children: !fieldValue && readOnly ? t("general:fallbackToDefaultLocale") : _jsx(CheckboxField, {
88
- checked,
89
- field: {
90
- name: "",
91
- label: t("general:fallbackToDefaultLocale")
92
- },
93
- id: `field-${path.replace(/\./g, "__")}`,
94
- onChange,
95
- path,
96
- schemaPath: ""
97
- })
98
- });
99
- $[6] = checked;
100
- $[7] = fieldValue;
101
- $[8] = onChange;
102
- $[9] = path;
103
- $[10] = readOnly;
104
- $[11] = t;
105
- $[12] = t4;
106
- } else {
107
- t4 = $[12];
108
- }
109
- return t4;
52
+ return /*#__PURE__*/ _jsxDEV(Banner, {
53
+ className: baseClass,
54
+ children: !fieldValue && readOnly ? t('general:fallbackToDefaultLocale') : /*#__PURE__*/ _jsxDEV(CheckboxField, {
55
+ checked: checked,
56
+ field: {
57
+ name: '',
58
+ label: t('general:fallbackToDefaultLocale')
59
+ },
60
+ id: `field-${path.replace(/\./g, '__')}`,
61
+ onChange: onChange,
62
+ path: path,
63
+ schemaPath: ""
64
+ }, void 0, false, {
65
+ fileName: "src/forms/NullifyField/index.tsx",
66
+ lineNumber: 80,
67
+ columnNumber: 9
68
+ }, this)
69
+ }, void 0, false, {
70
+ fileName: "src/forms/NullifyField/index.tsx",
71
+ lineNumber: 76,
72
+ columnNumber: 5
73
+ }, this);
110
74
  };
75
+
111
76
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","Banner","CheckboxField","useConfig","useLocale","useTranslation","useForm","baseClass","NullifyLocaleField","t0","$","fieldValue","localized","path","readOnly","t1","undefined","code","currentLocale","config","t2","localization","checked","setChecked","useState","t","dispatchFields","setModified","defaultLocale","fallback","t3","useFallback","type","value","onChange","hideCheckbox","Array","isArray","length","t4","_jsx","className","children","field","name","label","id","replace","schemaPath"],"sources":["../../../src/forms/NullifyField/index.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useForm } from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'nullify-locale-field'\n\ntype NullifyLocaleFieldProps = {\n readonly fieldValue?: [] | null | number\n readonly localized: boolean\n readonly path: string\n readonly readOnly?: boolean\n}\n\nexport const NullifyLocaleField: React.FC<NullifyLocaleFieldProps> = ({\n fieldValue,\n localized,\n path,\n readOnly = false,\n}) => {\n const { code: currentLocale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const [checked, setChecked] = React.useState<boolean>(typeof fieldValue !== 'number')\n const { t } = useTranslation()\n const { dispatchFields, setModified } = useForm()\n\n if (!localized || !localization) {\n // hide when field is not localized or localization is not enabled\n return null\n }\n\n if (localization.defaultLocale === currentLocale || !localization.fallback) {\n // if editing default locale or when fallback is disabled\n return null\n }\n\n const onChange = () => {\n const useFallback = !checked\n\n dispatchFields({\n type: 'UPDATE',\n path,\n value: useFallback ? null : fieldValue || 0,\n })\n setModified(true)\n setChecked(useFallback)\n }\n\n if (fieldValue) {\n let hideCheckbox = false\n if (typeof fieldValue === 'number' && fieldValue > 0) {\n hideCheckbox = true\n }\n if (Array.isArray(fieldValue) && fieldValue.length > 0) {\n hideCheckbox = true\n }\n\n if (hideCheckbox) {\n if (checked) {\n setChecked(false)\n } // uncheck when field has value\n return null\n }\n }\n\n return (\n <Banner className={baseClass}>\n {!fieldValue && readOnly ? (\n t('general:fallbackToDefaultLocale')\n ) : (\n <CheckboxField\n checked={checked}\n field={{\n name: '',\n label: t('general:fallbackToDefaultLocale'),\n }}\n id={`field-${path.replace(/\\./g, '__')}`}\n onChange={onChange}\n path={path}\n schemaPath=\"\"\n />\n )}\n </Banner>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,YAAYC,KAAA,MAAW;AAEvB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,OAAO,QAAQ;AACxB,OAAO;AAEP,MAAMC,SAAA,GAAY;AASlB,OAAO,MAAMC,kBAAA,GAAwDC,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAC;IAAAY,UAAA;IAAAC,SAAA;IAAAC,IAAA;IAAAC,QAAA,EAAAC;EAAA,IAAAN,EAKrE;EADC,MAAAK,QAAA,GAAAC,EAAgB,KAAAC,SAAA,WAAhBD,EAAgB;EAEhB;IAAAE,IAAA,EAAAC;EAAA,IAAgCd,SAAA;EAChC;IAAAe,MAAA,EAAAC;EAAA,IAEIjB,SAAA;EADM;IAAAkB;EAAA,IAAAD,EAAgB;EAE1B,OAAAE,OAAA,EAAAC,UAAA,IAA8BvB,KAAA,CAAAwB,QAAA,CAAwB,OAAOb,UAAA,KAAe;EAC5E;IAAAc;EAAA,IAAcpB,cAAA;EACd;IAAAqB,cAAA;IAAAC;EAAA,IAAwCrB,OAAA;EAAA,IAEpC,CAACM,SAAA,KAAcS,YAAA;IAAA;EAAA;EAAA,IAKfA,YAAA,CAAAO,aAAA,KAA+BV,aAAA,KAAkBG,YAAA,CAAAQ,QAAqB;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAApB,CAAA,QAAAY,OAAA,IAAAZ,CAAA,QAAAgB,cAAA,IAAAhB,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAiB,WAAA;IAKzDG,EAAA,GAAAA,CAAA;MACf,MAAAC,WAAA,IAAqBT,OAAA;MAErBI,cAAA;QAAAM,IAAA,EACQ;QAAAnB,IAAA;QAAAoB,KAAA,EAECF,WAAA,UAAqBpB,UAAA;MAAc,CAC5C;MACAgB,WAAA,KAAY;MACZJ,UAAA,CAAWQ,WAAA;IAAA;IACbrB,CAAA,MAAAY,OAAA;IAAAZ,CAAA,MAAAgB,cAAA;IAAAhB,CAAA,MAAAC,UAAA;IAAAD,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAiB,WAAA;IAAAjB,CAAA,MAAAoB,EAAA;EAAA;IAAAA,EAAA,GAAApB,CAAA;EAAA;EAVA,MAAAwB,QAAA,GAAiBJ,EAUjB;EAAA,IAEInB,UAAA;IACF,IAAAwB,YAAA;IAAmB,IACf,OAAOxB,UAAA,KAAe,YAAYA,UAAA,IAAa;MACjDwB,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAEEC,KAAA,CAAAC,OAAA,CAAc1B,UAAA,KAAeA,UAAA,CAAA2B,MAAA,IAAoB;MACnDH,YAAA,CAAAA,CAAA,CAAAA,IAAA;IAAA;IAAA,IAGEA,YAAA;MAAA,IACEb,OAAA;QACFC,UAAA,MAAW;MAAA;MAAA;IAAA;EAAA;EAAA,IAAAgB,EAAA;EAAA,IAAA7B,CAAA,QAAAY,OAAA,IAAAZ,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAwB,QAAA,IAAAxB,CAAA,QAAAG,IAAA,IAAAH,CAAA,SAAAI,QAAA,IAAAJ,CAAA,SAAAe,CAAA;IAOfc,EAAA,GAAAC,IAAA,CAAAvC,MAAA;MAAAwC,SAAA,EAAAlC,SAAA;MAAAmC,QAAA,EACG,CAAC/B,UAAA,IAAcG,QAAA,GACdW,CAAA,CAAE,qCAEFe,IAAA,CAAAtC,aAAA;QAAAoB,OAAA;QAAAqB,KAAA;UAAAC,IAAA,EAGU;UAAAC,KAAA,EACCpB,CAAA,CAAE;QAAA;QAAAqB,EAAA,EAEP,SAASjC,IAAA,CAAAkC,OAAA,QAAoB,OAAO;QAAAb,QAAA;QAAArB,IAAA;QAAAmC,UAAA,EAG7B;MAAA,C;;;;;;;;;;;;SAbjBT,E;CAkBJ","ignoreList":[]}
1
+ {"version":3,"sources":["../../../src/forms/NullifyField/index.tsx"],"sourcesContent":["'use client'\n\nimport * as React from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useForm } from '../Form/context.js'\nimport './index.scss'\n\nconst baseClass = 'nullify-locale-field'\n\ntype NullifyLocaleFieldProps = {\n readonly fieldValue?: [] | null | number\n readonly localized: boolean\n readonly path: string\n readonly readOnly?: boolean\n}\n\nexport const NullifyLocaleField: React.FC<NullifyLocaleFieldProps> = ({\n fieldValue,\n localized,\n path,\n readOnly = false,\n}) => {\n const { code: currentLocale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const [checked, setChecked] = React.useState<boolean>(typeof fieldValue !== 'number')\n const { t } = useTranslation()\n const { dispatchFields, setModified } = useForm()\n\n if (!localized || !localization) {\n // hide when field is not localized or localization is not enabled\n return null\n }\n\n if (localization.defaultLocale === currentLocale || !localization.fallback) {\n // if editing default locale or when fallback is disabled\n return null\n }\n\n const onChange = () => {\n const useFallback = !checked\n\n dispatchFields({\n type: 'UPDATE',\n path,\n value: useFallback ? null : fieldValue || 0,\n })\n setModified(true)\n setChecked(useFallback)\n }\n\n if (fieldValue) {\n let hideCheckbox = false\n if (typeof fieldValue === 'number' && fieldValue > 0) {\n hideCheckbox = true\n }\n if (Array.isArray(fieldValue) && fieldValue.length > 0) {\n hideCheckbox = true\n }\n\n if (hideCheckbox) {\n if (checked) {\n setChecked(false)\n } // uncheck when field has value\n return null\n }\n }\n\n return (\n <Banner className={baseClass}>\n {!fieldValue && readOnly ? (\n t('general:fallbackToDefaultLocale')\n ) : (\n <CheckboxField\n checked={checked}\n field={{\n name: '',\n label: t('general:fallbackToDefaultLocale'),\n }}\n id={`field-${path.replace(/\\./g, '__')}`}\n onChange={onChange}\n path={path}\n schemaPath=\"\"\n />\n )}\n </Banner>\n )\n}\n"],"names":["React","Banner","CheckboxField","useConfig","useLocale","useTranslation","useForm","baseClass","NullifyLocaleField","fieldValue","localized","path","readOnly","code","currentLocale","config","localization","checked","setChecked","useState","t","dispatchFields","setModified","defaultLocale","fallback","onChange","useFallback","type","value","hideCheckbox","Array","isArray","length","className","field","name","label","id","replace","schemaPath"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAO;AAE9B,SAASC,MAAM,QAAQ,iCAAgC;AACvD,SAASC,aAAa,QAAQ,iCAAgC;AAC9D,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,OAAO,QAAQ,qBAAoB;AAC5C,OAAO,eAAc;AAErB,MAAMC,YAAY;AASlB,OAAO,MAAMC,qBAAwD,CAAC,EACpEC,UAAU,EACVC,SAAS,EACTC,IAAI,EACJC,WAAW,KAAK,EACjB;IACC,MAAM,EAAEC,MAAMC,aAAa,EAAE,GAAGV;IAChC,MAAM,EACJW,QAAQ,EAAEC,YAAY,EAAE,EACzB,GAAGb;IACJ,MAAM,CAACc,SAASC,WAAW,GAAGlB,MAAMmB,QAAQ,CAAU,OAAOV,eAAe;IAC5E,MAAM,EAAEW,CAAC,EAAE,GAAGf;IACd,MAAM,EAAEgB,cAAc,EAAEC,WAAW,EAAE,GAAGhB;IAExC,IAAI,CAACI,aAAa,CAACM,cAAc;QAC/B,kEAAkE;QAClE,OAAO;IACT;IAEA,IAAIA,aAAaO,aAAa,KAAKT,iBAAiB,CAACE,aAAaQ,QAAQ,EAAE;QAC1E,yDAAyD;QACzD,OAAO;IACT;IAEA,MAAMC,WAAW;QACf,MAAMC,cAAc,CAACT;QAErBI,eAAe;YACbM,MAAM;YACNhB;YACAiB,OAAOF,cAAc,OAAOjB,cAAc;QAC5C;QACAa,YAAY;QACZJ,WAAWQ;IACb;IAEA,IAAIjB,YAAY;QACd,IAAIoB,eAAe;QACnB,IAAI,OAAOpB,eAAe,YAAYA,aAAa,GAAG;YACpDoB,eAAe;QACjB;QACA,IAAIC,MAAMC,OAAO,CAACtB,eAAeA,WAAWuB,MAAM,GAAG,GAAG;YACtDH,eAAe;QACjB;QAEA,IAAIA,cAAc;YAChB,IAAIZ,SAAS;gBACXC,WAAW;YACb;YAAE,+BAA+B;YACjC,OAAO;QACT;IACF;IAEA,qBACE,QAACjB;QAAOgC,WAAW1B;kBAChB,CAACE,cAAcG,WACdQ,EAAE,mDAEF,QAAClB;YACCe,SAASA;YACTiB,OAAO;gBACLC,MAAM;gBACNC,OAAOhB,EAAE;YACX;YACAiB,IAAI,CAAC,MAAM,EAAE1B,KAAK2B,OAAO,CAAC,OAAO,OAAO;YACxCb,UAAUA;YACVd,MAAMA;YACN4B,YAAW;;;;;;;;;;;AAKrB,EAAC"}