@payloadcms/ui 4.0.0-internal.77191e5 → 4.0.0-internal.7b53b6d

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 (2113) hide show
  1. package/dist/css/app.css +3 -3
  2. package/dist/css/colors.css +73 -9
  3. package/dist/css/forms.css +0 -2
  4. package/dist/css/preflight.css +21 -2
  5. package/dist/css/spacing.css +1 -10
  6. package/dist/css/typography.css +160 -63
  7. package/dist/css/utilities.css +1 -0
  8. package/dist/elements/APIKeyInput/index.css +2 -2
  9. package/dist/elements/APIKeyInput/index.js +22 -23
  10. package/dist/elements/APIKeyInput/index.js.map +1 -1
  11. package/dist/elements/AddNewRelation/index.css +0 -4
  12. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  13. package/dist/elements/AddNewRelation/index.js +24 -21
  14. package/dist/elements/AddNewRelation/index.js.map +1 -1
  15. package/dist/elements/AppHeader/index.css +8 -0
  16. package/dist/elements/AppHeader/index.d.ts +1 -8
  17. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  18. package/dist/elements/AppHeader/index.js +20 -21
  19. package/dist/elements/AppHeader/index.js.map +1 -1
  20. package/dist/elements/ArrayAction/index.d.ts +1 -0
  21. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  22. package/dist/elements/ArrayAction/index.js +52 -40
  23. package/dist/elements/ArrayAction/index.js.map +1 -1
  24. package/dist/elements/Autosave/index.d.ts.map +1 -1
  25. package/dist/elements/Autosave/index.js +242 -139
  26. package/dist/elements/Autosave/index.js.map +1 -1
  27. package/dist/elements/Banner/index.css +3 -4
  28. package/dist/elements/BranchSelector/NewBranchModal/index.css +46 -0
  29. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts +12 -0
  30. package/dist/elements/BranchSelector/NewBranchModal/index.d.ts.map +1 -0
  31. package/dist/elements/BranchSelector/NewBranchModal/index.js +174 -0
  32. package/dist/elements/BranchSelector/NewBranchModal/index.js.map +1 -0
  33. package/dist/elements/BranchSelector/index.css +172 -0
  34. package/dist/elements/BranchSelector/index.d.ts +13 -0
  35. package/dist/elements/BranchSelector/index.d.ts.map +1 -0
  36. package/dist/elements/BranchSelector/index.js +336 -0
  37. package/dist/elements/BranchSelector/index.js.map +1 -0
  38. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  39. package/dist/elements/BulkUpload/ActionsBar/index.js +12 -10
  40. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  41. package/dist/elements/BulkUpload/AddFilesView/index.css +5 -0
  42. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  43. package/dist/elements/BulkUpload/AddFilesView/index.js +49 -8
  44. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  45. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  46. package/dist/elements/BulkUpload/AddingFilesView/index.js +25 -20
  47. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  49. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  50. package/dist/elements/BulkUpload/EditMany/index.css +4 -5
  51. package/dist/elements/BulkUpload/EditMany/index.js +29 -21
  52. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  53. package/dist/elements/BulkUpload/FileSidebar/index.css +0 -1
  54. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  55. package/dist/elements/BulkUpload/FileSidebar/index.js +29 -36
  56. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  57. package/dist/elements/BulkUpload/FormsManager/index.d.ts +2 -1
  58. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  59. package/dist/elements/BulkUpload/FormsManager/index.js +180 -94
  60. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  61. package/dist/elements/BulkUpload/index.js +63 -23
  62. package/dist/elements/BulkUpload/index.js.map +1 -1
  63. package/dist/elements/BulkUpload/useUploadCollectionOptions.d.ts +6 -0
  64. package/dist/elements/BulkUpload/useUploadCollectionOptions.d.ts.map +1 -0
  65. package/dist/elements/BulkUpload/useUploadCollectionOptions.js +74 -0
  66. package/dist/elements/BulkUpload/useUploadCollectionOptions.js.map +1 -0
  67. package/dist/elements/Button/index.css +34 -4
  68. package/dist/elements/Button/index.d.ts.map +1 -1
  69. package/dist/elements/Button/index.js +13 -1
  70. package/dist/elements/Button/index.js.map +1 -1
  71. package/dist/elements/Button/types.d.ts +9 -3
  72. package/dist/elements/Button/types.d.ts.map +1 -1
  73. package/dist/elements/Button/types.js.map +1 -1
  74. package/dist/elements/Card/index.css +7 -8
  75. package/dist/elements/CardGrid/index.css +19 -0
  76. package/dist/elements/CardGrid/index.d.ts +13 -0
  77. package/dist/elements/CardGrid/index.d.ts.map +1 -0
  78. package/dist/elements/CardGrid/index.js +23 -0
  79. package/dist/elements/CardGrid/index.js.map +1 -0
  80. package/dist/elements/ChangeSummary/index.css +18 -0
  81. package/dist/elements/ChangeSummary/index.d.ts +29 -0
  82. package/dist/elements/ChangeSummary/index.d.ts.map +1 -0
  83. package/dist/elements/ChangeSummary/index.js +147 -0
  84. package/dist/elements/ChangeSummary/index.js.map +1 -0
  85. package/dist/elements/Chip/index.css +0 -1
  86. package/dist/elements/Chip/index.js.map +1 -1
  87. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  88. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  89. package/dist/elements/ClipboardAction/index.js +213 -87
  90. package/dist/elements/ClipboardAction/index.js.map +1 -1
  91. package/dist/elements/CloseModalOnRouteChange/index.d.ts.map +1 -1
  92. package/dist/elements/CloseModalOnRouteChange/index.js +27 -19
  93. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  94. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  95. package/dist/elements/CodeEditor/CodeEditor.js +99 -55
  96. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  97. package/dist/elements/CollapseAllToggle/index.d.ts +3 -0
  98. package/dist/elements/CollapseAllToggle/index.d.ts.map +1 -1
  99. package/dist/elements/CollapseAllToggle/index.js +53 -24
  100. package/dist/elements/CollapseAllToggle/index.js.map +1 -1
  101. package/dist/elements/Collapsible/index.css +20 -6
  102. package/dist/elements/Collapsible/index.d.ts +2 -0
  103. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  104. package/dist/elements/Collapsible/index.js +84 -55
  105. package/dist/elements/Collapsible/index.js.map +1 -1
  106. package/dist/elements/Collapsible/provider.js +37 -14
  107. package/dist/elements/Collapsible/provider.js.map +1 -1
  108. package/dist/elements/ColumnSelection/Popup.css +19 -12
  109. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  110. package/dist/elements/ColumnSelection/Popup.js +33 -17
  111. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  112. package/dist/elements/ColumnSelection/index.d.ts.map +1 -1
  113. package/dist/elements/ColumnSelection/index.js +59 -55
  114. package/dist/elements/ColumnSelection/index.js.map +1 -1
  115. package/dist/elements/Combobox/index.css +111 -28
  116. package/dist/elements/Combobox/index.d.ts +20 -0
  117. package/dist/elements/Combobox/index.d.ts.map +1 -1
  118. package/dist/elements/Combobox/index.js +65 -21
  119. package/dist/elements/Combobox/index.js.map +1 -1
  120. package/dist/elements/CommandPalette/index.css +11 -8
  121. package/dist/elements/ConfirmationModal/index.d.ts +3 -0
  122. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  123. package/dist/elements/ConfirmationModal/index.js +2 -0
  124. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  125. package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
  126. package/dist/elements/CopyLocaleData/index.js +1 -0
  127. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  128. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  129. package/dist/elements/CopyToClipboard/index.js +62 -54
  130. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  131. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  132. package/dist/elements/CreateDocumentButton/index.js +59 -33
  133. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  134. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  135. package/dist/elements/DatePicker/DatePicker.js +192 -85
  136. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  137. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts +8 -0
  138. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts.map +1 -0
  139. package/dist/elements/DatePicker/hasAmbiguousYearInput.js +37 -0
  140. package/dist/elements/DatePicker/hasAmbiguousYearInput.js.map +1 -0
  141. package/dist/elements/DatePicker/index.css +72 -42
  142. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts +18 -0
  143. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts.map +1 -0
  144. package/dist/elements/DatePicker/useDatePickerKeyboard.js +212 -0
  145. package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -0
  146. package/dist/elements/DefaultListViewTabs/index.css +4 -0
  147. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  148. package/dist/elements/DefaultListViewTabs/index.js +56 -44
  149. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  150. package/dist/elements/DelayedSpinner/index.js.map +1 -1
  151. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  152. package/dist/elements/DeleteDocument/index.js +10 -5
  153. package/dist/elements/DeleteDocument/index.js.map +1 -1
  154. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  155. package/dist/elements/DeleteMany/index.js +4 -1
  156. package/dist/elements/DeleteMany/index.js.map +1 -1
  157. package/dist/elements/Dialog/DialogCancel/index.js.map +1 -1
  158. package/dist/elements/Dialog/DialogConfirm/index.js.map +1 -1
  159. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  160. package/dist/elements/Dialog/DialogModal/index.d.ts +1 -1
  161. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  162. package/dist/elements/Dialog/DialogModal/index.js +40 -28
  163. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  164. package/dist/elements/Dialog/DialogTitle/index.css +1 -1
  165. package/dist/elements/Dialog/index.css +1 -2
  166. package/dist/elements/DocumentCard/index.css +73 -0
  167. package/dist/elements/DocumentCard/index.d.ts +20 -0
  168. package/dist/elements/DocumentCard/index.d.ts.map +1 -0
  169. package/dist/elements/DocumentCard/index.js +184 -0
  170. package/dist/elements/DocumentCard/index.js.map +1 -0
  171. package/dist/elements/DocumentControls/index.css +14 -15
  172. package/dist/elements/DocumentControls/index.d.ts +4 -2
  173. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  174. package/dist/elements/DocumentControls/index.js +2 -1
  175. package/dist/elements/DocumentControls/index.js.map +1 -1
  176. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  177. package/dist/elements/DocumentDrawer/DrawerContent.js +15 -9
  178. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  179. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +4 -7
  180. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +2 -2
  181. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  182. package/dist/elements/DocumentDrawer/index.d.ts.map +1 -1
  183. package/dist/elements/DocumentDrawer/index.js +3 -1
  184. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  185. package/dist/elements/DocumentDrawer/types.d.ts +2 -6
  186. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  187. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  188. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.css +40 -0
  189. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.d.ts +4 -0
  190. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.d.ts.map +1 -0
  191. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.js +88 -0
  192. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.js.map +1 -0
  193. package/dist/elements/DocumentFields/index.css +7 -7
  194. package/dist/elements/DocumentFields/index.js +125 -64
  195. package/dist/elements/DocumentFields/index.js.map +1 -1
  196. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  197. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  198. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +80 -34
  199. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  200. package/dist/elements/DocumentHeader/Tabs/Tab/index.css +9 -3
  201. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  202. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +0 -1
  203. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  204. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  205. package/dist/elements/DocumentHeader/Tabs/index.js +10 -8
  206. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  207. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.css +12 -0
  208. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts +12 -0
  209. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.d.ts.map +1 -0
  210. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js +61 -0
  211. package/dist/elements/DocumentHeader/Tabs/tabs/BranchChangesPill/index.js.map +1 -0
  212. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts +14 -0
  213. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.d.ts.map +1 -0
  214. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js +28 -0
  215. package/dist/elements/DocumentHeader/Tabs/tabs/BranchSettingsTab/index.js.map +1 -0
  216. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  217. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  218. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +32 -1
  219. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  220. package/dist/elements/DocumentHeader/index.css +1 -1
  221. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  222. package/dist/elements/DocumentLocked/index.js +1 -0
  223. package/dist/elements/DocumentLocked/index.js.map +1 -1
  224. package/dist/elements/DocumentStaleData/index.js.map +1 -1
  225. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  226. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js +2 -0
  227. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js.map +1 -1
  228. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  229. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +10 -7
  230. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  231. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +3 -1
  232. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  233. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  234. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  235. package/dist/elements/DraggableSortable/index.js +105 -168
  236. package/dist/elements/DraggableSortable/index.js.map +1 -1
  237. package/dist/elements/DraggableSortable/types.d.ts +2 -0
  238. package/dist/elements/DraggableSortable/types.d.ts.map +1 -1
  239. package/dist/elements/DraggableSortable/types.js.map +1 -1
  240. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  241. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +11 -8
  242. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  243. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +1 -0
  244. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  245. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  246. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts +14 -0
  247. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts.map +1 -0
  248. package/dist/elements/DraggableSortable/useRowAccessibility.js +99 -0
  249. package/dist/elements/DraggableSortable/useRowAccessibility.js.map +1 -0
  250. package/dist/elements/Drawer/index.css +4 -5
  251. package/dist/elements/Drawer/index.d.ts.map +1 -1
  252. package/dist/elements/Drawer/index.js +141 -82
  253. package/dist/elements/Drawer/index.js.map +1 -1
  254. package/dist/elements/Drawer/types.d.ts +2 -2
  255. package/dist/elements/Drawer/types.d.ts.map +1 -1
  256. package/dist/elements/Drawer/types.js.map +1 -1
  257. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  258. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  259. package/dist/elements/DrawerHeader/index.js.map +1 -1
  260. package/dist/elements/Dropzone/index.d.ts +2 -1
  261. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  262. package/dist/elements/Dropzone/index.js +9 -10
  263. package/dist/elements/Dropzone/index.js.map +1 -1
  264. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +177 -62
  265. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  266. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  267. package/dist/elements/DuplicateDocument/index.js +6 -1
  268. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  269. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  270. package/dist/elements/EditMany/DrawerContent.js +5 -2
  271. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  272. package/dist/elements/EditMany/index.css +4 -5
  273. package/dist/elements/EditMany/index.js.map +1 -1
  274. package/dist/elements/EditUpload/index.css +4 -4
  275. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  276. package/dist/elements/EditUpload/index.js +66 -14
  277. package/dist/elements/EditUpload/index.js.map +1 -1
  278. package/dist/elements/EditUpload/library.css +6 -13
  279. package/dist/elements/ErrorPill/index.css +0 -1
  280. package/dist/elements/FieldDiffContainer/index.css +0 -1
  281. package/dist/elements/FieldDiffContainer/index.d.ts.map +1 -1
  282. package/dist/elements/FieldDiffContainer/index.js +7 -1
  283. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  284. package/dist/elements/FieldDiffLabel/index.css +4 -5
  285. package/dist/elements/FieldDiffLabel/index.d.ts +1 -0
  286. package/dist/elements/FieldDiffLabel/index.d.ts.map +1 -1
  287. package/dist/elements/FieldDiffLabel/index.js +2 -0
  288. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  289. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  290. package/dist/elements/FieldSelect/index.js +55 -29
  291. package/dist/elements/FieldSelect/index.js.map +1 -1
  292. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts +5 -1
  293. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  294. package/dist/elements/FieldSelect/reduceFieldOptions.js +24 -4
  295. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  296. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  297. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  298. package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -12
  299. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  300. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  301. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  302. package/dist/elements/FileDetails/FileMeta/index.js +41 -21
  303. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  304. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +1 -1
  305. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  306. package/dist/elements/FileDetails/StaticFileDetails/index.js +63 -33
  307. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  308. package/dist/elements/FileDetails/index.d.ts +1 -1
  309. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  310. package/dist/elements/FileDetails/index.js.map +1 -1
  311. package/dist/elements/FileManager/FilePreview/index.css +2 -3
  312. package/dist/elements/FileManager/FilePreview/index.js +4 -4
  313. package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
  314. package/dist/elements/FileManager/FileToolbar/index.css +2 -3
  315. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  316. package/dist/elements/FileManager/FileToolbar/index.js +1 -0
  317. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  318. package/dist/elements/FileManager/index.css +0 -1
  319. package/dist/elements/FileManager/index.d.ts.map +1 -1
  320. package/dist/elements/FileManager/index.js +212 -178
  321. package/dist/elements/FileManager/index.js.map +1 -1
  322. package/dist/elements/FilterTrigger/index.d.ts +5 -1
  323. package/dist/elements/FilterTrigger/index.d.ts.map +1 -1
  324. package/dist/elements/FilterTrigger/index.js +80 -38
  325. package/dist/elements/FilterTrigger/index.js.map +1 -1
  326. package/dist/elements/FormHeader/index.css +0 -2
  327. package/dist/elements/FullscreenModal/index.d.ts.map +1 -1
  328. package/dist/elements/FullscreenModal/index.js +1 -1
  329. package/dist/elements/FullscreenModal/index.js.map +1 -1
  330. package/dist/elements/GenerateConfirmation/index.js +21 -21
  331. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  332. package/dist/elements/GroupBy/Popup.css +3 -6
  333. package/dist/elements/GroupBy/Popup.d.ts.map +1 -1
  334. package/dist/elements/GroupBy/Popup.js +74 -45
  335. package/dist/elements/GroupBy/Popup.js.map +1 -1
  336. package/dist/elements/GroupBy/index.d.ts.map +1 -1
  337. package/dist/elements/GroupBy/index.js +120 -64
  338. package/dist/elements/GroupBy/index.js.map +1 -1
  339. package/dist/elements/HTMLDiff/colors.css +7 -0
  340. package/dist/elements/HTMLDiff/index.css +0 -1
  341. package/dist/elements/HTMLDiff/index.d.ts +3 -1
  342. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  343. package/dist/elements/HTMLDiff/index.js +9 -3
  344. package/dist/elements/HTMLDiff/index.js.map +1 -1
  345. package/dist/elements/Hierarchy/ActionsMenu/index.css +18 -0
  346. package/dist/elements/Hierarchy/ActionsMenu/index.d.ts +35 -0
  347. package/dist/elements/Hierarchy/ActionsMenu/index.d.ts.map +1 -0
  348. package/dist/elements/Hierarchy/ActionsMenu/index.js +99 -0
  349. package/dist/elements/Hierarchy/ActionsMenu/index.js.map +1 -0
  350. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +3 -0
  351. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
  352. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +63 -48
  353. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  354. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
  355. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +76 -56
  356. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  357. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  358. package/dist/elements/Hierarchy/ColumnBrowser/index.js +18 -58
  359. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  360. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +2 -0
  361. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  362. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  363. package/dist/elements/Hierarchy/DocHeaderButton/index.css +12 -0
  364. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
  365. package/dist/elements/Hierarchy/DocHeaderButton/index.js +98 -15
  366. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  367. package/dist/elements/Hierarchy/EditButton/index.d.ts +8 -0
  368. package/dist/elements/Hierarchy/EditButton/index.d.ts.map +1 -0
  369. package/dist/elements/Hierarchy/EditButton/index.js +93 -0
  370. package/dist/elements/Hierarchy/EditButton/index.js.map +1 -0
  371. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  372. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +4 -1
  373. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  374. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts +9 -0
  375. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts.map +1 -0
  376. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js +41 -0
  377. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js.map +1 -0
  378. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  379. package/dist/elements/Hierarchy/Field/index.client.js +120 -105
  380. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  381. package/dist/elements/Hierarchy/Field/index.css +0 -1
  382. package/dist/elements/Hierarchy/Field/index.server.d.ts +3 -2
  383. package/dist/elements/Hierarchy/Field/index.server.d.ts.map +1 -1
  384. package/dist/elements/Hierarchy/Field/index.server.js.map +1 -1
  385. package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -1
  386. package/dist/elements/Hierarchy/Modal/Footer/index.css +33 -0
  387. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +21 -0
  388. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +1 -0
  389. package/dist/elements/Hierarchy/Modal/Footer/index.js +122 -0
  390. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -0
  391. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +9 -3
  392. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  393. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +40 -12
  394. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  395. package/dist/elements/Hierarchy/Modal/index.css +0 -56
  396. package/dist/elements/Hierarchy/Modal/index.d.ts +5 -3
  397. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  398. package/dist/elements/Hierarchy/Modal/index.js +93 -102
  399. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  400. package/dist/elements/Hierarchy/Modal/selection.d.ts +12 -0
  401. package/dist/elements/Hierarchy/Modal/selection.d.ts.map +1 -0
  402. package/dist/elements/Hierarchy/Modal/selection.js +40 -0
  403. package/dist/elements/Hierarchy/Modal/selection.js.map +1 -0
  404. package/dist/elements/Hierarchy/Modal/types.d.ts +4 -0
  405. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
  406. package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
  407. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  408. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js +1 -1
  409. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -1
  410. package/dist/elements/Hierarchy/MoveMany/index.d.ts +3 -3
  411. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  412. package/dist/elements/Hierarchy/MoveMany/index.js +82 -92
  413. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  414. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js +25 -18
  415. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -1
  416. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -1
  417. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
  418. package/dist/elements/Hierarchy/Search/index.js +17 -7
  419. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  420. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  421. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +4 -1
  422. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  423. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  424. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +7 -1
  425. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  426. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  427. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  428. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  429. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +2 -1
  430. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  431. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +30 -28
  432. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  433. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  434. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +6 -2
  435. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  436. package/dist/elements/Hierarchy/Tree/index.css +3 -1
  437. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  438. package/dist/elements/Hierarchy/Tree/index.js +51 -40
  439. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  440. package/dist/elements/Hierarchy/Tree/types.d.ts +2 -0
  441. package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -1
  442. package/dist/elements/Hierarchy/Tree/types.js.map +1 -1
  443. package/dist/elements/Hierarchy/Tree/useChildren.d.ts +4 -0
  444. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  445. package/dist/elements/Hierarchy/Tree/useChildren.js +62 -24
  446. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  447. package/dist/elements/HierarchyTypeField/index.d.ts.map +1 -1
  448. package/dist/elements/HierarchyTypeField/index.js.map +1 -1
  449. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  450. package/dist/elements/HydratePreferences/index.d.ts +8 -0
  451. package/dist/elements/HydratePreferences/index.d.ts.map +1 -0
  452. package/dist/elements/HydratePreferences/index.js +34 -0
  453. package/dist/elements/HydratePreferences/index.js.map +1 -0
  454. package/dist/elements/IDLabel/index.css +5 -7
  455. package/dist/elements/IDLabel/index.js.map +1 -1
  456. package/dist/elements/IframeLoader/index.d.ts.map +1 -1
  457. package/dist/elements/IframeLoader/index.js +34 -6
  458. package/dist/elements/IframeLoader/index.js.map +1 -1
  459. package/dist/elements/InputStepper/index.js.map +1 -1
  460. package/dist/elements/ItemsDrawer/ItemSearch/index.css +0 -1
  461. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  462. package/dist/elements/ItemsDrawer/index.d.ts.map +1 -1
  463. package/dist/elements/ItemsDrawer/index.js +186 -83
  464. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  465. package/dist/elements/LLMInstructionsCell/index.css +11 -0
  466. package/dist/elements/LLMInstructionsCell/index.d.ts +5 -0
  467. package/dist/elements/LLMInstructionsCell/index.d.ts.map +1 -0
  468. package/dist/elements/LLMInstructionsCell/index.js +24 -0
  469. package/dist/elements/LLMInstructionsCell/index.js.map +1 -0
  470. package/dist/elements/LLMInstructionsDescription/index.css +79 -0
  471. package/dist/elements/LLMInstructionsDescription/index.d.ts +6 -0
  472. package/dist/elements/LLMInstructionsDescription/index.d.ts.map +1 -0
  473. package/dist/elements/LLMInstructionsDescription/index.js +40 -0
  474. package/dist/elements/LLMInstructionsDescription/index.js.map +1 -0
  475. package/dist/elements/LLMInstructionsMenuItem/index.d.ts +5 -0
  476. package/dist/elements/LLMInstructionsMenuItem/index.d.ts.map +1 -0
  477. package/dist/elements/LLMInstructionsMenuItem/index.js +46 -0
  478. package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -0
  479. package/dist/elements/LayoutToggle/index.d.ts +8 -0
  480. package/dist/elements/LayoutToggle/index.d.ts.map +1 -0
  481. package/dist/elements/LayoutToggle/index.js +56 -0
  482. package/dist/elements/LayoutToggle/index.js.map +1 -0
  483. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  484. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +1 -1
  485. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  486. package/dist/elements/Link/index.d.ts.map +1 -1
  487. package/dist/elements/Link/index.js +4 -1
  488. package/dist/elements/Link/index.js.map +1 -1
  489. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -1
  490. package/dist/elements/ListControls/index.css +1 -0
  491. package/dist/elements/ListControls/index.d.ts.map +1 -1
  492. package/dist/elements/ListControls/index.js +13 -6
  493. package/dist/elements/ListControls/index.js.map +1 -1
  494. package/dist/elements/ListControls/types.d.ts +2 -10
  495. package/dist/elements/ListControls/types.d.ts.map +1 -1
  496. package/dist/elements/ListControls/types.js.map +1 -1
  497. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  498. package/dist/elements/ListDrawer/DrawerContent.js +21 -16
  499. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  500. package/dist/elements/ListDrawer/Provider.d.ts +3 -8
  501. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  502. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  503. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  504. package/dist/elements/ListDrawer/index.js +1 -1
  505. package/dist/elements/ListDrawer/index.js.map +1 -1
  506. package/dist/elements/ListDrawer/types.d.ts +1 -0
  507. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  508. package/dist/elements/ListDrawer/types.js.map +1 -1
  509. package/dist/elements/ListGroupByButton/index.js.map +1 -1
  510. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  511. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +24 -20
  512. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  513. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts +6 -0
  514. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts.map +1 -0
  515. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js +61 -0
  516. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -0
  517. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +1 -1
  518. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  519. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +1 -0
  520. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +1 -1
  521. package/dist/elements/ListHeader/DrawerTitleActions/index.js +1 -0
  522. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  523. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  524. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +11 -12
  525. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  526. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  527. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +7 -3
  528. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  529. package/dist/elements/ListHeader/index.css +4 -5
  530. package/dist/elements/ListSelection/index.js.map +1 -1
  531. package/dist/elements/ListWhereBuilder/index.js.map +1 -1
  532. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  533. package/dist/elements/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
  534. package/dist/elements/LivePreview/Toolbar/Controls/index.js +3 -0
  535. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  536. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  537. package/dist/elements/LivePreview/Toolbar/index.d.ts.map +1 -1
  538. package/dist/elements/LivePreview/Toolbar/index.js +13 -7
  539. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  540. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  541. package/dist/elements/LivePreview/Window/index.css +7 -1
  542. package/dist/elements/LivePreview/Window/index.d.ts.map +1 -1
  543. package/dist/elements/LivePreview/Window/index.js +6 -1
  544. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  545. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  546. package/dist/elements/Loading/index.d.ts.map +1 -1
  547. package/dist/elements/Loading/index.js +63 -18
  548. package/dist/elements/Loading/index.js.map +1 -1
  549. package/dist/elements/LoadingOverlay/index.js +93 -49
  550. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  551. package/dist/elements/Localizer/index.d.ts +3 -6
  552. package/dist/elements/Localizer/index.d.ts.map +1 -1
  553. package/dist/elements/Localizer/index.js +134 -101
  554. package/dist/elements/Localizer/index.js.map +1 -1
  555. package/dist/elements/Locked/index.js +54 -37
  556. package/dist/elements/Locked/index.js.map +1 -1
  557. package/dist/elements/Logout/index.js.map +1 -1
  558. package/dist/elements/MergeBranch/MergeBranchForm/index.d.ts +23 -0
  559. package/dist/elements/MergeBranch/MergeBranchForm/index.d.ts.map +1 -0
  560. package/dist/elements/MergeBranch/MergeBranchForm/index.js +155 -0
  561. package/dist/elements/MergeBranch/MergeBranchForm/index.js.map +1 -0
  562. package/dist/elements/MergeBranch/MergeProgress/index.d.ts +9 -0
  563. package/dist/elements/MergeBranch/MergeProgress/index.d.ts.map +1 -0
  564. package/dist/elements/MergeBranch/MergeProgress/index.js +114 -0
  565. package/dist/elements/MergeBranch/MergeProgress/index.js.map +1 -0
  566. package/dist/elements/MergeBranch/context.d.ts +67 -0
  567. package/dist/elements/MergeBranch/context.d.ts.map +1 -0
  568. package/dist/elements/MergeBranch/context.js +85 -0
  569. package/dist/elements/MergeBranch/context.js.map +1 -0
  570. package/dist/elements/MergeBranch/index.css +136 -0
  571. package/dist/elements/MergeBranch/index.d.ts +4 -0
  572. package/dist/elements/MergeBranch/index.d.ts.map +1 -0
  573. package/dist/elements/MergeBranch/index.js +350 -0
  574. package/dist/elements/MergeBranch/index.js.map +1 -0
  575. package/dist/elements/MergeBranch/provider.d.ts +12 -0
  576. package/dist/elements/MergeBranch/provider.d.ts.map +1 -0
  577. package/dist/elements/MergeBranch/provider.js +19 -0
  578. package/dist/elements/MergeBranch/provider.js.map +1 -0
  579. package/dist/elements/MergeBranch/readMergeStream.d.ts +14 -0
  580. package/dist/elements/MergeBranch/readMergeStream.d.ts.map +1 -0
  581. package/dist/elements/MergeBranch/readMergeStream.js +52 -0
  582. package/dist/elements/MergeBranch/readMergeStream.js.map +1 -0
  583. package/dist/elements/MergeBranch/slug.d.ts +9 -0
  584. package/dist/elements/MergeBranch/slug.d.ts.map +1 -0
  585. package/dist/elements/MergeBranch/slug.js +8 -0
  586. package/dist/elements/MergeBranch/slug.js.map +1 -0
  587. package/dist/elements/MergeBranch/types.d.ts +3 -0
  588. package/dist/elements/MergeBranch/types.d.ts.map +1 -0
  589. package/dist/elements/MergeBranch/types.js +2 -0
  590. package/dist/elements/MergeBranch/types.js.map +1 -0
  591. package/dist/elements/MergeBranch/useBranchMergeSummary.d.ts +10 -0
  592. package/dist/elements/MergeBranch/useBranchMergeSummary.d.ts.map +1 -0
  593. package/dist/elements/MergeBranch/useBranchMergeSummary.js +48 -0
  594. package/dist/elements/MergeBranch/useBranchMergeSummary.js.map +1 -0
  595. package/dist/elements/MergeBranch/useMergeBranchAction.d.ts +14 -0
  596. package/dist/elements/MergeBranch/useMergeBranchAction.d.ts.map +1 -0
  597. package/dist/elements/MergeBranch/useMergeBranchAction.js +112 -0
  598. package/dist/elements/MergeBranch/useMergeBranchAction.js.map +1 -0
  599. package/dist/elements/MergeBranch/useScheduleBranchMerge.d.ts +14 -0
  600. package/dist/elements/MergeBranch/useScheduleBranchMerge.d.ts.map +1 -0
  601. package/dist/elements/MergeBranch/useScheduleBranchMerge.js +84 -0
  602. package/dist/elements/MergeBranch/useScheduleBranchMerge.js.map +1 -0
  603. package/dist/elements/MergeBranch/useUpcomingBranchMerges.d.ts +12 -0
  604. package/dist/elements/MergeBranch/useUpcomingBranchMerges.d.ts.map +1 -0
  605. package/dist/elements/MergeBranch/useUpcomingBranchMerges.js +89 -0
  606. package/dist/elements/MergeBranch/useUpcomingBranchMerges.js.map +1 -0
  607. package/dist/elements/MiniCarousel/index.d.ts +1 -1
  608. package/dist/elements/MiniCarousel/index.d.ts.map +1 -1
  609. package/dist/elements/MiniCarousel/index.js +106 -42
  610. package/dist/elements/MiniCarousel/index.js.map +1 -1
  611. package/dist/elements/Modal/index.d.ts +5 -1
  612. package/dist/elements/Modal/index.d.ts.map +1 -1
  613. package/dist/elements/Modal/index.js +81 -1
  614. package/dist/elements/Modal/index.js.map +1 -1
  615. package/dist/elements/Nav/NavSidebarToggle/index.d.ts.map +1 -1
  616. package/dist/elements/Nav/NavSidebarToggle/index.js +31 -37
  617. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  618. package/dist/elements/Nav/NavWrapper/index.d.ts +1 -0
  619. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  620. package/dist/elements/Nav/NavWrapper/index.js +22 -16
  621. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  622. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  623. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -0
  624. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  625. package/dist/elements/Nav/SidebarTabs/TabError/index.js.map +1 -1
  626. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  627. package/dist/elements/Nav/SidebarTabs/index.client.js +40 -22
  628. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  629. package/dist/elements/Nav/SidebarTabs/index.css +4 -4
  630. package/dist/elements/Nav/context.d.ts +2 -1
  631. package/dist/elements/Nav/context.d.ts.map +1 -1
  632. package/dist/elements/Nav/context.js +36 -13
  633. package/dist/elements/Nav/context.js.map +1 -1
  634. package/dist/elements/Nav/getNavPrefs.d.ts +6 -0
  635. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -1
  636. package/dist/elements/Nav/getNavPrefs.js +14 -46
  637. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  638. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  639. package/dist/elements/Nav/index.client.js +1 -10
  640. package/dist/elements/Nav/index.client.js.map +1 -1
  641. package/dist/elements/Nav/index.css +60 -33
  642. package/dist/elements/Nav/index.d.ts +4 -0
  643. package/dist/elements/Nav/index.d.ts.map +1 -1
  644. package/dist/elements/Nav/index.js +15 -1
  645. package/dist/elements/Nav/index.js.map +1 -1
  646. package/dist/elements/NavGroup/index.css +57 -20
  647. package/dist/elements/NavGroup/index.d.ts.map +1 -1
  648. package/dist/elements/NavGroup/index.js +31 -35
  649. package/dist/elements/NavGroup/index.js.map +1 -1
  650. package/dist/elements/NoListResults/index.css +3 -3
  651. package/dist/elements/NoListResults/index.js +1 -1
  652. package/dist/elements/NoListResults/index.js.map +1 -1
  653. package/dist/elements/PageControls/GroupByPageControls.d.ts +1 -0
  654. package/dist/elements/PageControls/GroupByPageControls.d.ts.map +1 -1
  655. package/dist/elements/PageControls/GroupByPageControls.js +9 -6
  656. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  657. package/dist/elements/PageControls/index.css +4 -1
  658. package/dist/elements/PageControls/index.d.ts +3 -0
  659. package/dist/elements/PageControls/index.d.ts.map +1 -1
  660. package/dist/elements/PageControls/index.js +57 -28
  661. package/dist/elements/PageControls/index.js.map +1 -1
  662. package/dist/elements/Pagination/ClickableArrow/index.d.ts +1 -0
  663. package/dist/elements/Pagination/ClickableArrow/index.d.ts.map +1 -1
  664. package/dist/elements/Pagination/ClickableArrow/index.js +45 -10
  665. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  666. package/dist/elements/Pagination/SimplePagination/index.css +0 -1
  667. package/dist/elements/Pagination/SimplePagination/index.d.ts +1 -0
  668. package/dist/elements/Pagination/SimplePagination/index.d.ts.map +1 -1
  669. package/dist/elements/Pagination/SimplePagination/index.js +14 -8
  670. package/dist/elements/Pagination/SimplePagination/index.js.map +1 -1
  671. package/dist/elements/Pagination/index.css +0 -2
  672. package/dist/elements/Pagination/index.d.ts +1 -0
  673. package/dist/elements/Pagination/index.d.ts.map +1 -1
  674. package/dist/elements/Pagination/index.js +60 -42
  675. package/dist/elements/Pagination/index.js.map +1 -1
  676. package/dist/elements/PerPage/index.css +0 -1
  677. package/dist/elements/PerPage/index.d.ts +1 -0
  678. package/dist/elements/PerPage/index.d.ts.map +1 -1
  679. package/dist/elements/PerPage/index.js +24 -15
  680. package/dist/elements/PerPage/index.js.map +1 -1
  681. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  682. package/dist/elements/PermanentlyDeleteButton/index.js +4 -1
  683. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  684. package/dist/elements/Pill/index.css +0 -1
  685. package/dist/elements/Pill/index.js.map +1 -1
  686. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.css +53 -0
  687. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.d.ts +13 -0
  688. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.d.ts.map +1 -0
  689. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.js +44 -0
  690. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.js.map +1 -0
  691. package/dist/elements/Popup/PopupButtonList/index.css +31 -9
  692. package/dist/elements/Popup/PopupButtonList/index.d.ts +10 -0
  693. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  694. package/dist/elements/Popup/PopupButtonList/index.js +55 -6
  695. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  696. package/dist/elements/Popup/PopupGroupLabel/index.css +0 -1
  697. package/dist/elements/Popup/PopupTrigger/index.d.ts +9 -2
  698. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  699. package/dist/elements/Popup/PopupTrigger/index.js +58 -6
  700. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  701. package/dist/elements/Popup/SubmenuScope.d.ts +19 -0
  702. package/dist/elements/Popup/SubmenuScope.d.ts.map +1 -0
  703. package/dist/elements/Popup/SubmenuScope.js +45 -0
  704. package/dist/elements/Popup/SubmenuScope.js.map +1 -0
  705. package/dist/elements/Popup/index.css +24 -2
  706. package/dist/elements/Popup/index.d.ts +9 -27
  707. package/dist/elements/Popup/index.d.ts.map +1 -1
  708. package/dist/elements/Popup/index.js +249 -90
  709. package/dist/elements/Popup/index.js.map +1 -1
  710. package/dist/elements/Popup/useSubmenuPointerIntent.d.ts +25 -0
  711. package/dist/elements/Popup/useSubmenuPointerIntent.d.ts.map +1 -0
  712. package/dist/elements/Popup/useSubmenuPointerIntent.js +83 -0
  713. package/dist/elements/Popup/useSubmenuPointerIntent.js.map +1 -0
  714. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  715. package/dist/elements/PreviewButton/index.js +4 -0
  716. package/dist/elements/PreviewButton/index.js.map +1 -1
  717. package/dist/elements/PreviewSizes/index.d.ts +1 -1
  718. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  719. package/dist/elements/PreviewSizes/index.js +146 -75
  720. package/dist/elements/PreviewSizes/index.js.map +1 -1
  721. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  722. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +1 -0
  723. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  724. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  725. package/dist/elements/PublishButton/ScheduleDrawer/index.js +16 -8
  726. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  727. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  728. package/dist/elements/PublishButton/index.js +77 -8
  729. package/dist/elements/PublishButton/index.js.map +1 -1
  730. package/dist/elements/PublishButton/validateAllLocales.d.ts +12 -0
  731. package/dist/elements/PublishButton/validateAllLocales.d.ts.map +1 -0
  732. package/dist/elements/PublishButton/validateAllLocales.js +268 -0
  733. package/dist/elements/PublishButton/validateAllLocales.js.map +1 -0
  734. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  735. package/dist/elements/PublishMany/DrawerContent.js +5 -2
  736. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  737. package/dist/elements/PublishMany/index.js +32 -24
  738. package/dist/elements/PublishMany/index.js.map +1 -1
  739. package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
  740. package/dist/elements/QueryPresets/QueryPresetBar/index.js +4 -1
  741. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  742. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +3 -2
  743. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  744. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +194 -100
  745. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  746. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +3 -2
  747. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  748. package/dist/elements/QueryPresets/fields/GroupByField/index.js +78 -29
  749. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  750. package/dist/elements/QueryPresets/fields/Heading/index.css +0 -1
  751. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -1
  752. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +3 -2
  753. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  754. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  755. package/dist/elements/ReactSelect/ClearIndicator/index.css +5 -0
  756. package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
  757. package/dist/elements/ReactSelect/ClearIndicator/index.js +55 -20
  758. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  759. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -1
  760. package/dist/elements/ReactSelect/DefaultMenuPortal.js +2 -1
  761. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -1
  762. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +2 -4
  763. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  764. package/dist/elements/ReactSelect/DropdownIndicator/index.js +16 -21
  765. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  766. package/dist/elements/ReactSelect/MultiValue/context.d.ts +6 -0
  767. package/dist/elements/ReactSelect/MultiValue/context.d.ts.map +1 -0
  768. package/dist/elements/ReactSelect/MultiValue/context.js +5 -0
  769. package/dist/elements/ReactSelect/MultiValue/context.js.map +1 -0
  770. package/dist/elements/ReactSelect/MultiValue/index.css +5 -0
  771. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  772. package/dist/elements/ReactSelect/MultiValue/index.js +99 -35
  773. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  774. package/dist/elements/ReactSelect/MultiValueLabel/index.css +41 -2
  775. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts +5 -1
  776. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  777. package/dist/elements/ReactSelect/MultiValueLabel/index.js +49 -4
  778. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  779. package/dist/elements/ReactSelect/MultiValueRemove/index.css +30 -4
  780. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  781. package/dist/elements/ReactSelect/MultiValueRemove/index.js +101 -66
  782. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  783. package/dist/elements/ReactSelect/Option/index.d.ts +6 -0
  784. package/dist/elements/ReactSelect/Option/index.d.ts.map +1 -0
  785. package/dist/elements/ReactSelect/Option/index.js +30 -0
  786. package/dist/elements/ReactSelect/Option/index.js.map +1 -0
  787. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  788. package/dist/elements/ReactSelect/ValueContainer/index.js +23 -1
  789. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  790. package/dist/elements/ReactSelect/index.css +13 -5
  791. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  792. package/dist/elements/ReactSelect/index.js +12 -4
  793. package/dist/elements/ReactSelect/index.js.map +1 -1
  794. package/dist/elements/ReactSelect/types.d.ts +10 -1
  795. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  796. package/dist/elements/ReactSelect/types.js.map +1 -1
  797. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  798. package/dist/elements/RelationshipTable/AddNewButton.js +4 -0
  799. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  800. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  801. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  802. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  803. package/dist/elements/RelationshipTable/index.js +62 -58
  804. package/dist/elements/RelationshipTable/index.js.map +1 -1
  805. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  806. package/dist/elements/RenderTitle/index.css +9 -7
  807. package/dist/elements/RenderTitle/index.js.map +1 -1
  808. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  809. package/dist/elements/RestoreButton/index.js +4 -1
  810. package/dist/elements/RestoreButton/index.js.map +1 -1
  811. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  812. package/dist/elements/RestoreMany/index.js +4 -1
  813. package/dist/elements/RestoreMany/index.js.map +1 -1
  814. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  815. package/dist/elements/SaveDraftButton/index.js +20 -2
  816. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  817. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  818. package/dist/elements/SchedulePublishButton/index.js +118 -40
  819. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  820. package/dist/elements/Search/ListSearchFilter/index.d.ts +2 -1
  821. package/dist/elements/Search/ListSearchFilter/index.d.ts.map +1 -1
  822. package/dist/elements/Search/ListSearchFilter/index.js +33 -17
  823. package/dist/elements/Search/ListSearchFilter/index.js.map +1 -1
  824. package/dist/elements/Search/SearchInput/index.css +32 -4
  825. package/dist/elements/Search/SearchInput/index.d.ts +1 -0
  826. package/dist/elements/Search/SearchInput/index.d.ts.map +1 -1
  827. package/dist/elements/Search/SearchInput/index.js +24 -21
  828. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  829. package/dist/elements/SegmentedControl/index.css +52 -0
  830. package/dist/elements/SegmentedControl/index.d.ts +20 -0
  831. package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
  832. package/dist/elements/SegmentedControl/index.js +162 -0
  833. package/dist/elements/SegmentedControl/index.js.map +1 -0
  834. package/dist/elements/SelectAll/index.js.map +1 -1
  835. package/dist/elements/SelectRow/index.d.ts +1 -0
  836. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  837. package/dist/elements/SelectRow/index.js +50 -32
  838. package/dist/elements/SelectRow/index.js.map +1 -1
  839. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  840. package/dist/elements/SidebarRow/index.css +43 -2
  841. package/dist/elements/SidebarToggle/index.css +4 -2
  842. package/dist/elements/SidebarToggle/index.js.map +1 -1
  843. package/dist/elements/SkipToContent/index.css +21 -0
  844. package/dist/elements/SkipToContent/index.d.ts +4 -0
  845. package/dist/elements/SkipToContent/index.d.ts.map +1 -0
  846. package/dist/elements/SkipToContent/index.js +63 -0
  847. package/dist/elements/SkipToContent/index.js.map +1 -0
  848. package/dist/elements/SortColumn/index.css +50 -7
  849. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  850. package/dist/elements/SortColumn/index.js +63 -95
  851. package/dist/elements/SortColumn/index.js.map +1 -1
  852. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  853. package/dist/elements/SortHeader/index.js +18 -36
  854. package/dist/elements/SortHeader/index.js.map +1 -1
  855. package/dist/elements/SortRow/index.css +1 -3
  856. package/dist/elements/SortRow/index.d.ts.map +1 -1
  857. package/dist/elements/SortRow/index.js +16 -10
  858. package/dist/elements/SortRow/index.js.map +1 -1
  859. package/dist/elements/Spinner/index.css +0 -2
  860. package/dist/elements/Spinner/index.js.map +1 -1
  861. package/dist/elements/Status/index.css +3 -4
  862. package/dist/elements/Status/index.d.ts.map +1 -1
  863. package/dist/elements/Status/index.js +16 -3
  864. package/dist/elements/Status/index.js.map +1 -1
  865. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  866. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  867. package/dist/elements/StepNav/context.js.map +1 -1
  868. package/dist/elements/StepNav/index.css +21 -8
  869. package/dist/elements/StepNav/index.d.ts.map +1 -1
  870. package/dist/elements/StepNav/index.js +27 -24
  871. package/dist/elements/StepNav/index.js.map +1 -1
  872. package/dist/elements/StepNav/types.d.ts +2 -0
  873. package/dist/elements/StepNav/types.d.ts.map +1 -1
  874. package/dist/elements/StepNav/types.js.map +1 -1
  875. package/dist/elements/Switch/index.css +2 -3
  876. package/dist/elements/Switch/index.d.ts +1 -0
  877. package/dist/elements/Switch/index.d.ts.map +1 -1
  878. package/dist/elements/Switch/index.js +18 -16
  879. package/dist/elements/Switch/index.js.map +1 -1
  880. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -9
  881. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  882. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +80 -27
  883. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  884. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.css +34 -0
  885. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts +13 -0
  886. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.d.ts.map +1 -0
  887. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js +51 -0
  888. package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js.map +1 -0
  889. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.css +0 -1
  890. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +9 -10
  891. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  892. package/dist/elements/Table/DefaultCell/fields/Code/index.css +0 -1
  893. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  894. package/dist/elements/Table/DefaultCell/fields/File/index.css +18 -13
  895. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  896. package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -1
  897. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  898. package/dist/elements/Table/DefaultCell/fields/Hierarchy/buildHierarchyCellUpdateURL.d.ts +8 -0
  899. package/dist/elements/Table/DefaultCell/fields/Hierarchy/buildHierarchyCellUpdateURL.d.ts.map +1 -0
  900. package/dist/elements/Table/DefaultCell/fields/Hierarchy/buildHierarchyCellUpdateURL.js +21 -0
  901. package/dist/elements/Table/DefaultCell/fields/Hierarchy/buildHierarchyCellUpdateURL.js.map +1 -0
  902. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +17 -7
  903. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  904. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +111 -45
  905. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  906. package/dist/elements/Table/DefaultCell/fields/JSON/index.css +0 -1
  907. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  908. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +21 -32
  909. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  910. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  911. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  912. package/dist/elements/Table/DefaultCell/fields/Status/index.css +0 -1
  913. package/dist/elements/Table/DefaultCell/fields/Status/index.js.map +1 -1
  914. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  915. package/dist/elements/Table/DefaultCell/index.js +6 -1
  916. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  917. package/dist/elements/Table/GridNavigation/useGridNavigation.d.ts +8 -0
  918. package/dist/elements/Table/GridNavigation/useGridNavigation.d.ts.map +1 -0
  919. package/dist/elements/Table/GridNavigation/useGridNavigation.js +397 -0
  920. package/dist/elements/Table/GridNavigation/useGridNavigation.js.map +1 -0
  921. package/dist/elements/Table/OrderableTable.d.ts +1 -0
  922. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  923. package/dist/elements/Table/OrderableTable.js +9 -3
  924. package/dist/elements/Table/OrderableTable.js.map +1 -1
  925. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  926. package/dist/elements/Table/RelationshipProvider/index.js +49 -23
  927. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  928. package/dist/elements/Table/TableIdentity.d.ts +10 -0
  929. package/dist/elements/Table/TableIdentity.d.ts.map +1 -0
  930. package/dist/elements/Table/TableIdentity.js +68 -0
  931. package/dist/elements/Table/TableIdentity.js.map +1 -0
  932. package/dist/elements/Table/index.css +23 -3
  933. package/dist/elements/Table/index.d.ts +3 -0
  934. package/dist/elements/Table/index.d.ts.map +1 -1
  935. package/dist/elements/Table/index.js +72 -29
  936. package/dist/elements/Table/index.js.map +1 -1
  937. package/dist/elements/Table/useAriaSort.d.ts +7 -0
  938. package/dist/elements/Table/useAriaSort.d.ts.map +1 -0
  939. package/dist/elements/Table/useAriaSort.js +53 -0
  940. package/dist/elements/Table/useAriaSort.js.map +1 -0
  941. package/dist/elements/TableSection/index.css +4 -5
  942. package/dist/elements/Tabs/index.css +6 -6
  943. package/dist/elements/Tabs/index.d.ts +4 -0
  944. package/dist/elements/Tabs/index.d.ts.map +1 -1
  945. package/dist/elements/Tabs/index.js +30 -1
  946. package/dist/elements/Tabs/index.js.map +1 -1
  947. package/dist/elements/Thumbnail/index.js +133 -53
  948. package/dist/elements/Thumbnail/index.js.map +1 -1
  949. package/dist/elements/ThumbnailCard/index.css +0 -1
  950. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  951. package/dist/elements/ThumbnailCard/index.js +10 -8
  952. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  953. package/dist/elements/TimezonePicker/index.css +6 -8
  954. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  955. package/dist/elements/TimezonePicker/index.js +184 -88
  956. package/dist/elements/TimezonePicker/index.js.map +1 -1
  957. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  958. package/dist/elements/Tooltip/index.css +2 -2
  959. package/dist/elements/Tooltip/index.d.ts +5 -5
  960. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  961. package/dist/elements/Tooltip/index.js +21 -13
  962. package/dist/elements/Tooltip/index.js.map +1 -1
  963. package/dist/elements/Translation/index.js +1 -1
  964. package/dist/elements/Translation/index.js.map +1 -1
  965. package/dist/elements/TrashBanner/index.js.map +1 -1
  966. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  967. package/dist/elements/UnpublishButton/index.js +4 -1
  968. package/dist/elements/UnpublishButton/index.js.map +1 -1
  969. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  970. package/dist/elements/UnpublishMany/DrawerContent.js +5 -2
  971. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  972. package/dist/elements/UnpublishMany/index.js +32 -24
  973. package/dist/elements/UnpublishMany/index.js.map +1 -1
  974. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  975. package/dist/elements/Upload/getEditorFileSrc.d.ts +11 -0
  976. package/dist/elements/Upload/getEditorFileSrc.d.ts.map +1 -0
  977. package/dist/elements/Upload/getEditorFileSrc.js +6 -0
  978. package/dist/elements/Upload/getEditorFileSrc.js.map +1 -0
  979. package/dist/elements/Upload/index.css +2 -3
  980. package/dist/elements/Upload/index.d.ts +1 -1
  981. package/dist/elements/Upload/index.d.ts.map +1 -1
  982. package/dist/elements/Upload/index.js +14 -7
  983. package/dist/elements/Upload/index.js.map +1 -1
  984. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -1
  985. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -1
  986. package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -1
  987. package/dist/elements/UploadDropzoneContent/index.js +1 -0
  988. package/dist/elements/UploadDropzoneContent/index.js.map +1 -1
  989. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
  990. package/dist/elements/UserMenu/LanguageMenu/index.js +15 -30
  991. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  992. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  993. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -30
  994. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  995. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -1
  996. package/dist/elements/UserMenu/SubMenuHeader/index.js +2 -0
  997. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -1
  998. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
  999. package/dist/elements/UserMenu/ThemeMenu/index.js +15 -30
  1000. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  1001. package/dist/elements/UserMenu/index.css +30 -16
  1002. package/dist/elements/UserMenu/index.d.ts +1 -0
  1003. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  1004. package/dist/elements/UserMenu/index.js +83 -51
  1005. package/dist/elements/UserMenu/index.js.map +1 -1
  1006. package/dist/elements/ViewDescription/index.js.map +1 -1
  1007. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  1008. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  1009. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  1010. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +11 -2
  1011. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  1012. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  1013. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  1014. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  1015. package/dist/elements/WhereBuilder/Condition/index.js +8 -1
  1016. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  1017. package/dist/exports/client/CodeEditor-23ZGBN6S.js +14 -0
  1018. package/dist/exports/client/CodeEditor-23ZGBN6S.js.map +7 -0
  1019. package/dist/exports/client/DatePicker-DJN2NVQC.js +14 -0
  1020. package/dist/exports/client/DatePicker-DJN2NVQC.js.map +7 -0
  1021. package/dist/exports/client/chunk-EXVR6BZK.js +27 -0
  1022. package/dist/exports/client/chunk-EXVR6BZK.js.map +7 -0
  1023. package/dist/exports/client/chunk-GQEFXRCN.js +29 -0
  1024. package/dist/exports/client/chunk-GQEFXRCN.js.map +7 -0
  1025. package/dist/exports/client/chunk-SMBFG6XU.js +14 -0
  1026. package/dist/exports/client/chunk-SMBFG6XU.js.map +7 -0
  1027. package/dist/exports/client/index.d.ts +43 -5
  1028. package/dist/exports/client/index.d.ts.map +1 -1
  1029. package/dist/exports/client/index.js +101 -1
  1030. package/dist/exports/client/index.js.map +4 -4
  1031. package/dist/exports/rsc/index.d.ts +2 -1
  1032. package/dist/exports/rsc/index.d.ts.map +1 -1
  1033. package/dist/exports/rsc/index.js +2 -1
  1034. package/dist/exports/rsc/index.js.map +1 -1
  1035. package/dist/exports/shared/index.js +2 -2
  1036. package/dist/exports/shared/index.js.map +3 -3
  1037. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  1038. package/dist/fields/Array/ArrayRow.js +207 -98
  1039. package/dist/fields/Array/ArrayRow.js.map +1 -1
  1040. package/dist/fields/Array/index.css +4 -0
  1041. package/dist/fields/Array/index.d.ts +3 -7
  1042. package/dist/fields/Array/index.d.ts.map +1 -1
  1043. package/dist/fields/Array/index.js +531 -309
  1044. package/dist/fields/Array/index.js.map +1 -1
  1045. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  1046. package/dist/fields/Blocks/BlockRow.js +224 -136
  1047. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  1048. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  1049. package/dist/fields/Blocks/BlockSelector/index.js +114 -74
  1050. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  1051. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  1052. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  1053. package/dist/fields/Blocks/RowActions.js +81 -52
  1054. package/dist/fields/Blocks/RowActions.js.map +1 -1
  1055. package/dist/fields/Blocks/SectionTitle/index.css +27 -6
  1056. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  1057. package/dist/fields/Blocks/index.css +2 -2
  1058. package/dist/fields/Blocks/index.d.ts +2 -5
  1059. package/dist/fields/Blocks/index.d.ts.map +1 -1
  1060. package/dist/fields/Blocks/index.js +21 -11
  1061. package/dist/fields/Blocks/index.js.map +1 -1
  1062. package/dist/fields/Checkbox/Input.d.ts +2 -2
  1063. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  1064. package/dist/fields/Checkbox/Input.js +135 -153
  1065. package/dist/fields/Checkbox/Input.js.map +1 -1
  1066. package/dist/fields/Checkbox/index.css +188 -162
  1067. package/dist/fields/Checkbox/index.d.ts +2 -12
  1068. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  1069. package/dist/fields/Checkbox/index.js.map +1 -1
  1070. package/dist/fields/Code/index.d.ts +2 -8
  1071. package/dist/fields/Code/index.d.ts.map +1 -1
  1072. package/dist/fields/Code/index.js +23 -5
  1073. package/dist/fields/Code/index.js.map +1 -1
  1074. package/dist/fields/Collapsible/index.d.ts +2 -3
  1075. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  1076. package/dist/fields/Collapsible/index.js +114 -72
  1077. package/dist/fields/Collapsible/index.js.map +1 -1
  1078. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  1079. package/dist/fields/ConfirmPassword/index.js +45 -31
  1080. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  1081. package/dist/fields/DateTime/index.d.ts +3 -7
  1082. package/dist/fields/DateTime/index.d.ts.map +1 -1
  1083. package/dist/fields/DateTime/index.js +224 -123
  1084. package/dist/fields/DateTime/index.js.map +1 -1
  1085. package/dist/fields/Email/index.d.ts +2 -7
  1086. package/dist/fields/Email/index.d.ts.map +1 -1
  1087. package/dist/fields/Email/index.js +11 -0
  1088. package/dist/fields/Email/index.js.map +1 -1
  1089. package/dist/fields/FieldDescription/index.css +0 -5
  1090. package/dist/fields/FieldDescription/index.js +29 -21
  1091. package/dist/fields/FieldDescription/index.js.map +1 -1
  1092. package/dist/fields/FieldError/index.css +12 -0
  1093. package/dist/fields/FieldError/index.d.ts.map +1 -1
  1094. package/dist/fields/FieldError/index.js +4 -1
  1095. package/dist/fields/FieldError/index.js.map +1 -1
  1096. package/dist/fields/FieldLabel/index.css +30 -10
  1097. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  1098. package/dist/fields/FieldLabel/index.js +28 -10
  1099. package/dist/fields/FieldLabel/index.js.map +1 -1
  1100. package/dist/fields/Group/index.css +5 -8
  1101. package/dist/fields/Group/index.d.ts +3 -5
  1102. package/dist/fields/Group/index.d.ts.map +1 -1
  1103. package/dist/fields/Group/index.js +75 -46
  1104. package/dist/fields/Group/index.js.map +1 -1
  1105. package/dist/fields/Hidden/index.js +23 -15
  1106. package/dist/fields/Hidden/index.js.map +1 -1
  1107. package/dist/fields/JSON/index.d.ts +2 -6
  1108. package/dist/fields/JSON/index.d.ts.map +1 -1
  1109. package/dist/fields/JSON/index.js +18 -3
  1110. package/dist/fields/JSON/index.js.map +1 -1
  1111. package/dist/fields/Join/index.css +3 -4
  1112. package/dist/fields/Join/index.d.ts +2 -6
  1113. package/dist/fields/Join/index.d.ts.map +1 -1
  1114. package/dist/fields/Join/index.js.map +1 -1
  1115. package/dist/fields/Number/Input.js.map +1 -1
  1116. package/dist/fields/Number/index.d.ts +2 -7
  1117. package/dist/fields/Number/index.d.ts.map +1 -1
  1118. package/dist/fields/Number/index.js.map +1 -1
  1119. package/dist/fields/Password/index.d.ts.map +1 -1
  1120. package/dist/fields/Password/index.js.map +1 -1
  1121. package/dist/fields/Password/input.d.ts.map +1 -1
  1122. package/dist/fields/Password/input.js +93 -96
  1123. package/dist/fields/Password/input.js.map +1 -1
  1124. package/dist/fields/Point/index.d.ts +3 -8
  1125. package/dist/fields/Point/index.d.ts.map +1 -1
  1126. package/dist/fields/Point/index.js +15 -2
  1127. package/dist/fields/Point/index.js.map +1 -1
  1128. package/dist/fields/RadioGroup/Radio/index.css +0 -2
  1129. package/dist/fields/RadioGroup/Radio/index.js +35 -35
  1130. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  1131. package/dist/fields/RadioGroup/index.css +1 -1
  1132. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  1133. package/dist/fields/RadioGroup/index.js.map +1 -1
  1134. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  1135. package/dist/fields/Relationship/Input.js +43 -31
  1136. package/dist/fields/Relationship/Input.js.map +1 -1
  1137. package/dist/fields/Relationship/index.d.ts +2 -6
  1138. package/dist/fields/Relationship/index.d.ts.map +1 -1
  1139. package/dist/fields/Relationship/index.js +216 -111
  1140. package/dist/fields/Relationship/index.js.map +1 -1
  1141. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  1142. package/dist/fields/Relationship/optionsReducer.js +2 -0
  1143. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  1144. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  1145. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +24 -2
  1146. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  1147. package/dist/fields/Relationship/select-components/SingleValue/index.js +9 -11
  1148. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  1149. package/dist/fields/Relationship/types.d.ts +8 -0
  1150. package/dist/fields/Relationship/types.d.ts.map +1 -1
  1151. package/dist/fields/Relationship/types.js.map +1 -1
  1152. package/dist/fields/Row/index.d.ts +2 -3
  1153. package/dist/fields/Row/index.d.ts.map +1 -1
  1154. package/dist/fields/Row/index.js.map +1 -1
  1155. package/dist/fields/Select/Input.d.ts.map +1 -1
  1156. package/dist/fields/Select/Input.js +87 -52
  1157. package/dist/fields/Select/Input.js.map +1 -1
  1158. package/dist/fields/Select/index.css +7 -0
  1159. package/dist/fields/Select/index.d.ts +2 -9
  1160. package/dist/fields/Select/index.d.ts.map +1 -1
  1161. package/dist/fields/Select/index.js +158 -77
  1162. package/dist/fields/Select/index.js.map +1 -1
  1163. package/dist/fields/Tabs/Tab/index.d.ts +2 -0
  1164. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  1165. package/dist/fields/Tabs/Tab/index.js +15 -9
  1166. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  1167. package/dist/fields/Tabs/index.css +17 -21
  1168. package/dist/fields/Tabs/index.d.ts +2 -4
  1169. package/dist/fields/Tabs/index.d.ts.map +1 -1
  1170. package/dist/fields/Tabs/index.js +187 -116
  1171. package/dist/fields/Tabs/index.js.map +1 -1
  1172. package/dist/fields/Text/Input.d.ts.map +1 -1
  1173. package/dist/fields/Text/Input.js +54 -35
  1174. package/dist/fields/Text/Input.js.map +1 -1
  1175. package/dist/fields/Text/index.d.ts +2 -8
  1176. package/dist/fields/Text/index.d.ts.map +1 -1
  1177. package/dist/fields/Text/index.js +172 -95
  1178. package/dist/fields/Text/index.js.map +1 -1
  1179. package/dist/fields/Text/types.d.ts +2 -1
  1180. package/dist/fields/Text/types.d.ts.map +1 -1
  1181. package/dist/fields/Text/types.js.map +1 -1
  1182. package/dist/fields/Textarea/Input.js +58 -28
  1183. package/dist/fields/Textarea/Input.js.map +1 -1
  1184. package/dist/fields/Textarea/index.css +1 -1
  1185. package/dist/fields/Textarea/index.d.ts +2 -9
  1186. package/dist/fields/Textarea/index.d.ts.map +1 -1
  1187. package/dist/fields/Textarea/index.js +97 -55
  1188. package/dist/fields/Textarea/index.js.map +1 -1
  1189. package/dist/fields/Upload/HasMany/index.js +1 -1
  1190. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  1191. package/dist/fields/Upload/HasOne/index.js +1 -1
  1192. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  1193. package/dist/fields/Upload/Input.d.ts.map +1 -1
  1194. package/dist/fields/Upload/Input.js +37 -13
  1195. package/dist/fields/Upload/Input.js.map +1 -1
  1196. package/dist/fields/Upload/RelationshipContent/index.css +1 -1
  1197. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  1198. package/dist/fields/Upload/index.css +9 -0
  1199. package/dist/fields/Upload/index.js +101 -63
  1200. package/dist/fields/Upload/index.js.map +1 -1
  1201. package/dist/fields/shared/useRowFocus.d.ts +5 -0
  1202. package/dist/fields/shared/useRowFocus.d.ts.map +1 -0
  1203. package/dist/fields/shared/useRowFocus.js +50 -0
  1204. package/dist/fields/shared/useRowFocus.js.map +1 -0
  1205. package/dist/forms/Form/context.js.map +1 -1
  1206. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  1207. package/dist/forms/Form/fieldReducer.js +6 -9
  1208. package/dist/forms/Form/fieldReducer.js.map +1 -1
  1209. package/dist/forms/Form/index.d.ts.map +1 -1
  1210. package/dist/forms/Form/index.js +36 -16
  1211. package/dist/forms/Form/index.js.map +1 -1
  1212. package/dist/forms/Form/reduceToSerializableFields.d.ts +9 -4
  1213. package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
  1214. package/dist/forms/Form/reduceToSerializableFields.js +34 -7
  1215. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  1216. package/dist/forms/Form/types.d.ts +1 -6
  1217. package/dist/forms/Form/types.d.ts.map +1 -1
  1218. package/dist/forms/Form/types.js.map +1 -1
  1219. package/dist/forms/NullifyField/index.d.ts +10 -0
  1220. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  1221. package/dist/forms/NullifyField/index.js +14 -4
  1222. package/dist/forms/NullifyField/index.js.map +1 -1
  1223. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  1224. package/dist/forms/RenderFields/context.d.ts +2 -2
  1225. package/dist/forms/RenderFields/context.js +5 -4
  1226. package/dist/forms/RenderFields/context.js.map +1 -1
  1227. package/dist/forms/RenderFields/index.css +8 -4
  1228. package/dist/forms/RenderFields/index.js.map +1 -1
  1229. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  1230. package/dist/forms/RowLabel/Context/index.js +58 -18
  1231. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  1232. package/dist/forms/Submit/index.js +12 -13
  1233. package/dist/forms/Submit/index.js.map +1 -1
  1234. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  1235. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +2 -2
  1236. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  1237. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +12 -4
  1238. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  1239. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -2
  1240. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  1241. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  1242. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -2
  1243. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  1244. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  1245. package/dist/forms/fieldSchemasToFormState/renderField.js +2 -2
  1246. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  1247. package/dist/forms/fieldSchemasToFormState/types.d.ts +2 -2
  1248. package/dist/forms/fieldSchemasToFormState/types.d.ts.map +1 -1
  1249. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  1250. package/dist/forms/useField/index.js +1 -1
  1251. package/dist/forms/useField/index.js.map +1 -1
  1252. package/dist/forms/useField/types.d.ts +0 -4
  1253. package/dist/forms/useField/types.d.ts.map +1 -1
  1254. package/dist/forms/useField/types.js.map +1 -1
  1255. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  1256. package/dist/graphics/Account/Gravatar/index.js +32 -17
  1257. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  1258. package/dist/graphics/Account/index.js +27 -18
  1259. package/dist/graphics/Account/index.js.map +1 -1
  1260. package/dist/graphics/Logo/index.d.ts.map +1 -1
  1261. package/dist/graphics/Logo/index.js +2 -0
  1262. package/dist/graphics/Logo/index.js.map +1 -1
  1263. package/dist/hooks/useControllableState.js.map +1 -1
  1264. package/dist/hooks/useDebounce.js.map +1 -1
  1265. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  1266. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  1267. package/dist/hooks/useDelay.js.map +1 -1
  1268. package/dist/hooks/useDelayedRender.js.map +1 -1
  1269. package/dist/hooks/useElementHeightVariable.js.map +1 -1
  1270. package/dist/hooks/useHotkey.js.map +1 -1
  1271. package/dist/hooks/useIntersect.js.map +1 -1
  1272. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  1273. package/dist/hooks/usePayloadAPI.js +44 -40
  1274. package/dist/hooks/usePayloadAPI.js.map +1 -1
  1275. package/dist/hooks/usePointerSafeArea.d.ts +29 -0
  1276. package/dist/hooks/usePointerSafeArea.d.ts.map +1 -0
  1277. package/dist/hooks/usePointerSafeArea.js +232 -0
  1278. package/dist/hooks/usePointerSafeArea.js.map +1 -0
  1279. package/dist/hooks/usePopupWindow.js.map +1 -1
  1280. package/dist/hooks/useRelatedCollections.js.map +1 -1
  1281. package/dist/hooks/useResize.js.map +1 -1
  1282. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  1283. package/dist/hooks/useThrottledEffect.js +21 -24
  1284. package/dist/hooks/useThrottledEffect.js.map +1 -1
  1285. package/dist/hooks/useUseAsTitle.js.map +1 -1
  1286. package/dist/icons/Arrow/index.d.ts +1 -1
  1287. package/dist/icons/Arrow/index.d.ts.map +1 -1
  1288. package/dist/icons/Arrow/index.js +7 -1
  1289. package/dist/icons/Arrow/index.js.map +1 -1
  1290. package/dist/{elements/AppHeader/SettingsMenu → icons/Branch}/index.css +1 -1
  1291. package/dist/icons/Branch/index.d.ts +7 -0
  1292. package/dist/icons/Branch/index.d.ts.map +1 -0
  1293. package/dist/icons/Branch/index.js +25 -0
  1294. package/dist/icons/Branch/index.js.map +1 -0
  1295. package/dist/icons/Clock/index.d.ts +6 -0
  1296. package/dist/icons/Clock/index.d.ts.map +1 -0
  1297. package/dist/icons/Clock/index.js +18 -0
  1298. package/dist/icons/Clock/index.js.map +1 -0
  1299. package/dist/icons/ImageStack/index.d.ts +3 -0
  1300. package/dist/icons/ImageStack/index.d.ts.map +1 -0
  1301. package/dist/icons/ImageStack/index.js +17 -0
  1302. package/dist/icons/ImageStack/index.js.map +1 -0
  1303. package/dist/icons/Pin/index.d.ts +7 -0
  1304. package/dist/icons/Pin/index.d.ts.map +1 -0
  1305. package/dist/icons/Pin/index.js +23 -0
  1306. package/dist/icons/Pin/index.js.map +1 -0
  1307. package/dist/icons/Sidebar/index.d.ts.map +1 -1
  1308. package/dist/icons/Sidebar/index.js +2 -0
  1309. package/dist/icons/Sidebar/index.js.map +1 -1
  1310. package/dist/icons/Table/index.css +5 -0
  1311. package/dist/icons/Table/index.d.ts +7 -0
  1312. package/dist/icons/Table/index.d.ts.map +1 -0
  1313. package/dist/icons/Table/index.js +25 -0
  1314. package/dist/icons/Table/index.js.map +1 -0
  1315. package/dist/layouts/Root/DocumentRoot.d.ts +24 -0
  1316. package/dist/layouts/Root/DocumentRoot.d.ts.map +1 -0
  1317. package/dist/layouts/Root/DocumentRoot.js +40 -0
  1318. package/dist/layouts/Root/DocumentRoot.js.map +1 -0
  1319. package/dist/layouts/Root/ResolveThemeOnClient.d.ts +12 -0
  1320. package/dist/layouts/Root/ResolveThemeOnClient.d.ts.map +1 -0
  1321. package/dist/layouts/Root/ResolveThemeOnClient.js +35 -0
  1322. package/dist/layouts/Root/ResolveThemeOnClient.js.map +1 -0
  1323. package/dist/layouts/Root/RootProviders.d.ts +11 -0
  1324. package/dist/layouts/Root/RootProviders.d.ts.map +1 -0
  1325. package/dist/layouts/Root/RootProviders.js +167 -0
  1326. package/dist/layouts/Root/RootProviders.js.map +1 -0
  1327. package/dist/layouts/Root/getRootLayoutData.d.ts +29 -0
  1328. package/dist/layouts/Root/getRootLayoutData.d.ts.map +1 -0
  1329. package/dist/layouts/Root/getRootLayoutData.js +76 -0
  1330. package/dist/layouts/Root/getRootLayoutData.js.map +1 -0
  1331. package/dist/layouts/Root/index.d.ts +4 -7
  1332. package/dist/layouts/Root/index.d.ts.map +1 -1
  1333. package/dist/layouts/Root/index.js +51 -136
  1334. package/dist/layouts/Root/index.js.map +1 -1
  1335. package/dist/providers/Actions/index.js.map +1 -1
  1336. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -1
  1337. package/dist/providers/Auth/index.js +2 -2
  1338. package/dist/providers/Auth/index.js.map +1 -1
  1339. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -1
  1340. package/dist/providers/Branch/index.d.ts +68 -0
  1341. package/dist/providers/Branch/index.d.ts.map +1 -0
  1342. package/dist/providers/Branch/index.js +187 -0
  1343. package/dist/providers/Branch/index.js.map +1 -0
  1344. package/dist/providers/Branch/index.server.d.ts +14 -0
  1345. package/dist/providers/Branch/index.server.d.ts.map +1 -0
  1346. package/dist/providers/Branch/index.server.js +127 -0
  1347. package/dist/providers/Branch/index.server.js.map +1 -0
  1348. package/dist/providers/ClientFunction/index.js.map +1 -1
  1349. package/dist/providers/Config/index.js +65 -32
  1350. package/dist/providers/Config/index.js.map +1 -1
  1351. package/dist/providers/DocumentEvents/index.js.map +1 -1
  1352. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  1353. package/dist/providers/DocumentInfo/index.js +5 -3
  1354. package/dist/providers/DocumentInfo/index.js.map +1 -1
  1355. package/dist/providers/DocumentInfo/types.d.ts +0 -10
  1356. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  1357. package/dist/providers/DocumentInfo/types.js.map +1 -1
  1358. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +2 -1
  1359. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  1360. package/dist/providers/DocumentInfo/useGetDocPermissions.js +3 -1
  1361. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  1362. package/dist/providers/EditDepth/index.js.map +1 -1
  1363. package/dist/providers/Embed/index.js.map +1 -1
  1364. package/dist/providers/EntityVisibility/index.js.map +1 -1
  1365. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  1366. package/dist/providers/Hierarchy/index.js +38 -13
  1367. package/dist/providers/Hierarchy/index.js.map +1 -1
  1368. package/dist/providers/Hierarchy/types.d.ts +2 -0
  1369. package/dist/providers/Hierarchy/types.d.ts.map +1 -1
  1370. package/dist/providers/Hierarchy/types.js.map +1 -1
  1371. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts +7 -0
  1372. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts.map +1 -0
  1373. package/dist/providers/ListQuery/getSearchWithListQuery.js +22 -0
  1374. package/dist/providers/ListQuery/getSearchWithListQuery.js.map +1 -0
  1375. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  1376. package/dist/providers/ListQuery/index.js +37 -17
  1377. package/dist/providers/ListQuery/index.js.map +1 -1
  1378. package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
  1379. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  1380. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  1381. package/dist/providers/ListQuery/types.d.ts +10 -5
  1382. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  1383. package/dist/providers/ListQuery/types.js.map +1 -1
  1384. package/dist/providers/ModalAccessibility/index.d.ts +3 -0
  1385. package/dist/providers/ModalAccessibility/index.d.ts.map +1 -0
  1386. package/dist/providers/ModalAccessibility/index.js +102 -0
  1387. package/dist/providers/ModalAccessibility/index.js.map +1 -0
  1388. package/dist/providers/ModalFocus/index.d.ts +15 -0
  1389. package/dist/providers/ModalFocus/index.d.ts.map +1 -0
  1390. package/dist/providers/ModalFocus/index.js +70 -0
  1391. package/dist/providers/ModalFocus/index.js.map +1 -0
  1392. package/dist/providers/Preferences/index.d.ts +10 -2
  1393. package/dist/providers/Preferences/index.d.ts.map +1 -1
  1394. package/dist/providers/Preferences/index.js +93 -27
  1395. package/dist/providers/Preferences/index.js.map +1 -1
  1396. package/dist/providers/RouteCache/index.d.ts.map +1 -1
  1397. package/dist/providers/RouteCache/index.js +37 -25
  1398. package/dist/providers/RouteCache/index.js.map +1 -1
  1399. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  1400. package/dist/providers/RouteTransition/index.d.ts +3 -2
  1401. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  1402. package/dist/providers/RouteTransition/index.js +78 -105
  1403. package/dist/providers/RouteTransition/index.js.map +1 -1
  1404. package/dist/providers/RouterAdapter/index.js.map +1 -1
  1405. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  1406. package/dist/providers/ServerFunctions/index.js +34 -23
  1407. package/dist/providers/ServerFunctions/index.js.map +1 -1
  1408. package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -1
  1409. package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -2
  1410. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  1411. package/dist/providers/TableColumns/buildColumnState/index.d.ts +1 -0
  1412. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  1413. package/dist/providers/TableColumns/buildColumnState/index.js +2 -0
  1414. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  1415. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +2 -1
  1416. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  1417. package/dist/providers/TableColumns/buildColumnState/renderCell.js +12 -28
  1418. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1419. package/dist/providers/TableColumns/index.d.ts.map +1 -1
  1420. package/dist/providers/TableColumns/index.js +18 -35
  1421. package/dist/providers/TableColumns/index.js.map +1 -1
  1422. package/dist/providers/TableColumns/types.d.ts +1 -34
  1423. package/dist/providers/TableColumns/types.d.ts.map +1 -1
  1424. package/dist/providers/TableColumns/types.js.map +1 -1
  1425. package/dist/providers/Theme/index.d.ts +1 -17
  1426. package/dist/providers/Theme/index.d.ts.map +1 -1
  1427. package/dist/providers/Theme/index.js +81 -253
  1428. package/dist/providers/Theme/index.js.map +1 -1
  1429. package/dist/providers/Theme/shared.d.ts +0 -8
  1430. package/dist/providers/Theme/shared.d.ts.map +1 -1
  1431. package/dist/providers/Theme/shared.js +0 -6
  1432. package/dist/providers/Theme/shared.js.map +1 -1
  1433. package/dist/providers/ToastContainer/index.css +6 -7
  1434. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  1435. package/dist/providers/ToastContainer/index.js +113 -35
  1436. package/dist/providers/ToastContainer/index.js.map +1 -1
  1437. package/dist/providers/Translation/index.d.ts.map +1 -1
  1438. package/dist/providers/Translation/index.js +11 -1
  1439. package/dist/providers/Translation/index.js.map +1 -1
  1440. package/dist/providers/UploadControls/index.js.map +1 -1
  1441. package/dist/providers/UploadEdits/index.js.map +1 -1
  1442. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1443. package/dist/styles.css +259 -89
  1444. package/dist/templates/Default/Wrapper/index.css +20 -5
  1445. package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
  1446. package/dist/templates/Default/Wrapper/index.js +4 -3
  1447. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  1448. package/dist/templates/Default/index.css +0 -1
  1449. package/dist/templates/Default/index.d.ts.map +1 -1
  1450. package/dist/templates/Default/index.js +54 -41
  1451. package/dist/templates/Default/index.js.map +1 -1
  1452. package/dist/utilities/appendCacheTag.d.ts +1 -0
  1453. package/dist/utilities/appendCacheTag.d.ts.map +1 -1
  1454. package/dist/utilities/appendCacheTag.js +2 -1
  1455. package/dist/utilities/appendCacheTag.js.map +1 -1
  1456. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  1457. package/dist/utilities/buildClientFieldSchemaMap/index.js +9 -4
  1458. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1459. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  1460. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +32 -6
  1461. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1462. package/dist/utilities/buildFormState.d.ts.map +1 -1
  1463. package/dist/utilities/buildFormState.js +11 -1
  1464. package/dist/utilities/buildFormState.js.map +1 -1
  1465. package/dist/utilities/buildUpcomingMergeWhere.d.ts +11 -0
  1466. package/dist/utilities/buildUpcomingMergeWhere.d.ts.map +1 -0
  1467. package/dist/utilities/buildUpcomingMergeWhere.js +31 -0
  1468. package/dist/utilities/buildUpcomingMergeWhere.js.map +1 -0
  1469. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts +9 -0
  1470. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts.map +1 -0
  1471. package/dist/utilities/filterLLMInstructionsMenuItems.js +37 -0
  1472. package/dist/utilities/filterLLMInstructionsMenuItems.js.map +1 -0
  1473. package/dist/utilities/filterOutUploadFields.js +1 -1
  1474. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1475. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1476. package/dist/utilities/generateFieldID.d.ts +1 -1
  1477. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  1478. package/dist/utilities/generateFieldID.js.map +1 -1
  1479. package/dist/utilities/getActiveModal.d.ts +6 -0
  1480. package/dist/utilities/getActiveModal.d.ts.map +1 -0
  1481. package/dist/utilities/getActiveModal.js +8 -0
  1482. package/dist/utilities/getActiveModal.js.map +1 -0
  1483. package/dist/utilities/getAdminPreferences.d.ts +2 -0
  1484. package/dist/utilities/getAdminPreferences.d.ts.map +1 -0
  1485. package/dist/utilities/getAdminPreferences.js +2 -0
  1486. package/dist/utilities/getAdminPreferences.js.map +1 -0
  1487. package/dist/utilities/getClientConfig.d.ts +5 -1
  1488. package/dist/utilities/getClientConfig.d.ts.map +1 -1
  1489. package/dist/utilities/getClientConfig.js +2 -1
  1490. package/dist/utilities/getClientConfig.js.map +1 -1
  1491. package/dist/utilities/getClientSchemaMap.d.ts.map +1 -1
  1492. package/dist/utilities/getClientSchemaMap.js +2 -1
  1493. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1494. package/dist/utilities/getDisplayedFieldValue.d.ts +8 -2
  1495. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
  1496. package/dist/utilities/getDisplayedFieldValue.js +11 -1
  1497. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1498. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  1499. package/dist/utilities/getDocPreferences.js +1 -0
  1500. package/dist/utilities/getDocPreferences.js.map +1 -1
  1501. package/dist/utilities/getDocumentThumbnail.d.ts +6 -0
  1502. package/dist/utilities/getDocumentThumbnail.d.ts.map +1 -0
  1503. package/dist/utilities/getDocumentThumbnail.js +27 -0
  1504. package/dist/utilities/getDocumentThumbnail.js.map +1 -0
  1505. package/dist/utilities/getDocumentThumbnailPopulate.d.ts +7 -0
  1506. package/dist/utilities/getDocumentThumbnailPopulate.d.ts.map +1 -0
  1507. package/dist/utilities/getDocumentThumbnailPopulate.js +23 -0
  1508. package/dist/utilities/getDocumentThumbnailPopulate.js.map +1 -0
  1509. package/dist/utilities/getDocumentThumbnailSelect.d.ts +7 -0
  1510. package/dist/utilities/getDocumentThumbnailSelect.d.ts.map +1 -0
  1511. package/dist/utilities/getDocumentThumbnailSelect.js +24 -0
  1512. package/dist/utilities/getDocumentThumbnailSelect.js.map +1 -0
  1513. package/dist/utilities/getHasScheduledPublish.js.map +1 -1
  1514. package/dist/utilities/getPreferences.d.ts.map +1 -1
  1515. package/dist/utilities/getPreferences.js +1 -0
  1516. package/dist/utilities/getPreferences.js.map +1 -1
  1517. package/dist/utilities/getRequestBranch.d.ts +2 -0
  1518. package/dist/utilities/getRequestBranch.d.ts.map +1 -0
  1519. package/dist/utilities/getRequestBranch.js +2 -0
  1520. package/dist/utilities/getRequestBranch.js.map +1 -0
  1521. package/dist/utilities/getRequestTheme.d.ts +8 -1
  1522. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  1523. package/dist/utilities/getRequestTheme.js +16 -4
  1524. package/dist/utilities/getRequestTheme.js.map +1 -1
  1525. package/dist/utilities/getVersions.d.ts +6 -1
  1526. package/dist/utilities/getVersions.d.ts.map +1 -1
  1527. package/dist/utilities/getVersions.js +13 -0
  1528. package/dist/utilities/getVersions.js.map +1 -1
  1529. package/dist/utilities/groupNavItems.js.map +1 -1
  1530. package/dist/utilities/handleLivePreview.js.map +1 -1
  1531. package/dist/utilities/handleServerFunctions.d.ts +9 -17
  1532. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  1533. package/dist/utilities/handleServerFunctions.js +5 -9
  1534. package/dist/utilities/handleServerFunctions.js.map +1 -1
  1535. package/dist/utilities/handleStaleDataCheck.d.ts +2 -1
  1536. package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -1
  1537. package/dist/utilities/handleStaleDataCheck.js +3 -0
  1538. package/dist/utilities/handleStaleDataCheck.js.map +1 -1
  1539. package/dist/utilities/hasSavePermission.js.map +1 -1
  1540. package/dist/utilities/hierarchyCollectionRestrictions.d.ts +15 -0
  1541. package/dist/utilities/hierarchyCollectionRestrictions.d.ts.map +1 -0
  1542. package/dist/utilities/hierarchyCollectionRestrictions.js +17 -0
  1543. package/dist/utilities/hierarchyCollectionRestrictions.js.map +1 -0
  1544. package/dist/utilities/matchesSearchQuery.d.ts +12 -0
  1545. package/dist/utilities/matchesSearchQuery.d.ts.map +1 -0
  1546. package/dist/utilities/matchesSearchQuery.js +24 -0
  1547. package/dist/utilities/matchesSearchQuery.js.map +1 -0
  1548. package/dist/utilities/renderTable.d.ts +2 -1
  1549. package/dist/utilities/renderTable.d.ts.map +1 -1
  1550. package/dist/utilities/renderTable.js +13 -4
  1551. package/dist/utilities/renderTable.js.map +1 -1
  1552. package/dist/utilities/scheduleMergeHandler.d.ts +61 -0
  1553. package/dist/utilities/scheduleMergeHandler.d.ts.map +1 -0
  1554. package/dist/utilities/scheduleMergeHandler.js +299 -0
  1555. package/dist/utilities/scheduleMergeHandler.js.map +1 -0
  1556. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  1557. package/dist/utilities/schedulePublishHandler.js +15 -1
  1558. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1559. package/dist/utilities/serverFunctionRegistry.d.ts +2 -7
  1560. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  1561. package/dist/utilities/serverFunctionRegistry.js +12 -7
  1562. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  1563. package/dist/utilities/traverseForLocalizedFields.d.ts +7 -2
  1564. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  1565. package/dist/utilities/traverseForLocalizedFields.js +22 -8
  1566. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1567. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  1568. package/dist/utilities/upsertPreferences.js +3 -0
  1569. package/dist/utilities/upsertPreferences.js.map +1 -1
  1570. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  1571. package/dist/views/API/index.client.d.ts.map +1 -1
  1572. package/dist/views/API/index.client.js +30 -3
  1573. package/dist/views/API/index.client.js.map +1 -1
  1574. package/dist/views/API/index.css +1 -2
  1575. package/dist/views/Account/ResetPreferences/index.js +17 -17
  1576. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  1577. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  1578. package/dist/views/Account/ToggleHighContrast/index.js.map +1 -1
  1579. package/dist/views/Account/ToggleTheme/index.js +106 -27
  1580. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  1581. package/dist/views/Account/index.client.js.map +1 -1
  1582. package/dist/views/Branch/BranchChanges/index.d.ts +23 -0
  1583. package/dist/views/Branch/BranchChanges/index.d.ts.map +1 -0
  1584. package/dist/views/Branch/BranchChanges/index.js +252 -0
  1585. package/dist/views/Branch/BranchChanges/index.js.map +1 -0
  1586. package/dist/views/Branch/ChangedDocuments/index.css +118 -0
  1587. package/dist/views/Branch/ChangedDocuments/index.d.ts +35 -0
  1588. package/dist/views/Branch/ChangedDocuments/index.d.ts.map +1 -0
  1589. package/dist/views/Branch/ChangedDocuments/index.js +254 -0
  1590. package/dist/views/Branch/ChangedDocuments/index.js.map +1 -0
  1591. package/dist/views/Branch/DiscardChangesButton/index.d.ts +16 -0
  1592. package/dist/views/Branch/DiscardChangesButton/index.d.ts.map +1 -0
  1593. package/dist/views/Branch/DiscardChangesButton/index.js +106 -0
  1594. package/dist/views/Branch/DiscardChangesButton/index.js.map +1 -0
  1595. package/dist/views/Branch/Manage/index.d.ts +11 -0
  1596. package/dist/views/Branch/Manage/index.d.ts.map +1 -0
  1597. package/dist/views/Branch/Manage/index.js +71 -0
  1598. package/dist/views/Branch/Manage/index.js.map +1 -0
  1599. package/dist/views/Branch/MergeChangesButton/index.d.ts +14 -0
  1600. package/dist/views/Branch/MergeChangesButton/index.d.ts.map +1 -0
  1601. package/dist/views/Branch/MergeChangesButton/index.js +55 -0
  1602. package/dist/views/Branch/MergeChangesButton/index.js.map +1 -0
  1603. package/dist/views/Branch/MergeLedger/index.css +137 -0
  1604. package/dist/views/Branch/MergeLedger/index.d.ts +25 -0
  1605. package/dist/views/Branch/MergeLedger/index.d.ts.map +1 -0
  1606. package/dist/views/Branch/MergeLedger/index.js +228 -0
  1607. package/dist/views/Branch/MergeLedger/index.js.map +1 -0
  1608. package/dist/views/Branch/ScheduledMerges/index.css +83 -0
  1609. package/dist/views/Branch/ScheduledMerges/index.d.ts +32 -0
  1610. package/dist/views/Branch/ScheduledMerges/index.d.ts.map +1 -0
  1611. package/dist/views/Branch/ScheduledMerges/index.js +183 -0
  1612. package/dist/views/Branch/ScheduledMerges/index.js.map +1 -0
  1613. package/dist/views/Branch/index.css +79 -0
  1614. package/dist/views/Branch/index.d.ts +17 -0
  1615. package/dist/views/Branch/index.d.ts.map +1 -0
  1616. package/dist/views/Branch/index.js +186 -0
  1617. package/dist/views/Branch/index.js.map +1 -0
  1618. package/dist/views/Branch/renderBranchDiff.d.ts +29 -0
  1619. package/dist/views/Branch/renderBranchDiff.d.ts.map +1 -0
  1620. package/dist/views/Branch/renderBranchDiff.js +115 -0
  1621. package/dist/views/Branch/renderBranchDiff.js.map +1 -0
  1622. package/dist/views/Branch/renderBranchEntityDiff.d.ts +14 -0
  1623. package/dist/views/Branch/renderBranchEntityDiff.d.ts.map +1 -0
  1624. package/dist/views/Branch/renderBranchEntityDiff.js +68 -0
  1625. package/dist/views/Branch/renderBranchEntityDiff.js.map +1 -0
  1626. package/dist/views/Branch/renderMergeDiff.d.ts +24 -0
  1627. package/dist/views/Branch/renderMergeDiff.d.ts.map +1 -0
  1628. package/dist/views/Branch/renderMergeDiff.js +109 -0
  1629. package/dist/views/Branch/renderMergeDiff.js.map +1 -0
  1630. package/dist/views/Branches/index.d.ts +16 -0
  1631. package/dist/views/Branches/index.d.ts.map +1 -0
  1632. package/dist/views/Branches/index.js +54 -0
  1633. package/dist/views/Branches/index.js.map +1 -0
  1634. package/dist/views/CreateFirstUser/index.css +0 -2
  1635. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  1636. package/dist/views/CreateFirstUser/index.js +4 -2
  1637. package/dist/views/CreateFirstUser/index.js.map +1 -1
  1638. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  1639. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +106 -136
  1640. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  1641. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.d.ts +7 -0
  1642. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.d.ts.map +1 -0
  1643. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.js +65 -0
  1644. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.js.map +1 -0
  1645. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts +2 -1
  1646. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  1647. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +8 -2
  1648. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  1649. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  1650. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +458 -199
  1651. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  1652. package/dist/views/Dashboard/Default/ModularDashboard/index.css +9 -6
  1653. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  1654. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts +1 -1
  1655. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
  1656. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +21 -5
  1657. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  1658. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js.map +1 -1
  1659. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.d.ts.map +1 -1
  1660. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +2 -38
  1661. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  1662. package/dist/views/Document/generateEditViewMetadata.js.map +1 -1
  1663. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  1664. package/dist/views/Document/getDocumentView.js +21 -2
  1665. package/dist/views/Document/getDocumentView.js.map +1 -1
  1666. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  1667. package/dist/views/Document/getMetaBySegment.js +9 -0
  1668. package/dist/views/Document/getMetaBySegment.js.map +1 -1
  1669. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  1670. package/dist/views/Document/handleServerFunction.js +1 -0
  1671. package/dist/views/Document/handleServerFunction.js.map +1 -1
  1672. package/dist/views/Document/index.d.ts +3 -1
  1673. package/dist/views/Document/index.d.ts.map +1 -1
  1674. package/dist/views/Document/index.js +10 -3
  1675. package/dist/views/Document/index.js.map +1 -1
  1676. package/dist/views/Document/renderDocumentSlots.d.ts +1 -1
  1677. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  1678. package/dist/views/Document/renderDocumentSlots.js +10 -3
  1679. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  1680. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  1681. package/dist/views/Edit/Auth/APIKey.js +1 -0
  1682. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1683. package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -1
  1684. package/dist/views/Edit/Auth/index.css +4 -5
  1685. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  1686. package/dist/views/Edit/Auth/index.js +13 -11
  1687. package/dist/views/Edit/Auth/index.js.map +1 -1
  1688. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1689. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1690. package/dist/views/Edit/index.css +26 -43
  1691. package/dist/views/Edit/index.d.ts.map +1 -1
  1692. package/dist/views/Edit/index.js +36 -32
  1693. package/dist/views/Edit/index.js.map +1 -1
  1694. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  1695. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +45 -41
  1696. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  1697. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  1698. package/dist/views/ForgotPassword/index.js +1 -3
  1699. package/dist/views/ForgotPassword/index.js.map +1 -1
  1700. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  1701. package/dist/views/HierarchyList/DocumentListSelection/index.js +103 -105
  1702. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  1703. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +4 -1
  1704. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
  1705. package/dist/views/HierarchyList/HierarchyListHeader/index.js +26 -14
  1706. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  1707. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
  1708. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +20 -48
  1709. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  1710. package/dist/views/HierarchyList/HierarchyTable/DateCell.js +8 -9
  1711. package/dist/views/HierarchyList/HierarchyTable/DateCell.js.map +1 -1
  1712. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.d.ts.map +1 -1
  1713. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js +35 -87
  1714. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -1
  1715. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +0 -101
  1716. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -0
  1717. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  1718. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +45 -32
  1719. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  1720. package/dist/views/HierarchyList/HierarchyTable/index.css +50 -61
  1721. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +3 -1
  1722. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  1723. package/dist/views/HierarchyList/HierarchyTable/index.js +86 -8
  1724. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  1725. package/dist/views/HierarchyList/TypeFilter/index.d.ts.map +1 -1
  1726. package/dist/views/HierarchyList/TypeFilter/index.js +6 -7
  1727. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  1728. package/dist/views/HierarchyList/getHierarchyListURL.d.ts +7 -0
  1729. package/dist/views/HierarchyList/getHierarchyListURL.d.ts.map +1 -0
  1730. package/dist/views/HierarchyList/getHierarchyListURL.js +22 -0
  1731. package/dist/views/HierarchyList/getHierarchyListURL.js.map +1 -0
  1732. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  1733. package/dist/views/HierarchyList/index.js +37 -13
  1734. package/dist/views/HierarchyList/index.js.map +1 -1
  1735. package/dist/views/List/DocumentGrid/index.d.ts +17 -0
  1736. package/dist/views/List/DocumentGrid/index.d.ts.map +1 -0
  1737. package/dist/views/List/DocumentGrid/index.js +117 -0
  1738. package/dist/views/List/DocumentGrid/index.js.map +1 -0
  1739. package/dist/views/List/GroupedDocumentGrid/index.css +17 -0
  1740. package/dist/views/List/GroupedDocumentGrid/index.d.ts +14 -0
  1741. package/dist/views/List/GroupedDocumentGrid/index.d.ts.map +1 -0
  1742. package/dist/views/List/GroupedDocumentGrid/index.js +99 -0
  1743. package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -0
  1744. package/dist/views/List/ListHeader/index.css +4 -5
  1745. package/dist/views/List/ListHeader/index.d.ts +3 -1
  1746. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  1747. package/dist/views/List/ListHeader/index.js +15 -4
  1748. package/dist/views/List/ListHeader/index.js.map +1 -1
  1749. package/dist/views/List/ListSelection/index.js.map +1 -1
  1750. package/dist/views/List/enrichDocsWithVersionStatus.d.ts.map +1 -1
  1751. package/dist/views/List/enrichDocsWithVersionStatus.js +3 -0
  1752. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  1753. package/dist/views/List/getDocumentListItemURL.d.ts +9 -0
  1754. package/dist/views/List/getDocumentListItemURL.d.ts.map +1 -0
  1755. package/dist/views/List/getDocumentListItemURL.js +23 -0
  1756. package/dist/views/List/getDocumentListItemURL.js.map +1 -0
  1757. package/dist/views/List/handleGroupBy.d.ts +6 -2
  1758. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  1759. package/dist/views/List/handleGroupBy.js +13 -3
  1760. package/dist/views/List/handleGroupBy.js.map +1 -1
  1761. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  1762. package/dist/views/List/handleServerFunction.js +1 -0
  1763. package/dist/views/List/handleServerFunction.js.map +1 -1
  1764. package/dist/views/List/index.client.d.ts.map +1 -1
  1765. package/dist/views/List/index.client.js +130 -39
  1766. package/dist/views/List/index.client.js.map +1 -1
  1767. package/dist/views/List/index.css +1 -2
  1768. package/dist/views/List/index.d.ts.map +1 -1
  1769. package/dist/views/List/index.js +91 -11
  1770. package/dist/views/List/index.js.map +1 -1
  1771. package/dist/views/List/renderListViewSlots.d.ts +3 -2
  1772. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  1773. package/dist/views/List/renderListViewSlots.js +12 -4
  1774. package/dist/views/List/renderListViewSlots.js.map +1 -1
  1775. package/dist/views/List/resolveDocumentListItemURL.d.ts +11 -0
  1776. package/dist/views/List/resolveDocumentListItemURL.d.ts.map +1 -0
  1777. package/dist/views/List/resolveDocumentListItemURL.js +30 -0
  1778. package/dist/views/List/resolveDocumentListItemURL.js.map +1 -0
  1779. package/dist/views/Login/LoginField/index.js.map +1 -1
  1780. package/dist/views/Login/LoginForm/index.js.map +1 -1
  1781. package/dist/views/Logout/LogoutClient.js.map +1 -1
  1782. package/dist/views/Logout/index.js.map +1 -1
  1783. package/dist/views/NotFound/index.client.js.map +1 -1
  1784. package/dist/views/NotFound/index.css +0 -2
  1785. package/dist/views/NotFound/page.d.ts +4 -11
  1786. package/dist/views/NotFound/page.d.ts.map +1 -1
  1787. package/dist/views/NotFound/page.js +2 -2
  1788. package/dist/views/NotFound/page.js.map +1 -1
  1789. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  1790. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  1791. package/dist/views/ResetPassword/index.js +1 -3
  1792. package/dist/views/ResetPassword/index.js.map +1 -1
  1793. package/dist/views/Root/getRouteData.d.ts +1 -8
  1794. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  1795. package/dist/views/Root/getRouteData.js +15 -16
  1796. package/dist/views/Root/getRouteData.js.map +1 -1
  1797. package/dist/views/Root/index.d.ts +6 -7
  1798. package/dist/views/Root/index.d.ts.map +1 -1
  1799. package/dist/views/Root/index.js +2 -2
  1800. package/dist/views/Root/index.js.map +1 -1
  1801. package/dist/views/Unauthorized/index.css +0 -2
  1802. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  1803. package/dist/views/Unauthorized/index.js +2 -1
  1804. package/dist/views/Unauthorized/index.js.map +1 -1
  1805. package/dist/views/Verify/index.client.js.map +1 -1
  1806. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  1807. package/dist/views/Version/Default/index.css +31 -11
  1808. package/dist/views/Version/Default/index.d.ts.map +1 -1
  1809. package/dist/views/Version/Default/index.js +332 -181
  1810. package/dist/views/Version/Default/index.js.map +1 -1
  1811. package/dist/views/Version/Default/types.d.ts +9 -1
  1812. package/dist/views/Version/Default/types.d.ts.map +1 -1
  1813. package/dist/views/Version/Default/types.js.map +1 -1
  1814. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.css +0 -1
  1815. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  1816. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  1817. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  1818. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +9 -13
  1819. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  1820. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.css +0 -1
  1821. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts +3 -2
  1822. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts.map +1 -1
  1823. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +11 -13
  1824. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  1825. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts +3 -2
  1826. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -1
  1827. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +2 -2
  1828. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  1829. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +3 -2
  1830. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +1 -1
  1831. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +43 -31
  1832. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  1833. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +3 -2
  1834. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  1835. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +2 -2
  1836. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  1837. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.css +3 -4
  1838. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +2 -2
  1839. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  1840. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  1841. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +1 -0
  1842. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  1843. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +0 -1
  1844. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +2 -2
  1845. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  1846. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +2 -2
  1847. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  1848. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts +3 -2
  1849. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts.map +1 -1
  1850. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  1851. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -2
  1852. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  1853. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +21 -21
  1854. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  1855. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -2
  1856. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  1857. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +8 -8
  1858. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  1859. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  1860. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  1861. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +5 -3
  1862. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  1863. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +0 -1
  1864. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts +2 -2
  1865. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
  1866. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +2 -2
  1867. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  1868. package/dist/views/Version/Restore/index.css +0 -11
  1869. package/dist/views/Version/Restore/index.d.ts +0 -1
  1870. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  1871. package/dist/views/Version/Restore/index.js +157 -81
  1872. package/dist/views/Version/Restore/index.js.map +1 -1
  1873. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  1874. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  1875. package/dist/views/Version/SelectComparison/index.js +113 -33
  1876. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  1877. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  1878. package/dist/views/Version/SelectLocales/index.js +1 -0
  1879. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  1880. package/dist/views/Version/index.d.ts.map +1 -1
  1881. package/dist/views/Version/index.js +5 -2
  1882. package/dist/views/Version/index.js.map +1 -1
  1883. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  1884. package/dist/views/Versions/VersionPillLabel/index.css +1 -2
  1885. package/dist/views/Versions/buildColumns.d.ts +2 -1
  1886. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  1887. package/dist/views/Versions/buildColumns.js +21 -1
  1888. package/dist/views/Versions/buildColumns.js.map +1 -1
  1889. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  1890. package/dist/views/Versions/cells/Branch/index.d.ts +12 -0
  1891. package/dist/views/Versions/cells/Branch/index.d.ts.map +1 -0
  1892. package/dist/views/Versions/cells/Branch/index.js +27 -0
  1893. package/dist/views/Versions/cells/Branch/index.js.map +1 -0
  1894. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  1895. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js.map +1 -1
  1896. package/dist/views/Versions/index.client.d.ts +0 -1
  1897. package/dist/views/Versions/index.client.d.ts.map +1 -1
  1898. package/dist/views/Versions/index.client.js +12 -12
  1899. package/dist/views/Versions/index.client.js.map +1 -1
  1900. package/dist/views/Versions/index.css +1 -1
  1901. package/dist/views/Versions/index.d.ts.map +1 -1
  1902. package/dist/views/Versions/index.js +4 -16
  1903. package/dist/views/Versions/index.js.map +1 -1
  1904. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.css +28 -0
  1905. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts +16 -0
  1906. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts.map +1 -0
  1907. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js +98 -0
  1908. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js.map +1 -0
  1909. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.css +70 -0
  1910. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts +13 -0
  1911. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts.map +1 -0
  1912. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js +81 -0
  1913. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js.map +1 -0
  1914. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.d.ts +15 -0
  1915. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.d.ts.map +1 -0
  1916. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.js +62 -0
  1917. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.js.map +1 -0
  1918. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts +39 -0
  1919. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts.map +1 -0
  1920. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js +83 -0
  1921. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js.map +1 -0
  1922. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts +9 -0
  1923. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts.map +1 -0
  1924. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js +23 -0
  1925. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js.map +1 -0
  1926. package/dist/widgets/Activity/components/DocumentList/index.css +61 -0
  1927. package/dist/widgets/Activity/components/DocumentList/index.d.ts +15 -0
  1928. package/dist/widgets/Activity/components/DocumentList/index.d.ts.map +1 -0
  1929. package/dist/widgets/Activity/components/DocumentList/index.js +56 -0
  1930. package/dist/widgets/Activity/components/DocumentList/index.js.map +1 -0
  1931. package/dist/widgets/Activity/components/EmptyState/index.css +47 -0
  1932. package/dist/widgets/Activity/components/EmptyState/index.d.ts +12 -0
  1933. package/dist/widgets/Activity/components/EmptyState/index.d.ts.map +1 -0
  1934. package/dist/widgets/Activity/components/EmptyState/index.js +37 -0
  1935. package/dist/widgets/Activity/components/EmptyState/index.js.map +1 -0
  1936. package/dist/widgets/Activity/components/Pagination/index.css +42 -0
  1937. package/dist/widgets/Activity/components/Pagination/index.d.ts +20 -0
  1938. package/dist/widgets/Activity/components/Pagination/index.d.ts.map +1 -0
  1939. package/dist/widgets/Activity/components/Pagination/index.js +125 -0
  1940. package/dist/widgets/Activity/components/Pagination/index.js.map +1 -0
  1941. package/dist/widgets/Activity/components/StatusPill/index.css +24 -0
  1942. package/dist/widgets/Activity/components/StatusPill/index.d.ts +8 -0
  1943. package/dist/widgets/Activity/components/StatusPill/index.d.ts.map +1 -0
  1944. package/dist/widgets/Activity/components/StatusPill/index.js +18 -0
  1945. package/dist/widgets/Activity/components/StatusPill/index.js.map +1 -0
  1946. package/dist/widgets/Activity/index.client.d.ts +15 -0
  1947. package/dist/widgets/Activity/index.client.d.ts.map +1 -0
  1948. package/dist/widgets/Activity/index.client.js +186 -0
  1949. package/dist/widgets/Activity/index.client.js.map +1 -0
  1950. package/dist/widgets/Activity/index.css +320 -0
  1951. package/dist/widgets/Activity/index.d.ts +13 -0
  1952. package/dist/widgets/Activity/index.d.ts.map +1 -0
  1953. package/dist/widgets/Activity/index.js +100 -0
  1954. package/dist/widgets/Activity/index.js.map +1 -0
  1955. package/dist/widgets/Activity/types.d.ts +33 -0
  1956. package/dist/widgets/Activity/types.d.ts.map +1 -0
  1957. package/dist/widgets/Activity/types.js +2 -0
  1958. package/dist/widgets/Activity/types.js.map +1 -0
  1959. package/dist/widgets/Activity/utils/cache.d.ts +33 -0
  1960. package/dist/widgets/Activity/utils/cache.d.ts.map +1 -0
  1961. package/dist/widgets/Activity/utils/cache.js +72 -0
  1962. package/dist/widgets/Activity/utils/cache.js.map +1 -0
  1963. package/dist/widgets/Activity/utils/constants.d.ts +5 -0
  1964. package/dist/widgets/Activity/utils/constants.d.ts.map +1 -0
  1965. package/dist/widgets/Activity/utils/constants.js +4 -0
  1966. package/dist/widgets/Activity/utils/constants.js.map +1 -0
  1967. package/dist/widgets/Activity/utils/documents.d.ts +11 -0
  1968. package/dist/widgets/Activity/utils/documents.d.ts.map +1 -0
  1969. package/dist/widgets/Activity/utils/documents.js +38 -0
  1970. package/dist/widgets/Activity/utils/documents.js.map +1 -0
  1971. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts +20 -0
  1972. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts.map +1 -0
  1973. package/dist/widgets/Activity/utils/getActivityWidgetDocs.js +253 -0
  1974. package/dist/widgets/Activity/utils/getActivityWidgetDocs.js.map +1 -0
  1975. package/dist/widgets/Activity/utils/state.d.ts +44 -0
  1976. package/dist/widgets/Activity/utils/state.d.ts.map +1 -0
  1977. package/dist/widgets/Activity/utils/state.js +80 -0
  1978. package/dist/widgets/Activity/utils/state.js.map +1 -0
  1979. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts +35 -0
  1980. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts.map +1 -0
  1981. package/dist/widgets/Activity/utils/useActivityDocuments.js +141 -0
  1982. package/dist/widgets/Activity/utils/useActivityDocuments.js.map +1 -0
  1983. package/dist/widgets/Activity/utils/usePageSize.d.ts +11 -0
  1984. package/dist/widgets/Activity/utils/usePageSize.d.ts.map +1 -0
  1985. package/dist/widgets/Activity/utils/usePageSize.js +35 -0
  1986. package/dist/widgets/Activity/utils/usePageSize.js.map +1 -0
  1987. package/dist/widgets/CollectionCards/index.client.d.ts +3 -0
  1988. package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -1
  1989. package/dist/widgets/CollectionCards/index.client.js +11 -6
  1990. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  1991. package/dist/widgets/CollectionCards/index.css +35 -49
  1992. package/dist/widgets/CollectionCards/index.d.ts +3 -0
  1993. package/dist/widgets/CollectionCards/index.d.ts.map +1 -1
  1994. package/dist/widgets/CollectionCards/index.js +10 -5
  1995. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1996. package/dist/widgets/CollectionQuery/SortField/index.d.ts +6 -2
  1997. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -1
  1998. package/dist/widgets/CollectionQuery/SortField/index.js +181 -73
  1999. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -1
  2000. package/dist/widgets/CollectionQuery/index.css +4 -6
  2001. package/dist/widgets/CollectionQuery/index.d.ts +3 -0
  2002. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -1
  2003. package/dist/widgets/CollectionQuery/index.js +3 -0
  2004. package/dist/widgets/CollectionQuery/index.js.map +1 -1
  2005. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts +7 -0
  2006. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts.map +1 -0
  2007. package/dist/widgets/UploadDropzone/CollectionsField/index.js +80 -0
  2008. package/dist/widgets/UploadDropzone/CollectionsField/index.js.map +1 -0
  2009. package/dist/widgets/UploadDropzone/index.client.d.ts +11 -5
  2010. package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -1
  2011. package/dist/widgets/UploadDropzone/index.client.js +56 -109
  2012. package/dist/widgets/UploadDropzone/index.client.js.map +1 -1
  2013. package/dist/widgets/UploadDropzone/index.css +52 -22
  2014. package/dist/widgets/UploadDropzone/index.d.ts +13 -6
  2015. package/dist/widgets/UploadDropzone/index.d.ts.map +1 -1
  2016. package/dist/widgets/UploadDropzone/index.js +50 -18
  2017. package/dist/widgets/UploadDropzone/index.js.map +1 -1
  2018. package/dist/widgets/Welcome/getWelcomeDisplay.d.ts +7 -0
  2019. package/dist/widgets/Welcome/getWelcomeDisplay.d.ts.map +1 -0
  2020. package/dist/widgets/Welcome/getWelcomeDisplay.js +21 -0
  2021. package/dist/widgets/Welcome/getWelcomeDisplay.js.map +1 -0
  2022. package/dist/widgets/Welcome/index.css +20 -8
  2023. package/dist/widgets/Welcome/index.d.ts +4 -1
  2024. package/dist/widgets/Welcome/index.d.ts.map +1 -1
  2025. package/dist/widgets/Welcome/index.js +20 -18
  2026. package/dist/widgets/Welcome/index.js.map +1 -1
  2027. package/dist/widgets/WidgetCard/index.css +4 -28
  2028. package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.css +2 -2
  2029. package/dist/widgets/shared/CollectionFilter/index.d.ts +13 -0
  2030. package/dist/widgets/shared/CollectionFilter/index.d.ts.map +1 -0
  2031. package/dist/widgets/shared/CollectionFilter/index.js +170 -0
  2032. package/dist/widgets/shared/CollectionFilter/index.js.map +1 -0
  2033. package/package.json +51 -28
  2034. package/dist/elements/AppHeader/EditViewWidthSettings/index.css +0 -5
  2035. package/dist/elements/AppHeader/EditViewWidthSettings/index.d.ts +0 -4
  2036. package/dist/elements/AppHeader/EditViewWidthSettings/index.d.ts.map +0 -1
  2037. package/dist/elements/AppHeader/EditViewWidthSettings/index.js +0 -77
  2038. package/dist/elements/AppHeader/EditViewWidthSettings/index.js.map +0 -1
  2039. package/dist/elements/AppHeader/SettingsMenu/index.d.ts +0 -4
  2040. package/dist/elements/AppHeader/SettingsMenu/index.d.ts.map +0 -1
  2041. package/dist/elements/AppHeader/SettingsMenu/index.js +0 -59
  2042. package/dist/elements/AppHeader/SettingsMenu/index.js.map +0 -1
  2043. package/dist/elements/AppHeader/TypeSizeSettings/index.d.ts +0 -3
  2044. package/dist/elements/AppHeader/TypeSizeSettings/index.d.ts.map +0 -1
  2045. package/dist/elements/AppHeader/TypeSizeSettings/index.js +0 -61
  2046. package/dist/elements/AppHeader/TypeSizeSettings/index.js.map +0 -1
  2047. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +0 -10
  2048. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +0 -1
  2049. package/dist/elements/ColumnSelection/matchesColumnSearch.js +0 -21
  2050. package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +0 -1
  2051. package/dist/providers/Root/index.d.ts +0 -28
  2052. package/dist/providers/Root/index.d.ts.map +0 -1
  2053. package/dist/providers/Root/index.js +0 -164
  2054. package/dist/providers/Root/index.js.map +0 -1
  2055. package/dist/utilities/dateLocales.d.ts +0 -30
  2056. package/dist/utilities/dateLocales.d.ts.map +0 -1
  2057. package/dist/utilities/dateLocales.js +0 -57
  2058. package/dist/utilities/dateLocales.js.map +0 -1
  2059. package/dist/utilities/getRequestLocale.d.ts +0 -7
  2060. package/dist/utilities/getRequestLocale.d.ts.map +0 -1
  2061. package/dist/utilities/getRequestLocale.js +0 -20
  2062. package/dist/utilities/getRequestLocale.js.map +0 -1
  2063. package/dist/utilities/initReq.d.ts +0 -16
  2064. package/dist/utilities/initReq.d.ts.map +0 -1
  2065. package/dist/utilities/initReq.js +0 -146
  2066. package/dist/utilities/initReq.js.map +0 -1
  2067. package/dist/utilities/selectiveCache.d.ts +0 -12
  2068. package/dist/utilities/selectiveCache.d.ts.map +0 -1
  2069. package/dist/utilities/selectiveCache.js +0 -37
  2070. package/dist/utilities/selectiveCache.js.map +0 -1
  2071. package/dist/views/Edit/useEditViewWidth.d.ts +0 -8
  2072. package/dist/views/Edit/useEditViewWidth.d.ts.map +0 -1
  2073. package/dist/views/Edit/useEditViewWidth.js +0 -56
  2074. package/dist/views/Edit/useEditViewWidth.js.map +0 -1
  2075. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts +0 -10
  2076. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +0 -1
  2077. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +0 -76
  2078. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +0 -1
  2079. package/dist/widgets/RecentlyViewed/DocumentActivity/index.css +0 -193
  2080. package/dist/widgets/RecentlyViewed/DocumentActivity/index.d.ts +0 -5
  2081. package/dist/widgets/RecentlyViewed/DocumentActivity/index.d.ts.map +0 -1
  2082. package/dist/widgets/RecentlyViewed/DocumentActivity/index.js +0 -225
  2083. package/dist/widgets/RecentlyViewed/DocumentActivity/index.js.map +0 -1
  2084. package/dist/widgets/RecentlyViewed/DocumentItem/index.css +0 -181
  2085. package/dist/widgets/RecentlyViewed/DocumentItem/index.d.ts +0 -11
  2086. package/dist/widgets/RecentlyViewed/DocumentItem/index.d.ts.map +0 -1
  2087. package/dist/widgets/RecentlyViewed/DocumentItem/index.js +0 -104
  2088. package/dist/widgets/RecentlyViewed/DocumentItem/index.js.map +0 -1
  2089. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.d.ts +0 -10
  2090. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.d.ts.map +0 -1
  2091. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.js +0 -85
  2092. package/dist/widgets/RecentlyViewed/getDocumentThumbnail.js.map +0 -1
  2093. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.d.ts +0 -7
  2094. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.d.ts.map +0 -1
  2095. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.js +0 -206
  2096. package/dist/widgets/RecentlyViewed/getDocumentWidgetData.js.map +0 -1
  2097. package/dist/widgets/RecentlyViewed/index.d.ts +0 -8
  2098. package/dist/widgets/RecentlyViewed/index.d.ts.map +0 -1
  2099. package/dist/widgets/RecentlyViewed/index.js +0 -18
  2100. package/dist/widgets/RecentlyViewed/index.js.map +0 -1
  2101. package/dist/widgets/RecentlyViewed/shared.d.ts +0 -38
  2102. package/dist/widgets/RecentlyViewed/shared.d.ts.map +0 -1
  2103. package/dist/widgets/RecentlyViewed/shared.js +0 -70
  2104. package/dist/widgets/RecentlyViewed/shared.js.map +0 -1
  2105. package/dist/widgets/WidgetIcon/assets/images.svg +0 -3
  2106. package/dist/widgets/WidgetIcon/assets/pin-solid.svg +0 -3
  2107. package/dist/widgets/WidgetIcon/assets/pin.svg +0 -3
  2108. package/dist/widgets/WidgetIcon/assets/table.svg +0 -3
  2109. package/dist/widgets/WidgetIcon/index.css +0 -23
  2110. package/dist/widgets/WidgetIcon/index.d.ts +0 -6
  2111. package/dist/widgets/WidgetIcon/index.d.ts.map +0 -1
  2112. package/dist/widgets/WidgetIcon/index.js +0 -10
  2113. package/dist/widgets/WidgetIcon/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","names":["c","_c","DndContext","DragOverlay","useDraggable","useDroppable","snapCenterToCursor","React","useEffect","useMemo","useState","Button","Popup","PopupList","ChevronIcon","useTranslation","DashboardStepNav","useDashboardLayout","closestInXAxis","useDashboardSensors","WidgetEditControl","snapCenterToCursorOnlyForPointer","args","activatorEvent","transform","WIDTH_TO_PERCENTAGE","small","medium","large","full","ModularDashboardClient","t0","$","clientLayout","initialLayout","widgets","t","addWidget","cancel","cancelModal","currentLayout","deleteWidget","isEditing","moveWidget","resetLayout","resizeWidget","saveLayout","setIsEditing","updateWidgetData","activeDragId","setActiveDragId","activeControlsWidgetID","setActiveControlsWidgetID","sensors","t1","t2","t3","t4","Symbol","for","t5","event","over","droppableId","id","i","lastIndexOf","slug","slice","position","active","moveFromIndex","findIndex","widget","item","moveToIndex","widget_0","t6","event_0","_jsxs","children","_jsx","autoScroll","enabled","threshold","x","y","collisionDetection","onDragCancel","onDragEnd","onDragStart","className","style","display","flexWrap","length","map","widget_1","_index","Fragment","DraggableItem","disabled","width","filter","Boolean","join","inert","component","onPointerDown","_temp","onSave","data","widgetData","widgetID","WidgetWidthDropdown","currentWidth","maxWidth","minWidth","onOpenChange","isOpen","onResize","buttonStyle","icon","margin","onClick","round","dropAnimation","duration","modifiers","draggedWidget","find","widget_2","e","stopPropagation","validOptions","minPercentage","maxPercentage","Object","entries","key","value","percentage","option","isDisabled","onToggleClose","onToggleOpen","render","close","ButtonGroup","isSelected","toFixed","renderButton","_active","onKeyDown","ariaProps","extraButtonProps","size","selected","verticalAlign","props","attributes","isDragging","listeners","setNodeRef","mergedStyles","opacity","draggableProps","DroppableItem","ref","height","isOver","t7","t8","left","right","top","bottom","borderRadius","backgroundColor","marginBottom","marginTop","pointerEvents","zIndex"],"sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { Modifier } from '@dnd-kit/core'\nimport type { ClientWidget, WidgetWidth } from 'payload'\n\nimport { DndContext, DragOverlay, useDraggable, useDroppable } from '@dnd-kit/core'\nimport { snapCenterToCursor } from '@dnd-kit/modifiers'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { Button } from '../../../../elements/Button/index.js'\nimport { Popup } from '../../../../elements/Popup/index.js'\nimport * as PopupList from '../../../../elements/Popup/PopupButtonList/index.js'\nimport { ChevronIcon } from '../../../../icons/Chevron/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { DashboardStepNav } from './DashboardStepNav.js'\nimport { useDashboardLayout } from './useDashboardLayout.js'\nimport { closestInXAxis } from './utils/collisionDetection.js'\nimport { useDashboardSensors } from './utils/sensors.js'\nimport { WidgetEditControl } from './WidgetEditControl.js'\n\n/**\n * Custom modifier that only applies snapCenterToCursor for pointer events.\n * During keyboard navigation, we handle positioning ourselves via the coordinate getter.\n */\nconst snapCenterToCursorOnlyForPointer: Modifier = (args) => {\n const { activatorEvent } = args\n\n // Only apply snap for pointer events (mouse/touch), not keyboard\n // Check activatorEvent.type since KeyboardEvent may not exist on server\n if (activatorEvent && 'key' in activatorEvent) {\n return args.transform\n }\n\n return snapCenterToCursor(args)\n}\n\nexport type WidgetItem = {\n data?: Record<string, unknown>\n id: string\n maxWidth: WidgetWidth\n minWidth: WidgetWidth\n width: WidgetWidth\n}\n\nexport type WidgetInstanceClient = {\n component: React.ReactNode\n item: WidgetItem\n}\n\nexport type DropTargetWidget = {\n position: 'after' | 'before'\n widget: WidgetInstanceClient\n} | null\n\n/* eslint-disable perfectionist/sort-objects */\nconst WIDTH_TO_PERCENTAGE = {\n 'x-small': 25,\n small: (1 / 3) * 100,\n medium: 50,\n large: (2 / 3) * 100,\n 'x-large': 75,\n full: 100,\n} as const\n\nexport function ModularDashboardClient({\n clientLayout: initialLayout,\n widgets,\n}: {\n clientLayout: WidgetInstanceClient[]\n widgets: ClientWidget[]\n}) {\n const { t } = useTranslation()\n const {\n addWidget,\n cancel,\n cancelModal,\n currentLayout,\n deleteWidget,\n isEditing,\n moveWidget,\n resetLayout,\n resizeWidget,\n saveLayout,\n setIsEditing,\n updateWidgetData,\n } = useDashboardLayout(initialLayout)\n\n const [activeDragId, setActiveDragId] = useState<null | string>(null)\n const [activeControlsWidgetID, setActiveControlsWidgetID] = useState<null | string>(null)\n const sensors = useDashboardSensors()\n\n useEffect(() => {\n if (!isEditing) {\n setActiveControlsWidgetID(null)\n }\n }, [isEditing])\n\n return (\n <div>\n <DndContext\n autoScroll={{\n enabled: true,\n threshold: {\n x: 0, // No horizontal scroll\n y: 0.2, // Allow vertical scroll at 20% from edge\n },\n }}\n collisionDetection={closestInXAxis}\n // https://github.com/clauderic/dnd-kit/issues/926#issuecomment-1640115665\n id=\"dashboard-dnd-context\"\n onDragCancel={() => {\n setActiveDragId(null)\n }}\n onDragEnd={(event) => {\n if (!event.over) {\n setActiveDragId(null)\n return\n }\n const droppableId = event.over.id as string\n const i = droppableId.lastIndexOf('-')\n const slug = droppableId.slice(0, i)\n const position = droppableId.slice(i + 1)\n\n if (slug === event.active.id) {\n return\n }\n\n const moveFromIndex = currentLayout?.findIndex(\n (widget) => widget.item.id === event.active.id,\n )\n let moveToIndex = currentLayout?.findIndex((widget) => widget.item.id === slug)\n if (moveFromIndex < moveToIndex) {\n moveToIndex--\n }\n if (position === 'after') {\n moveToIndex++\n }\n moveWidget({ moveFromIndex, moveToIndex })\n setActiveDragId(null)\n }}\n onDragStart={(event) => {\n setActiveDragId(event.active.id as string)\n }}\n sensors={sensors}\n >\n <div\n className={`modular-dashboard ${isEditing ? 'editing' : ''}`}\n style={{\n display: 'flex',\n flexWrap: 'wrap',\n // Don't add gap here! We need to use padding on the widgets instead\n // to make sure all rows have the same width always.\n }}\n >\n {currentLayout?.length === 0 && (\n <div className=\"modular-dashboard__empty\">\n <p>{t('dashboard:noItems')}</p>\n </div>\n )}\n {currentLayout?.map((widget, _index) => (\n <React.Fragment key={widget.item.id}>\n <DraggableItem\n disabled={!isEditing}\n id={widget.item.id}\n style={{\n width: `${WIDTH_TO_PERCENTAGE[widget.item.width]}%`,\n }}\n width={widget.item.width}\n >\n <div\n className={[\n 'widget-wrapper',\n isEditing ? 'widget-wrapper--editing' : '',\n activeControlsWidgetID === widget.item.id\n ? 'widget-wrapper--controls-active'\n : '',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <div aria-hidden={isEditing} className=\"widget-content\" inert={isEditing}>\n {widget.component}\n </div>\n {isEditing && <div aria-hidden className=\"widget-wrapper__edit-overlay\" />}\n {isEditing && (\n <div\n className=\"widget-wrapper__controls\"\n onPointerDown={(e) => e.stopPropagation()}\n >\n <WidgetEditControl\n onSave={(data) => {\n updateWidgetData(widget.item.id, data)\n }}\n widgetData={widget.item.data}\n widgetID={widget.item.id}\n />\n <WidgetWidthDropdown\n currentWidth={widget.item.width}\n maxWidth={widget.item.maxWidth}\n minWidth={widget.item.minWidth}\n onOpenChange={(isOpen) => {\n setActiveControlsWidgetID(isOpen ? widget.item.id : null)\n }}\n onResize={(width) => resizeWidget(widget.item.id, width)}\n />\n <Button\n aria-label={t('dashboard:deleteWidget', { id: widget.item.id })}\n buttonStyle=\"destructive\"\n className=\"widget-wrapper__delete-btn\"\n icon=\"x\"\n margin={false}\n onClick={() => deleteWidget(widget.item.id)}\n round\n />\n </div>\n )}\n </div>\n </DraggableItem>\n </React.Fragment>\n ))}\n <DragOverlay\n className=\"drag-overlay\"\n dropAnimation={{\n duration: 100,\n }}\n // Uses custom modifier that only applies for pointer, not keyboard navigation.\n modifiers={[snapCenterToCursorOnlyForPointer]}\n >\n {activeDragId\n ? (() => {\n const draggedWidget = currentLayout?.find(\n (widget) => widget.item.id === activeDragId,\n )\n return draggedWidget ? (\n <div\n style={{\n transform: 'scale(0.25)',\n }}\n >\n <div\n className={`widget-wrapper ${isEditing ? 'widget-wrapper--editing' : ''}`}\n >\n <div className=\"widget-content\">{draggedWidget.component}</div>\n </div>\n </div>\n ) : null\n })()\n : null}\n </DragOverlay>\n </div>\n </DndContext>\n <DashboardStepNav\n addWidget={addWidget}\n cancel={cancel}\n isEditing={isEditing}\n resetLayout={resetLayout}\n saveLayout={saveLayout}\n setIsEditing={setIsEditing}\n widgets={widgets}\n />\n {cancelModal}\n </div>\n )\n}\n\nfunction WidgetWidthDropdown({\n currentWidth,\n maxWidth,\n minWidth,\n onOpenChange,\n onResize,\n}: {\n currentWidth: WidgetWidth\n maxWidth: WidgetWidth\n minWidth: WidgetWidth\n onOpenChange: (isOpen: boolean) => void\n onResize: (width: WidgetWidth) => void\n}) {\n // Filter options based on minWidth and maxWidth\n const validOptions = useMemo(() => {\n const minPercentage = WIDTH_TO_PERCENTAGE[minWidth]\n const maxPercentage = WIDTH_TO_PERCENTAGE[maxWidth]\n\n return Object.entries(WIDTH_TO_PERCENTAGE)\n .map(([key, value]) => ({\n width: key as WidgetWidth,\n percentage: value,\n }))\n .filter((option) => option.percentage >= minPercentage && option.percentage <= maxPercentage)\n }, [minWidth, maxWidth])\n\n const isDisabled = validOptions.length <= 1\n\n if (isDisabled) {\n return null\n }\n\n return (\n <Popup\n onToggleClose={() => onOpenChange(false)}\n onToggleOpen={onOpenChange}\n render={({ close }) => (\n <PopupList.ButtonGroup>\n {validOptions.map((option) => {\n const isSelected = option.width === currentWidth\n return (\n <PopupList.Button\n active={isSelected}\n key={option.width}\n onClick={() => {\n onResize(option.width)\n close()\n }}\n >\n <span className=\"widget-wrapper__size-btn-label\">{option.width}</span>\n <span className=\"widget-wrapper__size-btn-percentage\">\n {option.percentage.toFixed(0)}%\n </span>\n </PopupList.Button>\n )\n })}\n </PopupList.ButtonGroup>\n )}\n renderButton={({ active: _active, onClick, onKeyDown, ...ariaProps }) => (\n <Button\n buttonStyle=\"secondary\"\n className=\"widget-wrapper__size-btn\"\n extraButtonProps={{\n onKeyDown,\n onPointerDown: (e) => e.stopPropagation(),\n ...ariaProps,\n }}\n icon={<ChevronIcon className=\"widget-wrapper__size-btn-icon\" size={16} />}\n margin={false}\n onClick={onClick}\n selected={_active}\n >\n {currentWidth}\n </Button>\n )}\n size=\"small\"\n verticalAlign=\"bottom\"\n />\n )\n}\n\nfunction DraggableItem(props: {\n children: React.ReactNode\n disabled?: boolean\n id: string\n style?: React.CSSProperties\n width: WidgetWidth\n}) {\n const { attributes, isDragging, listeners, setNodeRef } = useDraggable({\n id: props.id,\n disabled: props.disabled,\n })\n\n const mergedStyles: React.CSSProperties = {\n ...props.style,\n opacity: isDragging ? 0.3 : 1,\n position: 'relative',\n }\n\n // Only apply draggable attributes and listeners when not disabled\n // to prevent disabling interactive elements inside the widget\n const draggableProps = props.disabled ? {} : { ...listeners, ...attributes }\n\n return (\n <div className=\"widget\" data-slug={props.id} data-width={props.width} style={mergedStyles}>\n <DroppableItem id={props.id} position=\"before\" />\n <div\n className=\"draggable\"\n id={props.id}\n ref={setNodeRef}\n {...draggableProps}\n style={{\n width: '100%',\n height: '100%',\n }}\n >\n {props.children}\n </div>\n <DroppableItem id={props.id} position=\"after\" />\n </div>\n )\n}\n\nfunction DroppableItem({ id, position }: { id: string; position: 'after' | 'before' }) {\n const { setNodeRef, isOver } = useDroppable({ id: `${id}-${position}`, data: { position } })\n\n return (\n <div\n className=\"droppable-widget\"\n data-testid={`${id}-${position}`}\n ref={setNodeRef}\n style={{\n position: 'absolute',\n left: position === 'before' ? -2 : 'auto',\n right: position === 'after' ? -2 : 'auto',\n top: 0,\n bottom: 0,\n borderRadius: '1000px',\n width: '4px',\n backgroundColor: isOver ? 'var(--color-bg-brand-secondary)' : 'transparent',\n marginBottom: '10px',\n marginTop: '10px',\n pointerEvents: 'none',\n zIndex: 1000,\n }}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.client.js","names":["c","_c","DndContext","DragOverlay","useDraggable","useDroppable","snapCenterToCursor","getTranslation","toWords","React","useEffect","useMemo","useState","Button","Popup","PopupList","ChevronIcon","useTranslation","DashboardStepNav","useDashboardLayout","closestInXAxis","useDashboardSensors","WidgetContent","WidgetEditControl","snapCenterToCursorOnlyForPointer","args","activatorEvent","transform","WIDTH_TO_PERCENTAGE","small","medium","large","full","ModularDashboardClient","t0","$","clientLayout","initialLayout","widgets","i18n","t","addWidget","cancel","cancelModal","currentLayout","deleteWidget","isEditing","moveWidget","resetLayout","resizeWidget","saveLayout","setIsEditing","updateWidgetData","activeDragId","setActiveDragId","activeControlsWidgetID","setActiveControlsWidgetID","sensors","t1","t2","id","index","widgetID","String","replace","slug","slice","lastIndexOf","label","find","widget","position","findIndex","widget_0","item","describeWidget","t3","active","announceCancel","t4","active_0","over","moveToIndex","getWidgetMoveIndexes","activeID","layout","overID","title","destination","announceMove","event","moveFromIndex","moveToIndex_0","t5","event_0","message","undefined","t6","t7","active_1","onDragCancel","onDragEnd","onDragOver","onDragStart","announcements","t8","t9","t10","t11","Symbol","for","t12","event_1","indexes","t13","event_2","_jsxs","children","_jsx","accessibility","autoScroll","enabled","threshold","x","y","collisionDetection","className","style","display","flexWrap","length","map","widget_1","slug_0","label_0","widgetConfig","DraggableItem","disabled","width","t14","dragHandle","filter","Boolean","join","component","onSave","data","widgetData","widgetLabel","WidgetWidthDropdown","currentWidth","maxWidth","minWidth","onOpenChange","isOpen","onResize","buttonStyle","extraButtonProps","tabIndex","icon","margin","onClick","round","dropAnimation","duration","modifiers","draggedWidget","widget_2","inert","minPercentage","maxPercentage","Object","entries","_temp","option","percentage","validOptions","isDisabled","close","ButtonGroup","option_0","isSelected","toFixed","_active","onKeyDown","ariaProps","size","selected","onToggleClose","onToggleOpen","popupType","render","verticalAlign","key","value","props","attributes","isDragging","listeners","setActivatorNodeRef","setNodeRef","mergedStyles","opacity","DroppableItem","ref","role","height","type","isOver","left","right","top","bottom","borderRadius","backgroundColor","marginBottom","marginTop","pointerEvents","zIndex","endsWith"],"sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/index.client.tsx"],"sourcesContent":["'use client'\n\nimport type { Announcements, Modifier, UniqueIdentifier } from '@dnd-kit/core'\nimport type { ClientWidget, WidgetWidth } from 'payload'\n\nimport { DndContext, DragOverlay, useDraggable, useDroppable } from '@dnd-kit/core'\nimport { snapCenterToCursor } from '@dnd-kit/modifiers'\nimport { getTranslation } from '@payloadcms/translations'\nimport { toWords } from 'payload/shared'\nimport React, { useEffect, useMemo, useState } from 'react'\n\nimport { Button } from '../../../../elements/Button/index.js'\nimport { Popup } from '../../../../elements/Popup/index.js'\nimport * as PopupList from '../../../../elements/Popup/PopupButtonList/index.js'\nimport { ChevronIcon } from '../../../../icons/Chevron/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { DashboardStepNav } from './DashboardStepNav.js'\nimport { useDashboardLayout } from './useDashboardLayout.js'\nimport { closestInXAxis } from './utils/collisionDetection.js'\nimport { useDashboardSensors } from './utils/sensors.js'\nimport { WidgetContent } from './WidgetContent/index.js'\nimport { WidgetEditControl } from './WidgetEditControl.js'\n\n/**\n * Custom modifier that only applies snapCenterToCursor for pointer events.\n * During keyboard navigation, we handle positioning ourselves via the coordinate getter.\n */\nconst snapCenterToCursorOnlyForPointer: Modifier = (args) => {\n const { activatorEvent } = args\n\n // Only apply snap for pointer events (mouse/touch), not keyboard\n // Check activatorEvent.type since KeyboardEvent may not exist on server\n if (activatorEvent && 'key' in activatorEvent) {\n return args.transform\n }\n\n return snapCenterToCursor(args)\n}\n\nexport type WidgetItem = {\n data?: Record<string, unknown>\n id: string\n maxWidth: WidgetWidth\n minWidth: WidgetWidth\n width: WidgetWidth\n}\n\nexport type WidgetInstanceClient = {\n component: React.ReactNode\n item: WidgetItem\n}\n\nexport type DropTargetWidget = {\n position: 'after' | 'before'\n widget: WidgetInstanceClient\n} | null\n\n/* eslint-disable perfectionist/sort-objects */\nconst WIDTH_TO_PERCENTAGE = {\n 'x-small': 25,\n small: (1 / 3) * 100,\n medium: 50,\n large: (2 / 3) * 100,\n 'x-large': 75,\n full: 100,\n} as const\n\nexport function ModularDashboardClient({\n clientLayout: initialLayout,\n widgets,\n}: {\n clientLayout: WidgetInstanceClient[]\n widgets: ClientWidget[]\n}) {\n const { i18n, t } = useTranslation()\n const {\n addWidget,\n cancel,\n cancelModal,\n currentLayout,\n deleteWidget,\n isEditing,\n moveWidget,\n resetLayout,\n resizeWidget,\n saveLayout,\n setIsEditing,\n updateWidgetData,\n } = useDashboardLayout(initialLayout)\n\n const [activeDragId, setActiveDragId] = useState<null | string>(null)\n const [activeControlsWidgetID, setActiveControlsWidgetID] = useState<null | string>(null)\n const sensors = useDashboardSensors()\n const announcements = useMemo<Announcements>(() => {\n const describeWidget = ({ id, index }: { id: UniqueIdentifier; index?: number }) => {\n const widgetID = String(id).replace(/-(?:before|after)$/, '')\n const slug = widgetID.slice(0, widgetID.lastIndexOf('-'))\n const label = getTranslation(\n widgets.find((widget) => widget.slug === slug)?.label ?? toWords(slug),\n i18n,\n )\n const position = index ?? currentLayout.findIndex((widget) => widget.item.id === widgetID)\n\n return `${label}, ${t('general:order')}: ${position + 1}`\n }\n const announceCancel: Announcements['onDragCancel'] = ({ active }) =>\n `${t('general:cancel')}: ${describeWidget({ id: active.id })}`\n const announceMove: NonNullable<Announcements['onDragOver']> = ({ active, over }) => {\n if (!over) {\n return undefined\n }\n const { moveToIndex } = getWidgetMoveIndexes({\n activeID: active.id,\n layout: currentLayout,\n overID: over.id,\n })\n\n return t('hierarchy:itemsMovedTo', {\n title: describeWidget({ id: active.id }),\n destination: describeWidget({ id: over.id, index: moveToIndex }),\n })\n }\n\n return {\n onDragCancel: announceCancel,\n onDragEnd: (event) => {\n if (event.over) {\n const { moveFromIndex, moveToIndex } = getWidgetMoveIndexes({\n activeID: event.active.id,\n layout: currentLayout,\n overID: event.over.id,\n })\n\n if (moveFromIndex !== moveToIndex) {\n return announceMove(event)\n }\n }\n\n return announceCancel(event)\n },\n onDragOver: (event) => {\n const message = announceMove(event)\n\n return message ? `${t('general:move')}: ${message}` : undefined\n },\n onDragStart: ({ active }) =>\n `${t('general:dragToReorder')}: ${describeWidget({ id: active.id })}`,\n }\n }, [currentLayout, i18n, t, widgets])\n\n useEffect(() => {\n if (!isEditing) {\n setActiveControlsWidgetID(null)\n }\n }, [isEditing])\n\n return (\n <div>\n <DndContext\n accessibility={{ announcements }}\n autoScroll={{\n enabled: true,\n threshold: {\n x: 0, // No horizontal scroll\n y: 0.2, // Allow vertical scroll at 20% from edge\n },\n }}\n collisionDetection={closestInXAxis}\n // https://github.com/clauderic/dnd-kit/issues/926#issuecomment-1640115665\n id=\"dashboard-dnd-context\"\n onDragCancel={() => {\n setActiveDragId(null)\n }}\n onDragEnd={(event) => {\n setActiveDragId(null)\n\n if (!event.over) {\n return\n }\n const indexes = getWidgetMoveIndexes({\n activeID: event.active.id,\n layout: currentLayout,\n overID: event.over.id,\n })\n\n if (indexes.moveFromIndex !== indexes.moveToIndex) {\n moveWidget(indexes)\n }\n }}\n onDragStart={(event) => {\n setActiveDragId(event.active.id as string)\n }}\n sensors={sensors}\n >\n <div\n className={`modular-dashboard ${isEditing ? 'editing' : ''}`}\n style={{\n display: 'flex',\n flexWrap: 'wrap',\n // Don't add gap here! We need to use padding on the widgets instead\n // to make sure all rows have the same width always.\n }}\n >\n {currentLayout?.length === 0 && (\n <div className=\"modular-dashboard__empty\">\n <p>{t('dashboard:noItems')}</p>\n </div>\n )}\n {currentLayout?.map((widget) => {\n const slug = widget.item.id.slice(0, widget.item.id.lastIndexOf('-'))\n const label = getTranslation(\n widgets.find((widgetConfig) => widgetConfig.slug === slug)?.label ?? toWords(slug),\n i18n,\n )\n\n return (\n <DraggableItem\n disabled={!isEditing}\n id={widget.item.id}\n key={widget.item.id}\n label={label}\n style={{\n width: `${WIDTH_TO_PERCENTAGE[widget.item.width]}%`,\n }}\n width={widget.item.width}\n >\n {({ dragHandle }) => (\n <div\n className={[\n 'widget-wrapper',\n isEditing ? 'widget-wrapper--editing' : '',\n activeControlsWidgetID === widget.item.id\n ? 'widget-wrapper--controls-active'\n : '',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <WidgetContent id={`${widget.item.id}-content`} isEditing={isEditing}>\n {widget.component}\n </WidgetContent>\n {dragHandle}\n {isEditing && (\n <div className=\"widget-wrapper__controls\">\n <WidgetEditControl\n onSave={(data) => {\n updateWidgetData(widget.item.id, data)\n }}\n widgetData={widget.item.data}\n widgetID={widget.item.id}\n widgetLabel={label}\n />\n <WidgetWidthDropdown\n currentWidth={widget.item.width}\n maxWidth={widget.item.maxWidth}\n minWidth={widget.item.minWidth}\n onOpenChange={(isOpen) => {\n setActiveControlsWidgetID(isOpen ? widget.item.id : null)\n }}\n onResize={(width) => resizeWidget(widget.item.id, width)}\n widgetLabel={label}\n />\n <Button\n aria-label={t('general:deleteLabel', { label })}\n buttonStyle=\"destructive\"\n className=\"widget-wrapper__delete-btn\"\n extraButtonProps={{ tabIndex: 0 }}\n icon=\"x\"\n margin={false}\n onClick={() => deleteWidget(widget.item.id)}\n round\n />\n </div>\n )}\n </div>\n )}\n </DraggableItem>\n )\n })}\n <DragOverlay\n className=\"drag-overlay\"\n dropAnimation={{\n duration: 100,\n }}\n // Uses custom modifier that only applies for pointer, not keyboard navigation.\n modifiers={[snapCenterToCursorOnlyForPointer]}\n >\n {activeDragId\n ? (() => {\n const draggedWidget = currentLayout?.find(\n (widget) => widget.item.id === activeDragId,\n )\n return draggedWidget ? (\n <div\n aria-hidden=\"true\"\n inert\n style={{\n transform: 'scale(0.25)',\n }}\n >\n <div\n className={`widget-wrapper ${isEditing ? 'widget-wrapper--editing' : ''}`}\n >\n <div className=\"widget-content\">{draggedWidget.component}</div>\n </div>\n </div>\n ) : null\n })()\n : null}\n </DragOverlay>\n </div>\n </DndContext>\n <DashboardStepNav\n addWidget={addWidget}\n cancel={cancel}\n isEditing={isEditing}\n resetLayout={resetLayout}\n saveLayout={saveLayout}\n setIsEditing={setIsEditing}\n widgets={widgets}\n />\n {cancelModal}\n </div>\n )\n}\n\nfunction WidgetWidthDropdown({\n currentWidth,\n maxWidth,\n minWidth,\n onOpenChange,\n onResize,\n widgetLabel,\n}: {\n currentWidth: WidgetWidth\n maxWidth: WidgetWidth\n minWidth: WidgetWidth\n onOpenChange: (isOpen: boolean) => void\n onResize: (width: WidgetWidth) => void\n widgetLabel: string\n}) {\n const { t } = useTranslation()\n\n // Filter options based on minWidth and maxWidth\n const validOptions = useMemo(() => {\n const minPercentage = WIDTH_TO_PERCENTAGE[minWidth]\n const maxPercentage = WIDTH_TO_PERCENTAGE[maxWidth]\n\n return Object.entries(WIDTH_TO_PERCENTAGE)\n .map(([key, value]) => ({\n width: key as WidgetWidth,\n percentage: value,\n }))\n .filter((option) => option.percentage >= minPercentage && option.percentage <= maxPercentage)\n }, [minWidth, maxWidth])\n\n const isDisabled = validOptions.length <= 1\n\n if (isDisabled) {\n return null\n }\n\n return (\n <Popup\n onToggleClose={() => onOpenChange(false)}\n onToggleOpen={onOpenChange}\n popupType=\"menu\"\n render={({ close }) => (\n <PopupList.ButtonGroup>\n {validOptions.map((option) => {\n const isSelected = option.width === currentWidth\n return (\n <PopupList.Button\n active={isSelected}\n key={option.width}\n onClick={() => {\n onResize(option.width)\n close()\n }}\n >\n <span className=\"widget-wrapper__size-btn-label\">{option.width}</span>\n <span className=\"widget-wrapper__size-btn-percentage\">\n {option.percentage.toFixed(0)}%\n </span>\n </PopupList.Button>\n )\n })}\n </PopupList.ButtonGroup>\n )}\n renderButton={({ active: _active, onClick, onKeyDown, ...ariaProps }) => (\n <Button\n aria-label={t('dashboard:resizeWidget', { label: widgetLabel, size: currentWidth })}\n buttonStyle=\"secondary\"\n className=\"widget-wrapper__size-btn\"\n extraButtonProps={{\n onKeyDown,\n ...ariaProps,\n tabIndex: 0,\n }}\n icon={<ChevronIcon className=\"widget-wrapper__size-btn-icon\" size={16} />}\n margin={false}\n onClick={onClick}\n selected={_active}\n >\n {currentWidth}\n </Button>\n )}\n size=\"small\"\n verticalAlign=\"bottom\"\n />\n )\n}\n\nfunction DraggableItem(props: {\n children: (args: { dragHandle: React.ReactNode }) => React.ReactNode\n disabled?: boolean\n id: string\n label: string\n style?: React.CSSProperties\n width: WidgetWidth\n}) {\n const { t } = useTranslation()\n const { attributes, isDragging, listeners, setActivatorNodeRef, setNodeRef } = useDraggable({\n id: props.id,\n disabled: props.disabled,\n })\n\n const mergedStyles: React.CSSProperties = {\n ...props.style,\n opacity: isDragging ? 0.3 : 1,\n position: 'relative',\n }\n\n return (\n <div className=\"widget\" data-slug={props.id} data-width={props.width} style={mergedStyles}>\n <DroppableItem id={props.id} position=\"before\" />\n <div\n aria-label={props.label}\n aria-labelledby={props.disabled ? undefined : `${props.id}-content`}\n className=\"draggable\"\n id={props.id}\n ref={setNodeRef}\n role=\"group\"\n style={{\n width: '100%',\n height: '100%',\n position: 'relative',\n }}\n tabIndex={props.disabled ? undefined : 0}\n >\n {props.children({\n dragHandle: !props.disabled && (\n <button\n {...attributes}\n {...listeners}\n aria-describedby={[attributes['aria-describedby'], `${props.id}-content`]\n .filter(Boolean)\n .join(' ')}\n aria-label={t('general:dragToReorder')}\n className=\"widget-wrapper__edit-overlay widget-wrapper__drag-btn\"\n ref={setActivatorNodeRef}\n type=\"button\"\n />\n ),\n })}\n </div>\n <DroppableItem id={props.id} position=\"after\" />\n </div>\n )\n}\n\nfunction DroppableItem({ id, position }: { id: string; position: 'after' | 'before' }) {\n const { setNodeRef, isOver } = useDroppable({ id: `${id}-${position}`, data: { position } })\n\n return (\n <div\n className=\"droppable-widget\"\n data-testid={`${id}-${position}`}\n ref={setNodeRef}\n style={{\n position: 'absolute',\n left: position === 'before' ? -2 : 'auto',\n right: position === 'after' ? -2 : 'auto',\n top: 0,\n bottom: 0,\n borderRadius: '1000px',\n width: '4px',\n backgroundColor: isOver ? 'var(--color-bg-brand-secondary)' : 'transparent',\n marginBottom: '10px',\n marginTop: '10px',\n pointerEvents: 'none',\n zIndex: 1000,\n }}\n />\n )\n}\n\nfunction getWidgetMoveIndexes({\n activeID,\n layout,\n overID,\n}: {\n activeID: UniqueIdentifier\n layout: WidgetInstanceClient[]\n overID: UniqueIdentifier\n}) {\n const widgetID = String(overID).replace(/-(?:before|after)$/, '')\n const moveFromIndex = layout.findIndex((widget) => widget.item.id === activeID)\n let moveToIndex = layout.findIndex((widget) => widget.item.id === widgetID)\n\n if (widgetID !== activeID) {\n if (moveFromIndex < moveToIndex) {\n moveToIndex--\n }\n if (String(overID).endsWith('-after')) {\n moveToIndex++\n }\n }\n\n return { moveFromIndex, moveToIndex }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,12 @@
