@payloadcms/ui 4.0.0-internal.add4c47 → 4.0.0-internal.af6aad0

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 (717) hide show
  1. package/dist/css/app.css +121 -0
  2. package/dist/css/forms.css +0 -6
  3. package/dist/css/spacing.css +10 -3
  4. package/dist/css/z-index.css +1 -0
  5. package/dist/elements/AddNewRelation/index.css +0 -5
  6. package/dist/elements/AddNewRelation/index.js +2 -2
  7. package/dist/elements/AddNewRelation/index.js.map +1 -1
  8. package/dist/elements/AppHeader/index.css +5 -3
  9. package/dist/elements/AppHeader/index.d.ts +1 -8
  10. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  11. package/dist/elements/AppHeader/index.js +8 -13
  12. package/dist/elements/AppHeader/index.js.map +1 -1
  13. package/dist/elements/ArrayAction/index.d.ts +1 -0
  14. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  15. package/dist/elements/ArrayAction/index.js +45 -32
  16. package/dist/elements/ArrayAction/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.css +10 -4
  18. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  19. package/dist/elements/BulkUpload/AddFilesView/index.js +71 -51
  20. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  22. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  23. package/dist/elements/Button/index.css +25 -2
  24. package/dist/elements/Button/index.d.ts.map +1 -1
  25. package/dist/elements/Button/index.js +2 -0
  26. package/dist/elements/Button/index.js.map +1 -1
  27. package/dist/elements/Button/types.d.ts +1 -1
  28. package/dist/elements/Button/types.d.ts.map +1 -1
  29. package/dist/elements/Button/types.js.map +1 -1
  30. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  31. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  32. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +65 -3
  33. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  34. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +345 -1
  35. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +1 -1
  36. package/dist/elements/CodeEditor/index.css +0 -5
  37. package/dist/elements/CommandPalette/index.css +0 -7
  38. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  39. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  40. package/dist/elements/CopyToClipboard/index.js +10 -8
  41. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  42. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  43. package/dist/elements/CreateDocumentButton/index.js +4 -1
  44. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  45. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  46. package/dist/elements/DatePicker/DatePicker.js +1 -0
  47. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  48. package/dist/elements/DatePicker/index.css +1 -1
  49. package/dist/elements/DefaultListViewTabs/index.css +1 -0
  50. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  51. package/dist/elements/DefaultListViewTabs/index.js +84 -62
  52. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  53. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  54. package/dist/elements/DeleteDocument/index.js +16 -1
  55. package/dist/elements/DeleteDocument/index.js.map +1 -1
  56. package/dist/elements/DocumentDrawer/types.d.ts +1 -1
  57. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  58. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  59. package/dist/elements/Drawer/index.css +10 -4
  60. package/dist/elements/Drawer/types.d.ts +2 -2
  61. package/dist/elements/Drawer/types.d.ts.map +1 -1
  62. package/dist/elements/Drawer/types.js.map +1 -1
  63. package/dist/elements/Dropzone/index.css +10 -4
  64. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  65. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  66. package/dist/elements/EditMany/DrawerContent.js +2 -2
  67. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  68. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  69. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  70. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  71. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
  72. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
  73. package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
  74. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  75. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  76. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  77. package/dist/elements/FileManager/index.css +0 -30
  78. package/dist/elements/FileManager/index.d.ts.map +1 -1
  79. package/dist/elements/FileManager/index.js +380 -287
  80. package/dist/elements/FileManager/index.js.map +1 -1
  81. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +22 -4
  82. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
  83. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +68 -49
  84. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  85. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +100 -16
  86. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
  87. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +97 -137
  88. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  89. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts +1 -1
  90. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  91. package/dist/elements/Hierarchy/ColumnBrowser/index.js +51 -23
  92. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  93. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +26 -3
  94. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  95. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  96. package/dist/elements/Hierarchy/CreateNewButton/index.css +9 -0
  97. package/dist/elements/Hierarchy/CreateNewButton/index.d.ts +9 -0
  98. package/dist/elements/Hierarchy/CreateNewButton/index.d.ts.map +1 -0
  99. package/dist/elements/Hierarchy/CreateNewButton/index.js +111 -0
  100. package/dist/elements/Hierarchy/CreateNewButton/index.js.map +1 -0
  101. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
  102. package/dist/elements/Hierarchy/DocHeaderButton/index.js +6 -1
  103. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  104. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js +1 -3
  105. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -1
  106. package/dist/elements/Hierarchy/Field/index.client.d.ts +5 -0
  107. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  108. package/dist/elements/Hierarchy/Field/index.client.js +120 -95
  109. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  110. package/dist/elements/Hierarchy/Field/index.css +3 -34
  111. package/dist/elements/Hierarchy/Modal/Footer/index.css +45 -0
  112. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts +28 -0
  113. package/dist/elements/Hierarchy/Modal/Footer/index.d.ts.map +1 -0
  114. package/dist/elements/Hierarchy/Modal/Footer/index.js +166 -0
  115. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -0
  116. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +18 -4
  117. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  118. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +88 -24
  119. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  120. package/dist/elements/Hierarchy/Modal/index.css +4 -53
  121. package/dist/elements/Hierarchy/Modal/index.d.ts +5 -2
  122. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  123. package/dist/elements/Hierarchy/Modal/index.js +136 -99
  124. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  125. package/dist/elements/Hierarchy/Modal/types.d.ts +15 -0
  126. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
  127. package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
  128. package/dist/elements/Hierarchy/MoveMany/index.d.ts +7 -3
  129. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  130. package/dist/elements/Hierarchy/MoveMany/index.js +43 -170
  131. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  132. package/dist/elements/Hierarchy/Search/index.css +2 -9
  133. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
  134. package/dist/elements/Hierarchy/Search/index.js +6 -73
  135. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  136. package/dist/elements/Hierarchy/Search/types.d.ts +2 -6
  137. package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -1
  138. package/dist/elements/Hierarchy/Search/types.js.map +1 -1
  139. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts +0 -4
  140. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  141. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +101 -166
  142. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  143. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  144. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +3 -21
  145. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  146. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +3 -3
  147. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +59 -30
  148. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +1 -1
  149. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  150. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +54 -10
  151. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  152. package/dist/elements/Hierarchy/Tree/index.css +8 -9
  153. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  154. package/dist/elements/Hierarchy/Tree/index.js +29 -47
  155. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  156. package/dist/elements/Hierarchy/Tree/types.d.ts +9 -1
  157. package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -1
  158. package/dist/elements/Hierarchy/Tree/types.js.map +1 -1
  159. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  160. package/dist/elements/Hierarchy/Tree/useChildren.js +11 -1
  161. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  162. package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts +22 -0
  163. package/dist/elements/Hierarchy/getFolderHierarchySlug.d.ts.map +1 -0
  164. package/dist/elements/Hierarchy/getFolderHierarchySlug.js +17 -0
  165. package/dist/elements/Hierarchy/getFolderHierarchySlug.js.map +1 -0
  166. package/dist/elements/Hierarchy/move/moveDocuments.d.ts +34 -0
  167. package/dist/elements/Hierarchy/move/moveDocuments.d.ts.map +1 -0
  168. package/dist/elements/Hierarchy/move/moveDocuments.js +94 -0
  169. package/dist/elements/Hierarchy/move/moveDocuments.js.map +1 -0
  170. package/dist/elements/IDLabel/index.css +6 -0
  171. package/dist/elements/IDLabel/index.d.ts +1 -1
  172. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  173. package/dist/elements/IDLabel/index.js +16 -21
  174. package/dist/elements/IDLabel/index.js.map +1 -1
  175. package/dist/elements/InputStepper/index.css +0 -1
  176. package/dist/elements/ListControls/index.d.ts.map +1 -1
  177. package/dist/elements/ListControls/index.js +3 -2
  178. package/dist/elements/ListControls/index.js.map +1 -1
  179. package/dist/elements/ListControls/types.d.ts +4 -0
  180. package/dist/elements/ListControls/types.d.ts.map +1 -1
  181. package/dist/elements/ListControls/types.js.map +1 -1
  182. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  183. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  184. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  185. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  186. package/dist/elements/Locked/index.css +0 -8
  187. package/dist/elements/Locked/index.d.ts.map +1 -1
  188. package/dist/elements/Locked/index.js +70 -64
  189. package/dist/elements/Locked/index.js.map +1 -1
  190. package/dist/elements/Nav/NavSidebarToggle/index.js +1 -1
  191. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  192. package/dist/elements/Nav/NavWrapper/index.d.ts +1 -0
  193. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  194. package/dist/elements/Nav/NavWrapper/index.js +12 -18
  195. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  196. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  197. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  198. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  199. package/dist/elements/Nav/SidebarTabs/index.css +1 -7
  200. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  201. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  202. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
  203. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  204. package/dist/elements/Nav/context.d.ts +0 -1
  205. package/dist/elements/Nav/context.d.ts.map +1 -1
  206. package/dist/elements/Nav/context.js +92 -67
  207. package/dist/elements/Nav/context.js.map +1 -1
  208. package/dist/elements/Nav/index.css +47 -42
  209. package/dist/elements/Nav/index.d.ts +4 -0
  210. package/dist/elements/Nav/index.d.ts.map +1 -1
  211. package/dist/elements/Nav/index.js +16 -1
  212. package/dist/elements/Nav/index.js.map +1 -1
  213. package/dist/elements/NavGroup/index.css +29 -16
  214. package/dist/elements/Popup/PopupButtonList/index.css +33 -17
  215. package/dist/elements/Popup/index.css +6 -0
  216. package/dist/elements/Popup/index.d.ts +10 -0
  217. package/dist/elements/Popup/index.d.ts.map +1 -1
  218. package/dist/elements/Popup/index.js +13 -6
  219. package/dist/elements/Popup/index.js.map +1 -1
  220. package/dist/elements/PreviewButton/index.d.ts +1 -2
  221. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  222. package/dist/elements/PreviewButton/index.js +11 -5
  223. package/dist/elements/PreviewButton/index.js.map +1 -1
  224. package/dist/elements/PreviewSizes/index.css +8 -9
  225. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  226. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  227. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  228. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  229. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  230. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  231. package/dist/elements/ReactSelect/index.css +0 -3
  232. package/dist/elements/ReactSelect/types.d.ts +5 -0
  233. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  234. package/dist/elements/ReactSelect/types.js.map +1 -1
  235. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  236. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  237. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  238. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  239. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  240. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  241. package/dist/elements/RelationshipTable/index.js +41 -5
  242. package/dist/elements/RelationshipTable/index.js.map +1 -1
  243. package/dist/elements/RenderTitle/index.css +4 -0
  244. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  245. package/dist/elements/RenderTitle/index.js +18 -13
  246. package/dist/elements/RenderTitle/index.js.map +1 -1
  247. package/dist/elements/SegmentedControl/index.css +58 -0
  248. package/dist/elements/SegmentedControl/index.d.ts +19 -0
  249. package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
  250. package/dist/elements/SegmentedControl/index.js +104 -0
  251. package/dist/elements/SegmentedControl/index.js.map +1 -0
  252. package/dist/elements/SelectAll/index.d.ts.map +1 -1
  253. package/dist/elements/SelectAll/index.js +1 -2
  254. package/dist/elements/SelectAll/index.js.map +1 -1
  255. package/dist/elements/SelectRow/index.d.ts +4 -3
  256. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  257. package/dist/elements/SelectRow/index.js +11 -9
  258. package/dist/elements/SelectRow/index.js.map +1 -1
  259. package/dist/elements/SidebarRow/index.css +1 -5
  260. package/dist/elements/SidebarToggle/index.css +3 -18
  261. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  262. package/dist/elements/SortColumn/index.js +42 -38
  263. package/dist/elements/SortColumn/index.js.map +1 -1
  264. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  265. package/dist/elements/SortHeader/index.js +29 -26
  266. package/dist/elements/SortHeader/index.js.map +1 -1
  267. package/dist/elements/StepNav/DropTarget/index.css +20 -0
  268. package/dist/elements/StepNav/DropTarget/index.d.ts +16 -0
  269. package/dist/elements/StepNav/DropTarget/index.d.ts.map +1 -0
  270. package/dist/elements/StepNav/DropTarget/index.js +71 -0
  271. package/dist/elements/StepNav/DropTarget/index.js.map +1 -0
  272. package/dist/elements/StepNav/index.css +64 -14
  273. package/dist/elements/StepNav/index.d.ts.map +1 -1
  274. package/dist/elements/StepNav/index.js +147 -69
  275. package/dist/elements/StepNav/index.js.map +1 -1
  276. package/dist/elements/StepNav/types.d.ts +6 -0
  277. package/dist/elements/StepNav/types.d.ts.map +1 -1
  278. package/dist/elements/StepNav/types.js.map +1 -1
  279. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +5 -7
  280. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  281. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +14 -3
  282. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  283. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  284. package/dist/elements/Table/DefaultCell/index.js +3 -11
  285. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  286. package/dist/elements/Table/OrderableRow.d.ts +3 -1
  287. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  288. package/dist/elements/Table/OrderableRow.js +17 -1
  289. package/dist/elements/Table/OrderableRow.js.map +1 -1
  290. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  291. package/dist/elements/Table/OrderableTable.js +19 -2
  292. package/dist/elements/Table/OrderableTable.js.map +1 -1
  293. package/dist/elements/TableSection/index.css +0 -1
  294. package/dist/elements/Tooltip/index.css +15 -34
  295. package/dist/elements/Tooltip/index.d.ts +11 -3
  296. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  297. package/dist/elements/Tooltip/index.js +151 -85
  298. package/dist/elements/Tooltip/index.js.map +1 -1
  299. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +1 -1
  300. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -1
  301. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  302. package/dist/elements/Upload/index.css +39 -37
  303. package/dist/elements/Upload/index.d.ts.map +1 -1
  304. package/dist/elements/Upload/index.js +37 -99
  305. package/dist/elements/Upload/index.js.map +1 -1
  306. package/dist/elements/Upload/usePasteFromClipboard.d.ts +14 -0
  307. package/dist/elements/Upload/usePasteFromClipboard.d.ts.map +1 -0
  308. package/dist/elements/Upload/usePasteFromClipboard.js +93 -0
  309. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -0
  310. package/dist/elements/Upload/useUploadFromUrl.d.ts +20 -0
  311. package/dist/elements/Upload/useUploadFromUrl.d.ts.map +1 -0
  312. package/dist/elements/Upload/useUploadFromUrl.js +201 -0
  313. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -0
  314. package/dist/elements/UploadDropzoneContent/index.css +31 -0
  315. package/dist/elements/UploadDropzoneContent/index.d.ts +17 -0
  316. package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -0
  317. package/dist/elements/UploadDropzoneContent/index.js +62 -0
  318. package/dist/elements/UploadDropzoneContent/index.js.map +1 -0
  319. package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts +18 -0
  320. package/dist/elements/UserMenu/HoverSubmenuGroup.d.ts.map +1 -0
  321. package/dist/elements/UserMenu/HoverSubmenuGroup.js +38 -0
  322. package/dist/elements/UserMenu/HoverSubmenuGroup.js.map +1 -0
  323. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
  324. package/dist/elements/UserMenu/LanguageMenu/index.js +83 -39
  325. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  326. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  327. package/dist/elements/UserMenu/SettingsMenu/index.js +57 -21
  328. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  329. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
  330. package/dist/elements/UserMenu/ThemeMenu/index.js +83 -39
  331. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  332. package/dist/elements/UserMenu/index.css +32 -2
  333. package/dist/elements/UserMenu/index.d.ts +1 -0
  334. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  335. package/dist/elements/UserMenu/index.js +77 -51
  336. package/dist/elements/UserMenu/index.js.map +1 -1
  337. package/dist/elements/UserMenu/useHoverSubmenu.d.ts +21 -0
  338. package/dist/elements/UserMenu/useHoverSubmenu.d.ts.map +1 -0
  339. package/dist/elements/UserMenu/useHoverSubmenu.js +260 -0
  340. package/dist/elements/UserMenu/useHoverSubmenu.js.map +1 -0
  341. package/dist/elements/ViewModeToggle/index.d.ts +8 -0
  342. package/dist/elements/ViewModeToggle/index.d.ts.map +1 -0
  343. package/dist/elements/ViewModeToggle/index.js +29 -0
  344. package/dist/elements/ViewModeToggle/index.js.map +1 -0
  345. package/dist/elements/WhereBuilder/conditionValue.d.ts +32 -0
  346. package/dist/elements/WhereBuilder/conditionValue.d.ts.map +1 -0
  347. package/dist/elements/WhereBuilder/conditionValue.js +32 -0
  348. package/dist/elements/WhereBuilder/conditionValue.js.map +1 -0
  349. package/dist/elements/WhereBuilder/conditionValue.spec.js +65 -0
  350. package/dist/elements/WhereBuilder/conditionValue.spec.js.map +1 -0
  351. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  352. package/dist/elements/WhereBuilder/index.js +15 -4
  353. package/dist/elements/WhereBuilder/index.js.map +1 -1
  354. package/dist/exports/client/index.d.ts +9 -1
  355. package/dist/exports/client/index.d.ts.map +1 -1
  356. package/dist/exports/client/index.js +1 -1
  357. package/dist/exports/client/index.js.map +3 -3
  358. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  359. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  360. package/dist/fields/Array/ArrayRow.js +2 -0
  361. package/dist/fields/Array/ArrayRow.js.map +1 -1
  362. package/dist/fields/Array/index.d.ts.map +1 -1
  363. package/dist/fields/Array/index.js +38 -10
  364. package/dist/fields/Array/index.js.map +1 -1
  365. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  366. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  367. package/dist/fields/Blocks/BlockRow.js +2 -0
  368. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  369. package/dist/fields/Blocks/RowActions.d.ts +1 -0
  370. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  371. package/dist/fields/Blocks/RowActions.js +22 -19
  372. package/dist/fields/Blocks/RowActions.js.map +1 -1
  373. package/dist/fields/Blocks/index.d.ts.map +1 -1
  374. package/dist/fields/Blocks/index.js +38 -10
  375. package/dist/fields/Blocks/index.js.map +1 -1
  376. package/dist/fields/Checkbox/Input.d.ts +4 -2
  377. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  378. package/dist/fields/Checkbox/Input.js +136 -148
  379. package/dist/fields/Checkbox/Input.js.map +1 -1
  380. package/dist/fields/Checkbox/index.css +163 -186
  381. package/dist/fields/FieldError/index.css +0 -9
  382. package/dist/fields/FieldError/index.d.ts.map +1 -1
  383. package/dist/fields/FieldError/index.js +19 -9
  384. package/dist/fields/FieldError/index.js.map +1 -1
  385. package/dist/fields/Join/index.css +9 -0
  386. package/dist/fields/Join/index.d.ts.map +1 -1
  387. package/dist/fields/Join/index.js +13 -9
  388. package/dist/fields/Join/index.js.map +1 -1
  389. package/dist/fields/RadioGroup/index.css +0 -7
  390. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  391. package/dist/fields/Relationship/Input.js +53 -17
  392. package/dist/fields/Relationship/Input.js.map +1 -1
  393. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  394. package/dist/fields/Relationship/optionsReducer.js +2 -0
  395. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  396. package/dist/fields/Relationship/types.d.ts +24 -0
  397. package/dist/fields/Relationship/types.d.ts.map +1 -1
  398. package/dist/fields/Relationship/types.js.map +1 -1
  399. package/dist/fields/Slug/index.css +0 -1
  400. package/dist/fields/Slug/index.d.ts.map +1 -1
  401. package/dist/fields/Slug/index.js +80 -125
  402. package/dist/fields/Slug/index.js.map +1 -1
  403. package/dist/fields/Upload/Input.d.ts.map +1 -1
  404. package/dist/fields/Upload/Input.js +44 -16
  405. package/dist/fields/Upload/Input.js.map +1 -1
  406. package/dist/fields/Upload/Input.spec.js +241 -0
  407. package/dist/fields/Upload/Input.spec.js.map +1 -0
  408. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  409. package/dist/forms/Form/fieldReducer.js +3 -1
  410. package/dist/forms/Form/fieldReducer.js.map +1 -1
  411. package/dist/forms/Form/index.d.ts.map +1 -1
  412. package/dist/forms/Form/index.js +9 -1
  413. package/dist/forms/Form/index.js.map +1 -1
  414. package/dist/forms/Form/types.d.ts +1 -1
  415. package/dist/forms/Form/types.d.ts.map +1 -1
  416. package/dist/forms/Form/types.js.map +1 -1
  417. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  418. package/dist/forms/WatchChildErrors/index.js +2 -2
  419. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  420. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  421. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +2 -1
  422. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  423. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  424. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
  425. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  426. package/dist/icons/CollapseLayers/index.css +5 -0
  427. package/dist/icons/CollapseLayers/index.d.ts +7 -0
  428. package/dist/icons/CollapseLayers/index.d.ts.map +1 -0
  429. package/dist/icons/CollapseLayers/index.js +23 -0
  430. package/dist/icons/CollapseLayers/index.js.map +1 -0
  431. package/dist/icons/Edit/index.d.ts +0 -1
  432. package/dist/icons/Edit/index.d.ts.map +1 -1
  433. package/dist/icons/Edit/index.js +4 -4
  434. package/dist/icons/Edit/index.js.map +1 -1
  435. package/dist/icons/Table/index.css +5 -0
  436. package/dist/icons/Table/index.d.ts +7 -0
  437. package/dist/icons/Table/index.d.ts.map +1 -0
  438. package/dist/icons/Table/index.js +25 -0
  439. package/dist/icons/Table/index.js.map +1 -0
  440. package/dist/layouts/Root/index.d.ts +1 -1
  441. package/dist/layouts/Root/index.d.ts.map +1 -1
  442. package/dist/layouts/Root/index.js +8 -2
  443. package/dist/layouts/Root/index.js.map +1 -1
  444. package/dist/providers/Actions/index.d.ts +1 -0
  445. package/dist/providers/Actions/index.d.ts.map +1 -1
  446. package/dist/providers/Actions/index.js +43 -11
  447. package/dist/providers/Actions/index.js.map +1 -1
  448. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  449. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  450. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  451. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  452. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  453. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  454. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  455. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  456. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  457. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  458. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  459. package/dist/providers/Auth/authSessionRequests.js +119 -0
  460. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  461. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  462. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  463. package/dist/providers/Auth/index.d.ts +2 -56
  464. package/dist/providers/Auth/index.d.ts.map +1 -1
  465. package/dist/providers/Auth/index.js +283 -135
  466. package/dist/providers/Auth/index.js.map +1 -1
  467. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  468. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  469. package/dist/providers/Auth/sessionActivity.js +49 -0
  470. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  471. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  472. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  473. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  474. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  475. package/dist/providers/Auth/sessionTiming.js +18 -0
  476. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  477. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  478. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  479. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  480. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  481. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  482. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  483. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  484. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  485. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  486. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  487. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  488. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  489. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  490. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  491. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  492. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  493. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  494. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  495. package/dist/providers/Auth/types.d.ts +65 -0
  496. package/dist/providers/Auth/types.d.ts.map +1 -0
  497. package/dist/providers/Auth/types.js +2 -0
  498. package/dist/providers/Auth/types.js.map +1 -0
  499. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  500. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  501. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  502. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  503. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  504. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  505. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  506. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  507. package/dist/providers/DocumentTitle/index.js +2 -0
  508. package/dist/providers/DocumentTitle/index.js.map +1 -1
  509. package/dist/providers/Embed/index.d.ts +24 -0
  510. package/dist/providers/Embed/index.d.ts.map +1 -0
  511. package/dist/providers/Embed/index.js +105 -0
  512. package/dist/providers/Embed/index.js.map +1 -0
  513. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  514. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  515. package/dist/providers/FormErrorHandler/index.js +6 -0
  516. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  517. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  518. package/dist/providers/Hierarchy/index.js +53 -24
  519. package/dist/providers/Hierarchy/index.js.map +1 -1
  520. package/dist/providers/Hierarchy/types.d.ts +2 -0
  521. package/dist/providers/Hierarchy/types.d.ts.map +1 -1
  522. package/dist/providers/Hierarchy/types.js.map +1 -1
  523. package/dist/providers/HierarchyDnd/index.css +51 -0
  524. package/dist/providers/HierarchyDnd/index.d.ts +21 -0
  525. package/dist/providers/HierarchyDnd/index.d.ts.map +1 -0
  526. package/dist/providers/HierarchyDnd/index.js +163 -0
  527. package/dist/providers/HierarchyDnd/index.js.map +1 -0
  528. package/dist/providers/HierarchyDnd/types.d.ts +56 -0
  529. package/dist/providers/HierarchyDnd/types.d.ts.map +1 -0
  530. package/dist/providers/HierarchyDnd/types.js +21 -0
  531. package/dist/providers/HierarchyDnd/types.js.map +1 -0
  532. package/dist/providers/Locale/index.d.ts.map +1 -1
  533. package/dist/providers/Locale/index.js +41 -36
  534. package/dist/providers/Locale/index.js.map +1 -1
  535. package/dist/providers/Root/index.d.ts +1 -0
  536. package/dist/providers/Root/index.d.ts.map +1 -1
  537. package/dist/providers/Root/index.js +37 -31
  538. package/dist/providers/Root/index.js.map +1 -1
  539. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  540. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  541. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  542. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  543. package/dist/providers/RouteTransition/index.d.ts +2 -0
  544. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  545. package/dist/providers/RouteTransition/index.js +42 -14
  546. package/dist/providers/RouteTransition/index.js.map +1 -1
  547. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  548. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  549. package/dist/providers/SidebarTabs/index.js.map +1 -1
  550. package/dist/providers/Theme/index.d.ts +3 -0
  551. package/dist/providers/Theme/index.d.ts.map +1 -1
  552. package/dist/providers/Theme/index.js +107 -95
  553. package/dist/providers/Theme/index.js.map +1 -1
  554. package/dist/styles.css +12 -10
  555. package/dist/templates/Default/Wrapper/index.css +2 -1
  556. package/dist/templates/Default/Wrapper/index.d.ts +2 -0
  557. package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
  558. package/dist/templates/Default/Wrapper/index.js +12 -6
  559. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  560. package/dist/templates/Default/index.css +3 -1
  561. package/dist/templates/Default/index.d.ts +1 -0
  562. package/dist/templates/Default/index.d.ts.map +1 -1
  563. package/dist/templates/Default/index.js +19 -15
  564. package/dist/templates/Default/index.js.map +1 -1
  565. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  566. package/dist/utilities/combineFieldLabel.js +5 -1
  567. package/dist/utilities/combineFieldLabel.js.map +1 -1
  568. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  569. package/dist/utilities/formatMetadata.js +0 -5
  570. package/dist/utilities/formatMetadata.js.map +1 -1
  571. package/dist/utilities/generateFieldID.d.ts +1 -1
  572. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  573. package/dist/utilities/generateFieldID.js +2 -2
  574. package/dist/utilities/generateFieldID.js.map +1 -1
  575. package/dist/utilities/getFilesFromClipboard.d.ts +10 -0
  576. package/dist/utilities/getFilesFromClipboard.d.ts.map +1 -0
  577. package/dist/utilities/getFilesFromClipboard.js +49 -0
  578. package/dist/utilities/getFilesFromClipboard.js.map +1 -0
  579. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  580. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  581. package/dist/utilities/getRequestEmbed.js +10 -0
  582. package/dist/utilities/getRequestEmbed.js.map +1 -0
  583. package/dist/utilities/renderTable.d.ts.map +1 -1
  584. package/dist/utilities/renderTable.js +18 -2
  585. package/dist/utilities/renderTable.js.map +1 -1
  586. package/dist/utilities/slugify.d.ts.map +1 -1
  587. package/dist/utilities/slugify.js +50 -6
  588. package/dist/utilities/slugify.js.map +1 -1
  589. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  590. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  591. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  592. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  593. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  594. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  595. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  596. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  597. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  598. package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
  599. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  600. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  601. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
  602. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  603. package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
  604. package/dist/views/Edit/SetDocumentTitle/index.js +4 -1
  605. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  606. package/dist/views/Edit/index.d.ts.map +1 -1
  607. package/dist/views/Edit/index.js +3 -2
  608. package/dist/views/Edit/index.js.map +1 -1
  609. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  610. package/dist/views/HierarchyList/DocumentListSelection/index.js +100 -105
  611. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  612. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.css +216 -0
  613. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts +20 -0
  614. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.d.ts.map +1 -0
  615. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js +182 -0
  616. package/dist/views/HierarchyList/HierarchyCards/DocumentCard/index.js.map +1 -0
  617. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.css +38 -0
  618. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts +15 -0
  619. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.d.ts.map +1 -0
  620. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js +85 -0
  621. package/dist/views/HierarchyList/HierarchyCards/DragPreviewItem/index.js.map +1 -0
  622. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.css +98 -0
  623. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts +27 -0
  624. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.d.ts.map +1 -0
  625. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js +84 -0
  626. package/dist/views/HierarchyList/HierarchyCards/FolderCard/index.js.map +1 -0
  627. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts +19 -0
  628. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.d.ts.map +1 -0
  629. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js +100 -0
  630. package/dist/views/HierarchyList/HierarchyCards/HierarchyCard/index.js.map +1 -0
  631. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts +53 -0
  632. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.d.ts.map +1 -0
  633. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js +145 -0
  634. package/dist/views/HierarchyList/HierarchyCards/PlaneItem/index.js.map +1 -0
  635. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts +8 -0
  636. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.d.ts.map +1 -0
  637. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js +21 -0
  638. package/dist/views/HierarchyList/HierarchyCards/getThumbnailSrc.js.map +1 -0
  639. package/dist/views/HierarchyList/HierarchyCards/index.css +115 -0
  640. package/dist/views/HierarchyList/HierarchyCards/index.d.ts +80 -0
  641. package/dist/views/HierarchyList/HierarchyCards/index.d.ts.map +1 -0
  642. package/dist/views/HierarchyList/HierarchyCards/index.js +457 -0
  643. package/dist/views/HierarchyList/HierarchyCards/index.js.map +1 -0
  644. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +6 -1
  645. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
  646. package/dist/views/HierarchyList/HierarchyListHeader/index.js +10 -8
  647. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  648. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
  649. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +11 -10
  650. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  651. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  652. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +3 -6
  653. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  654. package/dist/views/HierarchyList/HierarchyTable/index.css +51 -0
  655. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +13 -1
  656. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  657. package/dist/views/HierarchyList/HierarchyTable/index.js +156 -38
  658. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  659. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +6 -0
  660. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  661. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  662. package/dist/views/HierarchyList/index.css +1 -1
  663. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  664. package/dist/views/HierarchyList/index.js +103 -20
  665. package/dist/views/HierarchyList/index.js.map +1 -1
  666. package/dist/views/List/ListHeader/index.d.ts +1 -10
  667. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  668. package/dist/views/List/ListHeader/index.js +1 -3
  669. package/dist/views/List/ListHeader/index.js.map +1 -1
  670. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  671. package/dist/views/List/ListSelection/index.js +138 -122
  672. package/dist/views/List/ListSelection/index.js.map +1 -1
  673. package/dist/views/List/handleHierarchy.d.ts +6 -1
  674. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  675. package/dist/views/List/handleHierarchy.js +34 -3
  676. package/dist/views/List/handleHierarchy.js.map +1 -1
  677. package/dist/views/List/index.client.d.ts.map +1 -1
  678. package/dist/views/List/index.client.js +128 -18
  679. package/dist/views/List/index.client.js.map +1 -1
  680. package/dist/views/List/index.css +6 -1
  681. package/dist/views/List/index.d.ts.map +1 -1
  682. package/dist/views/List/index.js +29 -14
  683. package/dist/views/List/index.js.map +1 -1
  684. package/dist/views/Logout/index.d.ts.map +1 -1
  685. package/dist/views/Logout/index.js +11 -0
  686. package/dist/views/Logout/index.js.map +1 -1
  687. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  688. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  689. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -1
  690. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -1
  691. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -1
  692. package/dist/views/Root/getCustomViewByKey.js.map +1 -1
  693. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  694. package/dist/views/Root/getRouteData.js +8 -2
  695. package/dist/views/Root/getRouteData.js.map +1 -1
  696. package/dist/views/Root/index.d.ts +12 -1
  697. package/dist/views/Root/index.d.ts.map +1 -1
  698. package/dist/views/Root/index.js +11 -3
  699. package/dist/views/Root/index.js.map +1 -1
  700. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
  701. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
  702. package/package.json +6 -11
  703. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +0 -36
  704. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +0 -13
  705. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +0 -1
  706. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +0 -141
  707. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +0 -1
  708. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  709. package/dist/scss/app.scss +0 -183
  710. package/dist/scss/colors.scss +0 -191
  711. package/dist/scss/custom.css +0 -1
  712. package/dist/scss/queries.scss +0 -27
  713. package/dist/scss/styles.scss +0 -9
  714. package/dist/scss/svg.scss +0 -10
  715. package/dist/scss/toastify.scss +0 -61
  716. package/dist/scss/vars.scss +0 -192
  717. package/dist/scss/z-index.scss +0 -9
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { c as _c } from "react/compiler-runtime";
4
- import { jsx as _jsx } from "react/jsx-runtime";
4
+ import { jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import React from 'react';
6
6
  import { useNav } from '../context.js';
7
7
  import './index.css';
@@ -9,15 +9,15 @@ import './index.css';
9
9
  * @internal
10
10
  */
11
11
  export const NavWrapper = props => {
12
- const $ = _c(10);
12
+ const $ = _c(9);
13
13
  const {
14
14
  baseClass,
15
- children
15
+ children,
16
+ header
16
17
  } = props;
17
18
  const {
18
19
  hydrated,
19
- navOpen,
20
- navRef
20
+ navOpen
21
21
  } = useNav();
22
22
  const t0 = navOpen && `${baseClass}--nav-open`;
23
23
  const t1 = hydrated && `${baseClass}--nav-hydrated`;
@@ -33,27 +33,21 @@ export const NavWrapper = props => {
33
33
  }
34
34
  const t3 = t2.join(" ");
35
35
  const t4 = !navOpen ? true : undefined;
36
- const t5 = `${baseClass}__scroll`;
37
- let t6;
38
- if ($[4] !== children || $[5] !== navRef || $[6] !== t3 || $[7] !== t4 || $[8] !== t5) {
39
- t6 = _jsx("aside", {
36
+ let t5;
37
+ if ($[4] !== children || $[5] !== header || $[6] !== t3 || $[7] !== t4) {
38
+ t5 = _jsxs("aside", {
40
39
  className: t3,
41
40
  inert: t4,
42
- children: _jsx("div", {
43
- className: t5,
44
- ref: navRef,
45
- children
46
- })
41
+ children: [header, children]
47
42
  });
48
43
  $[4] = children;
49
- $[5] = navRef;
44
+ $[5] = header;
50
45
  $[6] = t3;
51
46
  $[7] = t4;
52
47
  $[8] = t5;
53
- $[9] = t6;
54
48
  } else {
55
- t6 = $[9];
49
+ t5 = $[8];
56
50
  }
57
- return t6;
51
+ return t5;
58
52
  };
59
53
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useNav","NavWrapper","props","$","baseClass","children","hydrated","navOpen","navRef","t0","t1","t2","filter","Boolean","t3","join","t4","undefined","t5","t6","_jsx","className","inert","ref"],"sources":["../../../../src/elements/Nav/NavWrapper/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useNav } from '../context.js'\nimport './index.css'\n\n/**\n * @internal\n */\nexport const NavWrapper: React.FC<{\n baseClass?: string\n children: React.ReactNode\n}> = (props) => {\n const { baseClass, children } = props\n\n const { hydrated, navOpen, navRef } = useNav()\n\n return (\n <aside\n className={[\n baseClass,\n navOpen && `${baseClass}--nav-open`,\n hydrated && `${baseClass}--nav-hydrated`,\n ]\n .filter(Boolean)\n .join(' ')}\n inert={!navOpen ? true : undefined}\n >\n <div className={`${baseClass}__scroll`} ref={navRef}>\n {children}\n </div>\n </aside>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP;;;AAGA,OAAO,MAAMC,UAAA,GAGRC,KAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EACH;IAAAM,SAAA;IAAAC;EAAA,IAAgCH,KAAA;EAEhC;IAAAI,QAAA;IAAAC,OAAA;IAAAC;EAAA,IAAsCR,MAAA;EAMhC,MAAAS,EAAA,GAAAF,OAAA,IAAW,GAAGH,SAAA,YAAqB;EACnC,MAAAM,EAAA,GAAAJ,QAAA,IAAY,GAAGF,SAAA,gBAAyB;EAAA,IAAAO,EAAA;EAAA,IAAAR,CAAA,QAAAC,SAAA,IAAAD,CAAA,QAAAM,EAAA,IAAAN,CAAA,QAAAO,EAAA;IAH/BC,EAAA,IACTP,SAAA,EACAK,EAAmC,EACnCC,EAAwC,EAAAE,MAAA,CAAAC,OAEhC;IAAAV,CAAA,MAAAC,SAAA;IAAAD,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EALC,MAAAW,EAAA,GAAAH,EAKD,CAAAI,IAAA,CACF;EACD,MAAAC,EAAA,IAACT,OAAA,UAAAU,SAAiB;EAET,MAAAC,EAAA,MAAGd,SAAA,UAAmB;EAAA,IAAAe,EAAA;EAAA,IAAAhB,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAK,MAAA,IAAAL,CAAA,QAAAW,EAAA,IAAAX,CAAA,QAAAa,EAAA,IAAAb,CAAA,QAAAe,EAAA;IAVxCC,EAAA,GAAAC,IAAA,CAAC;MAAAC,SAAA,EACYP,EAMH;MAAAQ,KAAA,EACDN,EAAkB;MAAAX,QAAA,EAEzBe,IAAA,CAAC;QAAAC,SAAA,EAAeH,EAAsB;QAAAK,GAAA,EAAOf,MAAA;QAAAH;MAAA,C;;;;;;;;;;;SAV/Cc,E;CAeJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useNav","NavWrapper","props","$","baseClass","children","header","hydrated","navOpen","t0","t1","t2","filter","Boolean","t3","join","t4","undefined","t5","_jsxs","className","inert"],"sources":["../../../../src/elements/Nav/NavWrapper/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useNav } from '../context.js'\nimport './index.css'\n\n/**\n * @internal\n */\nexport const NavWrapper: React.FC<{\n baseClass?: string\n children: React.ReactNode\n header?: React.ReactNode\n}> = (props) => {\n const { baseClass, children, header } = props\n\n const { hydrated, navOpen } = useNav()\n\n return (\n <aside\n className={[\n baseClass,\n navOpen && `${baseClass}--nav-open`,\n hydrated && `${baseClass}--nav-hydrated`,\n ]\n .filter(Boolean)\n .join(' ')}\n inert={!navOpen ? true : undefined}\n >\n {header}\n {children}\n </aside>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP;;;AAGA,OAAO,MAAMC,UAAA,GAIRC,KAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EACH;IAAAM,SAAA;IAAAC,QAAA;IAAAC;EAAA,IAAwCJ,KAAA;EAExC;IAAAK,QAAA;IAAAC;EAAA,IAA8BR,MAAA;EAMxB,MAAAS,EAAA,GAAAD,OAAA,IAAW,GAAGJ,SAAA,YAAqB;EACnC,MAAAM,EAAA,GAAAH,QAAA,IAAY,GAAGH,SAAA,gBAAyB;EAAA,IAAAO,EAAA;EAAA,IAAAR,CAAA,QAAAC,SAAA,IAAAD,CAAA,QAAAM,EAAA,IAAAN,CAAA,QAAAO,EAAA;IAH/BC,EAAA,IACTP,SAAA,EACAK,EAAmC,EACnCC,EAAwC,EAAAE,MAAA,CAAAC,OAEhC;IAAAV,CAAA,MAAAC,SAAA;IAAAD,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EALC,MAAAW,EAAA,GAAAH,EAKD,CAAAI,IAAA,CACF;EACD,MAAAC,EAAA,IAACR,OAAA,UAAAS,SAAiB;EAAA,IAAAC,EAAA;EAAA,IAAAf,CAAA,QAAAE,QAAA,IAAAF,CAAA,QAAAG,MAAA,IAAAH,CAAA,QAAAW,EAAA,IAAAX,CAAA,QAAAa,EAAA;IAR3BE,EAAA,GAAAC,KAAA,CAAC;MAAAC,SAAA,EACYN,EAMH;MAAAO,KAAA,EACDL,EAAkB;MAAAX,QAAA,GAExBC,MAAA,EACAD,QAAA;IAAA,C;;;;;;;;;SAXHa,E;CAcJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/SidebarTabs/index.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAwC,MAAM,OAAO,CAAA;AAW5D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,oEAAoE;IACpE,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACnD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,WAAW,EAAE,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA4L9D,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/SidebarTabs/index.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAwC,MAAM,OAAO,CAAA;AAW5D,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,oEAAoE;IACpE,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;IACnD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,WAAW,EAAE,CAAA;CACpB,CAAA;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAmM9D,CAAA"}
@@ -41,7 +41,8 @@ export const SidebarTabsClient = ({
41
41
  }));
42
42
  }, [initialTabContents]);
43
43
  const loadTabContent = useCallback(async (tabSlug, {
44
- revalidate = false
44
+ revalidate = false,
45
+ serverArgs
45
46
  } = {}) => {
46
47
  const hasCachedContent = Boolean(tabContentRef.current[tabSlug]);
47
48
  // Skip if already loaded (unless revalidating) or currently loading
@@ -57,6 +58,7 @@ export const SidebarTabsClient = ({
57
58
  const result = await serverFunction({
58
59
  name: 'render-tab',
59
60
  args: {
61
+ ...serverArgs,
60
62
  tabSlug
61
63
  }
62
64
  });
@@ -73,14 +75,17 @@ export const SidebarTabsClient = ({
73
75
  }
74
76
  const errorMessage = error instanceof Error ? error.message : 'Unknown error';
75
77
  const handleRetry = () => {
76
- // Clear the error and retry loading
78
+ // Clear the error and retry loading, threading the original serverArgs through so the
79
+ // retry doesn't silently fall back to req.query-based rendering (the stale-tree bug).
77
80
  const clearedContent = {
78
81
  ...tabContentRef.current
79
82
  };
80
83
  delete clearedContent[tabSlug];
81
84
  tabContentRef.current = clearedContent;
82
85
  setTabContent(clearedContent);
83
- void loadTabContent(tabSlug);
86
+ void loadTabContent(tabSlug, {
87
+ serverArgs
88
+ });
84
89
  };
85
90
  const newContent = {
86
91
  ...tabContentRef.current,
@@ -96,7 +101,7 @@ export const SidebarTabsClient = ({
96
101
  setLoadingTab(null);
97
102
  }
98
103
  }, [serverFunction]);
99
- const reloadTabContent = useCallback(tabSlug_0 => {
104
+ const reloadTabContent = useCallback((tabSlug_0, serverArgs_0) => {
100
105
  // Clear cached content to force reload
101
106
  const clearedContent_0 = {
102
107
  ...tabContentRef.current
@@ -104,7 +109,9 @@ export const SidebarTabsClient = ({
104
109
  delete clearedContent_0[tabSlug_0];
105
110
  tabContentRef.current = clearedContent_0;
106
111
  setTabContent(clearedContent_0);
107
- void loadTabContent(tabSlug_0);
112
+ void loadTabContent(tabSlug_0, {
113
+ serverArgs: serverArgs_0
114
+ });
108
115
  }, [loadTabContent]);
109
116
  const handleTabChange = useCallback(slug => {
110
117
  setActiveTabID(slug);
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","names":["PREFERENCE_KEYS","React","useCallback","useRef","useState","usePreferences","useServerFunctions","SidebarTabsProvider","DelayedSpinner","Tooltip","TabError","SidebarTabsClient","baseClass","initialActiveTabID","initialTabContents","loadingDelay","tabs","setPreference","serverFunction","activeTabID","setActiveTabID","tabContent","setTabContent","loadingTab","setLoadingTab","hoveredTab","setHoveredTab","loadingTabsRef","Set","tabContentRef","useEffect","current","prev","loadTabContent","tabSlug","revalidate","hasCachedContent","Boolean","has","add","result","name","args","newContent","component","error","errorMessage","Error","message","handleRetry","clearedContent","_jsx","onRetry","delete","reloadTabContent","handleTabChange","slug","NAV_SIDEBAR_ACTIVE_TAB","activeTab","tab","find","t","lazyLoadable","handleTabKeyDown","e","currentIndex","key","preventDefault","direction","newIndex","length","newTab","setTimeout","document","querySelector","focus","activeContent","_Fragment","activeTabSlug","_jsxs","className","role","map","index","isActive","onClick","onKeyDown","onMouseEnter","onMouseLeave","tabIndex","type","position","show","label","icon","delay","isLoading","content","style","undefined","display"],"sources":["../../../../src/elements/Nav/SidebarTabs/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useCallback, useRef, useState } from 'react'\n\nimport type { RenderTabServerFnArgs, RenderTabServerFnReturnType } from './renderTabServerFn.js'\n\nimport { usePreferences } from '../../../providers/Preferences/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { SidebarTabsProvider } from '../../../providers/SidebarTabs/index.js'\nimport { DelayedSpinner } from '../../DelayedSpinner/index.js'\nimport { Tooltip } from '../../Tooltip/index.js'\nimport { TabError } from './TabError/index.js'\n\nexport type TabMetadata = {\n icon: React.ReactNode\n isDefaultActive?: boolean\n label: string\n /** Whether this tab can be loaded/revalidated via serverFunction */\n lazyLoadable?: boolean\n slug: string\n}\n\nexport type SidebarTabsClientProps = {\n baseClass: string\n initialActiveTabID: string\n initialTabContents: Record<string, React.ReactNode>\n /**\n * Delay before showing loading spinner (in ms), prevents flashing on fast loads\n * @default 200\n */\n loadingDelay?: number\n tabs: TabMetadata[]\n}\n\nexport const SidebarTabsClient: React.FC<SidebarTabsClientProps> = ({\n baseClass,\n initialActiveTabID,\n initialTabContents,\n loadingDelay = 200,\n tabs,\n}) => {\n const { setPreference } = usePreferences()\n const { serverFunction } = useServerFunctions()\n\n const [activeTabID, setActiveTabID] = useState(initialActiveTabID)\n const [tabContent, setTabContent] = useState<Record<string, React.ReactNode>>(initialTabContents)\n const [loadingTab, setLoadingTab] = useState<null | string>(null)\n const [hoveredTab, setHoveredTab] = useState<null | string>(null)\n const loadingTabsRef = useRef<Set<string>>(new Set())\n const tabContentRef = useRef(initialTabContents)\n\n // Update cached content when server provides new initialTabContents\n // This is needed because useState only uses initialValue on first mount\n React.useEffect(() => {\n tabContentRef.current = { ...tabContentRef.current, ...initialTabContents }\n setTabContent((prev) => ({ ...prev, ...initialTabContents }))\n }, [initialTabContents])\n\n const loadTabContent = useCallback(\n async (tabSlug: string, { revalidate = false }: { revalidate?: boolean } = {}) => {\n const hasCachedContent = Boolean(tabContentRef.current[tabSlug])\n\n // Skip if already loaded (unless revalidating) or currently loading\n if ((hasCachedContent && !revalidate) || loadingTabsRef.current.has(tabSlug)) {\n return\n }\n\n // Mark as loading - only show spinner if no cached content\n loadingTabsRef.current.add(tabSlug)\n if (!hasCachedContent) {\n setLoadingTab(tabSlug)\n }\n\n try {\n const result = (await serverFunction({\n name: 'render-tab',\n args: { tabSlug } as RenderTabServerFnArgs,\n })) as RenderTabServerFnReturnType\n\n const newContent = {\n ...tabContentRef.current,\n [tabSlug]: result.component,\n }\n\n tabContentRef.current = newContent\n setTabContent(newContent)\n } catch (error) {\n // On revalidate failure, keep showing cached content\n if (hasCachedContent && revalidate) {\n return\n }\n\n const errorMessage = error instanceof Error ? error.message : 'Unknown error'\n\n const handleRetry = () => {\n // Clear the error and retry loading\n const clearedContent = { ...tabContentRef.current }\n delete clearedContent[tabSlug]\n tabContentRef.current = clearedContent\n setTabContent(clearedContent)\n void loadTabContent(tabSlug)\n }\n\n const newContent = {\n ...tabContentRef.current,\n [tabSlug]: <TabError message={errorMessage} onRetry={handleRetry} />,\n }\n\n tabContentRef.current = newContent\n setTabContent(newContent)\n } finally {\n loadingTabsRef.current.delete(tabSlug)\n setLoadingTab(null)\n }\n },\n [serverFunction],\n )\n\n const reloadTabContent = useCallback(\n (tabSlug: string) => {\n // Clear cached content to force reload\n const clearedContent = { ...tabContentRef.current }\n delete clearedContent[tabSlug]\n tabContentRef.current = clearedContent\n setTabContent(clearedContent)\n\n void loadTabContent(tabSlug)\n },\n [loadTabContent],\n )\n\n const handleTabChange = useCallback(\n (slug: string) => {\n setActiveTabID(slug)\n void setPreference(PREFERENCE_KEYS.NAV_SIDEBAR_ACTIVE_TAB, { activeTab: slug })\n // Only revalidate tabs that can be loaded via serverFunction\n // Pre-rendered React elements (like default nav) can't be revalidated\n const tab = tabs.find((t) => t.slug === slug)\n void loadTabContent(slug, { revalidate: tab?.lazyLoadable ?? false })\n },\n [setPreference, loadTabContent, tabs],\n )\n\n const handleTabKeyDown = useCallback(\n (e: React.KeyboardEvent, currentIndex: number) => {\n if (e.key === 'ArrowLeft' || e.key === 'ArrowRight') {\n e.preventDefault()\n const direction = e.key === 'ArrowLeft' ? -1 : 1\n const newIndex = (currentIndex + direction + tabs.length) % tabs.length\n const newTab = tabs[newIndex]\n handleTabChange(newTab.slug)\n // Focus will be handled by the tabIndex change\n setTimeout(() => {\n document.querySelector<HTMLButtonElement>(`.${baseClass}__tab--active`)?.focus()\n }, 0)\n }\n },\n [baseClass, handleTabChange, tabs],\n )\n\n const activeContent = tabContent[activeTabID]\n\n // If there's only one tab (the default nav), render it without tab UI\n if (tabs.length === 1) {\n return <>{activeContent}</>\n }\n\n return (\n <SidebarTabsProvider activeTabSlug={activeTabID} reloadTabContent={reloadTabContent}>\n <div className={baseClass}>\n <div className={`${baseClass}__tabs`} role=\"tablist\">\n {tabs.map((tab, index) => {\n const isActive = tab.slug === activeTabID\n\n return (\n <button\n aria-selected={isActive}\n className={`${baseClass}__tab ${isActive ? `${baseClass}__tab--active` : ''}`}\n key={tab.slug}\n onClick={() => handleTabChange(tab.slug)}\n onKeyDown={(e) => handleTabKeyDown(e, index)}\n onMouseEnter={() => setHoveredTab(tab.slug)}\n onMouseLeave={() => setHoveredTab(null)}\n role=\"tab\"\n tabIndex={isActive ? 0 : -1}\n type=\"button\"\n >\n <Tooltip\n className={`${baseClass}__tooltip`}\n position=\"bottom\"\n show={hoveredTab === tab.slug}\n >\n {tab.label}\n </Tooltip>\n <span className={`${baseClass}__tab-icon`}>{tab.icon}</span>\n <span className={`${baseClass}__tab-label`}>{tab.label}</span>\n </button>\n )\n })}\n </div>\n <div className={`${baseClass}__content`} role=\"tabpanel\">\n <DelayedSpinner\n baseClass={baseClass}\n delay={loadingDelay}\n isLoading={loadingTab === activeTabID}\n />\n {tabs.map((tab) => {\n const content = tabContent[tab.slug]\n if (!content) {\n return null\n }\n const isActive = tab.slug === activeTabID && loadingTab !== activeTabID\n return (\n <div key={tab.slug} style={isActive ? undefined : { display: 'none' }}>\n {content}\n </div>\n )\n })}\n </div>\n </div>\n </SidebarTabsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.client.js","names":["PREFERENCE_KEYS","React","useCallback","useRef","useState","usePreferences","useServerFunctions","SidebarTabsProvider","DelayedSpinner","Tooltip","TabError","SidebarTabsClient","baseClass","initialActiveTabID","initialTabContents","loadingDelay","tabs","setPreference","serverFunction","activeTabID","setActiveTabID","tabContent","setTabContent","loadingTab","setLoadingTab","hoveredTab","setHoveredTab","loadingTabsRef","Set","tabContentRef","useEffect","current","prev","loadTabContent","tabSlug","revalidate","serverArgs","hasCachedContent","Boolean","has","add","result","name","args","newContent","component","error","errorMessage","Error","message","handleRetry","clearedContent","_jsx","onRetry","delete","reloadTabContent","handleTabChange","slug","NAV_SIDEBAR_ACTIVE_TAB","activeTab","tab","find","t","lazyLoadable","handleTabKeyDown","e","currentIndex","key","preventDefault","direction","newIndex","length","newTab","setTimeout","document","querySelector","focus","activeContent","_Fragment","activeTabSlug","_jsxs","className","role","map","index","isActive","onClick","onKeyDown","onMouseEnter","onMouseLeave","tabIndex","type","position","show","label","icon","delay","isLoading","content","style","undefined","display"],"sources":["../../../../src/elements/Nav/SidebarTabs/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useCallback, useRef, useState } from 'react'\n\nimport type { RenderTabServerFnArgs, RenderTabServerFnReturnType } from './renderTabServerFn.js'\n\nimport { usePreferences } from '../../../providers/Preferences/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { SidebarTabsProvider } from '../../../providers/SidebarTabs/index.js'\nimport { DelayedSpinner } from '../../DelayedSpinner/index.js'\nimport { Tooltip } from '../../Tooltip/index.js'\nimport { TabError } from './TabError/index.js'\n\nexport type TabMetadata = {\n icon: React.ReactNode\n isDefaultActive?: boolean\n label: string\n /** Whether this tab can be loaded/revalidated via serverFunction */\n lazyLoadable?: boolean\n slug: string\n}\n\nexport type SidebarTabsClientProps = {\n baseClass: string\n initialActiveTabID: string\n initialTabContents: Record<string, React.ReactNode>\n /**\n * Delay before showing loading spinner (in ms), prevents flashing on fast loads\n * @default 200\n */\n loadingDelay?: number\n tabs: TabMetadata[]\n}\n\nexport const SidebarTabsClient: React.FC<SidebarTabsClientProps> = ({\n baseClass,\n initialActiveTabID,\n initialTabContents,\n loadingDelay = 200,\n tabs,\n}) => {\n const { setPreference } = usePreferences()\n const { serverFunction } = useServerFunctions()\n\n const [activeTabID, setActiveTabID] = useState(initialActiveTabID)\n const [tabContent, setTabContent] = useState<Record<string, React.ReactNode>>(initialTabContents)\n const [loadingTab, setLoadingTab] = useState<null | string>(null)\n const [hoveredTab, setHoveredTab] = useState<null | string>(null)\n const loadingTabsRef = useRef<Set<string>>(new Set())\n const tabContentRef = useRef(initialTabContents)\n\n // Update cached content when server provides new initialTabContents\n // This is needed because useState only uses initialValue on first mount\n React.useEffect(() => {\n tabContentRef.current = { ...tabContentRef.current, ...initialTabContents }\n setTabContent((prev) => ({ ...prev, ...initialTabContents }))\n }, [initialTabContents])\n\n const loadTabContent = useCallback(\n async (\n tabSlug: string,\n {\n revalidate = false,\n serverArgs,\n }: { revalidate?: boolean; serverArgs?: Partial<RenderTabServerFnArgs> } = {},\n ) => {\n const hasCachedContent = Boolean(tabContentRef.current[tabSlug])\n\n // Skip if already loaded (unless revalidating) or currently loading\n if ((hasCachedContent && !revalidate) || loadingTabsRef.current.has(tabSlug)) {\n return\n }\n\n // Mark as loading - only show spinner if no cached content\n loadingTabsRef.current.add(tabSlug)\n if (!hasCachedContent) {\n setLoadingTab(tabSlug)\n }\n\n try {\n const result = (await serverFunction({\n name: 'render-tab',\n args: { ...serverArgs, tabSlug } as RenderTabServerFnArgs,\n })) as RenderTabServerFnReturnType\n\n const newContent = {\n ...tabContentRef.current,\n [tabSlug]: result.component,\n }\n\n tabContentRef.current = newContent\n setTabContent(newContent)\n } catch (error) {\n // On revalidate failure, keep showing cached content\n if (hasCachedContent && revalidate) {\n return\n }\n\n const errorMessage = error instanceof Error ? error.message : 'Unknown error'\n\n const handleRetry = () => {\n // Clear the error and retry loading, threading the original serverArgs through so the\n // retry doesn't silently fall back to req.query-based rendering (the stale-tree bug).\n const clearedContent = { ...tabContentRef.current }\n delete clearedContent[tabSlug]\n tabContentRef.current = clearedContent\n setTabContent(clearedContent)\n void loadTabContent(tabSlug, { serverArgs })\n }\n\n const newContent = {\n ...tabContentRef.current,\n [tabSlug]: <TabError message={errorMessage} onRetry={handleRetry} />,\n }\n\n tabContentRef.current = newContent\n setTabContent(newContent)\n } finally {\n loadingTabsRef.current.delete(tabSlug)\n setLoadingTab(null)\n }\n },\n [serverFunction],\n )\n\n const reloadTabContent = useCallback(\n (tabSlug: string, serverArgs?: Partial<RenderTabServerFnArgs>) => {\n // Clear cached content to force reload\n const clearedContent = { ...tabContentRef.current }\n delete clearedContent[tabSlug]\n tabContentRef.current = clearedContent\n setTabContent(clearedContent)\n\n void loadTabContent(tabSlug, { serverArgs })\n },\n [loadTabContent],\n )\n\n const handleTabChange = useCallback(\n (slug: string) => {\n setActiveTabID(slug)\n void setPreference(PREFERENCE_KEYS.NAV_SIDEBAR_ACTIVE_TAB, { activeTab: slug })\n // Only revalidate tabs that can be loaded via serverFunction\n // Pre-rendered React elements (like default nav) can't be revalidated\n const tab = tabs.find((t) => t.slug === slug)\n void loadTabContent(slug, { revalidate: tab?.lazyLoadable ?? false })\n },\n [setPreference, loadTabContent, tabs],\n )\n\n const handleTabKeyDown = useCallback(\n (e: React.KeyboardEvent, currentIndex: number) => {\n if (e.key === 'ArrowLeft' || e.key === 'ArrowRight') {\n e.preventDefault()\n const direction = e.key === 'ArrowLeft' ? -1 : 1\n const newIndex = (currentIndex + direction + tabs.length) % tabs.length\n const newTab = tabs[newIndex]\n handleTabChange(newTab.slug)\n // Focus will be handled by the tabIndex change\n setTimeout(() => {\n document.querySelector<HTMLButtonElement>(`.${baseClass}__tab--active`)?.focus()\n }, 0)\n }\n },\n [baseClass, handleTabChange, tabs],\n )\n\n const activeContent = tabContent[activeTabID]\n\n // If there's only one tab (the default nav), render it without tab UI\n if (tabs.length === 1) {\n return <>{activeContent}</>\n }\n\n return (\n <SidebarTabsProvider activeTabSlug={activeTabID} reloadTabContent={reloadTabContent}>\n <div className={baseClass}>\n <div className={`${baseClass}__tabs`} role=\"tablist\">\n {tabs.map((tab, index) => {\n const isActive = tab.slug === activeTabID\n\n return (\n <button\n aria-selected={isActive}\n className={`${baseClass}__tab ${isActive ? `${baseClass}__tab--active` : ''}`}\n key={tab.slug}\n onClick={() => handleTabChange(tab.slug)}\n onKeyDown={(e) => handleTabKeyDown(e, index)}\n onMouseEnter={() => setHoveredTab(tab.slug)}\n onMouseLeave={() => setHoveredTab(null)}\n role=\"tab\"\n tabIndex={isActive ? 0 : -1}\n type=\"button\"\n >\n <Tooltip\n className={`${baseClass}__tooltip`}\n position=\"bottom\"\n show={hoveredTab === tab.slug}\n >\n {tab.label}\n </Tooltip>\n <span className={`${baseClass}__tab-icon`}>{tab.icon}</span>\n <span className={`${baseClass}__tab-label`}>{tab.label}</span>\n </button>\n )\n })}\n </div>\n <div className={`${baseClass}__content`} role=\"tabpanel\">\n <DelayedSpinner\n baseClass={baseClass}\n delay={loadingDelay}\n isLoading={loadingTab === activeTabID}\n />\n {tabs.map((tab) => {\n const content = tabContent[tab.slug]\n if (!content) {\n return null\n }\n const isActive = tab.slug === activeTabID && loadingTab !== activeTabID\n return (\n <div key={tab.slug} style={isActive ? undefined : { display: 'none' }}>\n {content}\n </div>\n )\n })}\n </div>\n </div>\n </SidebarTabsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,6 @@
4
4
  flex-direction: column;
5
5
  width: 100%;
6
6
  flex-grow: 1;
7
- gap: var(--spacer-2-5);
8
7
  }
9
8
 
10
9
  .sidebar-tabs__tabs {
@@ -12,7 +11,7 @@
12
11
  gap: 0;
13
12
  background-color: var(--color-bg-secondary);
14
13
  border-radius: var(--button-radius);
15
- width: 100%;
14
+ margin: var(--spacer-2) var(--spacer-2-5) 0;
16
15
  }
17
16
 
18
17
  .sidebar-tabs__tab {
@@ -29,10 +28,6 @@
29
28
  border: var(--stroke-width-small) solid transparent;
30
29
  background-color: transparent;
31
30
  color: var(--color-icon-secondary);
32
- transition:
33
- background-color 0.15s ease,
34
- border-color 0.15s ease,
35
- color 0.15s ease;
36
31
  position: relative;
37
32
 
38
33
  &:hover {
@@ -56,7 +51,6 @@
56
51
  display: flex;
57
52
  align-items: center;
58
53
  justify-content: center;
59
- transition: opacity 0.15s ease;
60
54
  }
61
55
 
62
56
  /* Visually hidden but still accessible for screen readers */
@@ -1,6 +1,7 @@
1
1
  import type { ServerFunction } from 'payload';
2
2
  import type React from 'react';
3
3
  export type RenderTabServerFnArgs = {
4
+ searchParams?: Record<string, unknown>;
4
5
  tabSlug: string;
5
6
  };
6
7
  export type RenderTabServerFnReturnType = {
@@ -1 +1 @@
1
- {"version":3,"file":"renderTabServerFn.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/SidebarTabs/renderTabServerFn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAC3C,qBAAqB,EACrB,2BAA2B,CA6C5B,CAAA"}
1
+ {"version":3,"file":"renderTabServerFn.d.ts","sourceRoot":"","sources":["../../../../src/elements/Nav/SidebarTabs/renderTabServerFn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,MAAM,MAAM,qBAAqB,GAAG;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,OAAO,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,cAAc,CAC3C,qBAAqB,EACrB,2BAA2B,CA6C5B,CAAA"}
@@ -1,6 +1,7 @@
1
1
  import { RenderServerComponent } from '../../RenderServerComponent/index.js';
2
2
  export const renderTabHandler = ({
3
3
  req,
4
+ searchParams,
4
5
  tabSlug
5
6
  }) => {
6
7
  if (!req.user) {
@@ -33,7 +34,7 @@ export const renderTabHandler = ({
33
34
  params: req.routeParams,
34
35
  payload: req.payload,
35
36
  req,
36
- searchParams: req.query,
37
+ searchParams: searchParams ?? req.query,
37
38
  user: req.user
38
39
  }
39
40
  });
@@ -1 +1 @@
1
- {"version":3,"file":"renderTabServerFn.js","names":["RenderServerComponent","renderTabHandler","req","tabSlug","user","Error","importMap","payload","tabs","config","admin","components","sidebar","component","tabConfig","find","tab","slug","Component","Content","serverProps","i18n","locale","params","routeParams","searchParams","query","error","errorMessage","message","String","logger","err","msg"],"sources":["../../../../src/elements/Nav/SidebarTabs/renderTabServerFn.ts"],"sourcesContent":["import type { ServerFunction } from 'payload'\nimport type React from 'react'\n\nimport { RenderServerComponent } from '../../RenderServerComponent/index.js'\n\nexport type RenderTabServerFnArgs = {\n tabSlug: string\n}\n\nexport type RenderTabServerFnReturnType = {\n component: React.ReactNode\n}\n\nexport const renderTabHandler: ServerFunction<\n RenderTabServerFnArgs,\n RenderTabServerFnReturnType\n> = ({ req, tabSlug }) => {\n if (!req.user) {\n throw new Error('Unauthorized')\n }\n\n const { importMap } = req.payload\n const { tabs } = req.payload.config.admin.components?.sidebar || {}\n\n if (!tabs) {\n return { component: null }\n }\n\n const tabConfig = tabs.find((tab) => tab.slug === tabSlug)\n\n if (!tabConfig) {\n return { component: null }\n }\n\n try {\n const component = RenderServerComponent({\n Component: tabConfig.components.Content,\n importMap,\n serverProps: {\n i18n: req.i18n,\n locale: req.locale,\n params: req.routeParams,\n payload: req.payload,\n req,\n searchParams: req.query,\n user: req.user,\n },\n })\n\n return { component }\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error)\n\n req.payload.logger.error({\n err: error,\n msg: `Error rendering tab \"${tabSlug}\": ${errorMessage}`,\n })\n\n return { component: null }\n }\n}\n"],"mappings":"AAGA,SAASA,qBAAqB,QAAQ;AAUtC,OAAO,MAAMC,gBAAA,GAGTA,CAAC;EAAEC,GAAG;EAAEC;AAAO,CAAE;EACnB,IAAI,CAACD,GAAA,CAAIE,IAAI,EAAE;IACb,MAAM,IAAIC,KAAA,CAAM;EAClB;EAEA,MAAM;IAAEC;EAAS,CAAE,GAAGJ,GAAA,CAAIK,OAAO;EACjC,MAAM;IAAEC;EAAI,CAAE,GAAGN,GAAA,CAAIK,OAAO,CAACE,MAAM,CAACC,KAAK,CAACC,UAAU,EAAEC,OAAA,IAAW,CAAC;EAElE,IAAI,CAACJ,IAAA,EAAM;IACT,OAAO;MAAEK,SAAA,EAAW;IAAK;EAC3B;EAEA,MAAMC,SAAA,GAAYN,IAAA,CAAKO,IAAI,CAAEC,GAAA,IAAQA,GAAA,CAAIC,IAAI,KAAKd,OAAA;EAElD,IAAI,CAACW,SAAA,EAAW;IACd,OAAO;MAAED,SAAA,EAAW;IAAK;EAC3B;EAEA,IAAI;IACF,MAAMA,SAAA,GAAYb,qBAAA,CAAsB;MACtCkB,SAAA,EAAWJ,SAAA,CAAUH,UAAU,CAACQ,OAAO;MACvCb,SAAA;MACAc,WAAA,EAAa;QACXC,IAAA,EAAMnB,GAAA,CAAImB,IAAI;QACdC,MAAA,EAAQpB,GAAA,CAAIoB,MAAM;QAClBC,MAAA,EAAQrB,GAAA,CAAIsB,WAAW;QACvBjB,OAAA,EAASL,GAAA,CAAIK,OAAO;QACpBL,GAAA;QACAuB,YAAA,EAAcvB,GAAA,CAAIwB,KAAK;QACvBtB,IAAA,EAAMF,GAAA,CAAIE;MACZ;IACF;IAEA,OAAO;MAAES;IAAU;EACrB,EAAE,OAAOc,KAAA,EAAO;IACd,MAAMC,YAAA,GAAeD,KAAA,YAAiBtB,KAAA,GAAQsB,KAAA,CAAME,OAAO,GAAGC,MAAA,CAAOH,KAAA;IAErEzB,GAAA,CAAIK,OAAO,CAACwB,MAAM,CAACJ,KAAK,CAAC;MACvBK,GAAA,EAAKL,KAAA;MACLM,GAAA,EAAK,wBAAwB9B,OAAA,MAAayB,YAAA;IAC5C;IAEA,OAAO;MAAEf,SAAA,EAAW;IAAK;EAC3B;AACF","ignoreList":[]}
1
+ {"version":3,"file":"renderTabServerFn.js","names":["RenderServerComponent","renderTabHandler","req","searchParams","tabSlug","user","Error","importMap","payload","tabs","config","admin","components","sidebar","component","tabConfig","find","tab","slug","Component","Content","serverProps","i18n","locale","params","routeParams","query","error","errorMessage","message","String","logger","err","msg"],"sources":["../../../../src/elements/Nav/SidebarTabs/renderTabServerFn.ts"],"sourcesContent":["import type { ServerFunction } from 'payload'\nimport type React from 'react'\n\nimport { RenderServerComponent } from '../../RenderServerComponent/index.js'\n\nexport type RenderTabServerFnArgs = {\n searchParams?: Record<string, unknown>\n tabSlug: string\n}\n\nexport type RenderTabServerFnReturnType = {\n component: React.ReactNode\n}\n\nexport const renderTabHandler: ServerFunction<\n RenderTabServerFnArgs,\n RenderTabServerFnReturnType\n> = ({ req, searchParams, tabSlug }) => {\n if (!req.user) {\n throw new Error('Unauthorized')\n }\n\n const { importMap } = req.payload\n const { tabs } = req.payload.config.admin.components?.sidebar || {}\n\n if (!tabs) {\n return { component: null }\n }\n\n const tabConfig = tabs.find((tab) => tab.slug === tabSlug)\n\n if (!tabConfig) {\n return { component: null }\n }\n\n try {\n const component = RenderServerComponent({\n Component: tabConfig.components.Content,\n importMap,\n serverProps: {\n i18n: req.i18n,\n locale: req.locale,\n params: req.routeParams,\n payload: req.payload,\n req,\n searchParams: searchParams ?? req.query,\n user: req.user,\n },\n })\n\n return { component }\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error)\n\n req.payload.logger.error({\n err: error,\n msg: `Error rendering tab \"${tabSlug}\": ${errorMessage}`,\n })\n\n return { component: null }\n }\n}\n"],"mappings":"AAGA,SAASA,qBAAqB,QAAQ;AAWtC,OAAO,MAAMC,gBAAA,GAGTA,CAAC;EAAEC,GAAG;EAAEC,YAAY;EAAEC;AAAO,CAAE;EACjC,IAAI,CAACF,GAAA,CAAIG,IAAI,EAAE;IACb,MAAM,IAAIC,KAAA,CAAM;EAClB;EAEA,MAAM;IAAEC;EAAS,CAAE,GAAGL,GAAA,CAAIM,OAAO;EACjC,MAAM;IAAEC;EAAI,CAAE,GAAGP,GAAA,CAAIM,OAAO,CAACE,MAAM,CAACC,KAAK,CAACC,UAAU,EAAEC,OAAA,IAAW,CAAC;EAElE,IAAI,CAACJ,IAAA,EAAM;IACT,OAAO;MAAEK,SAAA,EAAW;IAAK;EAC3B;EAEA,MAAMC,SAAA,GAAYN,IAAA,CAAKO,IAAI,CAAEC,GAAA,IAAQA,GAAA,CAAIC,IAAI,KAAKd,OAAA;EAElD,IAAI,CAACW,SAAA,EAAW;IACd,OAAO;MAAED,SAAA,EAAW;IAAK;EAC3B;EAEA,IAAI;IACF,MAAMA,SAAA,GAAYd,qBAAA,CAAsB;MACtCmB,SAAA,EAAWJ,SAAA,CAAUH,UAAU,CAACQ,OAAO;MACvCb,SAAA;MACAc,WAAA,EAAa;QACXC,IAAA,EAAMpB,GAAA,CAAIoB,IAAI;QACdC,MAAA,EAAQrB,GAAA,CAAIqB,MAAM;QAClBC,MAAA,EAAQtB,GAAA,CAAIuB,WAAW;QACvBjB,OAAA,EAASN,GAAA,CAAIM,OAAO;QACpBN,GAAA;QACAC,YAAA,EAAcA,YAAA,IAAgBD,GAAA,CAAIwB,KAAK;QACvCrB,IAAA,EAAMH,GAAA,CAAIG;MACZ;IACF;IAEA,OAAO;MAAES;IAAU;EACrB,EAAE,OAAOa,KAAA,EAAO;IACd,MAAMC,YAAA,GAAeD,KAAA,YAAiBrB,KAAA,GAAQqB,KAAA,CAAME,OAAO,GAAGC,MAAA,CAAOH,KAAA;IAErEzB,GAAA,CAAIM,OAAO,CAACuB,MAAM,CAACJ,KAAK,CAAC;MACvBK,GAAA,EAAKL,KAAA;MACLM,GAAA,EAAK,wBAAwB7B,OAAA,MAAawB,YAAA;IAC5C;IAEA,OAAO;MAAEd,SAAA,EAAW;IAAK;EAC3B;AACF","ignoreList":[]}
@@ -2,7 +2,6 @@ import React from 'react';
2
2
  type NavContextType = {
3
3
  hydrated: boolean;
4
4
  navOpen: boolean;
5
- navRef: React.RefObject<HTMLDivElement | null>;
6
5
  setNavOpen: (value: boolean) => void;
7
6
  };
8
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/context.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA4B,MAAM,OAAO,CAAA;AAKhD,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAA;IAC9C,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACrC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,+BAKrB,CAAA;AAEF,eAAO,MAAM,MAAM,sBAA8B,CAAA;AAYjD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAsEA,CAAA"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/elements/Nav/context.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAoB,MAAM,OAAO,CAAA;AAKxC,KAAK,cAAc,GAAG;IACpB,QAAQ,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;CACrC,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,+BAIrB,CAAA;AAEF,eAAO,MAAM,MAAM,sBAA8B,CAAA;AAYjD;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB,CAgDA,CAAA"}
@@ -1,9 +1,10 @@
1
1
  'use client';
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { jsx as _jsx } from "react/jsx-runtime";
4
5
  import { useWindowInfo } from '@faceless-ui/window-info';
5
6
  import { PREFERENCE_KEYS } from 'payload/shared';
6
- import React, { useEffect, useRef } from 'react';
7
+ import React, { useEffect } from 'react';
7
8
  import { usePreferences } from '../../providers/Preferences/index.js';
8
9
  import { usePathname } from '../../providers/RouterAdapter/index.js';
9
10
  /**
@@ -12,7 +13,6 @@ import { usePathname } from '../../providers/RouterAdapter/index.js';
12
13
  export const NavContext = /*#__PURE__*/React.createContext({
13
14
  hydrated: false,
14
15
  navOpen: true,
15
- navRef: null,
16
16
  setNavOpen: () => {}
17
17
  });
18
18
  export const useNav = () => React.use(NavContext);
@@ -28,81 +28,106 @@ const getNavPreference = async getPreference => {
28
28
  /**
29
29
  * @internal
30
30
  */
31
- export const NavProvider = ({
32
- children,
33
- initialIsOpen
34
- }) => {
31
+ export const NavProvider = t0 => {
32
+ const $ = _c(17);
35
33
  const {
36
- breakpoints: {
37
- l: largeBreak,
38
- m: midBreak,
39
- s: smallBreak
40
- }
34
+ children,
35
+ initialIsOpen
36
+ } = t0;
37
+ const {
38
+ breakpoints: t1
41
39
  } = useWindowInfo();
40
+ const {
41
+ l: largeBreak,
42
+ m: midBreak,
43
+ s: smallBreak
44
+ } = t1;
42
45
  const pathname = usePathname();
43
46
  const {
44
47
  getPreference
45
48
  } = usePreferences();
46
- const navRef = useRef(null);
47
- // initialize the nav to be closed
48
- // this is because getting the preference is async
49
- // so instead of closing it after the preference is loaded
50
- // we will open it after the preference is loaded
51
49
  const [navOpen, setNavOpen] = React.useState(initialIsOpen);
52
50
  const [hydrated, setHydrated] = React.useState(false);
53
- // on load check the user's preference and set "initial" state
54
- useEffect(() => {
55
- if (largeBreak === false) {
56
- const setNavFromPreferences = async () => {
57
- const preferredState = await getNavPreference(getPreference);
58
- setNavOpen(preferredState);
59
- };
60
- void setNavFromPreferences();
61
- }
62
- }, [largeBreak, getPreference, setNavOpen]);
63
- // on smaller screens where the nav is a modal
64
- // close the nav when the user navigates away
65
- useEffect(() => {
66
- if (smallBreak === true) {
67
- setNavOpen(false);
68
- }
69
- }, [pathname]);
70
- // on open and close, lock the body scroll
71
- // do not do this on desktop, the sidebar is not a modal
72
- useEffect(() => {
73
- if (navRef.current) {
74
- if (navOpen && midBreak) {
75
- navRef.current.style.overscrollBehavior = 'contain';
76
- } else {
77
- navRef.current.style.overscrollBehavior = 'auto';
51
+ let t2;
52
+ let t3;
53
+ if ($[0] !== getPreference || $[1] !== largeBreak) {
54
+ t2 = () => {
55
+ if (largeBreak === false) {
56
+ const setNavFromPreferences = async () => {
57
+ const preferredState = await getNavPreference(getPreference);
58
+ setNavOpen(preferredState);
59
+ };
60
+ setNavFromPreferences();
78
61
  }
79
- }
80
- }, [navOpen, midBreak]);
81
- // on smaller screens where the nav is a modal
82
- // close the nav when the user resizes down to mobile
83
- // the sidebar is a modal on mobile
84
- useEffect(() => {
85
- if (largeBreak === true || midBreak === true || smallBreak === true) {
86
- setNavOpen(false);
87
- }
88
- setHydrated(true);
89
- }, [largeBreak, midBreak, smallBreak]);
90
- // when the component unmounts, clear all body scroll locks
91
- useEffect(() => {
92
- return () => {
93
- if (navRef.current) {
94
- navRef.current.style.overscrollBehavior = 'auto';
62
+ };
63
+ t3 = [largeBreak, getPreference, setNavOpen];
64
+ $[0] = getPreference;
65
+ $[1] = largeBreak;
66
+ $[2] = t2;
67
+ $[3] = t3;
68
+ } else {
69
+ t2 = $[2];
70
+ t3 = $[3];
71
+ }
72
+ useEffect(t2, t3);
73
+ let t4;
74
+ if ($[4] !== smallBreak) {
75
+ t4 = () => {
76
+ if (smallBreak === true) {
77
+ setNavOpen(false);
95
78
  }
96
79
  };
97
- }, []);
98
- return /*#__PURE__*/_jsx(NavContext, {
99
- value: {
100
- hydrated,
101
- navOpen,
102
- navRef,
103
- setNavOpen
104
- },
105
- children: children
106
- });
80
+ $[4] = smallBreak;
81
+ $[5] = t4;
82
+ } else {
83
+ t4 = $[5];
84
+ }
85
+ let t5;
86
+ if ($[6] !== pathname) {
87
+ t5 = [pathname];
88
+ $[6] = pathname;
89
+ $[7] = t5;
90
+ } else {
91
+ t5 = $[7];
92
+ }
93
+ useEffect(t4, t5);
94
+ let t6;
95
+ let t7;
96
+ if ($[8] !== largeBreak || $[9] !== midBreak || $[10] !== smallBreak) {
97
+ t6 = () => {
98
+ if (largeBreak === true || midBreak === true || smallBreak === true) {
99
+ setNavOpen(false);
100
+ }
101
+ setHydrated(true);
102
+ };
103
+ t7 = [largeBreak, midBreak, smallBreak];
104
+ $[8] = largeBreak;
105
+ $[9] = midBreak;
106
+ $[10] = smallBreak;
107
+ $[11] = t6;
108
+ $[12] = t7;
109
+ } else {
110
+ t6 = $[11];
111
+ t7 = $[12];
112
+ }
113
+ useEffect(t6, t7);
114
+ let t8;
115
+ if ($[13] !== children || $[14] !== hydrated || $[15] !== navOpen) {
116
+ t8 = _jsx(NavContext, {
117
+ value: {
118
+ hydrated,
119
+ navOpen,
120
+ setNavOpen
121
+ },
122
+ children
123
+ });
124
+ $[13] = children;
125
+ $[14] = hydrated;
126
+ $[15] = navOpen;
127
+ $[16] = t8;
128
+ } else {
129
+ t8 = $[16];
130
+ }
131
+ return t8;
107
132
  };
108
133
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":["useWindowInfo","PREFERENCE_KEYS","React","useEffect","useRef","usePreferences","usePathname","NavContext","createContext","hydrated","navOpen","navRef","setNavOpen","useNav","use","getNavPreference","getPreference","navPrefs","NAV","preferredState","open","NavProvider","children","initialIsOpen","breakpoints","l","largeBreak","m","midBreak","s","smallBreak","pathname","useState","setHydrated","setNavFromPreferences","current","style","overscrollBehavior","_jsx","value"],"sources":["../../../src/elements/Nav/context.tsx"],"sourcesContent":["'use client'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useEffect, useRef } from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { usePathname } from '../../providers/RouterAdapter/index.js'\n\ntype NavContextType = {\n hydrated: boolean\n navOpen: boolean\n navRef: React.RefObject<HTMLDivElement | null>\n setNavOpen: (value: boolean) => void\n}\n\n/**\n * @internal\n */\nexport const NavContext = React.createContext<NavContextType>({\n hydrated: false,\n navOpen: true,\n navRef: null,\n setNavOpen: () => {},\n})\n\nexport const useNav = () => React.use(NavContext)\n\nconst getNavPreference = async (getPreference): Promise<boolean> => {\n const navPrefs = await getPreference(PREFERENCE_KEYS.NAV)\n const preferredState = navPrefs?.open\n if (typeof preferredState === 'boolean') {\n return preferredState\n } else {\n return true\n }\n}\n\n/**\n * @internal\n */\nexport const NavProvider: React.FC<{\n children: React.ReactNode\n initialIsOpen?: boolean\n}> = ({ children, initialIsOpen }) => {\n const {\n breakpoints: { l: largeBreak, m: midBreak, s: smallBreak },\n } = useWindowInfo()\n\n const pathname = usePathname()\n\n const { getPreference } = usePreferences()\n const navRef = useRef(null)\n\n // initialize the nav to be closed\n // this is because getting the preference is async\n // so instead of closing it after the preference is loaded\n // we will open it after the preference is loaded\n const [navOpen, setNavOpen] = React.useState(initialIsOpen)\n\n const [hydrated, setHydrated] = React.useState(false)\n\n // on load check the user's preference and set \"initial\" state\n useEffect(() => {\n if (largeBreak === false) {\n const setNavFromPreferences = async () => {\n const preferredState = await getNavPreference(getPreference)\n setNavOpen(preferredState)\n }\n\n void setNavFromPreferences()\n }\n }, [largeBreak, getPreference, setNavOpen])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user navigates away\n useEffect(() => {\n if (smallBreak === true) {\n setNavOpen(false)\n }\n }, [pathname])\n\n // on open and close, lock the body scroll\n // do not do this on desktop, the sidebar is not a modal\n useEffect(() => {\n if (navRef.current) {\n if (navOpen && midBreak) {\n navRef.current.style.overscrollBehavior = 'contain'\n } else {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [navOpen, midBreak])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user resizes down to mobile\n // the sidebar is a modal on mobile\n useEffect(() => {\n if (largeBreak === true || midBreak === true || smallBreak === true) {\n setNavOpen(false)\n }\n setHydrated(true)\n }, [largeBreak, midBreak, smallBreak])\n\n // when the component unmounts, clear all body scroll locks\n useEffect(() => {\n return () => {\n if (navRef.current) {\n navRef.current.style.overscrollBehavior = 'auto'\n }\n }\n }, [])\n\n return <NavContext value={{ hydrated, navOpen, navRef, setNavOpen }}>{children}</NavContext>\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"context.js","names":["c","_c","useWindowInfo","PREFERENCE_KEYS","React","useEffect","usePreferences","usePathname","NavContext","createContext","hydrated","navOpen","setNavOpen","useNav","use","getNavPreference","getPreference","navPrefs","NAV","preferredState","open","NavProvider","t0","$","children","initialIsOpen","breakpoints","t1","l","largeBreak","m","midBreak","s","smallBreak","pathname","useState","setHydrated","t2","t3","setNavFromPreferences","t4","t5","t6","t7","t8","_jsx","value"],"sources":["../../../src/elements/Nav/context.tsx"],"sourcesContent":["'use client'\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport { PREFERENCE_KEYS } from 'payload/shared'\nimport React, { useEffect } from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { usePathname } from '../../providers/RouterAdapter/index.js'\n\ntype NavContextType = {\n hydrated: boolean\n navOpen: boolean\n setNavOpen: (value: boolean) => void\n}\n\n/**\n * @internal\n */\nexport const NavContext = React.createContext<NavContextType>({\n hydrated: false,\n navOpen: true,\n setNavOpen: () => {},\n})\n\nexport const useNav = () => React.use(NavContext)\n\nconst getNavPreference = async (getPreference): Promise<boolean> => {\n const navPrefs = await getPreference(PREFERENCE_KEYS.NAV)\n const preferredState = navPrefs?.open\n if (typeof preferredState === 'boolean') {\n return preferredState\n } else {\n return true\n }\n}\n\n/**\n * @internal\n */\nexport const NavProvider: React.FC<{\n children: React.ReactNode\n initialIsOpen?: boolean\n}> = ({ children, initialIsOpen }) => {\n const {\n breakpoints: { l: largeBreak, m: midBreak, s: smallBreak },\n } = useWindowInfo()\n\n const pathname = usePathname()\n\n const { getPreference } = usePreferences()\n\n // initialize the nav to be closed\n // this is because getting the preference is async\n // so instead of closing it after the preference is loaded\n // we will open it after the preference is loaded\n const [navOpen, setNavOpen] = React.useState(initialIsOpen)\n\n const [hydrated, setHydrated] = React.useState(false)\n\n // on load check the user's preference and set \"initial\" state\n useEffect(() => {\n if (largeBreak === false) {\n const setNavFromPreferences = async () => {\n const preferredState = await getNavPreference(getPreference)\n setNavOpen(preferredState)\n }\n\n void setNavFromPreferences()\n }\n }, [largeBreak, getPreference, setNavOpen])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user navigates away\n useEffect(() => {\n if (smallBreak === true) {\n setNavOpen(false)\n }\n }, [pathname])\n\n // on smaller screens where the nav is a modal\n // close the nav when the user resizes down to mobile\n // the sidebar is a modal on mobile\n useEffect(() => {\n if (largeBreak === true || midBreak === true || smallBreak === true) {\n setNavOpen(false)\n }\n setHydrated(true)\n }, [largeBreak, midBreak, smallBreak])\n\n return <NavContext value={{ hydrated, navOpen, setNavOpen }}>{children}</NavContext>\n}\n"],"mappings":"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","ignoreList":[]}