1
1
  @layer payload-default {
2
2
  .modular-dashboard {
3
- margin: calc(var(--spacer-2-5) / -2);
4
- width: calc(100% + var(--spacer-2-5));
3
+ margin: calc(var(--spacer-4) / -2);
4
+ width: calc(100% + var(--spacer-4));
5
+ padding-block-end: var(--spacer-6);
5
6
  }
6
7
 
7
8
  .modular-dashboard .widget {
8
- padding: calc(var(--spacer-2-5) / 2);
9
+ padding: calc(var(--spacer-4) / 2);
9
10
  }
10
11
 
11
12
  .modular-dashboard .widget-content {
@@ -41,10 +42,9 @@
41
42
  .modular-dashboard.editing .widget-content {
42
43
  user-select: none;
43
44
  -webkit-user-select: none;
44
- pointer-events: none;
45
45
  }
46
46
 
47
- .modular-dashboard.editing .draggable {
47
+ .modular-dashboard.editing .widget-wrapper__drag-btn {
48
48
  cursor: grab;
49
49
  }
50
50
 
@@ -109,7 +109,10 @@
109
109
  position: absolute;
110
110
  inset: 0;
111
111
  z-index: 5;
112
- pointer-events: none;
112
+ border: 0;
113
+ padding: 0;
114
+ width: 100%;
115
+ height: 100%;
113
116
  background: rgba(0, 0, 0, 0.35);
114
117
  outline: var(--accessibility-outline);
115
118
  outline-offset: var(--accessibility-outline-offset);
@@ -1 +1 @@
1
- {"version":3,"file":"RenderWidget.js","names":["c","_c","React","useCallback","useEffect","useRef","ShimmerEffect","useServerFunctions","RenderWidget","t0","$","widgetData","widgetId","Component","setComponent","useState","serverFunction","requestIDRef","t1","render","requestID","current","widgetSlug","slice","lastIndexOf","result","name","args","component","t2","createElement","style","background","border","borderRadius","color","padding","textAlign","renderWidget","t3","t4","Symbol","for","_jsx","height","_Fragment","children"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useEffect, useRef } from 'react'\n\nimport type {\n RenderWidgetServerFnArgs,\n RenderWidgetServerFnReturnType,\n} from './renderWidgetServerFn.js'\n\nimport { ShimmerEffect } from '../../../../../elements/ShimmerEffect/index.js'\nimport { useServerFunctions } from '../../../../../providers/ServerFunctions/index.js'\n\n/**\n * Utility to render a widget on-demand on the client.\n */\nexport const RenderWidget: React.FC<{\n /**\n * Instance-specific data for this widget\n */\n widgetData?: Record<string, unknown>\n /**\n * Unique ID for this widget instance (format: \"slug-timestamp\")\n */\n widgetId: string\n}> = ({ widgetData, widgetId }) => {\n const [Component, setComponent] = React.useState<null | React.ReactNode>(null)\n const { serverFunction } = useServerFunctions()\n const requestIDRef = useRef(0)\n\n const renderWidget = useCallback(() => {\n async function render() {\n const requestID = ++requestIDRef.current\n setComponent(null)\n\n try {\n const widgetSlug = widgetId.slice(0, widgetId.lastIndexOf('-'))\n\n const result = (await serverFunction({\n name: 'render-widget',\n args: {\n widgetData,\n widgetSlug,\n } as RenderWidgetServerFnArgs,\n })) as RenderWidgetServerFnReturnType\n\n if (requestID !== requestIDRef.current) {\n return\n }\n\n setComponent(result.component)\n } catch (_error) {\n if (requestID !== requestIDRef.current) {\n return\n }\n\n // Log error but don't expose details to console in production\n\n // Fallback error component\n setComponent(\n React.createElement(\n 'div',\n {\n style: {\n background: 'var(--color-bg-danger-tertiary)',\n border: 'var(--stroke-width-small) solid var(--color-border-danger)',\n borderRadius: 'var(--radius-medium)',\n color: 'var(--color-text-danger)',\n padding: 'var(--spacer-3)',\n textAlign: 'center',\n },\n },\n 'Failed to load widget. Please try again later.',\n ),\n )\n }\n }\n void render()\n }, [serverFunction, widgetData, widgetId])\n\n useEffect(() => {\n void renderWidget()\n }, [renderWidget])\n\n if (!Component) {\n return <ShimmerEffect height=\"100%\" />\n }\n\n return <>{Component}</>\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,EAAEC,MAAM,QAAQ;AAOtD,SAASC,aAAa,QAAQ;AAC9B,SAASC,kBAAkB,QAAQ;AAEnC;;;AAGA,OAAO,MAAMC,YAAA,GASRC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU,UAAA;IAAAC;EAAA,IAAAH,EAAwB;EAC5B,OAAAI,SAAA,EAAAC,YAAA,IAAkCZ,KAAA,CAAAa,QAAA,KAAuC;EACzE;IAAAC;EAAA,IAA2BT,kBAAA;EAC3B,MAAAU,YAAA,GAAqBZ,MAAA,EAAO;EAAA,IAAAa,EAAA;EAAA,IAAAR,CAAA,QAAAM,cAAA,IAAAN,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,QAAA;IAEKM,EAAA,GAAAA,CAAA;MAC/B,MAAAC,MAAA,kBAAAA,OAAA;QACE,MAAAC,SAAA,GAAoBH,YAAA,CAAAI,OAAA,GAAAJ,YAAA,CAAAI,OAAA,IAAoB;QACxCP,YAAA,KAAa;QAAA;QAAA;UAGX,MAAAQ,UAAA,GAAmBV,QAAA,CAAAW,KAAA,IAAkBX,QAAA,CAAAY,WAAA,CAAqB;UAE1D,MAAAC,MAAA,SAAsBT,cAAA;YAAAU,IAAA,EACd;YAAAC,IAAA;cAAAhB,UAAA;cAAAW;YAAA;UAAA,CAKR;UAAA,IAEIF,SAAA,KAAcH,YAAA,CAAAI,OAAoB;YAAA;UAAA;UAItCP,YAAA,CAAaW,MAAA,CAAAG,SAAgB;QAAA,SAAAC,EAAA;UAAA,IAEzBT,SAAA,KAAcH,YAAA,CAAAI,OAAoB;YAAA;UAAA;UAOtCP,YAAA,CACEZ,KAAA,CAAA4B,aAAA,CACE;YAAAC,KAAA;cAAAC,UAAA,EAGgB;cAAAC,MAAA,EACJ;cAAAC,YAAA,EACM;cAAAC,KAAA,EACP;cAAAC,OAAA,EACE;cAAAC,SAAA,EACE;YAAA;UAAA,GAGf;QAAA;MAAA;MAKHlB,MAAA;IAAA;IACPT,CAAA,MAAAM,cAAA;IAAAN,CAAA,MAAAC,UAAA;IAAAD,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAhDA,MAAA4B,YAAA,GAAqBpB,EAgDoB;EAAA,IAAAW,EAAA;EAAA,IAAAU,EAAA;EAAA,IAAA7B,CAAA,QAAA4B,YAAA;IAE/BT,EAAA,GAAAA,CAAA;MACHS,YAAA;IAAA;IACJC,EAAA,IAACD,YAAA;IAAa5B,CAAA,MAAA4B,YAAA;IAAA5B,CAAA,MAAAmB,EAAA;IAAAnB,CAAA,MAAA6B,EAAA;EAAA;IAAAV,EAAA,GAAAnB,CAAA;IAAA6B,EAAA,GAAA7B,CAAA;EAAA;EAFjBN,SAAA,CAAUyB,EAEV,EAAGU,EAAc;EAAA,KAEZ1B,SAAA;IAAA,IAAA2B,EAAA;IAAA,IAAA9B,CAAA,QAAA+B,MAAA,CAAAC,GAAA;MACIF,EAAA,GAAAG,IAAA,CAAArC,aAAA;QAAAsC,MAAA,EAAsB;MAAA,C;;;;;WAAtBJ,E;;;;IAGFA,EAAA,GAAAG,IAAA,CAAAE,SAAA;MAAAC,QAAA,EAAGjC;IAAA,C;;;;;;SAAH2B,E;CACT","ignoreList":[]}
1
+ {"version":3,"file":"RenderWidget.js","names":["c","_c","React","useCallback","useEffect","useRef","ShimmerEffect","useServerFunctions","RenderWidget","t0","$","widgetData","widgetId","Component","setComponent","useState","serverFunction","requestIDRef","t1","render","requestID","current","widgetSlug","slice","lastIndexOf","result","name","args","component","t2","createElement","style","background","border","borderRadius","color","padding","textAlign","renderWidget","t3","t4","Symbol","for","_jsx","height","_Fragment","children"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useEffect, useRef } from 'react'\n\nimport type {\n RenderWidgetServerFnArgs,\n RenderWidgetServerFnReturnType,\n} from './renderWidgetServerFn.js'\n\nimport { ShimmerEffect } from '../../../../../elements/ShimmerEffect/index.js'\nimport { useServerFunctions } from '../../../../../providers/ServerFunctions/index.js'\n\n/**\n * Utility to render a widget on-demand on the client.\n */\nexport const RenderWidget: React.FC<{\n /**\n * Instance-specific data for this widget\n */\n widgetData?: Record<string, unknown>\n /**\n * Unique ID for this widget instance (format: \"slug-timestamp\")\n */\n widgetId: string\n}> = ({ widgetData, widgetId }) => {\n const [Component, setComponent] = React.useState<null | React.ReactNode>(null)\n const { serverFunction } = useServerFunctions()\n const requestIDRef = useRef(0)\n\n const renderWidget = useCallback(() => {\n async function render() {\n const requestID = ++requestIDRef.current\n setComponent(null)\n\n try {\n const widgetSlug = widgetId.slice(0, widgetId.lastIndexOf('-'))\n\n const result = (await serverFunction({\n name: 'render-widget',\n args: {\n widgetData,\n widgetSlug,\n },\n })) as RenderWidgetServerFnReturnType\n\n if (requestID !== requestIDRef.current) {\n return\n }\n\n setComponent(result.component)\n } catch (_error) {\n if (requestID !== requestIDRef.current) {\n return\n }\n\n // Log error but don't expose details to console in production\n\n // Fallback error component\n setComponent(\n React.createElement(\n 'div',\n {\n style: {\n background: 'var(--color-bg-danger-tertiary)',\n border: 'var(--stroke-width-small) solid var(--color-border-danger)',\n borderRadius: 'var(--radius-medium)',\n color: 'var(--color-text-danger)',\n padding: 'var(--spacer-3)',\n textAlign: 'center',\n },\n },\n 'Failed to load widget. Please try again later.',\n ),\n )\n }\n }\n void render()\n }, [serverFunction, widgetData, widgetId])\n\n useEffect(() => {\n void renderWidget()\n }, [renderWidget])\n\n if (!Component) {\n return <ShimmerEffect height=\"100%\" />\n }\n\n return <>{Component}</>\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,EAAEC,MAAM,QAAQ;AAOtD,SAASC,aAAa,QAAQ;AAC9B,SAASC,kBAAkB,QAAQ;AAEnC;;;AAGA,OAAO,MAAMC,YAAA,GASRC,EAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EAAC;IAAAU,UAAA;IAAAC;EAAA,IAAAH,EAAwB;EAC5B,OAAAI,SAAA,EAAAC,YAAA,IAAkCZ,KAAA,CAAAa,QAAc,CAAyB;EACzE;IAAAC;EAAA,IAA2BT,kBAAA;EAC3B,MAAAU,YAAA,GAAqBZ,MAAA,CAAO;EAAA,IAAAa,EAAA;EAAA,IAAAR,CAAA,QAAAM,cAAA,IAAAN,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,QAAA;IAEKM,EAAA,GAAAA,CAAA;MAC/B,MAAAC,MAAA,kBAAAA,OAAA;QACE,MAAAC,SAAA,GAAoBH,YAAA,CAAAI,OAAA,GAAAJ,YAAA,CAAAI,OAAoB;QACxCP,YAAA,CAAa;QAAA;QAEb;UACE,MAAAQ,UAAA,GAAmBV,QAAA,CAAAW,KAAc,CAAC,GAAGX,QAAA,CAAAY,WAAoB,CAAC;UAE1D,MAAAC,MAAA,GAAgB,MAAMT,cAAA,CAAe;YAAAU,IAAA,EAC7B;YAAAC,IAAA,EACA;cAAAhB,UAAA;cAAAW;YAGN;UACF;UAEA,IAAIF,SAAA,KAAcH,YAAA,CAAAI,OAAoB;YAAA;UAAA;UAItCP,YAAA,CAAaW,MAAA,CAAAG,SAAgB;QAAA,SAAAC,EAAA;UAE7B,IAAIT,SAAA,KAAcH,YAAA,CAAAI,OAAoB;YAAA;UAAA;UAOtCP,YAAA,CACEZ,KAAA,CAAA4B,aAAmB,CACjB,OACA;YAAAC,KAAA,EACS;cAAAC,UAAA,EACO;cAAAC,MAAA,EACJ;cAAAC,YAAA,EACM;cAAAC,KAAA,EACP;cAAAC,OAAA,EACE;cAAAC,SAAA,EACE;YACb;UACF,GACA;QAAA;MAGN,CACF;MACKlB,MAAA;IAAA,CACP;IAAAT,CAAA,MAAAM,cAAA;IAAAN,CAAA,MAAAC,UAAA;IAAAD,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAhDA,MAAA4B,YAAA,GAAqBpB,EAgDoB;EAAA,IAAAW,EAAA;EAAA,IAAAU,EAAA;EAAA,IAAA7B,CAAA,QAAA4B,YAAA;IAE/BT,EAAA,GAAAA,CAAA;MACHS,YAAA;IAAA,CACP;IAAGC,EAAA,IAACD,YAAA,CAAa;IAAA5B,CAAA,MAAA4B,YAAA;IAAA5B,CAAA,MAAAmB,EAAA;IAAAnB,CAAA,MAAA6B,EAAA;EAAA;IAAAV,EAAA,GAAAnB,CAAA;IAAA6B,EAAA,GAAA7B,CAAA;EAAA;EAFjBN,SAAA,CAAUyB,EAEV,EAAGU,EAAc;EAEjB,IAAI,CAAC1B,SAAA;IAAA,IAAA2B,EAAA;IAAA,IAAA9B,CAAA,QAAA+B,MAAA,CAAAC,GAAA;MACIF,EAAA,GAAAG,IAAA,CAACrC,aAAA;QAAAsC,MAAA,EAAqB;;;;;;WAAtBJ,E;;EACT,IAAAA,EAAA;EAAA,IAAA9B,CAAA,QAAAG,SAAA;IAEO2B,EAAA,GAAAG,IAAA,CAAAE,SAAA;MAAAC,QAAA,EAAGjC;;;;;;;SAAH2B,E;CACT","ignoreList":[]}
@@ -15,7 +15,7 @@ export declare function useDashboardLayout(initialLayout: WidgetInstanceClient[]
15
15
  resetLayout: () => Promise<void>;
16
16
  resizeWidget: (widgetId: string, newWidth: WidgetWidth) => void;
17
17
  saveLayout: () => Promise<void>;
18
- setIsEditing: React.Dispatch<React.SetStateAction<boolean>>;
18
+ setIsEditing: (shouldEdit: boolean) => void;
19
19
  updateWidgetData: (widgetId: string, data: Record<string, unknown>) => void;
20
20
  };
21
21
  //# sourceMappingURL=useDashboardLayout.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useDashboardLayout.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/useDashboardLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAI1C,OAAO,KAA2C,MAAM,OAAO,CAAA;AAG/D,OAAO,KAAK,EAAE,oBAAoB,EAAc,MAAM,mBAAmB,CAAA;AAWzE,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,EAAE;4BAuFvD,MAAM;;;;6BAkDR,MAAM;;iDA/DgB;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;;6BAyEpE,MAAM,YAAY,WAAW;;;iCAsB7B,MAAM,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;EA+CnD"}
1
+ {"version":3,"file":"useDashboardLayout.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/useDashboardLayout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAI1C,OAAO,KAA2C,MAAM,OAAO,CAAA;AAI/D,OAAO,KAAK,EAAE,oBAAoB,EAAc,MAAM,mBAAmB,CAAA;AAYzE,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,EAAE;4BAoGvD,MAAM;;;;6BAmDR,MAAM;;iDAhEgB;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE;;6BA0EpE,MAAM,YAAY,WAAW;;+BA3J3B,OAAO;iCAiLT,MAAM,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;EA+CnD"}
@@ -2,16 +2,23 @@ import { arrayMove } from '@dnd-kit/sortable';
2
2
  import { PREFERENCE_KEYS } from 'payload/shared';
3
3
  import React, { useCallback, useEffect, useState } from 'react';
4
4
  import { toast } from 'sonner';
5
+ import { v4 as uuid } from 'uuid';
5
6
  import { ConfirmationModal } from '../../../../elements/ConfirmationModal/index.js';
6
7
  import { useModal } from '../../../../elements/Modal/index.js';
7
8
  import { useConfig } from '../../../../providers/Config/index.js';
9
+ import { useEmbed } from '../../../../providers/Embed/index.js';
8
10
  import { usePreferences } from '../../../../providers/Preferences/index.js';
9
11
  import { useServerFunctions } from '../../../../providers/ServerFunctions/index.js';
10
12
  import { useTranslation } from '../../../../providers/Translation/index.js';
11
13
  import { RenderWidget } from './renderWidget/RenderWidget.js';
12
14
  export function useDashboardLayout(initialLayout) {
13
15
  const setLayoutPreference = useSetLayoutPreference();
14
- const [isEditing, setIsEditing] = useState(false);
16
+ const {
17
+ isEmbedded
18
+ } = useEmbed();
19
+ const [isEditingState, setIsEditingState] = useState(false);
20
+ const isEditing = !isEmbedded && isEditingState;
21
+ const setIsEditing = useCallback(shouldEdit => setIsEditingState(shouldEdit && !isEmbedded), [isEmbedded]);
15
22
  const {
16
23
  widgets = []
17
24
  } = useConfig().config.admin.dashboard ?? {};
@@ -26,6 +33,12 @@ export function useDashboardLayout(initialLayout) {
26
33
  const {
27
34
  t
28
35
  } = useTranslation();
36
+ useEffect(() => {
37
+ if (isEmbedded) {
38
+ setIsEditingState(false);
39
+ setCurrentLayout(initialLayout);
40
+ }
41
+ }, [isEmbedded, initialLayout]);
29
42
  // Sync state when initialLayout prop changes (e.g., when query params change and server component re-renders)
30
43
  useEffect(() => {
31
44
  if (!isEditing) {
@@ -43,7 +56,7 @@ export function useDashboardLayout(initialLayout) {
43
56
  setIsEditing(true);
44
57
  toast.error(t('error:failedToSaveLayout'));
45
58
  }
46
- }, [setLayoutPreference, currentLayout]);
59
+ }, [setLayoutPreference, currentLayout, setIsEditing]);
47
60
  const resetLayout = useCallback(async () => {
48
61
  try {
49
62
  await setLayoutPreference(null);
@@ -56,11 +69,11 @@ export function useDashboardLayout(initialLayout) {
56
69
  } catch {
57
70
  toast.error(t('error:failedToResetLayout'));
58
71
  }
59
- }, [setLayoutPreference, serverFunction]);
72
+ }, [setLayoutPreference, serverFunction, setIsEditing]);
60
73
  const performCancel = useCallback(() => {
61
74
  setCurrentLayout(initialLayout);
62
75
  setIsEditing(false);
63
- }, [initialLayout]);
76
+ }, [initialLayout, setIsEditing]);
64
77
  const cancel = useCallback(() => {
65
78
  // Check if layout has changed
66
79
  const hasChanges = currentLayout.length !== initialLayout.length || currentLayout.some((widget, index) => {
@@ -89,7 +102,7 @@ export function useDashboardLayout(initialLayout) {
89
102
  if (!isEditing) {
90
103
  return;
91
104
  }
92
- const widgetId = `${widgetSlug}-${Date.now()}`;
105
+ const widgetId = `${widgetSlug}-${uuid().replaceAll('-', '')}`;
93
106
  const widget = widgets.find(widget => widget.slug === widgetSlug);
94
107
  // Create a new widget instance using RenderWidget
95
108
  const newWidgetInstance = {
@@ -110,6 +123,9 @@ export function useDashboardLayout(initialLayout) {
110
123
  setTimeout(() => {
111
124
  const element = document.getElementById(widgetId);
112
125
  if (element) {
126
+ element.focus({
127
+ preventScroll: true
128
+ });
113
129
  element.scrollIntoView({
114
130
  behavior: 'smooth',
115
131
  block: 'center'
@@ -1 +1 @@
1
- {"version":3,"file":"useDashboardLayout.js","names":["arrayMove","PREFERENCE_KEYS","React","useCallback","useEffect","useState","toast","ConfirmationModal","useModal","useConfig","usePreferences","useServerFunctions","useTranslation","RenderWidget","useDashboardLayout","initialLayout","setLayoutPreference","useSetLayoutPreference","isEditing","setIsEditing","widgets","config","admin","dashboard","currentLayout","setCurrentLayout","openModal","cancelModalSlug","serverFunction","t","saveLayout","layoutData","map","item","error","resetLayout","result","name","args","layout","performCancel","cancel","hasChanges","length","some","widget","index","initialWidget","id","width","JSON","stringify","data","moveWidget","moveFromIndex","moveToIndex","prev","addWidget","widgetSlug","widgetId","Date","now","find","slug","newWidgetInstance","component","createElement","widgetData","maxWidth","minWidth","setTimeout","element","document","getElementById","scrollIntoView","behavior","block","closest","classList","add","remove","deleteWidget","filter","resizeWidget","newWidth","updateWidgetData","cancelModal","body","confirmLabel","heading","modalSlug","onConfirm","setPreference","DASHBOARD_LAYOUT","layouts"],"sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/useDashboardLayout.ts"],"sourcesContent":["import type { WidgetWidth } from 'payload'\n\nimport { arrayMove } from '@dnd-kit/sortable'\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { WidgetInstanceClient, WidgetItem } from './index.client.js'\nimport type { GetDefaultLayoutServerFnReturnType } from './renderWidget/getDefaultLayoutServerFn.js'\n\nimport { ConfirmationModal } from '../../../../elements/ConfirmationModal/index.js'\nimport { useModal } from '../../../../elements/Modal/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { usePreferences } from '../../../../providers/Preferences/index.js'\nimport { useServerFunctions } from '../../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { RenderWidget } from './renderWidget/RenderWidget.js'\n\nexport function useDashboardLayout(initialLayout: WidgetInstanceClient[]) {\n const setLayoutPreference = useSetLayoutPreference()\n const [isEditing, setIsEditing] = useState(false)\n const { widgets = [] } = useConfig().config.admin.dashboard ?? {}\n const [currentLayout, setCurrentLayout] = useState<WidgetInstanceClient[]>(initialLayout)\n const { openModal } = useModal()\n const cancelModalSlug = 'cancel-dashboard-changes'\n const { serverFunction } = useServerFunctions()\n const { t } = useTranslation()\n\n // Sync state when initialLayout prop changes (e.g., when query params change and server component re-renders)\n useEffect(() => {\n if (!isEditing) {\n setCurrentLayout(initialLayout)\n }\n // do not sync while editing. Depending on `isEditing` in this effect causes an\n // unintended rollback when toggling from editing -> view mode after save.\n }, [initialLayout])\n\n const saveLayout = useCallback(async () => {\n try {\n const layoutData: WidgetItem[] = currentLayout.map((item) => item.item)\n setIsEditing(false)\n await setLayoutPreference(layoutData)\n } catch {\n setIsEditing(true)\n toast.error(t('error:failedToSaveLayout'))\n }\n }, [setLayoutPreference, currentLayout])\n\n const resetLayout = useCallback(async () => {\n try {\n await setLayoutPreference(null)\n\n const result = (await serverFunction({\n name: 'get-default-layout',\n args: {},\n })) as GetDefaultLayoutServerFnReturnType\n\n setCurrentLayout(result.layout)\n setIsEditing(false)\n } catch {\n toast.error(t('error:failedToResetLayout'))\n }\n }, [setLayoutPreference, serverFunction])\n\n const performCancel = useCallback(() => {\n setCurrentLayout(initialLayout)\n setIsEditing(false)\n }, [initialLayout])\n\n const cancel = useCallback(() => {\n // Check if layout has changed\n const hasChanges =\n currentLayout.length !== initialLayout.length ||\n currentLayout.some((widget, index) => {\n const initialWidget = initialLayout[index]\n return (\n !initialWidget ||\n widget.item.id !== initialWidget.item.id ||\n widget.item.width !== initialWidget.item.width ||\n JSON.stringify(widget.item.data || {}) !== JSON.stringify(initialWidget.item.data || {})\n )\n })\n\n // If there are changes, show confirmation modal\n if (hasChanges) {\n openModal(cancelModalSlug)\n } else {\n performCancel()\n }\n }, [currentLayout, initialLayout, openModal, cancelModalSlug, performCancel])\n\n const moveWidget = useCallback(\n ({ moveFromIndex, moveToIndex }: { moveFromIndex: number; moveToIndex: number }) => {\n if (moveFromIndex === moveToIndex || moveFromIndex < 0 || moveToIndex < 0) {\n return\n }\n\n setCurrentLayout((prev) => {\n return arrayMove(prev, moveFromIndex, moveToIndex)\n })\n },\n [],\n )\n\n const addWidget = useCallback(\n (widgetSlug: string) => {\n if (!isEditing) {\n return\n }\n\n const widgetId = `${widgetSlug}-${Date.now()}`\n const widget = widgets.find((widget) => widget.slug === widgetSlug)\n\n // Create a new widget instance using RenderWidget\n const newWidgetInstance: WidgetInstanceClient = {\n component: React.createElement(RenderWidget, {\n widgetData: {},\n widgetId,\n }),\n item: {\n id: widgetId,\n data: {},\n maxWidth: widget?.maxWidth ?? 'full',\n minWidth: widget?.minWidth ?? 'x-small',\n width: widget?.minWidth ?? 'x-small',\n },\n }\n\n setCurrentLayout((prev) => [...prev, newWidgetInstance])\n\n // Scroll to the newly added widget after it's rendered and highlight it\n setTimeout(() => {\n const element = document.getElementById(widgetId)\n if (element) {\n element.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n\n // Add highlight animation to the widget element\n const widget = element.closest('.widget')\n if (widget) {\n widget.classList.add('widget--highlight')\n // Remove the class after animation completes (1.5s fade out)\n setTimeout(() => {\n widget.classList.remove('widget--highlight')\n }, 1500)\n }\n }\n }, 100)\n },\n [isEditing, widgets],\n )\n\n const deleteWidget = useCallback(\n (widgetId: string) => {\n if (!isEditing) {\n return\n }\n setCurrentLayout((prev) => prev.filter((item) => item.item.id !== widgetId))\n },\n [isEditing],\n )\n\n const resizeWidget = useCallback(\n (widgetId: string, newWidth: WidgetWidth) => {\n if (!isEditing) {\n return\n }\n setCurrentLayout((prev) =>\n prev.map((item) =>\n item.item.id === widgetId\n ? {\n ...item,\n item: {\n ...item.item,\n width: newWidth,\n } satisfies WidgetItem,\n }\n : item,\n ),\n )\n },\n [isEditing],\n )\n\n const updateWidgetData = useCallback(\n (widgetId: string, data: Record<string, unknown>) => {\n if (!isEditing) {\n return\n }\n\n setCurrentLayout((prev) =>\n prev.map((item) =>\n item.item.id === widgetId\n ? {\n component: React.createElement(RenderWidget, {\n widgetData: data,\n widgetId,\n }),\n item: {\n ...item.item,\n data,\n } satisfies WidgetItem,\n }\n : item,\n ),\n )\n },\n [isEditing],\n )\n\n const cancelModal = React.createElement(ConfirmationModal, {\n body: t('dashboard:discardMessage'),\n confirmLabel: t('dashboard:discardConfirmLabel'),\n heading: t('dashboard:discardTitle'),\n modalSlug: cancelModalSlug,\n onConfirm: performCancel,\n })\n\n return {\n addWidget,\n cancel,\n cancelModal,\n currentLayout,\n deleteWidget,\n isEditing,\n moveWidget,\n resetLayout,\n resizeWidget,\n saveLayout,\n setIsEditing,\n updateWidgetData,\n }\n}\n\nfunction useSetLayoutPreference() {\n const { setPreference } = usePreferences()\n return useCallback(\n async (layout: null | WidgetItem[]) => {\n await setPreference(PREFERENCE_KEYS.DASHBOARD_LAYOUT, { layouts: layout }, false)\n },\n [setPreference],\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useDashboardLayout.js","names":["arrayMove","PREFERENCE_KEYS","React","useCallback","useEffect","useState","toast","v4","uuid","ConfirmationModal","useModal","useConfig","useEmbed","usePreferences","useServerFunctions","useTranslation","RenderWidget","useDashboardLayout","initialLayout","setLayoutPreference","useSetLayoutPreference","isEmbedded","isEditingState","setIsEditingState","isEditing","setIsEditing","shouldEdit","widgets","config","admin","dashboard","currentLayout","setCurrentLayout","openModal","cancelModalSlug","serverFunction","t","saveLayout","layoutData","map","item","error","resetLayout","result","name","args","layout","performCancel","cancel","hasChanges","length","some","widget","index","initialWidget","id","width","JSON","stringify","data","moveWidget","moveFromIndex","moveToIndex","prev","addWidget","widgetSlug","widgetId","replaceAll","find","slug","newWidgetInstance","component","createElement","widgetData","maxWidth","minWidth","setTimeout","element","document","getElementById","focus","preventScroll","scrollIntoView","behavior","block","closest","classList","add","remove","deleteWidget","filter","resizeWidget","newWidth","updateWidgetData","cancelModal","body","confirmLabel","heading","modalSlug","onConfirm","setPreference","DASHBOARD_LAYOUT","layouts"],"sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/useDashboardLayout.ts"],"sourcesContent":["import type { WidgetWidth } from 'payload'\n\nimport { arrayMove } from '@dnd-kit/sortable'\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'sonner'\nimport { v4 as uuid } from 'uuid'\n\nimport type { WidgetInstanceClient, WidgetItem } from './index.client.js'\nimport type { GetDefaultLayoutServerFnReturnType } from './renderWidget/getDefaultLayoutServerFn.js'\n\nimport { ConfirmationModal } from '../../../../elements/ConfirmationModal/index.js'\nimport { useModal } from '../../../../elements/Modal/index.js'\nimport { useConfig } from '../../../../providers/Config/index.js'\nimport { useEmbed } from '../../../../providers/Embed/index.js'\nimport { usePreferences } from '../../../../providers/Preferences/index.js'\nimport { useServerFunctions } from '../../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { RenderWidget } from './renderWidget/RenderWidget.js'\n\nexport function useDashboardLayout(initialLayout: WidgetInstanceClient[]) {\n const setLayoutPreference = useSetLayoutPreference()\n const { isEmbedded } = useEmbed()\n const [isEditingState, setIsEditingState] = useState(false)\n const isEditing = !isEmbedded && isEditingState\n const setIsEditing = useCallback(\n (shouldEdit: boolean) => setIsEditingState(shouldEdit && !isEmbedded),\n [isEmbedded],\n )\n const { widgets = [] } = useConfig().config.admin.dashboard ?? {}\n const [currentLayout, setCurrentLayout] = useState<WidgetInstanceClient[]>(initialLayout)\n const { openModal } = useModal()\n const cancelModalSlug = 'cancel-dashboard-changes'\n const { serverFunction } = useServerFunctions()\n const { t } = useTranslation()\n\n useEffect(() => {\n if (isEmbedded) {\n setIsEditingState(false)\n setCurrentLayout(initialLayout)\n }\n }, [isEmbedded, initialLayout])\n\n // Sync state when initialLayout prop changes (e.g., when query params change and server component re-renders)\n useEffect(() => {\n if (!isEditing) {\n setCurrentLayout(initialLayout)\n }\n // do not sync while editing. Depending on `isEditing` in this effect causes an\n // unintended rollback when toggling from editing -> view mode after save.\n }, [initialLayout])\n\n const saveLayout = useCallback(async () => {\n try {\n const layoutData: WidgetItem[] = currentLayout.map((item) => item.item)\n setIsEditing(false)\n await setLayoutPreference(layoutData)\n } catch {\n setIsEditing(true)\n toast.error(t('error:failedToSaveLayout'))\n }\n }, [setLayoutPreference, currentLayout, setIsEditing])\n\n const resetLayout = useCallback(async () => {\n try {\n await setLayoutPreference(null)\n\n const result = (await serverFunction({\n name: 'get-default-layout',\n args: {},\n })) as GetDefaultLayoutServerFnReturnType\n\n setCurrentLayout(result.layout)\n setIsEditing(false)\n } catch {\n toast.error(t('error:failedToResetLayout'))\n }\n }, [setLayoutPreference, serverFunction, setIsEditing])\n\n const performCancel = useCallback(() => {\n setCurrentLayout(initialLayout)\n setIsEditing(false)\n }, [initialLayout, setIsEditing])\n\n const cancel = useCallback(() => {\n // Check if layout has changed\n const hasChanges =\n currentLayout.length !== initialLayout.length ||\n currentLayout.some((widget, index) => {\n const initialWidget = initialLayout[index]\n return (\n !initialWidget ||\n widget.item.id !== initialWidget.item.id ||\n widget.item.width !== initialWidget.item.width ||\n JSON.stringify(widget.item.data || {}) !== JSON.stringify(initialWidget.item.data || {})\n )\n })\n\n // If there are changes, show confirmation modal\n if (hasChanges) {\n openModal(cancelModalSlug)\n } else {\n performCancel()\n }\n }, [currentLayout, initialLayout, openModal, cancelModalSlug, performCancel])\n\n const moveWidget = useCallback(\n ({ moveFromIndex, moveToIndex }: { moveFromIndex: number; moveToIndex: number }) => {\n if (moveFromIndex === moveToIndex || moveFromIndex < 0 || moveToIndex < 0) {\n return\n }\n\n setCurrentLayout((prev) => {\n return arrayMove(prev, moveFromIndex, moveToIndex)\n })\n },\n [],\n )\n\n const addWidget = useCallback(\n (widgetSlug: string) => {\n if (!isEditing) {\n return\n }\n\n const widgetId = `${widgetSlug}-${uuid().replaceAll('-', '')}`\n const widget = widgets.find((widget) => widget.slug === widgetSlug)\n\n // Create a new widget instance using RenderWidget\n const newWidgetInstance: WidgetInstanceClient = {\n component: React.createElement(RenderWidget, {\n widgetData: {},\n widgetId,\n }),\n item: {\n id: widgetId,\n data: {},\n maxWidth: widget?.maxWidth ?? 'full',\n minWidth: widget?.minWidth ?? 'x-small',\n width: widget?.minWidth ?? 'x-small',\n },\n }\n\n setCurrentLayout((prev) => [...prev, newWidgetInstance])\n\n // Scroll to the newly added widget after it's rendered and highlight it\n setTimeout(() => {\n const element = document.getElementById(widgetId)\n if (element) {\n element.focus({ preventScroll: true })\n element.scrollIntoView({\n behavior: 'smooth',\n block: 'center',\n })\n\n // Add highlight animation to the widget element\n const widget = element.closest('.widget')\n if (widget) {\n widget.classList.add('widget--highlight')\n // Remove the class after animation completes (1.5s fade out)\n setTimeout(() => {\n widget.classList.remove('widget--highlight')\n }, 1500)\n }\n }\n }, 100)\n },\n [isEditing, widgets],\n )\n\n const deleteWidget = useCallback(\n (widgetId: string) => {\n if (!isEditing) {\n return\n }\n setCurrentLayout((prev) => prev.filter((item) => item.item.id !== widgetId))\n },\n [isEditing],\n )\n\n const resizeWidget = useCallback(\n (widgetId: string, newWidth: WidgetWidth) => {\n if (!isEditing) {\n return\n }\n setCurrentLayout((prev) =>\n prev.map((item) =>\n item.item.id === widgetId\n ? {\n ...item,\n item: {\n ...item.item,\n width: newWidth,\n } satisfies WidgetItem,\n }\n : item,\n ),\n )\n },\n [isEditing],\n )\n\n const updateWidgetData = useCallback(\n (widgetId: string, data: Record<string, unknown>) => {\n if (!isEditing) {\n return\n }\n\n setCurrentLayout((prev) =>\n prev.map((item) =>\n item.item.id === widgetId\n ? {\n component: React.createElement(RenderWidget, {\n widgetData: data,\n widgetId,\n }),\n item: {\n ...item.item,\n data,\n } satisfies WidgetItem,\n }\n : item,\n ),\n )\n },\n [isEditing],\n )\n\n const cancelModal = React.createElement(ConfirmationModal, {\n body: t('dashboard:discardMessage'),\n confirmLabel: t('dashboard:discardConfirmLabel'),\n heading: t('dashboard:discardTitle'),\n modalSlug: cancelModalSlug,\n onConfirm: performCancel,\n })\n\n return {\n addWidget,\n cancel,\n cancelModal,\n currentLayout,\n deleteWidget,\n isEditing,\n moveWidget,\n resetLayout,\n resizeWidget,\n saveLayout,\n setIsEditing,\n updateWidgetData,\n }\n}\n\nfunction useSetLayoutPreference() {\n const { setPreference } = usePreferences()\n return useCallback(\n async (layout: null | WidgetItem[]) => {\n await setPreference(PREFERENCE_KEYS.DASHBOARD_LAYOUT, { layouts: layout }, false)\n },\n [setPreference],\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"localeUtils.js","names":["fieldAffectsData","fieldHasSubFields","tabHasName","isLocalized","field","Boolean","localized","getObjectValue","value","Array","isArray","extractLocaleData","widgetData","locale","fields","result","type","tab","tabs","tabFields","name","Object","assign","undefined","mergeLocaleData","existingData","formData"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/localeUtils.ts"],"sourcesContent":["import type { ClientField, Field } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\ntype AnyField = ClientField | Field\n\nfunction isLocalized(field: AnyField): boolean {\n return 'localized' in field && Boolean(field.localized)\n}\n\nfunction getObjectValue(value: unknown): Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : {}\n}\n\n/**\n * Extracts locale-specific data from widget data stored in preferences.\n *\n * Localized fields are stored as `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` in preferences.\n * This function flattens them to `{ fieldName: \"Hello\" }` for the given locale,\n * which is the format the form state builder expects.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function extractLocaleData(\n widgetData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {}\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = extractLocaleData(\n getObjectValue(widgetData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, extractLocaleData(widgetData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, extractLocaleData(widgetData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n const value = widgetData[name]\n\n if (fieldHasSubFields(field)) {\n result[name] = extractLocaleData(getObjectValue(value), locale, field.fields as AnyField[])\n continue\n }\n\n if (\n isLocalized(field) &&\n value !== undefined &&\n typeof value === 'object' &&\n value !== null &&\n !Array.isArray(value)\n ) {\n result[name] = (value as Record<string, unknown>)[locale]\n } else {\n result[name] = value\n }\n }\n\n return result\n}\n\n/**\n * Merges locale-specific form data back into the full widget data structure.\n *\n * Non-localized fields are stored directly. Localized fields are stored as\n * `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` so each locale's value is preserved independently.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function mergeLocaleData(\n existingData: Record<string, unknown>,\n formData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = { ...existingData }\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = mergeLocaleData(\n getObjectValue(result[tab.name]),\n getObjectValue(formData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, mergeLocaleData(result, formData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, mergeLocaleData(result, formData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n\n if (fieldHasSubFields(field)) {\n result[name] = mergeLocaleData(\n getObjectValue(result[name]),\n getObjectValue(formData[name]),\n locale,\n field.fields as AnyField[],\n )\n continue\n }\n\n if (isLocalized(field)) {\n result[name] = { ...getObjectValue(result[name]), [locale]: formData[name] }\n } else {\n result[name] = formData[name]\n }\n }\n\n return result\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"localeUtils.js","names":["fieldAffectsData","fieldHasSubFields","tabHasName","isLocalized","field","Boolean","localized","getObjectValue","value","Array","isArray","extractLocaleData","widgetData","locale","fields","result","type","tab","tabs","tabFields","name","Object","assign","undefined","mergeLocaleData","existingData","formData"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/localeUtils.ts"],"sourcesContent":["import type { ClientField, Field } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\ntype AnyField = ClientField | Field\n\nfunction isLocalized(field: AnyField): boolean {\n return 'localized' in field && Boolean(field.localized)\n}\n\nfunction getObjectValue(value: unknown): Record<string, unknown> {\n return typeof value === 'object' && value !== null && !Array.isArray(value)\n ? (value as Record<string, unknown>)\n : {}\n}\n\n/**\n * Extracts locale-specific data from widget data stored in preferences.\n *\n * Localized fields are stored as `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` in preferences.\n * This function flattens them to `{ fieldName: \"Hello\" }` for the given locale,\n * which is the format the form state builder expects.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function extractLocaleData(\n widgetData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = {}\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = extractLocaleData(\n getObjectValue(widgetData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, extractLocaleData(widgetData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, extractLocaleData(widgetData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n const value = widgetData[name]\n\n if (fieldHasSubFields(field)) {\n result[name] = extractLocaleData(getObjectValue(value), locale, field.fields)\n continue\n }\n\n if (\n isLocalized(field) &&\n value !== undefined &&\n typeof value === 'object' &&\n value !== null &&\n !Array.isArray(value)\n ) {\n result[name] = (value as Record<string, unknown>)[locale]\n } else {\n result[name] = value\n }\n }\n\n return result\n}\n\n/**\n * Merges locale-specific form data back into the full widget data structure.\n *\n * Non-localized fields are stored directly. Localized fields are stored as\n * `{ fieldName: { en: \"Hello\", de: \"Hallo\" } }` so each locale's value is preserved independently.\n *\n * Recursively handles nested field types (group, row, collapsible, tabs).\n */\nexport function mergeLocaleData(\n existingData: Record<string, unknown>,\n formData: Record<string, unknown>,\n locale: string,\n fields: readonly AnyField[],\n): Record<string, unknown> {\n const result: Record<string, unknown> = { ...existingData }\n\n for (const field of fields) {\n if (field.type === 'tabs') {\n for (const tab of field.tabs) {\n const tabFields = tab.fields as AnyField[]\n if (tabHasName(tab)) {\n result[tab.name] = mergeLocaleData(\n getObjectValue(result[tab.name]),\n getObjectValue(formData[tab.name]),\n locale,\n tabFields,\n )\n } else {\n Object.assign(result, mergeLocaleData(result, formData, locale, tabFields))\n }\n }\n continue\n }\n\n if (fieldHasSubFields(field) && !fieldAffectsData(field)) {\n Object.assign(result, mergeLocaleData(result, formData, locale, field.fields as AnyField[]))\n continue\n }\n\n if (!fieldAffectsData(field)) {\n continue\n }\n\n const { name } = field\n\n if (fieldHasSubFields(field)) {\n result[name] = mergeLocaleData(\n getObjectValue(result[name]),\n getObjectValue(formData[name]),\n locale,\n field.fields,\n )\n continue\n }\n\n if (isLocalized(field)) {\n result[name] = { ...getObjectValue(result[name]), [locale]: formData[name] }\n } else {\n result[name] = formData[name]\n }\n }\n\n return result\n}\n"],"mappings":"AAEA,SAASA,gBAAgB,EAAEC,iBAAiB,EAAEC,UAAU,QAAQ;AAIhE,SAASC,YAAYC,KAAe;EAClC,OAAO,eAAeA,KAAA,IAASC,OAAA,CAAQD,KAAA,CAAME,SAAS;AACxD;AAEA,SAASC,eAAeC,KAAc;EACpC,OAAO,OAAOA,KAAA,KAAU,YAAYA,KAAA,KAAU,QAAQ,CAACC,KAAA,CAAMC,OAAO,CAACF,KAAA,IAChEA,KAAA,GACD,CAAC;AACP;AAEA;;;;;;;;;AASA,OAAO,SAASG,kBACdC,UAAmC,EACnCC,MAAc,EACdC,MAA2B;EAE3B,MAAMC,MAAA,GAAkC,CAAC;EAEzC,KAAK,MAAMX,KAAA,IAASU,MAAA,EAAQ;IAC1B,IAAIV,KAAA,CAAMY,IAAI,KAAK,QAAQ;MACzB,KAAK,MAAMC,GAAA,IAAOb,KAAA,CAAMc,IAAI,EAAE;QAC5B,MAAMC,SAAA,GAAYF,GAAA,CAAIH,MAAM;QAC5B,IAAIZ,UAAA,CAAWe,GAAA,GAAM;UACnBF,MAAM,CAACE,GAAA,CAAIG,IAAI,CAAC,GAAGT,iBAAA,CACjBJ,cAAA,CAAeK,UAAU,CAACK,GAAA,CAAIG,IAAI,CAAC,GACnCP,MAAA,EACAM,SAAA;QAEJ,OAAO;UACLE,MAAA,CAAOC,MAAM,CAACP,MAAA,EAAQJ,iBAAA,CAAkBC,UAAA,EAAYC,MAAA,EAAQM,SAAA;QAC9D;MACF;MACA;IACF;IAEA,IAAIlB,iBAAA,CAAkBG,KAAA,KAAU,CAACJ,gBAAA,CAAiBI,KAAA,GAAQ;MACxDiB,MAAA,CAAOC,MAAM,CAACP,MAAA,EAAQJ,iBAAA,CAAkBC,UAAA,EAAYC,MAAA,EAAQT,KAAA,CAAMU,MAAM;MACxE;IACF;IAEA,IAAI,CAACd,gBAAA,CAAiBI,KAAA,GAAQ;MAC5B;IACF;IAEA,MAAM;MAAEgB;IAAI,CAAE,GAAGhB,KAAA;IACjB,MAAMI,KAAA,GAAQI,UAAU,CAACQ,IAAA,CAAK;IAE9B,IAAInB,iBAAA,CAAkBG,KAAA,GAAQ;MAC5BW,MAAM,CAACK,IAAA,CAAK,GAAGT,iBAAA,CAAkBJ,cAAA,CAAeC,KAAA,GAAQK,MAAA,EAAQT,KAAA,CAAMU,MAAM;MAC5E;IACF;IAEA,IACEX,WAAA,CAAYC,KAAA,KACZI,KAAA,KAAUe,SAAA,IACV,OAAOf,KAAA,KAAU,YACjBA,KAAA,KAAU,QACV,CAACC,KAAA,CAAMC,OAAO,CAACF,KAAA,GACf;MACAO,MAAM,CAACK,IAAA,CAAK,GAAGZ,KAAkC,CAACK,MAAA,CAAO;IAC3D,OAAO;MACLE,MAAM,CAACK,IAAA,CAAK,GAAGZ,KAAA;IACjB;EACF;EAEA,OAAOO,MAAA;AACT;AAEA;;;;;;;;AAQA,OAAO,SAASS,gBACdC,YAAqC,EACrCC,QAAiC,EACjCb,MAAc,EACdC,MAA2B;EAE3B,MAAMC,MAAA,GAAkC;IAAE,GAAGU;EAAa;EAE1D,KAAK,MAAMrB,KAAA,IAASU,MAAA,EAAQ;IAC1B,IAAIV,KAAA,CAAMY,IAAI,KAAK,QAAQ;MACzB,KAAK,MAAMC,GAAA,IAAOb,KAAA,CAAMc,IAAI,EAAE;QAC5B,MAAMC,SAAA,GAAYF,GAAA,CAAIH,MAAM;QAC5B,IAAIZ,UAAA,CAAWe,GAAA,GAAM;UACnBF,MAAM,CAACE,GAAA,CAAIG,IAAI,CAAC,GAAGI,eAAA,CACjBjB,cAAA,CAAeQ,MAAM,CAACE,GAAA,CAAIG,IAAI,CAAC,GAC/Bb,cAAA,CAAemB,QAAQ,CAACT,GAAA,CAAIG,IAAI,CAAC,GACjCP,MAAA,EACAM,SAAA;QAEJ,OAAO;UACLE,MAAA,CAAOC,MAAM,CAACP,MAAA,EAAQS,eAAA,CAAgBT,MAAA,EAAQW,QAAA,EAAUb,MAAA,EAAQM,SAAA;QAClE;MACF;MACA;IACF;IAEA,IAAIlB,iBAAA,CAAkBG,KAAA,KAAU,CAACJ,gBAAA,CAAiBI,KAAA,GAAQ;MACxDiB,MAAA,CAAOC,MAAM,CAACP,MAAA,EAAQS,eAAA,CAAgBT,MAAA,EAAQW,QAAA,EAAUb,MAAA,EAAQT,KAAA,CAAMU,MAAM;MAC5E;IACF;IAEA,IAAI,CAACd,gBAAA,CAAiBI,KAAA,GAAQ;MAC5B;IACF;IAEA,MAAM;MAAEgB;IAAI,CAAE,GAAGhB,KAAA;IAEjB,IAAIH,iBAAA,CAAkBG,KAAA,GAAQ;MAC5BW,MAAM,CAACK,IAAA,CAAK,GAAGI,eAAA,CACbjB,cAAA,CAAeQ,MAAM,CAACK,IAAA,CAAK,GAC3Bb,cAAA,CAAemB,QAAQ,CAACN,IAAA,CAAK,GAC7BP,MAAA,EACAT,KAAA,CAAMU,MAAM;MAEd;IACF;IAEA,IAAIX,WAAA,CAAYC,KAAA,GAAQ;MACtBW,MAAM,CAACK,IAAA,CAAK,GAAG;QAAE,GAAGb,cAAA,CAAeQ,MAAM,CAACK,IAAA,CAAK,CAAC;QAAE,CAACP,MAAA,GAASa,QAAQ,CAACN,IAAA;MAAM;IAC7E,OAAO;MACLL,MAAM,CAACK,IAAA,CAAK,GAAGM,QAAQ,CAACN,IAAA,CAAK;IAC/B;EACF;EAEA,OAAOL,MAAA;AACT","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"sensors.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/sensors.ts"],"names":[],"mappings":"AA0TA,wBAAgB,mBAAmB,sFAiBlC"}
1
+ {"version":3,"file":"sensors.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/sensors.ts"],"names":[],"mappings":"AA2QA,wBAAgB,mBAAmB,sFAiBlC"}
@@ -1,4 +1,4 @@
1
- import { KeyboardCode, KeyboardSensor, MouseSensor, TouchSensor, useSensor, useSensors } from '@dnd-kit/core';
1
+ import { KeyboardSensor, MouseSensor, TouchSensor, useSensor, useSensors } from '@dnd-kit/core';
2
2
  /**
3
3
  * Get all droppable widget positions, filtering out overlapping "before" droppables
4
4
  * and assigning row numbers based on Y position.
@@ -216,42 +216,6 @@ const droppableJumpKeyboardCoordinateGetter = (event, {
216
216
  // No valid target found, stay in place
217
217
  return currentCoordinates;
218
218
  };
219
- /**
220
- * Custom KeyboardSensor that only activates when focus is directly on the
221
- * draggable element, not on any of its descendants. This allows interactive
222
- * elements inside draggables (like buttons) to work normally with the keyboard.
223
- */
224
- class DirectFocusKeyboardSensor extends KeyboardSensor {
225
- static activators = [{
226
- eventName: 'onKeyDown',
227
- handler: (event, {
228
- keyboardCodes = {
229
- cancel: [KeyboardCode.Esc],
230
- end: [KeyboardCode.Space, KeyboardCode.Enter],
231
- start: [KeyboardCode.Space, KeyboardCode.Enter]
232
- },
233
- onActivation
234
- }, {
235
- active
236
- }) => {
237
- const {
238
- code
239
- } = event.nativeEvent;
240
- // Only activate if focus is directly on the draggable node, not descendants
241
- if (event.target !== active.node.current) {
242
- return false;
243
- }
244
- if (keyboardCodes.start.includes(code)) {
245
- event.preventDefault();
246
- onActivation?.({
247
- event: event.nativeEvent
248
- });
249
- return true;
250
- }
251
- return false;
252
- }
253
- }];
254
- }
255
219
  export function useDashboardSensors() {
256
220
  return useSensors(useSensor(MouseSensor, {
257
221
  activationConstraint: {
@@ -262,7 +226,7 @@ export function useDashboardSensors() {
262
226
  delay: 200,
263
227
  tolerance: 5
264
228
  }
265
- }), useSensor(DirectFocusKeyboardSensor, {
229
+ }), useSensor(KeyboardSensor, {
266
230
  coordinateGetter: droppableJumpKeyboardCoordinateGetter
267
231
  }));
268
232
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sensors.js","names":["KeyboardCode","KeyboardSensor","MouseSensor","TouchSensor","useSensor","useSensors","getDroppablePositions","positionTolerance","rowTolerance","result","currentRow","currentY","allDroppables","Array","from","document","querySelectorAll","i","length","element","rect","getBoundingClientRect","width","height","centerX","left","centerY","top","testId","getAttribute","isBeforeDroppable","endsWith","hasOverlapping","some","other","otherIndex","otherRect","otherCenterX","otherCenterY","Math","abs","push","row","findClosestRow","droppables","posY","closestRow","minYDistance","Infinity","droppable","yDistance","findClosestDroppableInRow","rowIndex","posX","closestIndex","minXDistance","xDistance","index","findTargetDroppable","currentCenterX","currentCenterY","direction","currentDroppable","currentIndex","targetRow","droppableJumpKeyboardCoordinateGetter","event","context","currentCoordinates","collisionRect","code","includes","preventDefault","scrollableAncestors","targetDroppable","viewportHeight","window","innerHeight","targetRect","scrollPadding","isAboveViewport","isBelowViewport","bottom","scrollAmount","scrollBy","behavior","newTargetRect","newTargetCenterX","newTargetCenterY","deltaX","deltaY","x","y","DirectFocusKeyboardSensor","activators","eventName","handler","keyboardCodes","cancel","Esc","end","Space","Enter","start","onActivation","active","nativeEvent","target","node","current","useDashboardSensors","activationConstraint","distance","delay","tolerance","coordinateGetter"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/sensors.ts"],"sourcesContent":["import type { KeyboardCoordinateGetter, KeyboardSensorOptions } from '@dnd-kit/core'\n\nimport {\n KeyboardCode,\n KeyboardSensor,\n MouseSensor,\n TouchSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core'\n\ntype DroppablePosition = {\n centerX: number\n centerY: number\n element: Element\n isBeforeDroppable: boolean\n rect: DOMRect\n row: number\n}\n\n/**\n * Get all droppable widget positions, filtering out overlapping \"before\" droppables\n * and assigning row numbers based on Y position.\n */\nfunction getDroppablePositions(): DroppablePosition[] {\n const positionTolerance = 5\n const rowTolerance = 10\n const result: DroppablePosition[] = []\n let currentRow = 0\n let currentY: null | number = null\n\n const allDroppables = Array.from(document.querySelectorAll('.droppable-widget'))\n\n for (let i = 0; i < allDroppables.length; i++) {\n const element = allDroppables[i]\n const rect = element.getBoundingClientRect()\n\n // Skip hidden elements\n if (rect.width === 0 || rect.height === 0) {\n continue\n }\n\n const centerX = rect.left + rect.width / 2\n const centerY = rect.top + rect.height / 2\n const testId = element.getAttribute('data-testid') || ''\n const isBeforeDroppable = testId.endsWith('-before')\n\n // Skip \"before\" droppables that overlap with another droppable\n if (isBeforeDroppable) {\n const hasOverlapping = allDroppables.some((other, otherIndex) => {\n if (otherIndex === i) {\n return false\n }\n const otherRect = other.getBoundingClientRect()\n const otherCenterX = otherRect.left + otherRect.width / 2\n const otherCenterY = otherRect.top + otherRect.height / 2\n return (\n Math.abs(otherCenterX - centerX) < positionTolerance &&\n Math.abs(otherCenterY - centerY) < positionTolerance\n )\n })\n if (hasOverlapping) {\n continue\n }\n }\n\n // Assign row number based on Y position change\n if (currentY === null) {\n currentY = centerY\n } else if (Math.abs(centerY - currentY) >= rowTolerance) {\n currentRow++\n currentY = centerY\n }\n\n result.push({\n centerX,\n centerY,\n element,\n isBeforeDroppable,\n rect,\n row: currentRow,\n })\n }\n\n return result\n}\n\n/**\n * Find the row with the closest Y position to the given posY.\n * Returns the row index, or null if no droppables exist.\n */\nfunction findClosestRow(droppables: DroppablePosition[], posY: number): null | number {\n if (droppables.length === 0) {\n return null\n }\n\n let closestRow = droppables[0].row\n let minYDistance = Infinity\n\n for (const droppable of droppables) {\n const yDistance = Math.abs(droppable.centerY - posY)\n if (yDistance < minYDistance) {\n minYDistance = yDistance\n closestRow = droppable.row\n }\n }\n\n return closestRow\n}\n\n/**\n * Find the closest droppable within a specific row by X position.\n * Returns the droppable and its index, or null if no droppables in that row.\n */\nfunction findClosestDroppableInRow(\n droppables: DroppablePosition[],\n rowIndex: number,\n posX: number,\n): { droppable: DroppablePosition; index: number } | null {\n let closestIndex = -1\n let minXDistance = Infinity\n\n for (let i = 0; i < droppables.length; i++) {\n const droppable = droppables[i]\n if (droppable.row === rowIndex) {\n const xDistance = Math.abs(droppable.centerX - posX)\n if (xDistance < minXDistance) {\n minXDistance = xDistance\n closestIndex = i\n }\n }\n }\n\n if (closestIndex === -1) {\n return null\n }\n\n return { droppable: droppables[closestIndex], index: closestIndex }\n}\n\n/**\n * Find the target droppable based on direction\n * - ArrowRight/Left: Next/previous in DOM order (now that overlapping droppables are filtered)\n * - ArrowUp/Down: Closest in adjacent row (row +1 or -1) by X position\n */\nfunction findTargetDroppable(\n droppables: DroppablePosition[],\n currentCenterX: number,\n currentCenterY: number,\n direction: string,\n): DroppablePosition | null {\n // Find the closest row, then the closest droppable in that row\n const currentRow = findClosestRow(droppables, currentCenterY)\n\n if (currentRow === null) {\n return null\n }\n\n const currentDroppable = findClosestDroppableInRow(droppables, currentRow, currentCenterX)\n\n if (!currentDroppable) {\n return null\n }\n\n const { index: currentIndex } = currentDroppable\n\n switch (direction) {\n case 'ArrowDown': {\n const targetRow = currentRow + 1\n return findClosestDroppableInRow(droppables, targetRow, currentCenterX)?.droppable || null\n }\n\n case 'ArrowLeft':\n // Previous in DOM order\n return droppables[currentIndex - 1] || null\n\n case 'ArrowRight':\n // Next in DOM order\n return droppables[currentIndex + 1] || null\n\n case 'ArrowUp': {\n const targetRow = currentRow - 1\n return findClosestDroppableInRow(droppables, targetRow, currentCenterX)?.droppable || null\n }\n\n default:\n return null\n }\n}\n\n/**\n * Custom coordinate getter that jumps directly to droppable positions\n * instead of moving in pixel increments. This works better with scrolling\n * and provides more predictable navigation.\n */\nconst droppableJumpKeyboardCoordinateGetter: KeyboardCoordinateGetter = (\n event,\n { context, currentCoordinates },\n) => {\n const { collisionRect } = context\n const { code } = event\n\n if (!collisionRect) {\n return currentCoordinates\n }\n\n // Only handle arrow keys\n if (!['ArrowDown', 'ArrowLeft', 'ArrowRight', 'ArrowUp'].includes(code)) {\n return currentCoordinates\n }\n\n // Prevent default browser scroll behavior for arrow keys\n event.preventDefault()\n\n // Clear scrollableAncestors to prevent dnd-kit from scrolling instead of moving\n // This must be done on every keydown because context is updated by dnd-kit\n if (context.scrollableAncestors) {\n context.scrollableAncestors.length = 0\n }\n\n // Get all droppable widgets and their positions\n const droppables = getDroppablePositions()\n\n if (droppables.length === 0) {\n return currentCoordinates\n }\n\n // Current position center (viewport coordinates from collisionRect)\n const currentCenterX = collisionRect.left + collisionRect.width / 2\n const currentCenterY = collisionRect.top + collisionRect.height / 2\n\n // Find the target droppable based on direction\n const targetDroppable = findTargetDroppable(droppables, currentCenterX, currentCenterY, code)\n\n // If we found a target, scroll if needed and calculate the delta\n if (targetDroppable) {\n const viewportHeight = window.innerHeight\n const targetRect = targetDroppable.rect\n const scrollPadding = 20 // Extra padding to ensure element is fully visible\n\n // Check if target droppable is fully visible in viewport\n const isAboveViewport = targetRect.top < scrollPadding\n const isBelowViewport = targetRect.bottom > viewportHeight - scrollPadding\n\n // Scroll to make target visible (using instant scroll for synchronous behavior)\n if (isAboveViewport) {\n const scrollAmount = targetRect.top - scrollPadding\n // don't use smooth scroll here, because it will mess up the delta calculation\n window.scrollBy({ behavior: 'instant', top: scrollAmount })\n } else if (isBelowViewport) {\n const scrollAmount = targetRect.bottom - viewportHeight + scrollPadding\n window.scrollBy({ behavior: 'instant', top: scrollAmount })\n }\n\n // After scroll, recalculate target position (it may have changed due to scroll)\n const newTargetRect = targetDroppable.element.getBoundingClientRect()\n const newTargetCenterX = newTargetRect.left + newTargetRect.width / 2\n const newTargetCenterY = newTargetRect.top + newTargetRect.height / 2\n\n // Calculate delta using current overlay position (which didn't change) and new target position\n const deltaX = newTargetCenterX - currentCenterX\n const deltaY = newTargetCenterY - currentCenterY\n\n // Add delta to currentCoordinates to position overlay's center at target's center\n return {\n x: currentCoordinates.x + deltaX,\n y: currentCoordinates.y + deltaY,\n }\n }\n\n // No valid target found, stay in place\n return currentCoordinates\n}\n\n/**\n * Custom KeyboardSensor that only activates when focus is directly on the\n * draggable element, not on any of its descendants. This allows interactive\n * elements inside draggables (like buttons) to work normally with the keyboard.\n */\nclass DirectFocusKeyboardSensor extends KeyboardSensor {\n static override activators = [\n {\n eventName: 'onKeyDown' as const,\n handler: (\n event: React.KeyboardEvent,\n {\n keyboardCodes = {\n cancel: [KeyboardCode.Esc],\n end: [KeyboardCode.Space, KeyboardCode.Enter],\n start: [KeyboardCode.Space, KeyboardCode.Enter],\n },\n onActivation,\n }: KeyboardSensorOptions,\n { active }: { active: { node: React.MutableRefObject<HTMLElement | null> } },\n ) => {\n const { code } = event.nativeEvent\n\n // Only activate if focus is directly on the draggable node, not descendants\n if (event.target !== active.node.current) {\n return false\n }\n\n if (keyboardCodes.start.includes(code)) {\n event.preventDefault()\n onActivation?.({ event: event.nativeEvent })\n return true\n }\n\n return false\n },\n },\n ]\n}\n\nexport function useDashboardSensors() {\n return useSensors(\n useSensor(MouseSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n useSensor(TouchSensor, {\n activationConstraint: {\n delay: 200,\n tolerance: 5,\n },\n }),\n useSensor(DirectFocusKeyboardSensor, {\n coordinateGetter: droppableJumpKeyboardCoordinateGetter,\n }),\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"sensors.js","names":["KeyboardSensor","MouseSensor","TouchSensor","useSensor","useSensors","getDroppablePositions","positionTolerance","rowTolerance","result","currentRow","currentY","allDroppables","Array","from","document","querySelectorAll","i","length","element","rect","getBoundingClientRect","width","height","centerX","left","centerY","top","testId","getAttribute","isBeforeDroppable","endsWith","hasOverlapping","some","other","otherIndex","otherRect","otherCenterX","otherCenterY","Math","abs","push","row","findClosestRow","droppables","posY","closestRow","minYDistance","Infinity","droppable","yDistance","findClosestDroppableInRow","rowIndex","posX","closestIndex","minXDistance","xDistance","index","findTargetDroppable","currentCenterX","currentCenterY","direction","currentDroppable","currentIndex","targetRow","droppableJumpKeyboardCoordinateGetter","event","context","currentCoordinates","collisionRect","code","includes","preventDefault","scrollableAncestors","targetDroppable","viewportHeight","window","innerHeight","targetRect","scrollPadding","isAboveViewport","isBelowViewport","bottom","scrollAmount","scrollBy","behavior","newTargetRect","newTargetCenterX","newTargetCenterY","deltaX","deltaY","x","y","useDashboardSensors","activationConstraint","distance","delay","tolerance","coordinateGetter"],"sources":["../../../../../../src/views/Dashboard/Default/ModularDashboard/utils/sensors.ts"],"sourcesContent":["import type { KeyboardCoordinateGetter } from '@dnd-kit/core'\n\nimport { KeyboardSensor, MouseSensor, TouchSensor, useSensor, useSensors } from '@dnd-kit/core'\n\ntype DroppablePosition = {\n centerX: number\n centerY: number\n element: Element\n isBeforeDroppable: boolean\n rect: DOMRect\n row: number\n}\n\n/**\n * Get all droppable widget positions, filtering out overlapping \"before\" droppables\n * and assigning row numbers based on Y position.\n */\nfunction getDroppablePositions(): DroppablePosition[] {\n const positionTolerance = 5\n const rowTolerance = 10\n const result: DroppablePosition[] = []\n let currentRow = 0\n let currentY: null | number = null\n\n const allDroppables = Array.from(document.querySelectorAll('.droppable-widget'))\n\n for (let i = 0; i < allDroppables.length; i++) {\n const element = allDroppables[i]\n const rect = element.getBoundingClientRect()\n\n // Skip hidden elements\n if (rect.width === 0 || rect.height === 0) {\n continue\n }\n\n const centerX = rect.left + rect.width / 2\n const centerY = rect.top + rect.height / 2\n const testId = element.getAttribute('data-testid') || ''\n const isBeforeDroppable = testId.endsWith('-before')\n\n // Skip \"before\" droppables that overlap with another droppable\n if (isBeforeDroppable) {\n const hasOverlapping = allDroppables.some((other, otherIndex) => {\n if (otherIndex === i) {\n return false\n }\n const otherRect = other.getBoundingClientRect()\n const otherCenterX = otherRect.left + otherRect.width / 2\n const otherCenterY = otherRect.top + otherRect.height / 2\n return (\n Math.abs(otherCenterX - centerX) < positionTolerance &&\n Math.abs(otherCenterY - centerY) < positionTolerance\n )\n })\n if (hasOverlapping) {\n continue\n }\n }\n\n // Assign row number based on Y position change\n if (currentY === null) {\n currentY = centerY\n } else if (Math.abs(centerY - currentY) >= rowTolerance) {\n currentRow++\n currentY = centerY\n }\n\n result.push({\n centerX,\n centerY,\n element,\n isBeforeDroppable,\n rect,\n row: currentRow,\n })\n }\n\n return result\n}\n\n/**\n * Find the row with the closest Y position to the given posY.\n * Returns the row index, or null if no droppables exist.\n */\nfunction findClosestRow(droppables: DroppablePosition[], posY: number): null | number {\n if (droppables.length === 0) {\n return null\n }\n\n let closestRow = droppables[0].row\n let minYDistance = Infinity\n\n for (const droppable of droppables) {\n const yDistance = Math.abs(droppable.centerY - posY)\n if (yDistance < minYDistance) {\n minYDistance = yDistance\n closestRow = droppable.row\n }\n }\n\n return closestRow\n}\n\n/**\n * Find the closest droppable within a specific row by X position.\n * Returns the droppable and its index, or null if no droppables in that row.\n */\nfunction findClosestDroppableInRow(\n droppables: DroppablePosition[],\n rowIndex: number,\n posX: number,\n): { droppable: DroppablePosition; index: number } | null {\n let closestIndex = -1\n let minXDistance = Infinity\n\n for (let i = 0; i < droppables.length; i++) {\n const droppable = droppables[i]\n if (droppable.row === rowIndex) {\n const xDistance = Math.abs(droppable.centerX - posX)\n if (xDistance < minXDistance) {\n minXDistance = xDistance\n closestIndex = i\n }\n }\n }\n\n if (closestIndex === -1) {\n return null\n }\n\n return { droppable: droppables[closestIndex], index: closestIndex }\n}\n\n/**\n * Find the target droppable based on direction\n * - ArrowRight/Left: Next/previous in DOM order (now that overlapping droppables are filtered)\n * - ArrowUp/Down: Closest in adjacent row (row +1 or -1) by X position\n */\nfunction findTargetDroppable(\n droppables: DroppablePosition[],\n currentCenterX: number,\n currentCenterY: number,\n direction: string,\n): DroppablePosition | null {\n // Find the closest row, then the closest droppable in that row\n const currentRow = findClosestRow(droppables, currentCenterY)\n\n if (currentRow === null) {\n return null\n }\n\n const currentDroppable = findClosestDroppableInRow(droppables, currentRow, currentCenterX)\n\n if (!currentDroppable) {\n return null\n }\n\n const { index: currentIndex } = currentDroppable\n\n switch (direction) {\n case 'ArrowDown': {\n const targetRow = currentRow + 1\n return findClosestDroppableInRow(droppables, targetRow, currentCenterX)?.droppable || null\n }\n\n case 'ArrowLeft':\n // Previous in DOM order\n return droppables[currentIndex - 1] || null\n\n case 'ArrowRight':\n // Next in DOM order\n return droppables[currentIndex + 1] || null\n\n case 'ArrowUp': {\n const targetRow = currentRow - 1\n return findClosestDroppableInRow(droppables, targetRow, currentCenterX)?.droppable || null\n }\n\n default:\n return null\n }\n}\n\n/**\n * Custom coordinate getter that jumps directly to droppable positions\n * instead of moving in pixel increments. This works better with scrolling\n * and provides more predictable navigation.\n */\nconst droppableJumpKeyboardCoordinateGetter: KeyboardCoordinateGetter = (\n event,\n { context, currentCoordinates },\n) => {\n const { collisionRect } = context\n const { code } = event\n\n if (!collisionRect) {\n return currentCoordinates\n }\n\n // Only handle arrow keys\n if (!['ArrowDown', 'ArrowLeft', 'ArrowRight', 'ArrowUp'].includes(code)) {\n return currentCoordinates\n }\n\n // Prevent default browser scroll behavior for arrow keys\n event.preventDefault()\n\n // Clear scrollableAncestors to prevent dnd-kit from scrolling instead of moving\n // This must be done on every keydown because context is updated by dnd-kit\n if (context.scrollableAncestors) {\n context.scrollableAncestors.length = 0\n }\n\n // Get all droppable widgets and their positions\n const droppables = getDroppablePositions()\n\n if (droppables.length === 0) {\n return currentCoordinates\n }\n\n // Current position center (viewport coordinates from collisionRect)\n const currentCenterX = collisionRect.left + collisionRect.width / 2\n const currentCenterY = collisionRect.top + collisionRect.height / 2\n\n // Find the target droppable based on direction\n const targetDroppable = findTargetDroppable(droppables, currentCenterX, currentCenterY, code)\n\n // If we found a target, scroll if needed and calculate the delta\n if (targetDroppable) {\n const viewportHeight = window.innerHeight\n const targetRect = targetDroppable.rect\n const scrollPadding = 20 // Extra padding to ensure element is fully visible\n\n // Check if target droppable is fully visible in viewport\n const isAboveViewport = targetRect.top < scrollPadding\n const isBelowViewport = targetRect.bottom > viewportHeight - scrollPadding\n\n // Scroll to make target visible (using instant scroll for synchronous behavior)\n if (isAboveViewport) {\n const scrollAmount = targetRect.top - scrollPadding\n // don't use smooth scroll here, because it will mess up the delta calculation\n window.scrollBy({ behavior: 'instant', top: scrollAmount })\n } else if (isBelowViewport) {\n const scrollAmount = targetRect.bottom - viewportHeight + scrollPadding\n window.scrollBy({ behavior: 'instant', top: scrollAmount })\n }\n\n // After scroll, recalculate target position (it may have changed due to scroll)\n const newTargetRect = targetDroppable.element.getBoundingClientRect()\n const newTargetCenterX = newTargetRect.left + newTargetRect.width / 2\n const newTargetCenterY = newTargetRect.top + newTargetRect.height / 2\n\n // Calculate delta using current overlay position (which didn't change) and new target position\n const deltaX = newTargetCenterX - currentCenterX\n const deltaY = newTargetCenterY - currentCenterY\n\n // Add delta to currentCoordinates to position overlay's center at target's center\n return {\n x: currentCoordinates.x + deltaX,\n y: currentCoordinates.y + deltaY,\n }\n }\n\n // No valid target found, stay in place\n return currentCoordinates\n}\n\nexport function useDashboardSensors() {\n return useSensors(\n useSensor(MouseSensor, {\n activationConstraint: {\n distance: 5,\n },\n }),\n useSensor(TouchSensor, {\n activationConstraint: {\n delay: 200,\n tolerance: 5,\n },\n }),\n useSensor(KeyboardSensor, {\n coordinateGetter: droppableJumpKeyboardCoordinateGetter,\n }),\n )\n}\n"],"mappings":"AAEA,SAASA,cAAc,EAAEC,WAAW,EAAEC,WAAW,EAAEC,SAAS,EAAEC,UAAU,QAAQ;AAWhF;;;;AAIA,SAASC,sBAAA;EACP,MAAMC,iBAAA,GAAoB;EAC1B,MAAMC,YAAA,GAAe;EACrB,MAAMC,MAAA,GAA8B,EAAE;EACtC,IAAIC,UAAA,GAAa;EACjB,IAAIC,QAAA,GAA0B;EAE9B,MAAMC,aAAA,GAAgBC,KAAA,CAAMC,IAAI,CAACC,QAAA,CAASC,gBAAgB,CAAC;EAE3D,KAAK,IAAIC,CAAA,GAAI,GAAGA,CAAA,GAAIL,aAAA,CAAcM,MAAM,EAAED,CAAA,IAAK;IAC7C,MAAME,OAAA,GAAUP,aAAa,CAACK,CAAA,CAAE;IAChC,MAAMG,IAAA,GAAOD,OAAA,CAAQE,qBAAqB;IAE1C;IACA,IAAID,IAAA,CAAKE,KAAK,KAAK,KAAKF,IAAA,CAAKG,MAAM,KAAK,GAAG;MACzC;IACF;IAEA,MAAMC,OAAA,GAAUJ,IAAA,CAAKK,IAAI,GAAGL,IAAA,CAAKE,KAAK,GAAG;IACzC,MAAMI,OAAA,GAAUN,IAAA,CAAKO,GAAG,GAAGP,IAAA,CAAKG,MAAM,GAAG;IACzC,MAAMK,MAAA,GAAST,OAAA,CAAQU,YAAY,CAAC,kBAAkB;IACtD,MAAMC,iBAAA,GAAoBF,MAAA,CAAOG,QAAQ,CAAC;IAE1C;IACA,IAAID,iBAAA,EAAmB;MACrB,MAAME,cAAA,GAAiBpB,aAAA,CAAcqB,IAAI,CAAC,CAACC,KAAA,EAAOC,UAAA;QAChD,IAAIA,UAAA,KAAelB,CAAA,EAAG;UACpB,OAAO;QACT;QACA,MAAMmB,SAAA,GAAYF,KAAA,CAAMb,qBAAqB;QAC7C,MAAMgB,YAAA,GAAeD,SAAA,CAAUX,IAAI,GAAGW,SAAA,CAAUd,KAAK,GAAG;QACxD,MAAMgB,YAAA,GAAeF,SAAA,CAAUT,GAAG,GAAGS,SAAA,CAAUb,MAAM,GAAG;QACxD,OACEgB,IAAA,CAAKC,GAAG,CAACH,YAAA,GAAeb,OAAA,IAAWjB,iBAAA,IACnCgC,IAAA,CAAKC,GAAG,CAACF,YAAA,GAAeZ,OAAA,IAAWnB,iBAAA;MAEvC;MACA,IAAIyB,cAAA,EAAgB;QAClB;MACF;IACF;IAEA;IACA,IAAIrB,QAAA,KAAa,MAAM;MACrBA,QAAA,GAAWe,OAAA;IACb,OAAO,IAAIa,IAAA,CAAKC,GAAG,CAACd,OAAA,GAAUf,QAAA,KAAaH,YAAA,EAAc;MACvDE,UAAA;MACAC,QAAA,GAAWe,OAAA;IACb;IAEAjB,MAAA,CAAOgC,IAAI,CAAC;MACVjB,OAAA;MACAE,OAAA;MACAP,OAAA;MACAW,iBAAA;MACAV,IAAA;MACAsB,GAAA,EAAKhC;IACP;EACF;EAEA,OAAOD,MAAA;AACT;AAEA;;;;AAIA,SAASkC,eAAeC,UAA+B,EAAEC,IAAY;EACnE,IAAID,UAAA,CAAW1B,MAAM,KAAK,GAAG;IAC3B,OAAO;EACT;EAEA,IAAI4B,UAAA,GAAaF,UAAU,CAAC,EAAE,CAACF,GAAG;EAClC,IAAIK,YAAA,GAAeC,QAAA;EAEnB,KAAK,MAAMC,SAAA,IAAaL,UAAA,EAAY;IAClC,MAAMM,SAAA,GAAYX,IAAA,CAAKC,GAAG,CAACS,SAAA,CAAUvB,OAAO,GAAGmB,IAAA;IAC/C,IAAIK,SAAA,GAAYH,YAAA,EAAc;MAC5BA,YAAA,GAAeG,SAAA;MACfJ,UAAA,GAAaG,SAAA,CAAUP,GAAG;IAC5B;EACF;EAEA,OAAOI,UAAA;AACT;AAEA;;;;AAIA,SAASK,0BACPP,UAA+B,EAC/BQ,QAAgB,EAChBC,IAAY;EAEZ,IAAIC,YAAA,GAAe,CAAC;EACpB,IAAIC,YAAA,GAAeP,QAAA;EAEnB,KAAK,IAAI/B,CAAA,GAAI,GAAGA,CAAA,GAAI2B,UAAA,CAAW1B,MAAM,EAAED,CAAA,IAAK;IAC1C,MAAMgC,SAAA,GAAYL,UAAU,CAAC3B,CAAA,CAAE;IAC/B,IAAIgC,SAAA,CAAUP,GAAG,KAAKU,QAAA,EAAU;MAC9B,MAAMI,SAAA,GAAYjB,IAAA,CAAKC,GAAG,CAACS,SAAA,CAAUzB,OAAO,GAAG6B,IAAA;MAC/C,IAAIG,SAAA,GAAYD,YAAA,EAAc;QAC5BA,YAAA,GAAeC,SAAA;QACfF,YAAA,GAAerC,CAAA;MACjB;IACF;EACF;EAEA,IAAIqC,YAAA,KAAiB,CAAC,GAAG;IACvB,OAAO;EACT;EAEA,OAAO;IAAEL,SAAA,EAAWL,UAAU,CAACU,YAAA,CAAa;IAAEG,KAAA,EAAOH;EAAa;AACpE;AAEA;;;;;AAKA,SAASI,oBACPd,UAA+B,EAC/Be,cAAsB,EACtBC,cAAsB,EACtBC,SAAiB;EAEjB;EACA,MAAMnD,UAAA,GAAaiC,cAAA,CAAeC,UAAA,EAAYgB,cAAA;EAE9C,IAAIlD,UAAA,KAAe,MAAM;IACvB,OAAO;EACT;EAEA,MAAMoD,gBAAA,GAAmBX,yBAAA,CAA0BP,UAAA,EAAYlC,UAAA,EAAYiD,cAAA;EAE3E,IAAI,CAACG,gBAAA,EAAkB;IACrB,OAAO;EACT;EAEA,MAAM;IAAEL,KAAA,EAAOM;EAAY,CAAE,GAAGD,gBAAA;EAEhC,QAAQD,SAAA;IACN,KAAK;MAAa;QAChB,MAAMG,SAAA,GAAYtD,UAAA,GAAa;QAC/B,OAAOyC,yBAAA,CAA0BP,UAAA,EAAYoB,SAAA,EAAWL,cAAA,GAAiBV,SAAA,IAAa;MACxF;IAEA,KAAK;MACH;MACA,OAAOL,UAAU,CAACmB,YAAA,GAAe,EAAE,IAAI;IAEzC,KAAK;MACH;MACA,OAAOnB,UAAU,CAACmB,YAAA,GAAe,EAAE,IAAI;IAEzC,KAAK;MAAW;QACd,MAAMC,SAAA,GAAYtD,UAAA,GAAa;QAC/B,OAAOyC,yBAAA,CAA0BP,UAAA,EAAYoB,SAAA,EAAWL,cAAA,GAAiBV,SAAA,IAAa;MACxF;IAEA;MACE,OAAO;EACX;AACF;AAEA;;;;;AAKA,MAAMgB,qCAAA,GAAkEA,CACtEC,KAAA,EACA;EAAEC,OAAO;EAAEC;AAAkB,CAAE;EAE/B,MAAM;IAAEC;EAAa,CAAE,GAAGF,OAAA;EAC1B,MAAM;IAAEG;EAAI,CAAE,GAAGJ,KAAA;EAEjB,IAAI,CAACG,aAAA,EAAe;IAClB,OAAOD,kBAAA;EACT;EAEA;EACA,IAAI,CAAC,CAAC,aAAa,aAAa,cAAc,UAAU,CAACG,QAAQ,CAACD,IAAA,GAAO;IACvE,OAAOF,kBAAA;EACT;EAEA;EACAF,KAAA,CAAMM,cAAc;EAEpB;EACA;EACA,IAAIL,OAAA,CAAQM,mBAAmB,EAAE;IAC/BN,OAAA,CAAQM,mBAAmB,CAACvD,MAAM,GAAG;EACvC;EAEA;EACA,MAAM0B,UAAA,GAAatC,qBAAA;EAEnB,IAAIsC,UAAA,CAAW1B,MAAM,KAAK,GAAG;IAC3B,OAAOkD,kBAAA;EACT;EAEA;EACA,MAAMT,cAAA,GAAiBU,aAAA,CAAc5C,IAAI,GAAG4C,aAAA,CAAc/C,KAAK,GAAG;EAClE,MAAMsC,cAAA,GAAiBS,aAAA,CAAc1C,GAAG,GAAG0C,aAAA,CAAc9C,MAAM,GAAG;EAElE;EACA,MAAMmD,eAAA,GAAkBhB,mBAAA,CAAoBd,UAAA,EAAYe,cAAA,EAAgBC,cAAA,EAAgBU,IAAA;EAExF;EACA,IAAII,eAAA,EAAiB;IACnB,MAAMC,cAAA,GAAiBC,MAAA,CAAOC,WAAW;IACzC,MAAMC,UAAA,GAAaJ,eAAA,CAAgBtD,IAAI;IACvC,MAAM2D,aAAA,GAAgB,GAAG;AAAA;IAEzB;IACA,MAAMC,eAAA,GAAkBF,UAAA,CAAWnD,GAAG,GAAGoD,aAAA;IACzC,MAAME,eAAA,GAAkBH,UAAA,CAAWI,MAAM,GAAGP,cAAA,GAAiBI,aAAA;IAE7D;IACA,IAAIC,eAAA,EAAiB;MACnB,MAAMG,YAAA,GAAeL,UAAA,CAAWnD,GAAG,GAAGoD,aAAA;MACtC;MACAH,MAAA,CAAOQ,QAAQ,CAAC;QAAEC,QAAA,EAAU;QAAW1D,GAAA,EAAKwD;MAAa;IAC3D,OAAO,IAAIF,eAAA,EAAiB;MAC1B,MAAME,YAAA,GAAeL,UAAA,CAAWI,MAAM,GAAGP,cAAA,GAAiBI,aAAA;MAC1DH,MAAA,CAAOQ,QAAQ,CAAC;QAAEC,QAAA,EAAU;QAAW1D,GAAA,EAAKwD;MAAa;IAC3D;IAEA;IACA,MAAMG,aAAA,GAAgBZ,eAAA,CAAgBvD,OAAO,CAACE,qBAAqB;IACnE,MAAMkE,gBAAA,GAAmBD,aAAA,CAAc7D,IAAI,GAAG6D,aAAA,CAAchE,KAAK,GAAG;IACpE,MAAMkE,gBAAA,GAAmBF,aAAA,CAAc3D,GAAG,GAAG2D,aAAA,CAAc/D,MAAM,GAAG;IAEpE;IACA,MAAMkE,MAAA,GAASF,gBAAA,GAAmB5B,cAAA;IAClC,MAAM+B,MAAA,GAASF,gBAAA,GAAmB5B,cAAA;IAElC;IACA,OAAO;MACL+B,CAAA,EAAGvB,kBAAA,CAAmBuB,CAAC,GAAGF,MAAA;MAC1BG,CAAA,EAAGxB,kBAAA,CAAmBwB,CAAC,GAAGF;IAC5B;EACF;EAEA;EACA,OAAOtB,kBAAA;AACT;AAEA,OAAO,SAASyB,oBAAA;EACd,OAAOxF,UAAA,CACLD,SAAA,CAAUF,WAAA,EAAa;IACrB4F,oBAAA,EAAsB;MACpBC,QAAA,EAAU;IACZ;EACF,IACA3F,SAAA,CAAUD,WAAA,EAAa;IACrB2F,oBAAA,EAAsB;MACpBE,KAAA,EAAO;MACPC,SAAA,EAAW;IACb;EACF,IACA7F,SAAA,CAAUH,cAAA,EAAgB;IACxBiG,gBAAA,EAAkBjC;EACpB;AAEJ","ignoreList":[]}