@payloadcms/ui 4.0.0-internal.e387174 → 4.0.0-internal.e38d3ac

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 (726) hide show
  1. package/dist/css/app.css +121 -0
  2. package/dist/css/forms.css +0 -6
  3. package/dist/css/spacing.css +11 -3
  4. package/dist/css/z-index.css +10 -0
  5. package/dist/elements/AddNewRelation/index.css +0 -1
  6. package/dist/elements/AnimateHeight/usePatchAnimateHeight.d.ts.map +1 -1
  7. package/dist/elements/AppHeader/index.css +1 -3
  8. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  9. package/dist/elements/AppHeader/index.js +5 -1
  10. package/dist/elements/AppHeader/index.js.map +1 -1
  11. package/dist/elements/ArrayAction/index.d.ts +3 -0
  12. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  13. package/dist/elements/ArrayAction/index.js +83 -29
  14. package/dist/elements/ArrayAction/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +2 -2
  16. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  17. package/dist/elements/BulkUpload/FileSidebar/index.css +4 -0
  18. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +2 -2
  19. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  20. package/dist/elements/BulkUpload/FormsManager/createFormData.js +4 -15
  21. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  22. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  23. package/dist/elements/BulkUpload/FormsManager/index.js +1 -1
  24. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  25. package/dist/elements/Button/index.css +2 -2
  26. package/dist/elements/Button/index.d.ts.map +1 -1
  27. package/dist/elements/ClipboardAction/ClipboardActionLabel.d.ts.map +1 -1
  28. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts +8 -1
  29. package/dist/elements/ClipboardAction/clipboardUtilities.d.ts.map +1 -1
  30. package/dist/elements/ClipboardAction/clipboardUtilities.js +40 -8
  31. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  32. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +120 -0
  33. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +1 -0
  34. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  35. package/dist/elements/ClipboardAction/index.js +17 -1
  36. package/dist/elements/ClipboardAction/index.js.map +1 -1
  37. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +144 -0
  38. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +1 -0
  39. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts +10 -0
  40. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  41. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +55 -0
  42. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  43. package/dist/elements/ClipboardAction/types.d.ts +3 -0
  44. package/dist/elements/ClipboardAction/types.d.ts.map +1 -1
  45. package/dist/elements/ClipboardAction/types.js.map +1 -1
  46. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts +10 -0
  47. package/dist/elements/ClipboardAction/useCanPasteClipboard.d.ts.map +1 -0
  48. package/dist/elements/ClipboardAction/useCanPasteClipboard.js +21 -0
  49. package/dist/elements/ClipboardAction/useCanPasteClipboard.js.map +1 -0
  50. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  51. package/dist/elements/CodeEditor/index.css +5 -5
  52. package/dist/elements/CommandPalette/index.css +0 -7
  53. package/dist/elements/CopyToClipboard/index.d.ts +1 -0
  54. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  55. package/dist/elements/CopyToClipboard/index.js +10 -8
  56. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  57. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  58. package/dist/elements/CreateDocumentButton/index.js +4 -1
  59. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  60. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  61. package/dist/elements/DatePicker/DatePicker.js +1 -0
  62. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  63. package/dist/elements/DatePicker/getFormattedLocale.d.ts.map +1 -1
  64. package/dist/elements/DatePicker/index.css +1 -1
  65. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  66. package/dist/elements/DeleteDocument/index.js +16 -1
  67. package/dist/elements/DeleteDocument/index.js.map +1 -1
  68. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -1
  69. package/dist/elements/DocumentControls/index.d.ts +2 -2
  70. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  71. package/dist/elements/DocumentControls/index.js.map +1 -1
  72. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +2 -2
  73. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  74. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  75. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  76. package/dist/elements/DocumentLocked/index.d.ts +2 -2
  77. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  78. package/dist/elements/DocumentLocked/index.js.map +1 -1
  79. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  80. package/dist/elements/Drawer/index.css +10 -4
  81. package/dist/elements/Drawer/index.d.ts.map +1 -1
  82. package/dist/elements/Drawer/index.js +1 -0
  83. package/dist/elements/Drawer/index.js.map +1 -1
  84. package/dist/elements/Drawer/useDrawerSlug.d.ts.map +1 -1
  85. package/dist/elements/DrawerActionHeader/index.d.ts.map +1 -1
  86. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +3 -2
  87. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  88. package/dist/elements/EditMany/DrawerContent.js +2 -2
  89. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  90. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  91. package/dist/elements/FieldSelect/reduceFieldOptions.js +3 -1
  92. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  93. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +143 -0
  94. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +1 -0
  95. package/dist/elements/FileDetails/StaticFileDetails/index.css +8 -9
  96. package/dist/elements/FileManager/FilePreview/index.css +3 -3
  97. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  98. package/dist/elements/FileManager/FileToolbar/index.js +3 -0
  99. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  100. package/dist/elements/FileManager/index.css +36 -23
  101. package/dist/elements/FileManager/index.d.ts +1 -1
  102. package/dist/elements/FileManager/index.d.ts.map +1 -1
  103. package/dist/elements/FileManager/index.js +15 -4
  104. package/dist/elements/FileManager/index.js.map +1 -1
  105. package/dist/elements/HTMLDiff/diff/index.d.ts.map +1 -1
  106. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  107. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +0 -1
  108. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  109. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  110. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  111. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  112. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  113. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +109 -89
  114. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  115. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -1
  116. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js +2 -0
  117. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -1
  118. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +1 -1
  119. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  120. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +0 -1
  121. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  122. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  123. package/dist/elements/IDLabel/index.css +6 -0
  124. package/dist/elements/IDLabel/index.d.ts +1 -1
  125. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  126. package/dist/elements/IDLabel/index.js +16 -21
  127. package/dist/elements/IDLabel/index.js.map +1 -1
  128. package/dist/elements/InputStepper/index.css +0 -1
  129. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  130. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +1 -1
  131. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  132. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts +1 -7
  133. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.d.ts.map +1 -1
  134. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +26 -32
  135. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  136. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  137. package/dist/elements/Locked/index.css +0 -8
  138. package/dist/elements/Locked/index.d.ts +2 -2
  139. package/dist/elements/Locked/index.d.ts.map +1 -1
  140. package/dist/elements/Locked/index.js +70 -64
  141. package/dist/elements/Locked/index.js.map +1 -1
  142. package/dist/elements/MiniCarousel/index.css +39 -37
  143. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  144. package/dist/elements/Nav/SidebarTabs/index.client.js +12 -5
  145. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  146. package/dist/elements/Nav/SidebarTabs/index.css +0 -5
  147. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +1 -0
  148. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -1
  149. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +2 -1
  150. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  151. package/dist/elements/NavGroup/index.css +0 -1
  152. package/dist/elements/Popup/PopupButtonList/index.css +1 -1
  153. package/dist/elements/Popup/index.js +1 -1
  154. package/dist/elements/Popup/index.js.map +1 -1
  155. package/dist/elements/PreviewButton/index.d.ts +1 -2
  156. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  157. package/dist/elements/PreviewButton/index.js +11 -5
  158. package/dist/elements/PreviewButton/index.js.map +1 -1
  159. package/dist/elements/PreviewSizes/index.css +8 -9
  160. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.d.ts.map +1 -1
  161. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -1
  162. package/dist/elements/PublishButton/ScheduleDrawer/index.js +1 -1
  163. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  164. package/dist/elements/QueryPresets/QueryPresetBar/index.js +1 -3
  165. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  166. package/dist/elements/ReactSelect/ClearIndicator/index.css +0 -1
  167. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts +7 -0
  168. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -0
  169. package/dist/elements/ReactSelect/DefaultMenuPortal.js +120 -0
  170. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -0
  171. package/dist/elements/ReactSelect/MultiValue/index.css +0 -1
  172. package/dist/elements/ReactSelect/MultiValueLabel/index.css +2 -2
  173. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -1
  174. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +1 -1
  175. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -1
  176. package/dist/elements/ReactSelect/getMenuListStyles.js +13 -5
  177. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -1
  178. package/dist/elements/ReactSelect/getMenuStyles.d.ts +10 -0
  179. package/dist/elements/ReactSelect/getMenuStyles.d.ts.map +1 -0
  180. package/dist/elements/ReactSelect/getMenuStyles.js +21 -0
  181. package/dist/elements/ReactSelect/getMenuStyles.js.map +1 -0
  182. package/dist/elements/ReactSelect/index.css +7 -3
  183. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  184. package/dist/elements/ReactSelect/index.js +24 -101
  185. package/dist/elements/ReactSelect/index.js.map +1 -1
  186. package/dist/elements/ReactSelect/types.d.ts +1 -2
  187. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  188. package/dist/elements/ReactSelect/types.js.map +1 -1
  189. package/dist/elements/RelationshipTable/AddNewButton.d.ts +2 -2
  190. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  191. package/dist/elements/RelationshipTable/Pagination.d.ts +0 -1
  192. package/dist/elements/RelationshipTable/Pagination.d.ts.map +1 -1
  193. package/dist/elements/RelationshipTable/Pagination.js +27 -77
  194. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  195. package/dist/elements/RelationshipTable/index.css +0 -2
  196. package/dist/elements/RelationshipTable/index.d.ts +1 -0
  197. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  198. package/dist/elements/RelationshipTable/index.js +41 -5
  199. package/dist/elements/RelationshipTable/index.js.map +1 -1
  200. package/dist/elements/RenderTitle/index.css +4 -0
  201. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  202. package/dist/elements/RenderTitle/index.js +18 -13
  203. package/dist/elements/RenderTitle/index.js.map +1 -1
  204. package/dist/elements/SelectAll/index.css +3 -1
  205. package/dist/elements/SelectRow/index.d.ts +5 -4
  206. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  207. package/dist/elements/SelectRow/index.js +10 -7
  208. package/dist/elements/SelectRow/index.js.map +1 -1
  209. package/dist/elements/SidebarToggle/index.css +0 -17
  210. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  211. package/dist/elements/SortColumn/index.js +42 -38
  212. package/dist/elements/SortColumn/index.js.map +1 -1
  213. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  214. package/dist/elements/SortHeader/index.js +29 -26
  215. package/dist/elements/SortHeader/index.js.map +1 -1
  216. package/dist/elements/StepNav/index.css +64 -14
  217. package/dist/elements/StepNav/index.d.ts.map +1 -1
  218. package/dist/elements/StepNav/index.js +143 -69
  219. package/dist/elements/StepNav/index.js.map +1 -1
  220. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  221. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  222. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  223. package/dist/elements/Table/DefaultCell/index.js +3 -11
  224. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  225. package/dist/elements/Table/OrderableRow.d.ts +3 -1
  226. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  227. package/dist/elements/Table/OrderableRow.js +17 -1
  228. package/dist/elements/Table/OrderableRow.js.map +1 -1
  229. package/dist/elements/Table/OrderableRowDragPreview.d.ts.map +1 -1
  230. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  231. package/dist/elements/Table/OrderableTable.js +19 -2
  232. package/dist/elements/Table/OrderableTable.js.map +1 -1
  233. package/dist/elements/Table/index.css +7 -0
  234. package/dist/elements/TableSection/index.css +0 -1
  235. package/dist/elements/Tabs/index.d.ts.map +1 -1
  236. package/dist/elements/Thumbnail/createThumbnail.d.ts.map +1 -1
  237. package/dist/elements/Thumbnail/index.d.ts +1 -1
  238. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  239. package/dist/elements/Thumbnail/index.js.map +1 -1
  240. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  241. package/dist/elements/TimezonePicker/index.js +5 -1
  242. package/dist/elements/TimezonePicker/index.js.map +1 -1
  243. package/dist/elements/Tooltip/index.css +15 -34
  244. package/dist/elements/Tooltip/index.d.ts +11 -3
  245. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  246. package/dist/elements/Tooltip/index.js +151 -85
  247. package/dist/elements/Tooltip/index.js.map +1 -1
  248. package/dist/elements/Upload/index.css +0 -5
  249. package/dist/elements/Upload/index.d.ts.map +1 -1
  250. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  251. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.d.ts.map +1 -1
  252. package/dist/elements/WhereBuilder/Condition/validOperators.d.ts.map +1 -1
  253. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  254. package/dist/exports/client/index.d.ts +5 -1
  255. package/dist/exports/client/index.d.ts.map +1 -1
  256. package/dist/exports/client/index.js +1 -1
  257. package/dist/exports/client/index.js.map +3 -3
  258. package/dist/exports/layouts.d.ts +1 -0
  259. package/dist/exports/layouts.d.ts.map +1 -1
  260. package/dist/exports/layouts.js +1 -0
  261. package/dist/exports/layouts.js.map +1 -1
  262. package/dist/exports/shared/index.d.ts +1 -0
  263. package/dist/exports/shared/index.d.ts.map +1 -1
  264. package/dist/exports/shared/index.js +2 -2
  265. package/dist/exports/shared/index.js.map +4 -4
  266. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  267. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  268. package/dist/fields/Array/ArrayRow.js +99 -160
  269. package/dist/fields/Array/ArrayRow.js.map +1 -1
  270. package/dist/fields/Array/index.d.ts +1 -1
  271. package/dist/fields/Array/index.d.ts.map +1 -1
  272. package/dist/fields/Array/index.js +38 -10
  273. package/dist/fields/Array/index.js.map +1 -1
  274. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  275. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  276. package/dist/fields/Blocks/BlockRow.js +136 -195
  277. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  278. package/dist/fields/Blocks/RowActions.d.ts +3 -0
  279. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  280. package/dist/fields/Blocks/RowActions.js +26 -20
  281. package/dist/fields/Blocks/RowActions.js.map +1 -1
  282. package/dist/fields/Blocks/index.d.ts +1 -1
  283. package/dist/fields/Blocks/index.d.ts.map +1 -1
  284. package/dist/fields/Blocks/index.js +38 -10
  285. package/dist/fields/Blocks/index.js.map +1 -1
  286. package/dist/fields/Checkbox/Input.d.ts +2 -0
  287. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  288. package/dist/fields/Checkbox/Input.js +32 -26
  289. package/dist/fields/Checkbox/Input.js.map +1 -1
  290. package/dist/fields/Checkbox/index.css +37 -73
  291. package/dist/fields/Checkbox/index.d.ts +1 -1
  292. package/dist/fields/Code/index.css +1 -1
  293. package/dist/fields/Code/index.d.ts +2 -2
  294. package/dist/fields/Collapsible/index.d.ts +1 -1
  295. package/dist/fields/DateTime/index.d.ts +1 -1
  296. package/dist/fields/Email/index.d.ts +1 -1
  297. package/dist/fields/FieldError/index.css +0 -9
  298. package/dist/fields/FieldError/index.d.ts.map +1 -1
  299. package/dist/fields/FieldError/index.js +19 -9
  300. package/dist/fields/FieldError/index.js.map +1 -1
  301. package/dist/fields/Group/index.d.ts +2 -2
  302. package/dist/fields/JSON/index.d.ts +1 -1
  303. package/dist/fields/Join/index.css +9 -0
  304. package/dist/fields/Join/index.d.ts +1 -1
  305. package/dist/fields/Join/index.d.ts.map +1 -1
  306. package/dist/fields/Join/index.js +13 -9
  307. package/dist/fields/Join/index.js.map +1 -1
  308. package/dist/fields/Number/index.d.ts +1 -1
  309. package/dist/fields/Point/index.d.ts +1 -1
  310. package/dist/fields/RadioGroup/index.css +0 -7
  311. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  312. package/dist/fields/Relationship/Input.js +32 -14
  313. package/dist/fields/Relationship/Input.js.map +1 -1
  314. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  315. package/dist/fields/Relationship/index.d.ts +1 -1
  316. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  317. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +1 -1
  318. package/dist/fields/Row/index.d.ts +1 -1
  319. package/dist/fields/Select/index.d.ts +1 -1
  320. package/dist/fields/Select/index.d.ts.map +1 -1
  321. package/dist/fields/Slug/index.css +0 -1
  322. package/dist/fields/Slug/index.d.ts.map +1 -1
  323. package/dist/fields/Slug/index.js +75 -111
  324. package/dist/fields/Slug/index.js.map +1 -1
  325. package/dist/fields/Tabs/index.d.ts +1 -1
  326. package/dist/fields/Text/index.d.ts +1 -1
  327. package/dist/fields/Textarea/index.d.ts +1 -1
  328. package/dist/fields/Upload/index.css +19 -4
  329. package/dist/fields/mergeFieldStyles.d.ts +1 -1
  330. package/dist/fields/mergeFieldStyles.d.ts.map +1 -1
  331. package/dist/forms/Form/context.d.ts.map +1 -1
  332. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  333. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  334. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  335. package/dist/forms/Form/fieldReducer.js +3 -1
  336. package/dist/forms/Form/fieldReducer.js.map +1 -1
  337. package/dist/forms/Form/index.d.ts.map +1 -1
  338. package/dist/forms/Form/index.js +12 -15
  339. package/dist/forms/Form/index.js.map +1 -1
  340. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  341. package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
  342. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  343. package/dist/forms/Form/rows.d.ts.map +1 -1
  344. package/dist/forms/Form/types.d.ts +1 -1
  345. package/dist/forms/Form/types.d.ts.map +1 -1
  346. package/dist/forms/Form/types.js.map +1 -1
  347. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  348. package/dist/forms/RenderFields/index.css +16 -2
  349. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  350. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  351. package/dist/forms/WatchChildErrors/index.js +2 -2
  352. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  353. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  354. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  355. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  356. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  357. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  358. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  359. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  360. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  361. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  362. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -3
  363. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  364. package/dist/forms/useField/index.d.ts.map +1 -1
  365. package/dist/forms/withCondition/index.d.ts +1 -1
  366. package/dist/forms/withCondition/index.d.ts.map +1 -1
  367. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  368. package/dist/hooks/useDelay.d.ts.map +1 -1
  369. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -1
  370. package/dist/hooks/useHotkey.d.ts.map +1 -1
  371. package/dist/hooks/useIntersect.d.ts.map +1 -1
  372. package/dist/hooks/usePopupWindow.d.ts +1 -1
  373. package/dist/hooks/usePopupWindow.d.ts.map +1 -1
  374. package/dist/hooks/useRelatedCollections.d.ts.map +1 -1
  375. package/dist/hooks/useResize.d.ts.map +1 -1
  376. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  377. package/dist/icons/Edit/index.d.ts +0 -1
  378. package/dist/icons/Edit/index.d.ts.map +1 -1
  379. package/dist/icons/Edit/index.js +4 -4
  380. package/dist/icons/Edit/index.js.map +1 -1
  381. package/dist/layouts/Root/index.d.ts +1 -1
  382. package/dist/layouts/Root/index.d.ts.map +1 -1
  383. package/dist/layouts/Root/index.js +12 -4
  384. package/dist/layouts/Root/index.js.map +1 -1
  385. package/dist/layouts/Root/viewport.d.ts +1 -0
  386. package/dist/layouts/Root/viewport.d.ts.map +1 -1
  387. package/dist/layouts/Root/viewport.js +4 -1
  388. package/dist/layouts/Root/viewport.js.map +1 -1
  389. package/dist/providers/Actions/index.d.ts +1 -0
  390. package/dist/providers/Actions/index.d.ts.map +1 -1
  391. package/dist/providers/Actions/index.js +43 -11
  392. package/dist/providers/Actions/index.js.map +1 -1
  393. package/dist/providers/Auth/AuthSessionDebug/index.css +48 -0
  394. package/dist/providers/Auth/AuthSessionDebug/index.d.ts +13 -0
  395. package/dist/providers/Auth/AuthSessionDebug/index.d.ts.map +1 -0
  396. package/dist/providers/Auth/AuthSessionDebug/index.js +93 -0
  397. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -0
  398. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts +21 -0
  399. package/dist/providers/Auth/AuthSessionDebug/utilities.d.ts.map +1 -0
  400. package/dist/providers/Auth/AuthSessionDebug/utilities.js +53 -0
  401. package/dist/providers/Auth/AuthSessionDebug/utilities.js.map +1 -0
  402. package/dist/providers/Auth/authSessionRequests.d.ts +27 -0
  403. package/dist/providers/Auth/authSessionRequests.d.ts.map +1 -0
  404. package/dist/providers/Auth/authSessionRequests.js +119 -0
  405. package/dist/providers/Auth/authSessionRequests.js.map +1 -0
  406. package/dist/providers/Auth/authSessionRequests.spec.js +121 -0
  407. package/dist/providers/Auth/authSessionRequests.spec.js.map +1 -0
  408. package/dist/providers/Auth/index.d.ts +5 -59
  409. package/dist/providers/Auth/index.d.ts.map +1 -1
  410. package/dist/providers/Auth/index.js +283 -135
  411. package/dist/providers/Auth/index.js.map +1 -1
  412. package/dist/providers/Auth/sessionActivity.d.ts +23 -0
  413. package/dist/providers/Auth/sessionActivity.d.ts.map +1 -0
  414. package/dist/providers/Auth/sessionActivity.js +49 -0
  415. package/dist/providers/Auth/sessionActivity.js.map +1 -0
  416. package/dist/providers/Auth/sessionActivity.spec.js +44 -0
  417. package/dist/providers/Auth/sessionActivity.spec.js.map +1 -0
  418. package/dist/providers/Auth/sessionTiming.d.ts +11 -0
  419. package/dist/providers/Auth/sessionTiming.d.ts.map +1 -0
  420. package/dist/providers/Auth/sessionTiming.js +18 -0
  421. package/dist/providers/Auth/sessionTiming.js.map +1 -0
  422. package/dist/providers/Auth/tabSessionSync/index.d.ts +17 -0
  423. package/dist/providers/Auth/tabSessionSync/index.d.ts.map +1 -0
  424. package/dist/providers/Auth/tabSessionSync/index.js +263 -0
  425. package/dist/providers/Auth/tabSessionSync/index.js.map +1 -0
  426. package/dist/providers/Auth/tabSessionSync/index.spec.js +463 -0
  427. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +1 -0
  428. package/dist/providers/Auth/tabSessionSync/types.d.ts +107 -0
  429. package/dist/providers/Auth/tabSessionSync/types.d.ts.map +1 -0
  430. package/dist/providers/Auth/tabSessionSync/types.js +6 -0
  431. package/dist/providers/Auth/tabSessionSync/types.js.map +1 -0
  432. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts +11 -0
  433. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.d.ts.map +1 -0
  434. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js +90 -0
  435. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -0
  436. package/dist/providers/Auth/tabSessionSync/utilities.d.ts +26 -0
  437. package/dist/providers/Auth/tabSessionSync/utilities.d.ts.map +1 -0
  438. package/dist/providers/Auth/tabSessionSync/utilities.js +159 -0
  439. package/dist/providers/Auth/tabSessionSync/utilities.js.map +1 -0
  440. package/dist/providers/Auth/types.d.ts +65 -0
  441. package/dist/providers/Auth/types.d.ts.map +1 -0
  442. package/dist/providers/Auth/types.js +2 -0
  443. package/dist/providers/Auth/types.js.map +1 -0
  444. package/dist/providers/Auth/useAuthSessionTimers.d.ts +26 -0
  445. package/dist/providers/Auth/useAuthSessionTimers.d.ts.map +1 -0
  446. package/dist/providers/Auth/useAuthSessionTimers.js +203 -0
  447. package/dist/providers/Auth/useAuthSessionTimers.js.map +1 -0
  448. package/dist/providers/Auth/useAuthSessionTimers.spec.js +311 -0
  449. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +1 -0
  450. package/dist/providers/ClientFunction/index.d.ts.map +1 -1
  451. package/dist/providers/DocumentInfo/index.js.map +1 -1
  452. package/dist/providers/DocumentInfo/types.d.ts +5 -5
  453. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  454. package/dist/providers/DocumentInfo/types.js.map +1 -1
  455. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  456. package/dist/providers/DocumentTitle/index.d.ts +1 -0
  457. package/dist/providers/DocumentTitle/index.d.ts.map +1 -1
  458. package/dist/providers/DocumentTitle/index.js +2 -0
  459. package/dist/providers/DocumentTitle/index.js.map +1 -1
  460. package/dist/providers/Embed/index.d.ts +24 -0
  461. package/dist/providers/Embed/index.d.ts.map +1 -0
  462. package/dist/providers/Embed/index.js +105 -0
  463. package/dist/providers/Embed/index.js.map +1 -0
  464. package/dist/providers/FormErrorHandler/index.d.ts +24 -0
  465. package/dist/providers/FormErrorHandler/index.d.ts.map +1 -0
  466. package/dist/providers/FormErrorHandler/index.js +6 -0
  467. package/dist/providers/FormErrorHandler/index.js.map +1 -0
  468. package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
  469. package/dist/providers/ListQuery/sanitizeQuery.d.ts.map +1 -1
  470. package/dist/providers/LivePreview/sizeReducer.d.ts +1 -1
  471. package/dist/providers/LivePreview/sizeReducer.d.ts.map +1 -1
  472. package/dist/providers/Locale/index.d.ts.map +1 -1
  473. package/dist/providers/Locale/index.js +41 -36
  474. package/dist/providers/Locale/index.js.map +1 -1
  475. package/dist/providers/Root/index.d.ts +1 -0
  476. package/dist/providers/Root/index.d.ts.map +1 -1
  477. package/dist/providers/Root/index.js +37 -31
  478. package/dist/providers/Root/index.js.map +1 -1
  479. package/dist/providers/RouteTransition/ProgressBar/index.js +4 -1
  480. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  481. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +44 -0
  482. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +1 -0
  483. package/dist/providers/RouteTransition/index.d.ts +2 -0
  484. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  485. package/dist/providers/RouteTransition/index.js +42 -14
  486. package/dist/providers/RouteTransition/index.js.map +1 -1
  487. package/dist/providers/SidebarTabs/index.d.ts +3 -2
  488. package/dist/providers/SidebarTabs/index.d.ts.map +1 -1
  489. package/dist/providers/SidebarTabs/index.js.map +1 -1
  490. package/dist/providers/TableColumns/buildColumnState/filterFields.d.ts.map +1 -1
  491. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.d.ts.map +1 -1
  492. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.d.ts.map +1 -1
  493. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  494. package/dist/providers/TableColumns/buildColumnState/index.js +1 -1
  495. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  496. package/dist/providers/TableColumns/buildColumnState/index.spec.js +40 -0
  497. package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +1 -0
  498. package/dist/providers/TableColumns/getInitialColumns.d.ts +1 -1
  499. package/dist/providers/TableColumns/getInitialColumns.d.ts.map +1 -1
  500. package/dist/providers/Theme/index.d.ts +5 -2
  501. package/dist/providers/Theme/index.d.ts.map +1 -1
  502. package/dist/providers/Theme/index.js +109 -96
  503. package/dist/providers/Theme/index.js.map +1 -1
  504. package/dist/providers/Theme/shared.d.ts +3 -0
  505. package/dist/providers/Theme/shared.d.ts.map +1 -0
  506. package/dist/providers/Theme/shared.js +2 -0
  507. package/dist/providers/Theme/shared.js.map +1 -0
  508. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  509. package/dist/providers/UploadHandlers/index.d.ts +2 -7
  510. package/dist/providers/UploadHandlers/index.d.ts.map +1 -1
  511. package/dist/providers/UploadHandlers/index.js +102 -42
  512. package/dist/providers/UploadHandlers/index.js.map +1 -1
  513. package/dist/styles.css +23 -10
  514. package/dist/templates/Default/index.d.ts +1 -0
  515. package/dist/templates/Default/index.d.ts.map +1 -1
  516. package/dist/templates/Default/index.js +2 -0
  517. package/dist/templates/Default/index.js.map +1 -1
  518. package/dist/utilities/api.d.ts.map +1 -1
  519. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  520. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
  521. package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
  522. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  523. package/dist/utilities/buildFormState.d.ts +2 -2
  524. package/dist/utilities/buildFormState.d.ts.map +1 -1
  525. package/dist/utilities/buildFormState.js.map +1 -1
  526. package/dist/utilities/checkDependencies.d.ts.map +1 -1
  527. package/dist/utilities/combineFieldLabel.d.ts.map +1 -1
  528. package/dist/utilities/combineFieldLabel.js +5 -1
  529. package/dist/utilities/combineFieldLabel.js.map +1 -1
  530. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  531. package/dist/utilities/filterOutUploadFields.d.ts.map +1 -1
  532. package/dist/utilities/findLocaleFromCode.d.ts.map +1 -1
  533. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  534. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  535. package/dist/utilities/formatDocTitle/formatRelationshipTitle.d.ts.map +1 -1
  536. package/dist/utilities/formatDocTitle/index.d.ts +1 -1
  537. package/dist/utilities/formatDocTitle/index.d.ts.map +1 -1
  538. package/dist/utilities/formatFields.d.ts.map +1 -1
  539. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  540. package/dist/utilities/formatMetadata.js +0 -5
  541. package/dist/utilities/formatMetadata.js.map +1 -1
  542. package/dist/utilities/generateFieldID.d.ts +1 -1
  543. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  544. package/dist/utilities/generateFieldID.js +2 -2
  545. package/dist/utilities/generateFieldID.js.map +1 -1
  546. package/dist/utilities/getColumns.d.ts.map +1 -1
  547. package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
  548. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  549. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  550. package/dist/utilities/getDocumentPermissions.d.ts.map +1 -1
  551. package/dist/utilities/getGlobalData.d.ts +2 -2
  552. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  553. package/dist/utilities/getGlobalData.js.map +1 -1
  554. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  555. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  556. package/dist/utilities/getLanguageDir.d.ts +12 -0
  557. package/dist/utilities/getLanguageDir.d.ts.map +1 -0
  558. package/dist/utilities/getLanguageDir.js +12 -0
  559. package/dist/utilities/getLanguageDir.js.map +1 -0
  560. package/dist/utilities/getOffsetTop.d.ts.map +1 -1
  561. package/dist/utilities/getRequestEmbed.d.ts +14 -0
  562. package/dist/utilities/getRequestEmbed.d.ts.map +1 -0
  563. package/dist/utilities/getRequestEmbed.js +10 -0
  564. package/dist/utilities/getRequestEmbed.js.map +1 -0
  565. package/dist/utilities/getRequestHighContrast.d.ts.map +1 -1
  566. package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
  567. package/dist/utilities/getRequestTheme.d.ts +1 -1
  568. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  569. package/dist/utilities/getRequestTheme.js +1 -1
  570. package/dist/utilities/getRequestTheme.js.map +1 -1
  571. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -1
  572. package/dist/utilities/getSupportedMonacoLocale.d.ts.map +1 -1
  573. package/dist/utilities/getVersions.d.ts.map +1 -1
  574. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  575. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  576. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  577. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  578. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  579. package/dist/utilities/handlePreview.d.ts.map +1 -1
  580. package/dist/utilities/handleServerFunctions.d.ts +32 -8
  581. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  582. package/dist/utilities/handleServerFunctions.js +17 -37
  583. package/dist/utilities/handleServerFunctions.js.map +1 -1
  584. package/dist/utilities/handleStaleDataCheck.d.ts.map +1 -1
  585. package/dist/utilities/handleTakeOver.d.ts +5 -5
  586. package/dist/utilities/handleTakeOver.d.ts.map +1 -1
  587. package/dist/utilities/handleTakeOver.js.map +1 -1
  588. package/dist/utilities/hasOptionLabelJSXElement.d.ts.map +1 -1
  589. package/dist/utilities/hasSavePermission.d.ts.map +1 -1
  590. package/dist/utilities/initReq.d.ts.map +1 -1
  591. package/dist/utilities/isClientUserObject.d.ts +2 -2
  592. package/dist/utilities/isClientUserObject.d.ts.map +1 -1
  593. package/dist/utilities/isClientUserObject.js.map +1 -1
  594. package/dist/utilities/isCustomAdminView.d.ts.map +1 -1
  595. package/dist/utilities/isEditing.d.ts.map +1 -1
  596. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  597. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  598. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  599. package/dist/utilities/recentlyViewed.d.ts.map +1 -1
  600. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  601. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  602. package/dist/utilities/renderTable.d.ts +2 -2
  603. package/dist/utilities/renderTable.d.ts.map +1 -1
  604. package/dist/utilities/renderTable.js +18 -2
  605. package/dist/utilities/renderTable.js.map +1 -1
  606. package/dist/utilities/resolveFilterOptions.d.ts +1 -1
  607. package/dist/utilities/resolveFilterOptions.d.ts.map +1 -1
  608. package/dist/utilities/sanitizeFilterOptionsQuery.d.ts.map +1 -1
  609. package/dist/utilities/scrollToID.d.ts.map +1 -1
  610. package/dist/utilities/selectiveCache.d.ts.map +1 -1
  611. package/dist/utilities/serverFunctionRegistry.d.ts +12 -7
  612. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  613. package/dist/utilities/serverFunctionRegistry.js +25 -7
  614. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  615. package/dist/utilities/setsAreEqual.d.ts.map +1 -1
  616. package/dist/utilities/slugify.d.ts.map +1 -1
  617. package/dist/utilities/slugify.js +49 -6
  618. package/dist/utilities/slugify.js.map +1 -1
  619. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  620. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  621. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts.map +1 -1
  622. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  623. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -2
  624. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  625. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  626. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +7 -7
  627. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  628. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  629. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +104 -66
  630. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  631. package/dist/views/Dashboard/Default/ModularDashboard/index.css +29 -144
  632. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +4 -4
  633. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  634. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +10 -10
  635. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  636. package/dist/views/Dashboard/Default/index.d.ts +2 -2
  637. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  638. package/dist/views/Dashboard/Default/index.js.map +1 -1
  639. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +1 -1
  640. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -1
  641. package/dist/views/Document/getCustomViewByRoute.d.ts +1 -1
  642. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
  643. package/dist/views/Document/getDocumentView.d.ts.map +1 -1
  644. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
  645. package/dist/views/Document/index.d.ts +1 -1
  646. package/dist/views/Document/index.d.ts.map +1 -1
  647. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -1
  648. package/dist/views/Edit/index.css +61 -53
  649. package/dist/views/Edit/index.d.ts.map +1 -1
  650. package/dist/views/Edit/index.js.map +1 -1
  651. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -2
  652. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  653. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  654. package/dist/views/HierarchyList/HierarchyTable/types.d.ts +2 -2
  655. package/dist/views/HierarchyList/HierarchyTable/types.d.ts.map +1 -1
  656. package/dist/views/HierarchyList/HierarchyTable/types.js.map +1 -1
  657. package/dist/views/HierarchyList/index.css +1 -1
  658. package/dist/views/List/ListHeader/index.d.ts +1 -10
  659. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  660. package/dist/views/List/ListHeader/index.js +1 -3
  661. package/dist/views/List/ListHeader/index.js.map +1 -1
  662. package/dist/views/List/createSerializableValue.d.ts.map +1 -1
  663. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -1
  664. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -1
  665. package/dist/views/List/generateListViewMetadata.d.ts.map +1 -1
  666. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  667. package/dist/views/List/handleHierarchy.d.ts +1 -1
  668. package/dist/views/List/handleHierarchy.d.ts.map +1 -1
  669. package/dist/views/List/index.client.d.ts.map +1 -1
  670. package/dist/views/List/index.client.js +0 -14
  671. package/dist/views/List/index.client.js.map +1 -1
  672. package/dist/views/List/index.css +6 -1
  673. package/dist/views/List/index.d.ts.map +1 -1
  674. package/dist/views/List/index.js +4 -0
  675. package/dist/views/List/index.js.map +1 -1
  676. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  677. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
  678. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -1
  679. package/dist/views/Logout/index.d.ts.map +1 -1
  680. package/dist/views/Logout/index.js +11 -0
  681. package/dist/views/Logout/index.js.map +1 -1
  682. package/dist/views/NotFound/page.d.ts.map +1 -1
  683. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -1
  684. package/dist/views/Root/generatePageMetadata.d.ts.map +1 -1
  685. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts +1 -1
  686. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -1
  687. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -1
  688. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +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/getCustomViewByRoute.d.ts.map +1 -1
  694. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  695. package/dist/views/Root/index.d.ts +12 -1
  696. package/dist/views/Root/index.d.ts.map +1 -1
  697. package/dist/views/Root/index.js +11 -3
  698. package/dist/views/Root/index.js.map +1 -1
  699. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  700. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  701. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  702. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  703. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
  704. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  705. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
  706. package/dist/views/Versions/buildColumns.d.ts +1 -1
  707. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  708. package/dist/views/Versions/fetchVersions.d.ts +4 -4
  709. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  710. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
  711. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts +2 -2
  712. package/dist/widgets/CollectionCards/getCollectionCardsData.d.ts.map +1 -1
  713. package/dist/widgets/CollectionCards/getCollectionCardsData.js.map +1 -1
  714. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  715. package/dist/widgets/WidgetCard/index.css +1 -1
  716. package/package.json +6 -10
  717. package/dist/elements/RelationshipTable/Pagination.css +0 -39
  718. package/dist/scss/app.scss +0 -183
  719. package/dist/scss/colors.scss +0 -191
  720. package/dist/scss/custom.css +0 -1
  721. package/dist/scss/queries.scss +0 -27
  722. package/dist/scss/styles.scss +0 -9
  723. package/dist/scss/svg.scss +0 -10
  724. package/dist/scss/toastify.scss +0 -61
  725. package/dist/scss/vars.scss +0 -192
  726. package/dist/scss/z-index.scss +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","DndContext","pointerWithin","ModalContainer","ModalProvider","ScrollInfoProvider","React","CloseModalOnRouteChange","DrawerStackProvider","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","ClickOutsideProvider","WindowInfoProvider","AuthProvider","ClientFunctionProvider","ConfigProvider","DocumentEventsProvider","HierarchyProvider","LocaleProvider","PreferencesProvider","RouteCache","RouteTransitionProvider","ServerFunctionsProvider","ThemeProvider","ToastContainer","TranslationProvider","UploadHandlersProvider","RootProvider","t0","$","children","config","dateFNSKey","fallbackLang","highContrastMode","isNavOpen","languageCode","languageOptions","locale","permissions","RouterAdapter","serverFunction","theme","translations","user","dndContextID","useId","t1","_jsxs","_jsx","cachingEnabled","process","env","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","initialIsOpen","collisionDetection","id"],"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, I18nOptions, Language } from '@payloadcms/translations'\nimport type {\n ClientConfig,\n LanguageOptions,\n Locale,\n RouterAdapterComponent,\n SanitizedPermissions,\n ServerFunctionClient,\n User,\n} from 'payload'\n\nimport { DndContext, pointerWithin } from '@dnd-kit/core'\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport React from 'react'\n\nimport type { Theme } from '../Theme/index.js'\n\nimport { CloseModalOnRouteChange } from '../../elements/CloseModalOnRouteChange/index.js'\nimport { DrawerStackProvider } from '../../elements/Drawer/index.js'\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { ClickOutsideProvider } from '../../providers/ClickOutside/index.js'\nimport { WindowInfoProvider } from '../../providers/WindowInfo/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { HierarchyProvider } from '../Hierarchy/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { RouteTransitionProvider } from '../RouteTransition/index.js'\nimport { ServerFunctionsProvider } from '../ServerFunctions/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\nimport { UploadHandlersProvider } from '../UploadHandlers/index.js'\n\ntype Props = {\n readonly children: React.ReactNode\n readonly config: ClientConfig\n readonly dateFNSKey: Language['dateFNSKey']\n readonly fallbackLang: I18nOptions['fallbackLanguage']\n readonly highContrastMode: boolean\n readonly isNavOpen?: boolean\n readonly languageCode: string\n readonly languageOptions: LanguageOptions\n readonly locale?: Locale['code']\n readonly permissions: SanitizedPermissions\n readonly RouterAdapter: RouterAdapterComponent\n readonly serverFunction: ServerFunctionClient\n readonly theme: Theme\n readonly translations: I18nClient['translations']\n readonly user: null | User\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n config,\n dateFNSKey,\n fallbackLang,\n highContrastMode,\n isNavOpen,\n languageCode,\n languageOptions,\n locale,\n permissions,\n RouterAdapter,\n serverFunction,\n theme,\n translations,\n user,\n}) => {\n const dndContextID = React.useId()\n\n return (\n <ClickOutsideProvider>\n <RouterAdapter>\n <ServerFunctionsProvider serverFunction={serverFunction}>\n <RouteTransitionProvider>\n <RouteCache\n cachingEnabled={process.env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH === 'true'}\n >\n <ConfigProvider config={config}>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <DrawerStackProvider>\n <CloseModalOnRouteChange />\n <AuthProvider permissions={permissions} user={user}>\n <PreferencesProvider>\n <HierarchyProvider>\n <ThemeProvider highContrastMode={highContrastMode} theme={theme}>\n <LocaleProvider locale={locale}>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <NavProvider initialIsOpen={isNavOpen}>\n <UploadHandlersProvider>\n <DndContext\n collisionDetection={pointerWithin}\n // Provide stable ID to fix hydration issues: https://github.com/clauderic/dnd-kit/issues/926\n id={dndContextID}\n >\n {children}\n </DndContext>\n </UploadHandlersProvider>\n </NavProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </ThemeProvider>\n </HierarchyProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </DrawerStackProvider>\n </ModalProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </ConfigProvider>\n </RouteCache>\n </RouteTransitionProvider>\n </ServerFunctionsProvider>\n </RouterAdapter>\n <ToastContainer config={config} />\n </ClickOutsideProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","DndContext","pointerWithin","ModalContainer","ModalProvider","ScrollInfoProvider","React","CloseModalOnRouteChange","DrawerStackProvider","LoadingOverlayProvider","NavProvider","StayLoggedInModal","StepNavProvider","ClickOutsideProvider","WindowInfoProvider","AuthProvider","ClientFunctionProvider","ConfigProvider","DocumentEventsProvider","EmbedProvider","HierarchyProvider","LocaleProvider","PreferencesProvider","RouteCache","RouteTransitionProvider","ServerFunctionsProvider","ThemeProvider","ToastContainer","TranslationProvider","UploadHandlersProvider","RootProvider","t0","$","children","config","dateFNSKey","embed","fallbackLang","highContrastMode","isNavOpen","languageCode","languageOptions","locale","permissions","RouterAdapter","serverFunction","theme","translations","user","dndContextID","useId","t1","_jsxs","_jsx","cachingEnabled","process","env","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","language","breakpoints","l","m","s","xs","classPrefix","transTime","zIndex","initialIsOpen","collisionDetection","id"],"sources":["../../../src/providers/Root/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient, I18nOptions, Language } from '@payloadcms/translations'\nimport type {\n ClientConfig,\n LanguageOptions,\n Locale,\n RouterAdapterComponent,\n SanitizedPermissions,\n ServerFunctionClient,\n User,\n} from 'payload'\n\nimport { DndContext, pointerWithin } from '@dnd-kit/core'\nimport { ModalContainer, ModalProvider } from '@faceless-ui/modal'\nimport { ScrollInfoProvider } from '@faceless-ui/scroll-info'\nimport React from 'react'\n\nimport type { Theme } from '../Theme/index.js'\n\nimport { CloseModalOnRouteChange } from '../../elements/CloseModalOnRouteChange/index.js'\nimport { DrawerStackProvider } from '../../elements/Drawer/index.js'\nimport { LoadingOverlayProvider } from '../../elements/LoadingOverlay/index.js'\nimport { NavProvider } from '../../elements/Nav/context.js'\nimport { StayLoggedInModal } from '../../elements/StayLoggedIn/index.js'\nimport { StepNavProvider } from '../../elements/StepNav/index.js'\nimport { ClickOutsideProvider } from '../../providers/ClickOutside/index.js'\nimport { WindowInfoProvider } from '../../providers/WindowInfo/index.js'\nimport { AuthProvider } from '../Auth/index.js'\nimport { ClientFunctionProvider } from '../ClientFunction/index.js'\nimport { ConfigProvider } from '../Config/index.js'\nimport { DocumentEventsProvider } from '../DocumentEvents/index.js'\nimport { EmbedProvider } from '../Embed/index.js'\nimport { HierarchyProvider } from '../Hierarchy/index.js'\nimport { LocaleProvider } from '../Locale/index.js'\nimport { PreferencesProvider } from '../Preferences/index.js'\nimport { RouteCache } from '../RouteCache/index.js'\nimport { RouteTransitionProvider } from '../RouteTransition/index.js'\nimport { ServerFunctionsProvider } from '../ServerFunctions/index.js'\nimport { ThemeProvider } from '../Theme/index.js'\nimport { ToastContainer } from '../ToastContainer/index.js'\nimport { TranslationProvider } from '../Translation/index.js'\nimport { UploadHandlersProvider } from '../UploadHandlers/index.js'\n\ntype Props = {\n readonly children: React.ReactNode\n readonly config: ClientConfig\n readonly dateFNSKey: Language['dateFNSKey']\n readonly embed?: boolean\n readonly fallbackLang: I18nOptions['fallbackLanguage']\n readonly highContrastMode: boolean\n readonly isNavOpen?: boolean\n readonly languageCode: string\n readonly languageOptions: LanguageOptions\n readonly locale?: Locale['code']\n readonly permissions: SanitizedPermissions\n readonly RouterAdapter: RouterAdapterComponent\n readonly serverFunction: ServerFunctionClient\n readonly theme: Theme\n readonly translations: I18nClient['translations']\n readonly user: null | User\n}\n\nexport const RootProvider: React.FC<Props> = ({\n children,\n config,\n dateFNSKey,\n embed,\n fallbackLang,\n highContrastMode,\n isNavOpen,\n languageCode,\n languageOptions,\n locale,\n permissions,\n RouterAdapter,\n serverFunction,\n theme,\n translations,\n user,\n}) => {\n const dndContextID = React.useId()\n\n return (\n <ClickOutsideProvider>\n <RouteTransitionProvider>\n <RouterAdapter>\n <ServerFunctionsProvider serverFunction={serverFunction}>\n <RouteCache\n cachingEnabled={process.env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH === 'true'}\n >\n <ConfigProvider config={config}>\n <ClientFunctionProvider>\n <TranslationProvider\n dateFNSKey={dateFNSKey}\n fallbackLang={fallbackLang}\n language={languageCode}\n languageOptions={languageOptions}\n translations={translations}\n >\n <WindowInfoProvider\n breakpoints={{\n l: '(max-width: 1440px)',\n m: '(max-width: 1024px)',\n s: '(max-width: 768px)',\n xs: '(max-width: 400px)',\n }}\n >\n <ScrollInfoProvider>\n <ModalProvider classPrefix=\"payload\" transTime={0} zIndex=\"var(--z-modal)\">\n <DrawerStackProvider>\n <CloseModalOnRouteChange />\n <AuthProvider permissions={permissions} user={user}>\n <PreferencesProvider>\n <HierarchyProvider>\n <ThemeProvider highContrastMode={highContrastMode} theme={theme}>\n <EmbedProvider embed={embed}>\n <LocaleProvider locale={locale}>\n <StepNavProvider>\n <LoadingOverlayProvider>\n <DocumentEventsProvider>\n <NavProvider initialIsOpen={isNavOpen}>\n <UploadHandlersProvider>\n <DndContext\n collisionDetection={pointerWithin}\n // Provide stable ID to fix hydration issues: https://github.com/clauderic/dnd-kit/issues/926\n id={dndContextID}\n >\n {children}\n </DndContext>\n </UploadHandlersProvider>\n </NavProvider>\n </DocumentEventsProvider>\n </LoadingOverlayProvider>\n </StepNavProvider>\n </LocaleProvider>\n </EmbedProvider>\n </ThemeProvider>\n </HierarchyProvider>\n </PreferencesProvider>\n <ModalContainer />\n <StayLoggedInModal />\n </AuthProvider>\n </DrawerStackProvider>\n </ModalProvider>\n </ScrollInfoProvider>\n </WindowInfoProvider>\n </TranslationProvider>\n </ClientFunctionProvider>\n </ConfigProvider>\n </RouteCache>\n </ServerFunctionsProvider>\n </RouterAdapter>\n </RouteTransitionProvider>\n <ToastContainer config={config} />\n </ClickOutsideProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -46,7 +46,7 @@ export const ProgressBar = () => {
46
46
  }
47
47
  } else {
48
48
  shouldDelayProgress.current = true;
49
- setProgressToShow(1);
49
+ setProgressToShow(_temp);
50
50
  clearTimerID = setTimeout(() => {
51
51
  setProgressToShow(null);
52
52
  }, transitionDuration * 2);
@@ -101,4 +101,7 @@ export const ProgressBar = () => {
101
101
  }
102
102
  return null;
103
103
  };
104
+ function _temp(currentProgress) {
105
+ return currentProgress === null ? null : 1;
106
+ }
104
107
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useRef","useRouteTransition","transitionDuration","baseClass","initialDelay","ProgressBar","$","isTransitioning","transitionProgress","progressToShow","setProgressToShow","useState","shouldDelayProgress","t0","t1","clearTimerID","delayTimerID","current","clearTimeout","t2","t3","filter","Boolean","t4","join","t5","_jsx","className","style","children","width"],"sources":["../../../../src/providers/RouteTransition/ProgressBar/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useRef } from 'react'\n\nimport { useRouteTransition } from '../index.js'\nimport './index.css'\n\nconst transitionDuration = 200\nconst baseClass = 'progress-bar'\nconst initialDelay = 150\n\n/**\n * Renders a progress bar that shows the progress of a route transition.\n * Place this at the root of your application, inside of the `RouteTransitionProvider`.\n * When a transition is triggered, the progress bar will show the progress of that transition and exit when the transition is complete.\n * @returns A progress bar that shows the progress of a route transition\n * @example\n * import { RouteTransitionProvider, ProgressBar, Link } from '@payloadcms/ui'\n * const App = () => (\n * <RouteTransitionProvider>\n * <ProgressBar />\n * <Link href=\"/somewhere\">Go Somewhere</Link>\n * </RouteTransitionProvider>\n */\nexport const ProgressBar = () => {\n const { isTransitioning, transitionProgress } = useRouteTransition()\n const [progressToShow, setProgressToShow] = React.useState<null | number>(null)\n const shouldDelayProgress = useRef(true)\n\n useEffect(() => {\n let clearTimerID: NodeJS.Timeout\n let delayTimerID: NodeJS.Timeout\n\n if (isTransitioning) {\n if (shouldDelayProgress.current) {\n delayTimerID = setTimeout(() => {\n setProgressToShow(transitionProgress)\n shouldDelayProgress.current = false\n }, initialDelay)\n } else {\n setProgressToShow(transitionProgress)\n }\n } else {\n shouldDelayProgress.current = true\n\n // Fast forward to 100% when the transition is complete\n // Then fade out the progress bar directly after\n setProgressToShow(1)\n\n // Wait for CSS transition to finish before hiding the progress bar\n // This includes both the fast-forward to 100% and the subsequent fade-out\n clearTimerID = setTimeout(() => {\n setProgressToShow(null)\n }, transitionDuration * 2)\n }\n\n return () => {\n clearTimeout(clearTimerID)\n clearTimeout(delayTimerID)\n }\n }, [isTransitioning, transitionProgress])\n\n if (typeof progressToShow === 'number') {\n return (\n <div\n className={[baseClass, progressToShow === 1 && `${baseClass}--fade-out`]\n .filter(Boolean)\n .join(' ')}\n style={{\n // @ts-expect-error - TS doesn't like custom CSS properties\n '--transition-duration': `${transitionDuration}ms`,\n }}\n >\n <div\n className={`${baseClass}__progress`}\n style={{\n width: `${(progressToShow || 0) * 100}%`,\n }}\n />\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,SAAS,EAAEC,MAAM,QAAQ;AAEzC,SAASC,kBAAkB,QAAQ;AACnC,OAAO;AAEP,MAAMC,kBAAA,GAAqB;AAC3B,MAAMC,SAAA,GAAY;AAClB,MAAMC,YAAA,GAAe;AAErB;;;;;;;;;;;;;AAaA,OAAO,MAAMC,WAAA,GAAcA,CAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EACzB;IAAAU,eAAA;IAAAC;EAAA,IAAgDP,kBAAA;EAChD,OAAAQ,cAAA,EAAAC,iBAAA,IAA4CZ,KAAA,CAAAa,QAAA,KAA8B;EAC1E,MAAAC,mBAAA,GAA4BZ,MAAA,KAAO;EAAA,IAAAa,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAR,CAAA,QAAAC,eAAA,IAAAD,CAAA,QAAAE,kBAAA;IAEzBK,EAAA,GAAAA,CAAA;MACJE,GAAA,CAAAA,YAAA;MACAC,GAAA,CAAAA,YAAA;MAAA,IAEAT,eAAA;QAAA,IACEK,mBAAA,CAAAK,OAAA;UACFD,YAAA,CAAAA,CAAA,CAAeA,aAAA,CAAAA,EAAA,CAAAA;YACbN,iBAAA,CAAkBF,kBAAA;YAClBI,mBAAA,CAAAK,OAAA;UAAA,GAAAb,YACC;QAHH;UAKAM,iBAAA,CAAkBF,kBAAA;QAAA;MAAA;QAGpBI,mBAAA,CAAAK,OAAA;QAIAP,iBAAA,EAAkB;QAIlBK,YAAA,CAAAA,CAAA,CAAeA,aAAA,CAAAA,EAAA,CAAAA;UACbL,iBAAA,KAAkB;QAAA,GACjBR,kBAAA,IAAqB;MAFxB;MAAA;QAMAgB,YAAA,CAAaH,YAAA;QACbG,YAAA,CAAaF,YAAA;MAAA;IAAA;IAEdF,EAAA,IAACP,eAAA,EAAiBC,kBAAA;IAAmBF,CAAA,MAAAC,eAAA;IAAAD,CAAA,MAAAE,kBAAA;IAAAF,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAQ,EAAA;EAAA;IAAAD,EAAA,GAAAP,CAAA;IAAAQ,EAAA,GAAAR,CAAA;EAAA;EA/BxCP,SAAA,CAAUc,EA+BV,EAAGC,EAAqC;EAAA,IAEpC,OAAOL,cAAA,KAAmB;IAGD,MAAAU,EAAA,GAAAV,cAAA,MAAmB,IAAK,GAAAN,SAAA,YAAwB;IAAA,IAAAiB,EAAA;IAAA,IAAAd,CAAA,QAAAa,EAAA;MAA5DC,EAAA,IAAAjB,SAAA,EAAYgB,EAAgD,EAAAE,MAAA,CAAAC,OAC7D;MAAAhB,CAAA,MAAAa,EAAA;MAAAb,CAAA,MAAAc,EAAA;IAAA;MAAAA,EAAA,GAAAd,CAAA;IAAA;IADC,MAAAiB,EAAA,GAAAH,EACD,CAAAI,IAAA,CACF;IAAA,IAAAC,EAAA;IAAA,IAAAnB,CAAA,QAAAG,cAAA,IAAAH,CAAA,QAAAiB,EAAA;MAHVE,EAAA,GAAAC,IAAA,CAAC;QAAAC,SAAA,EACYJ,EAEH;QAAAK,KAAA;UAAA,yBAGmB,GAAA1B,kBAAA;QAAyB;QAAA2B,QAAA,EAGpDH,IAAA,CAAC;UAAAC,SAAA,EACY,GAAAxB,SAAA,YAAwB;UAAAyB,KAAA;YAAAE,KAAA,EAE1B,GAAG,CAACrB,cAAA,KAAkB,OAAK;UAAM;QAAA,C;;;;;;;;WAZ9CgB,E;;;CAoBN","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useRef","useRouteTransition","transitionDuration","baseClass","initialDelay","ProgressBar","$","isTransitioning","transitionProgress","progressToShow","setProgressToShow","useState","shouldDelayProgress","t0","t1","clearTimerID","delayTimerID","current","_temp","clearTimeout","t2","t3","filter","Boolean","t4","join","t5","_jsx","className","style","children","width","currentProgress"],"sources":["../../../../src/providers/RouteTransition/ProgressBar/index.tsx"],"sourcesContent":["'use client'\nimport React, { useEffect, useRef } from 'react'\n\nimport { useRouteTransition } from '../index.js'\nimport './index.css'\n\nconst transitionDuration = 200\nconst baseClass = 'progress-bar'\nconst initialDelay = 150\n\n/**\n * Renders a progress bar that shows the progress of a route transition.\n * Place this at the root of your application, inside of the `RouteTransitionProvider`.\n * When a transition is triggered, the progress bar will show the progress of that transition and exit when the transition is complete.\n * @returns A progress bar that shows the progress of a route transition\n * @example\n * import { RouteTransitionProvider, ProgressBar, Link } from '@payloadcms/ui'\n * const App = () => (\n * <RouteTransitionProvider>\n * <ProgressBar />\n * <Link href=\"/somewhere\">Go Somewhere</Link>\n * </RouteTransitionProvider>\n */\nexport const ProgressBar = () => {\n const { isTransitioning, transitionProgress } = useRouteTransition()\n const [progressToShow, setProgressToShow] = React.useState<null | number>(null)\n const shouldDelayProgress = useRef(true)\n\n useEffect(() => {\n let clearTimerID: NodeJS.Timeout\n let delayTimerID: NodeJS.Timeout\n\n if (isTransitioning) {\n if (shouldDelayProgress.current) {\n delayTimerID = setTimeout(() => {\n setProgressToShow(transitionProgress)\n shouldDelayProgress.current = false\n }, initialDelay)\n } else {\n setProgressToShow(transitionProgress)\n }\n } else {\n shouldDelayProgress.current = true\n\n // Fast forward to 100% when the transition is complete\n // Then fade out the progress bar directly after\n setProgressToShow((currentProgress) => (currentProgress === null ? null : 1))\n\n // Wait for CSS transition to finish before hiding the progress bar\n // This includes both the fast-forward to 100% and the subsequent fade-out\n clearTimerID = setTimeout(() => {\n setProgressToShow(null)\n }, transitionDuration * 2)\n }\n\n return () => {\n clearTimeout(clearTimerID)\n clearTimeout(delayTimerID)\n }\n }, [isTransitioning, transitionProgress])\n\n if (typeof progressToShow === 'number') {\n return (\n <div\n className={[baseClass, progressToShow === 1 && `${baseClass}--fade-out`]\n .filter(Boolean)\n .join(' ')}\n style={{\n // @ts-expect-error - TS doesn't like custom CSS properties\n '--transition-duration': `${transitionDuration}ms`,\n }}\n >\n <div\n className={`${baseClass}__progress`}\n style={{\n width: `${(progressToShow || 0) * 100}%`,\n }}\n />\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,SAAS,EAAEC,MAAM,QAAQ;AAEzC,SAASC,kBAAkB,QAAQ;AACnC,OAAO;AAEP,MAAMC,kBAAA,GAAqB;AAC3B,MAAMC,SAAA,GAAY;AAClB,MAAMC,YAAA,GAAe;AAErB;;;;;;;;;;;;;AAaA,OAAO,MAAMC,WAAA,GAAcA,CAAA;EAAA,MAAAC,CAAA,GAAAT,EAAA;EACzB;IAAAU,eAAA;IAAAC;EAAA,IAAgDP,kBAAA;EAChD,OAAAQ,cAAA,EAAAC,iBAAA,IAA4CZ,KAAA,CAAAa,QAAA,KAA8B;EAC1E,MAAAC,mBAAA,GAA4BZ,MAAA,KAAO;EAAA,IAAAa,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAR,CAAA,QAAAC,eAAA,IAAAD,CAAA,QAAAE,kBAAA;IAEzBK,EAAA,GAAAA,CAAA;MACJE,GAAA,CAAAA,YAAA;MACAC,GAAA,CAAAA,YAAA;MAAA,IAEAT,eAAA;QAAA,IACEK,mBAAA,CAAAK,OAAA;UACFD,YAAA,CAAAA,CAAA,CAAeA,aAAA,CAAAA,EAAA,CAAAA;YACbN,iBAAA,CAAkBF,kBAAA;YAClBI,mBAAA,CAAAK,OAAA;UAAA,GAAAb,YACC;QAHH;UAKAM,iBAAA,CAAkBF,kBAAA;QAAA;MAAA;QAGpBI,mBAAA,CAAAK,OAAA;QAIAP,iBAAA,CAAAQ,KAA0E;QAI1EH,YAAA,CAAAA,CAAA,CAAeA,aAAA,CAAAA,EAAA,CAAAA;UACbL,iBAAA,KAAkB;QAAA,GACjBR,kBAAA,IAAqB;MAFxB;MAAA;QAMAiB,YAAA,CAAaJ,YAAA;QACbI,YAAA,CAAaH,YAAA;MAAA;IAAA;IAEdF,EAAA,IAACP,eAAA,EAAiBC,kBAAA;IAAmBF,CAAA,MAAAC,eAAA;IAAAD,CAAA,MAAAE,kBAAA;IAAAF,CAAA,MAAAO,EAAA;IAAAP,CAAA,MAAAQ,EAAA;EAAA;IAAAD,EAAA,GAAAP,CAAA;IAAAQ,EAAA,GAAAR,CAAA;EAAA;EA/BxCP,SAAA,CAAUc,EA+BV,EAAGC,EAAqC;EAAA,IAEpC,OAAOL,cAAA,KAAmB;IAGD,MAAAW,EAAA,GAAAX,cAAA,MAAmB,IAAK,GAAAN,SAAA,YAAwB;IAAA,IAAAkB,EAAA;IAAA,IAAAf,CAAA,QAAAc,EAAA;MAA5DC,EAAA,IAAAlB,SAAA,EAAYiB,EAAgD,EAAAE,MAAA,CAAAC,OAC7D;MAAAjB,CAAA,MAAAc,EAAA;MAAAd,CAAA,MAAAe,EAAA;IAAA;MAAAA,EAAA,GAAAf,CAAA;IAAA;IADC,MAAAkB,EAAA,GAAAH,EACD,CAAAI,IAAA,CACF;IAAA,IAAAC,EAAA;IAAA,IAAApB,CAAA,QAAAG,cAAA,IAAAH,CAAA,QAAAkB,EAAA;MAHVE,EAAA,GAAAC,IAAA,CAAC;QAAAC,SAAA,EACYJ,EAEH;QAAAK,KAAA;UAAA,yBAGmB,GAAA3B,kBAAA;QAAyB;QAAA4B,QAAA,EAGpDH,IAAA,CAAC;UAAAC,SAAA,EACY,GAAAzB,SAAA,YAAwB;UAAA0B,KAAA;YAAAE,KAAA,EAE1B,GAAG,CAACtB,cAAA,KAAkB,OAAK;UAAM;QAAA,C;;;;;;;;WAZ9CiB,E;;;CAoBN;AA5D2B,SAAAR,MAAAc,eAAA;EAAA,OAuBmBA,eAAA,SAAoB,WAAc;AAAA","ignoreList":[]}
@@ -0,0 +1,44 @@
1
+ // @vitest-environment happy-dom
2
+ import { act, createElement, useEffect } from 'react';
3
+ import { createRoot } from 'react-dom/client';
4
+ import { afterEach, beforeEach, expect, test, vi } from 'vitest';
5
+ import { RouteTransitionProvider, useRouteTransition } from '../index.js';
6
+ import { ProgressBar } from './index.js';
7
+ let container;
8
+ let root;
9
+ beforeEach(() => {
10
+ globalThis.IS_REACT_ACT_ENVIRONMENT = true;
11
+ container = document.createElement('div');
12
+ document.body.appendChild(container);
13
+ root = createRoot(container);
14
+ });
15
+ afterEach(() => {
16
+ act(() => root.unmount());
17
+ container.remove();
18
+ vi.useRealTimers();
19
+ });
20
+ test('does not show progress for transitions that finish before the initial delay', async () => {
21
+ vi.useFakeTimers();
22
+ const FastTransition = () => {
23
+ const {
24
+ holdRouteTransition
25
+ } = useRouteTransition();
26
+ useEffect(() => {
27
+ const releaseRouteTransition = holdRouteTransition();
28
+ const timeout = setTimeout(releaseRouteTransition, 50);
29
+ return () => {
30
+ clearTimeout(timeout);
31
+ releaseRouteTransition();
32
+ };
33
+ }, [holdRouteTransition]);
34
+ return null;
35
+ };
36
+ await act(async () => {
37
+ root.render(createElement(RouteTransitionProvider, null, createElement(ProgressBar), createElement(FastTransition)));
38
+ });
39
+ await act(async () => {
40
+ await vi.advanceTimersByTimeAsync(50);
41
+ });
42
+ expect(container.querySelector('.progress-bar')).toBeNull();
43
+ });
44
+ //# sourceMappingURL=index.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.spec.js","names":["act","createElement","useEffect","createRoot","afterEach","beforeEach","expect","test","vi","RouteTransitionProvider","useRouteTransition","ProgressBar","container","root","globalThis","IS_REACT_ACT_ENVIRONMENT","document","body","appendChild","unmount","remove","useRealTimers","useFakeTimers","FastTransition","holdRouteTransition","releaseRouteTransition","timeout","setTimeout","clearTimeout","render","advanceTimersByTimeAsync","querySelector","toBeNull"],"sources":["../../../../src/providers/RouteTransition/ProgressBar/index.spec.ts"],"sourcesContent":["// @vitest-environment happy-dom\n\nimport { act, createElement, useEffect } from 'react'\nimport { createRoot, type Root } from 'react-dom/client'\nimport { afterEach, beforeEach, expect, test, vi } from 'vitest'\n\nimport { RouteTransitionProvider, useRouteTransition } from '../index.js'\nimport { ProgressBar } from './index.js'\n\nlet container: HTMLDivElement\nlet root: Root\n\nbeforeEach(() => {\n globalThis.IS_REACT_ACT_ENVIRONMENT = true\n container = document.createElement('div')\n document.body.appendChild(container)\n root = createRoot(container)\n})\n\nafterEach(() => {\n act(() => root.unmount())\n container.remove()\n vi.useRealTimers()\n})\n\ntest('does not show progress for transitions that finish before the initial delay', async () => {\n vi.useFakeTimers()\n\n const FastTransition = () => {\n const { holdRouteTransition } = useRouteTransition()\n\n useEffect(() => {\n const releaseRouteTransition = holdRouteTransition()\n const timeout = setTimeout(releaseRouteTransition, 50)\n\n return () => {\n clearTimeout(timeout)\n releaseRouteTransition()\n }\n }, [holdRouteTransition])\n\n return null\n }\n\n await act(async () => {\n root.render(\n createElement(\n RouteTransitionProvider,\n null,\n createElement(ProgressBar),\n createElement(FastTransition),\n ),\n )\n })\n\n await act(async () => {\n await vi.advanceTimersByTimeAsync(50)\n })\n\n expect(container.querySelector('.progress-bar')).toBeNull()\n})\n"],"mappings":"AAAA;AAEA,SAASA,GAAG,EAAEC,aAAa,EAAEC,SAAS,QAAQ;AAC9C,SAASC,UAAU,QAAmB;AACtC,SAASC,SAAS,EAAEC,UAAU,EAAEC,MAAM,EAAEC,IAAI,EAAEC,EAAE,QAAQ;AAExD,SAASC,uBAAuB,EAAEC,kBAAkB,QAAQ;AAC5D,SAASC,WAAW,QAAQ;AAE5B,IAAIC,SAAA;AACJ,IAAIC,IAAA;AAEJR,UAAA,CAAW;EACTS,UAAA,CAAWC,wBAAwB,GAAG;EACtCH,SAAA,GAAYI,QAAA,CAASf,aAAa,CAAC;EACnCe,QAAA,CAASC,IAAI,CAACC,WAAW,CAACN,SAAA;EAC1BC,IAAA,GAAOV,UAAA,CAAWS,SAAA;AACpB;AAEAR,SAAA,CAAU;EACRJ,GAAA,CAAI,MAAMa,IAAA,CAAKM,OAAO;EACtBP,SAAA,CAAUQ,MAAM;EAChBZ,EAAA,CAAGa,aAAa;AAClB;AAEAd,IAAA,CAAK,+EAA+E;EAClFC,EAAA,CAAGc,aAAa;EAEhB,MAAMC,cAAA,GAAiBA,CAAA;IACrB,MAAM;MAAEC;IAAmB,CAAE,GAAGd,kBAAA;IAEhCR,SAAA,CAAU;MACR,MAAMuB,sBAAA,GAAyBD,mBAAA;MAC/B,MAAME,OAAA,GAAUC,UAAA,CAAWF,sBAAA,EAAwB;MAEnD,OAAO;QACLG,YAAA,CAAaF,OAAA;QACbD,sBAAA;MACF;IACF,GAAG,CAACD,mBAAA,CAAoB;IAExB,OAAO;EACT;EAEA,MAAMxB,GAAA,CAAI;IACRa,IAAA,CAAKgB,MAAM,CACT5B,aAAA,CACEQ,uBAAA,EACA,MACAR,aAAA,CAAcU,WAAA,GACdV,aAAA,CAAcsB,cAAA;EAGpB;EAEA,MAAMvB,GAAA,CAAI;IACR,MAAMQ,EAAA,CAAGsB,wBAAwB,CAAC;EACpC;EAEAxB,MAAA,CAAOM,SAAA,CAAUmB,aAAa,CAAC,kBAAkBC,QAAQ;AAC3D","ignoreList":[]}
@@ -21,6 +21,8 @@ type RouteTransitionProps = {
21
21
  };
22
22
  type StartRouteTransition = (callback?: () => void) => void;
23
23
  type RouteTransitionContextValue = {
24
+ /** Keeps the transition active until the returned release function is called. */
25
+ holdRouteTransition: () => () => void;
24
26
  isTransitioning: boolean;
25
27
  startRouteTransition: StartRouteTransition;
26
28
  transitionProgress: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/RouteTransition/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAyE,MAAM,OAAO,CAAA;AAE7F;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA6DlE,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAAA;AAED,KAAK,oBAAoB,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;AAE3D,KAAK,2BAA2B,GAAG;IACjC,eAAe,EAAE,OAAO,CAAA;IACxB,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAaD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,kBAAkB,mCAA0C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/RouteTransition/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAyE,MAAM,OAAO,CAAA;AAE7F;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAqFlE,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,CAAA;AAED,KAAK,oBAAoB,GAAG,CAAC,QAAQ,CAAC,EAAE,MAAM,IAAI,KAAK,IAAI,CAAA;AAE3D,KAAK,2BAA2B,GAAG;IACjC,iFAAiF;IACjF,mBAAmB,EAAE,MAAM,MAAM,IAAI,CAAA;IACrC,eAAe,EAAE,OAAO,CAAA;IACxB,oBAAoB,EAAE,oBAAoB,CAAA;IAC1C,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAcD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,kBAAkB,mCAA0C,CAAA"}
@@ -20,12 +20,14 @@ import React, { startTransition, useCallback, useEffect, useOptimistic, useRef }
20
20
  * )
21
21
  */
22
22
  export const RouteTransitionProvider = t0 => {
23
- const $ = _c(11);
23
+ const $ = _c(12);
24
24
  const {
25
25
  children
26
26
  } = t0;
27
- const [isTransitioning, setIsTransitioning] = useOptimistic(false);
27
+ const [isOptimisticallyTransitioning, setIsOptimisticallyTransitioning] = useOptimistic(false);
28
+ const [activeRouteTransitionHolds, setActiveRouteTransitionHolds] = React.useState(0);
28
29
  const [transitionProgress, setTransitionProgress] = React.useState(0);
30
+ const isTransitioning = isOptimisticallyTransitioning || activeRouteTransitionHolds > 0;
29
31
  const transitionProgressRef = useRef(transitionProgress);
30
32
  const timerID = useRef(null);
31
33
  let t1;
@@ -66,42 +68,62 @@ export const RouteTransitionProvider = t0 => {
66
68
  }
67
69
  useEffect(t2, t3);
68
70
  let t4;
69
- if ($[4] !== setIsTransitioning) {
71
+ if ($[4] !== setIsOptimisticallyTransitioning) {
70
72
  t4 = callback => {
71
73
  startTransition(() => {
72
- setIsTransitioning(true);
74
+ setIsOptimisticallyTransitioning(true);
73
75
  if (typeof callback === "function") {
74
76
  callback();
75
77
  }
76
78
  });
77
79
  };
78
- $[4] = setIsTransitioning;
80
+ $[4] = setIsOptimisticallyTransitioning;
79
81
  $[5] = t4;
80
82
  } else {
81
83
  t4 = $[5];
82
84
  }
83
85
  const startRouteTransition = t4;
84
86
  let t5;
85
- if ($[6] !== children || $[7] !== isTransitioning || $[8] !== startRouteTransition || $[9] !== transitionProgress) {
86
- t5 = _jsx(RouteTransitionContext, {
87
+ if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
88
+ t5 = () => {
89
+ let hasReleased = false;
90
+ setActiveRouteTransitionHolds(_temp);
91
+ return () => {
92
+ if (hasReleased) {
93
+ return;
94
+ }
95
+ hasReleased = true;
96
+ setActiveRouteTransitionHolds(_temp2);
97
+ };
98
+ };
99
+ $[6] = t5;
100
+ } else {
101
+ t5 = $[6];
102
+ }
103
+ const holdRouteTransition = t5;
104
+ let t6;
105
+ if ($[7] !== children || $[8] !== isTransitioning || $[9] !== startRouteTransition || $[10] !== transitionProgress) {
106
+ t6 = _jsx(RouteTransitionContext, {
87
107
  value: {
108
+ holdRouteTransition,
88
109
  isTransitioning,
89
110
  startRouteTransition,
90
111
  transitionProgress
91
112
  },
92
113
  children
93
114
  });
94
- $[6] = children;
95
- $[7] = isTransitioning;
96
- $[8] = startRouteTransition;
97
- $[9] = transitionProgress;
98
- $[10] = t5;
115
+ $[7] = children;
116
+ $[8] = isTransitioning;
117
+ $[9] = startRouteTransition;
118
+ $[10] = transitionProgress;
119
+ $[11] = t6;
99
120
  } else {
100
- t5 = $[10];
121
+ t6 = $[11];
101
122
  }
102
- return t5;
123
+ return t6;
103
124
  };
104
125
  const RouteTransitionContext = /*#__PURE__*/React.createContext({
126
+ holdRouteTransition: () => () => undefined,
105
127
  isTransitioning: false,
106
128
  // Default implementation: just call the callback directly (no transition animation)
107
129
  startRouteTransition: callback => {
@@ -132,4 +154,10 @@ const RouteTransitionContext = /*#__PURE__*/React.createContext({
132
154
  * }
133
155
  */
134
156
  export const useRouteTransition = () => React.use(RouteTransitionContext);
157
+ function _temp(count) {
158
+ return count + 1;
159
+ }
160
+ function _temp2(count_0) {
161
+ return Math.max(0, count_0 - 1);
162
+ }
135
163
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","startTransition","useCallback","useEffect","useOptimistic","useRef","RouteTransitionProvider","t0","$","children","isTransitioning","setIsTransitioning","transitionProgress","setTransitionProgress","useState","transitionProgressRef","timerID","t1","Symbol","for","current","setInterval","newProgress","Math","random","pow","log","initiateProgress","t2","t3","clearInterval","t4","callback","startRouteTransition","t5","_jsx","RouteTransitionContext","value","createContext","useRouteTransition","use"],"sources":["../../../src/providers/RouteTransition/index.tsx"],"sourcesContent":["'use client'\nimport React, { startTransition, useCallback, useEffect, useOptimistic, useRef } from 'react'\n\n/**\n * Route transitions are useful in showing immediate visual feedback to the user when navigating between pages. This is especially useful on slow networks when navigating to data heavy or process intensive pages.\n * To use route transitions, place the `RouteTransitionProvider` at the root of your application, outside of the `ProgressBar` component.\n * To trigger a route transition, use the `Link` component from `@payloadcms/ui`,\n * or wrap a callback function with the `startRouteTransition` method.\n * To gain access to the `RouteTransitionContext`, call the `useRouteTransition` hook in your component.\n * @returns A context provider with methods and state for transitioning between routes, including `isTransitioning`, `startRouteTransition`, and `transitionProgress`.\n * @example\n * import { RouteTransitionProvider, ProgressBar, Link } from '@payloadcms/ui'\n * const App = () => (\n * <RouteTransitionProvider>\n * <ProgressBar />\n * <Link href=\"/somewhere\">Go Somewhere</Link>\n * </RouteTransitionProvider>\n * )\n */\nexport const RouteTransitionProvider: React.FC<RouteTransitionProps> = ({ children }) => {\n const [isTransitioning, setIsTransitioning] = useOptimistic(false)\n const [transitionProgress, setTransitionProgress] = React.useState<number>(0)\n\n const transitionProgressRef = useRef(transitionProgress)\n\n const timerID = useRef(null)\n\n const initiateProgress = useCallback(() => {\n timerID.current = setInterval(() => {\n // randomly update progress using an exponential curve\n // cap the progress to ensure it never fully reaches completion\n // accelerate quickly then decelerate slowly\n const maxProgress = 0.93\n const jumpFactor = 0.2 // lower to reduce jumps in progress\n const growthFactor = 0.75 // adjust to control acceleration\n const slowdownFactor = 0.75 // adjust to control deceleration\n\n const newProgress =\n transitionProgressRef.current +\n (maxProgress - transitionProgressRef.current) *\n Math.random() *\n jumpFactor *\n Math.pow(Math.log(1 + (1 - transitionProgressRef.current) * growthFactor), slowdownFactor)\n\n setTransitionProgress(newProgress)\n transitionProgressRef.current = newProgress\n }, 250) // every n ms, update progress\n }, [])\n\n useEffect(() => {\n setTransitionProgress(0)\n transitionProgressRef.current = 0\n\n if (isTransitioning) {\n initiateProgress()\n } else {\n if (timerID.current) {\n clearInterval(timerID.current)\n }\n }\n }, [isTransitioning, initiateProgress])\n\n const startRouteTransition: StartRouteTransition = useCallback(\n (callback?: () => void) => {\n startTransition(() => {\n setIsTransitioning(true)\n\n if (typeof callback === 'function') {\n callback()\n }\n })\n },\n [setIsTransitioning],\n )\n\n return (\n <RouteTransitionContext value={{ isTransitioning, startRouteTransition, transitionProgress }}>\n {children}\n </RouteTransitionContext>\n )\n}\n\ntype RouteTransitionProps = {\n children: React.ReactNode\n}\n\ntype StartRouteTransition = (callback?: () => void) => void\n\ntype RouteTransitionContextValue = {\n isTransitioning: boolean\n startRouteTransition: StartRouteTransition\n transitionProgress: number\n}\n\nconst RouteTransitionContext = React.createContext<RouteTransitionContextValue>({\n isTransitioning: false,\n // Default implementation: just call the callback directly (no transition animation)\n startRouteTransition: (callback) => {\n if (typeof callback === 'function') {\n callback()\n }\n },\n transitionProgress: 0,\n})\n\n/**\n * Use this hook to access the `RouteTransitionContext` provided by the `RouteTransitionProvider`.\n * To start a transition, fire the `startRouteTransition` method with a provided callback to run while the transition takes place.\n * @returns The `RouteTransitionContext` needed for transitioning between routes, including `isTransitioning`, `startRouteTransition`, and `transitionProgress`.\n * @example\n * 'use client'\n * import React, { useCallback } from 'react'\n * import { useTransition, useRouter } from '@payloadcms/ui'\n *\n * const MyComponent: React.FC = () => {\n * const router = useRouter()\n * const { startRouteTransition } = useRouteTransition()\n *\n * const redirectSomewhere = useCallback(() => {\n * startRouteTransition(() => router.push('/somewhere'))\n * }, [startRouteTransition, router])\n *\n * // ...\n * }\n */\nexport const useRouteTransition = () => React.use(RouteTransitionContext)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","startTransition","useCallback","useEffect","useOptimistic","useRef","RouteTransitionProvider","t0","$","children","isOptimisticallyTransitioning","setIsOptimisticallyTransitioning","activeRouteTransitionHolds","setActiveRouteTransitionHolds","useState","transitionProgress","setTransitionProgress","isTransitioning","transitionProgressRef","timerID","t1","Symbol","for","current","setInterval","newProgress","Math","random","pow","log","initiateProgress","t2","t3","clearInterval","t4","callback","startRouteTransition","t5","hasReleased","_temp","_temp2","holdRouteTransition","t6","_jsx","RouteTransitionContext","value","createContext","undefined","useRouteTransition","use","count","count_0","max"],"sources":["../../../src/providers/RouteTransition/index.tsx"],"sourcesContent":["'use client'\nimport React, { startTransition, useCallback, useEffect, useOptimistic, useRef } from 'react'\n\n/**\n * Route transitions are useful in showing immediate visual feedback to the user when navigating between pages. This is especially useful on slow networks when navigating to data heavy or process intensive pages.\n * To use route transitions, place the `RouteTransitionProvider` at the root of your application, outside of the `ProgressBar` component.\n * To trigger a route transition, use the `Link` component from `@payloadcms/ui`,\n * or wrap a callback function with the `startRouteTransition` method.\n * To gain access to the `RouteTransitionContext`, call the `useRouteTransition` hook in your component.\n * @returns A context provider with methods and state for transitioning between routes, including `isTransitioning`, `startRouteTransition`, and `transitionProgress`.\n * @example\n * import { RouteTransitionProvider, ProgressBar, Link } from '@payloadcms/ui'\n * const App = () => (\n * <RouteTransitionProvider>\n * <ProgressBar />\n * <Link href=\"/somewhere\">Go Somewhere</Link>\n * </RouteTransitionProvider>\n * )\n */\nexport const RouteTransitionProvider: React.FC<RouteTransitionProps> = ({ children }) => {\n const [isOptimisticallyTransitioning, setIsOptimisticallyTransitioning] = useOptimistic(false)\n const [activeRouteTransitionHolds, setActiveRouteTransitionHolds] = React.useState(0)\n const [transitionProgress, setTransitionProgress] = React.useState<number>(0)\n const isTransitioning = isOptimisticallyTransitioning || activeRouteTransitionHolds > 0\n\n const transitionProgressRef = useRef(transitionProgress)\n\n const timerID = useRef(null)\n\n const initiateProgress = useCallback(() => {\n timerID.current = setInterval(() => {\n // randomly update progress using an exponential curve\n // cap the progress to ensure it never fully reaches completion\n // accelerate quickly then decelerate slowly\n const maxProgress = 0.93\n const jumpFactor = 0.2 // lower to reduce jumps in progress\n const growthFactor = 0.75 // adjust to control acceleration\n const slowdownFactor = 0.75 // adjust to control deceleration\n\n const newProgress =\n transitionProgressRef.current +\n (maxProgress - transitionProgressRef.current) *\n Math.random() *\n jumpFactor *\n Math.pow(Math.log(1 + (1 - transitionProgressRef.current) * growthFactor), slowdownFactor)\n\n setTransitionProgress(newProgress)\n transitionProgressRef.current = newProgress\n }, 250) // every n ms, update progress\n }, [])\n\n useEffect(() => {\n setTransitionProgress(0)\n transitionProgressRef.current = 0\n\n if (isTransitioning) {\n initiateProgress()\n } else {\n if (timerID.current) {\n clearInterval(timerID.current)\n }\n }\n }, [isTransitioning, initiateProgress])\n\n const startRouteTransition: StartRouteTransition = useCallback(\n (callback?: () => void) => {\n startTransition(() => {\n setIsOptimisticallyTransitioning(true)\n\n if (typeof callback === 'function') {\n callback()\n }\n })\n },\n [setIsOptimisticallyTransitioning],\n )\n\n const holdRouteTransition = useCallback(() => {\n let hasReleased = false\n\n setActiveRouteTransitionHolds((count) => count + 1)\n\n return () => {\n if (hasReleased) {\n return\n }\n\n hasReleased = true\n setActiveRouteTransitionHolds((count) => Math.max(0, count - 1))\n }\n }, [])\n\n return (\n <RouteTransitionContext\n value={{\n holdRouteTransition,\n isTransitioning,\n startRouteTransition,\n transitionProgress,\n }}\n >\n {children}\n </RouteTransitionContext>\n )\n}\n\ntype RouteTransitionProps = {\n children: React.ReactNode\n}\n\ntype StartRouteTransition = (callback?: () => void) => void\n\ntype RouteTransitionContextValue = {\n /** Keeps the transition active until the returned release function is called. */\n holdRouteTransition: () => () => void\n isTransitioning: boolean\n startRouteTransition: StartRouteTransition\n transitionProgress: number\n}\n\nconst RouteTransitionContext = React.createContext<RouteTransitionContextValue>({\n holdRouteTransition: () => () => undefined,\n isTransitioning: false,\n // Default implementation: just call the callback directly (no transition animation)\n startRouteTransition: (callback) => {\n if (typeof callback === 'function') {\n callback()\n }\n },\n transitionProgress: 0,\n})\n\n/**\n * Use this hook to access the `RouteTransitionContext` provided by the `RouteTransitionProvider`.\n * To start a transition, fire the `startRouteTransition` method with a provided callback to run while the transition takes place.\n * @returns The `RouteTransitionContext` needed for transitioning between routes, including `isTransitioning`, `startRouteTransition`, and `transitionProgress`.\n * @example\n * 'use client'\n * import React, { useCallback } from 'react'\n * import { useTransition, useRouter } from '@payloadcms/ui'\n *\n * const MyComponent: React.FC = () => {\n * const router = useRouter()\n * const { startRouteTransition } = useRouteTransition()\n *\n * const redirectSomewhere = useCallback(() => {\n * startRouteTransition(() => router.push('/somewhere'))\n * }, [startRouteTransition, router])\n *\n * // ...\n * }\n */\nexport const useRouteTransition = () => React.use(RouteTransitionContext)\n"],"mappings":"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","ignoreList":[]}
@@ -1,16 +1,17 @@
1
1
  import React from 'react';
2
+ import type { RenderTabServerFnArgs } from '../../elements/Nav/SidebarTabs/renderTabServerFn.js';
2
3
  export type SidebarTabsContextType = {
3
4
  activeTabSlug: null | string;
4
5
  /**
5
6
  * Reload the content for a specific tab, bypassing the cache.
6
7
  * Useful when the tab's data dependencies change.
7
8
  */
8
- reloadTabContent: (tabSlug: string) => void;
9
+ reloadTabContent: (tabSlug: string, serverArgs?: Partial<RenderTabServerFnArgs>) => void;
9
10
  };
10
11
  export type SidebarTabsProviderProps = {
11
12
  activeTabSlug: null | string;
12
13
  children: React.ReactNode;
13
- reloadTabContent: (tabSlug: string) => void;
14
+ reloadTabContent: (tabSlug: string, serverArgs?: Partial<RenderTabServerFnArgs>) => void;
14
15
  };
15
16
  export declare const SidebarTabsProvider: React.FC<SidebarTabsProviderProps>;
16
17
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/SidebarTabs/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAEjD,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAA;IAC5B;;;OAGG;IACH,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC5C,CAAA;AAID,MAAM,MAAM,wBAAwB,GAAG;IACrC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAA;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAQlE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,IAAI,GAAG,sBAExC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/SidebarTabs/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAEjD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qDAAqD,CAAA;AAEhG,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAA;IAC5B;;;OAGG;IACH,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;CACzF,CAAA;AAID,MAAM,MAAM,wBAAwB,GAAG;IACrC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAA;IAC5B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAA;CACzF,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAQlE,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,IAAI,GAAG,sBAExC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","createContext","use","SidebarTabsContext","SidebarTabsProvider","activeTabSlug","children","reloadTabContent","_jsx","value","useSidebarTabs"],"sources":["../../../src/providers/SidebarTabs/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { createContext, use } from 'react'\n\nexport type SidebarTabsContextType = {\n activeTabSlug: null | string\n /**\n * Reload the content for a specific tab, bypassing the cache.\n * Useful when the tab's data dependencies change.\n */\n reloadTabContent: (tabSlug: string) => void\n}\n\nconst SidebarTabsContext = createContext<null | SidebarTabsContextType>(null)\n\nexport type SidebarTabsProviderProps = {\n activeTabSlug: null | string\n children: React.ReactNode\n reloadTabContent: (tabSlug: string) => void\n}\n\nexport const SidebarTabsProvider: React.FC<SidebarTabsProviderProps> = ({\n activeTabSlug,\n children,\n reloadTabContent,\n}) => {\n return (\n <SidebarTabsContext value={{ activeTabSlug, reloadTabContent }}>{children}</SidebarTabsContext>\n )\n}\n\n/**\n * Hook to access sidebar tab controls.\n * Returns null if used outside of a SidebarTabsProvider (e.g., when there's only one tab).\n */\nexport const useSidebarTabs = (): null | SidebarTabsContextType => {\n return use(SidebarTabsContext)\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,IAASC,aAAa,EAAEC,GAAG,QAAQ;AAW1C,MAAMC,kBAAA,gBAAqBF,aAAA,CAA6C;AAQxE,OAAO,MAAMG,mBAAA,GAA0DA,CAAC;EACtEC,aAAa;EACbC,QAAQ;EACRC;AAAgB,CACjB;EACC,oBACEC,IAAA,CAACL,kBAAA;IAAmBM,KAAA,EAAO;MAAEJ,aAAA;MAAeE;IAAiB;cAAID;;AAErE;AAEA;;;;AAIA,OAAO,MAAMI,cAAA,GAAiBA,CAAA;EAC5B,OAAOR,GAAA,CAAIC,kBAAA;AACb","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","createContext","use","SidebarTabsContext","SidebarTabsProvider","activeTabSlug","children","reloadTabContent","_jsx","value","useSidebarTabs"],"sources":["../../../src/providers/SidebarTabs/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { createContext, use } from 'react'\n\nimport type { RenderTabServerFnArgs } from '../../elements/Nav/SidebarTabs/renderTabServerFn.js'\n\nexport type SidebarTabsContextType = {\n activeTabSlug: null | string\n /**\n * Reload the content for a specific tab, bypassing the cache.\n * Useful when the tab's data dependencies change.\n */\n reloadTabContent: (tabSlug: string, serverArgs?: Partial<RenderTabServerFnArgs>) => void\n}\n\nconst SidebarTabsContext = createContext<null | SidebarTabsContextType>(null)\n\nexport type SidebarTabsProviderProps = {\n activeTabSlug: null | string\n children: React.ReactNode\n reloadTabContent: (tabSlug: string, serverArgs?: Partial<RenderTabServerFnArgs>) => void\n}\n\nexport const SidebarTabsProvider: React.FC<SidebarTabsProviderProps> = ({\n activeTabSlug,\n children,\n reloadTabContent,\n}) => {\n return (\n <SidebarTabsContext value={{ activeTabSlug, reloadTabContent }}>{children}</SidebarTabsContext>\n )\n}\n\n/**\n * Hook to access sidebar tab controls.\n * Returns null if used outside of a SidebarTabsProvider (e.g., when there's only one tab).\n */\nexport const useSidebarTabs = (): null | SidebarTabsContextType => {\n return use(SidebarTabsContext)\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,IAASC,aAAa,EAAEC,GAAG,QAAQ;AAa1C,MAAMC,kBAAA,gBAAqBF,aAAA,CAA6C;AAQxE,OAAO,MAAMG,mBAAA,GAA0DA,CAAC;EACtEC,aAAa;EACbC,QAAQ;EACRC;AAAgB,CACjB;EACC,oBACEC,IAAA,CAACL,kBAAA;IAAmBM,KAAA,EAAO;MAAEJ,aAAA;MAAeE;IAAiB;cAAID;;AAErE;AAEA;;;;AAIA,OAAO,MAAMI,cAAA,GAAiBA,CAAA;EAC5B,OAAOR,GAAA,CAAIC,kBAAA;AACb","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"filterFields.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/filterFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAIjD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,EAAE,gBAAgB,CAAC,EAAE,KAAG,CAAC,EAqClF,CAAA"}
1
+ {"version":3,"file":"filterFields.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/filterFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAIjD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,kBAAkB,CAAC,EAAE,KAAG,CAAC,EAqClF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"filterFieldsWithPermissions.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,KAAK,EACL,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,SAAS,CAAA;AAahB,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,GAAG,WAAW,EAAE,+BAGtF;IACD,gBAAgB,CAAC,EAAE,yBAAyB,GAAG,0BAA0B,CAAA;IACzE,MAAM,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC,EAAE,CAAA;CAChC,KAAG,CAAC,EAgEJ,CAAA"}
1
+ {"version":3,"file":"filterFieldsWithPermissions.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,KAAK,EACL,yBAAyB,EACzB,0BAA0B,EAC3B,MAAM,SAAS,CAAA;AAahB,eAAO,MAAM,2BAA2B,GAAI,CAAC,SAAS,WAAW,GAAG,KAAK,GAAG,WAAW,iCAGpF;IACD,gBAAgB,CAAC,EAAE,yBAAyB,GAAG,0BAA0B,CAAA;IACzE,MAAM,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC,EAAE,CAAA;CAChC,KAAG,CAAC,EAgEJ,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"findValueFromPath.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/findValueFromPath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,MAAM,KAAG,GAE1E,CAAA"}
1
+ {"version":3,"file":"findValueFromPath.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/findValueFromPath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,KAAG,GAE1E,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAEV,WAAW,EACX,qBAAqB,EACrB,cAAc,EACd,MAAM,EACN,yBAAyB,EACzB,QAAQ,EACR,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAG1B,SAAS,EACV,MAAM,SAAS,CAAA;AAUhB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAY5E,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,OAAO,CAAC,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAA;IAC1C,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gBAAgB,CAAC,EAAE,0BAA0B,CAAA;IAC7C,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,YAAY,EAAE,KAAK,EAAE,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1C,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;IAC5D,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB,GAAG,CACA;IACE,cAAc,EAAE,cAAc,CAAA;IAC9B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CAC5B,GACD;IACE,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE;QACJ,UAAU,EAAE,cAAc,CAAA;QAC1B,KAAK,EAAE,QAAQ,CAAA;KAChB,EAAE,CAAA;CACJ,CACJ,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,MAAM,oBAAoB,KAAG,MAAM,EA+NnE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAEV,WAAW,EACX,qBAAqB,EACrB,cAAc,EACd,MAAM,EACN,yBAAyB,EACzB,QAAQ,EACR,KAAK,EACL,aAAa,EACb,OAAO,EACP,cAAc,EACd,yBAAyB,EACzB,0BAA0B,EAG1B,SAAS,EACV,MAAM,SAAS,CAAA;AAUhB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAA;AAY5E,MAAM,MAAM,oBAAoB,GAAG;IACjC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,OAAO,CAAC,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAA;IAC1C,eAAe,EAAE,yBAAyB,CAAC,iBAAiB,CAAC,CAAA;IAC7D,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,gBAAgB,CAAC,EAAE,0BAA0B,CAAA;IAC7C,IAAI,EAAE,UAAU,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,YAAY,EAAE,KAAK,EAAE,CAAA;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1C,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;IAC5D,QAAQ,CAAC,EAAE,SAAS,CAAA;CACrB,GAAG,CACA;IACE,cAAc,EAAE,cAAc,CAAA;IAC9B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;CAC5B,GACD;IACE,cAAc,CAAC,EAAE,SAAS,CAAA;IAC1B,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE;QACJ,UAAU,EAAE,cAAc,CAAA;QAC1B,KAAK,EAAE,QAAQ,CAAA;KAChB,EAAE,CAAA;CACJ,CACJ,CAAA;AAED,eAAO,MAAM,gBAAgB,SAAU,oBAAoB,KAAG,MAAM,EAgOnE,CAAA"}
@@ -91,7 +91,7 @@ export const buildColumnState = args => {
91
91
  }
92
92
  let CustomLabel = undefined;
93
93
  if (dataType === 'monomorphic') {
94
- const CustomLabelToRender = serverField && 'admin' in serverField && 'components' in serverField.admin && 'Label' in serverField.admin.components && serverField.admin.components.Label !== undefined // let it return `null`
94
+ const CustomLabelToRender = serverField && 'admin' in serverField && 'components' in serverField.admin && serverField.admin.components && 'Label' in serverField.admin.components && serverField.admin.components.Label !== undefined // let it return `null`
95
95
  ? serverField.admin.components.Label : undefined;
96
96
  // TODO: customComponent will be optional in v4
97
97
  const clientProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","fieldIsPresentationalOnly","flattenTopLevelFields","React","RenderServerComponent","SortColumn","filterFieldsWithPermissions","isColumnActive","renderCell","sortFieldMap","buildColumnState","args","beforeRows","clientFields","collectionSlug","columns","customCellProps","dataType","docs","enableLinkedCell","enableRowSelections","fieldPermissions","i18n","payload","req","serverFields","sortColumnProps","useAsTitle","viewType","sortedFieldMap","fields","keepPresentationalFields","moveSubFieldsToTop","_sortedFieldMap","idFieldIndex","findIndex","field","idField","splice","unshift","useAsTitleFieldIndex","name","useAsTitleField","sortTo","activeColumnsIndices","sorted","reduce","acc","clientField","colIndex","accessor","undefined","serverField","find","f","fAccessor","hasCustomCell","admin","components","Cell","type","columnPref","preference","isActive","column","includes","push","CustomLabel","CustomLabelToRender","Label","clientProps","customLabelServerProps","Component","importMap","serverProps","fieldAffectsDataSubFields","label","labelWithPrefix","dotAccessor","replace","isVirtualField","virtual","Heading","_jsx","disable","isLinkedColumn","active","renderedCells","map","doc","rowIndex","relationTo","columnIndex","value"],"sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientComponentProps,\n ClientField,\n CollectionPreferences,\n CollectionSlug,\n Column,\n DefaultCellComponentProps,\n Document,\n Field,\n PaginatedDocs,\n Payload,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedFieldsPermissions,\n ServerComponentProps,\n StaticLabel,\n ViewTypes,\n} from 'payload'\n\nimport {\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsPresentationalOnly,\n flattenTopLevelFields,\n} from 'payload/shared'\nimport React from 'react'\n\nimport type { SortColumnProps } from '../../../elements/SortColumn/index.js'\n\nimport { RenderServerComponent } from '../../../elements/RenderServerComponent/index.js'\nimport {\n SortColumn,\n // eslint-disable-next-line payload/no-imports-from-exports-dir -- MUST reference the exports dir: https://github.com/payloadcms/payload/issues/12002#issuecomment-2791493587\n} from '../../../exports/client/index.js'\nimport { filterFieldsWithPermissions } from './filterFieldsWithPermissions.js'\nimport { isColumnActive } from './isColumnActive.js'\nimport { renderCell } from './renderCell.js'\nimport { sortFieldMap } from './sortFieldMap.js'\n\nexport type BuildColumnStateArgs = {\n beforeRows?: Column[]\n clientFields: ClientField[]\n columns?: CollectionPreferences['columns']\n customCellProps: DefaultCellComponentProps['customCellProps']\n enableLinkedCell?: boolean\n enableRowSelections: boolean\n enableRowTypes?: boolean\n fieldPermissions?: SanitizedFieldsPermissions\n i18n: I18nClient\n payload: Payload\n req?: PayloadRequest\n serverFields: Field[]\n sortColumnProps?: Partial<SortColumnProps>\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n viewType?: ViewTypes\n} & (\n | {\n collectionSlug: CollectionSlug\n dataType: 'monomorphic'\n docs: PaginatedDocs['docs']\n }\n | {\n collectionSlug?: undefined\n dataType: 'polymorphic'\n docs: {\n relationTo: CollectionSlug\n value: Document\n }[]\n }\n)\n\nexport const buildColumnState = (args: BuildColumnStateArgs): Column[] => {\n const {\n beforeRows,\n clientFields,\n collectionSlug,\n columns,\n customCellProps,\n dataType,\n docs,\n enableLinkedCell = true,\n enableRowSelections,\n fieldPermissions,\n i18n,\n payload,\n req,\n serverFields,\n sortColumnProps,\n useAsTitle,\n viewType,\n } = args\n\n // clientFields contains the fake `id` column\n let sortedFieldMap = flattenTopLevelFields(\n filterFieldsWithPermissions({ fieldPermissions, fields: clientFields }),\n {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n },\n ) as ClientField[]\n\n let _sortedFieldMap = flattenTopLevelFields(\n filterFieldsWithPermissions({\n fieldPermissions,\n fields: serverFields,\n }),\n {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n },\n ) as Field[] // TODO: think of a way to avoid this additional flatten\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columns`\n const idFieldIndex = sortedFieldMap?.findIndex((field) => fieldIsID(field))\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columns\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columns`\n sortedFieldMap = sortFieldMap<ClientField>(sortedFieldMap, sortTo)\n _sortedFieldMap = sortFieldMap<Field>(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort\n }\n\n const activeColumnsIndices = []\n\n const sorted: Column[] = sortedFieldMap?.reduce((acc, clientField, colIndex) => {\n if (fieldIsHiddenOrDisabled(clientField) && !fieldIsID(clientField)) {\n return acc\n }\n\n const accessor =\n (clientField as any).accessor ?? ('name' in clientField ? clientField.name : undefined)\n\n const serverField = _sortedFieldMap.find((f) => {\n const fAccessor = (f as any).accessor ?? ('name' in f ? f.name : undefined)\n return fAccessor === accessor\n })\n\n const hasCustomCell =\n serverField?.admin &&\n 'components' in serverField.admin &&\n serverField.admin.components &&\n 'Cell' in serverField.admin.components &&\n serverField.admin.components.Cell\n\n if (serverField && serverField.type === 'group' && !hasCustomCell) {\n return acc // skip any group without a custom cell\n }\n\n const columnPref = columns?.find(\n (preference) => clientField && 'name' in clientField && preference.accessor === accessor,\n )\n\n const isActive = isColumnActive({\n accessor,\n activeColumnsIndices,\n column: columnPref,\n columns,\n })\n\n if (isActive && !activeColumnsIndices.includes(colIndex)) {\n activeColumnsIndices.push(colIndex)\n }\n\n let CustomLabel = undefined\n\n if (dataType === 'monomorphic') {\n const CustomLabelToRender =\n serverField &&\n 'admin' in serverField &&\n 'components' in serverField.admin &&\n 'Label' in serverField.admin.components &&\n serverField.admin.components.Label !== undefined // let it return `null`\n ? serverField.admin.components.Label\n : undefined\n\n // TODO: customComponent will be optional in v4\n const clientProps: Omit<ClientComponentProps, 'customComponents'> = {\n field: clientField,\n }\n\n const customLabelServerProps: Pick<\n ServerComponentProps,\n 'clientField' | 'collectionSlug' | 'field' | 'i18n' | 'payload'\n > = {\n clientField,\n collectionSlug,\n field: serverField,\n i18n,\n payload,\n }\n\n CustomLabel = CustomLabelToRender\n ? RenderServerComponent({\n clientProps,\n Component: CustomLabelToRender,\n importMap: payload.importMap,\n serverProps: customLabelServerProps,\n })\n : undefined\n }\n\n const fieldAffectsDataSubFields =\n clientField &&\n clientField.type &&\n (clientField.type === 'array' ||\n clientField.type === 'group' ||\n clientField.type === 'blocks')\n\n const label =\n clientField && 'labelWithPrefix' in clientField && clientField.labelWithPrefix !== undefined\n ? clientField.labelWithPrefix\n : 'label' in clientField\n ? clientField.label\n : undefined\n\n // Convert accessor to dot notation specifically for SortColumn sorting behavior\n const dotAccessor = accessor?.replace(/-/g, '.')\n\n const isVirtualField = serverField && 'virtual' in serverField && serverField.virtual === true\n\n const Heading = (\n <SortColumn\n disable={\n fieldAffectsDataSubFields ||\n fieldIsPresentationalOnly(clientField) ||\n isVirtualField ||\n undefined\n }\n Label={CustomLabel}\n label={label as StaticLabel}\n name={dotAccessor}\n {...(sortColumnProps || {})}\n />\n )\n\n const isLinkedColumn = enableLinkedCell && colIndex === activeColumnsIndices[0]\n\n const column: Column = {\n accessor,\n active: isActive,\n CustomLabel,\n field: clientField,\n Heading,\n isLinkedColumn,\n renderedCells: isActive\n ? docs.map((doc, rowIndex) => {\n return renderCell({\n clientField,\n collectionSlug: dataType === 'monomorphic' ? collectionSlug : doc.relationTo,\n columnIndex: colIndex,\n customCellProps,\n doc: dataType === 'monomorphic' ? doc : doc.value,\n enableRowSelections,\n i18n,\n isLinkedColumn,\n payload,\n req,\n rowIndex,\n serverField,\n viewType,\n })\n })\n : [],\n }\n\n acc.push(column)\n\n return acc\n }, [])\n\n if (beforeRows) {\n sorted.unshift(...beforeRows)\n }\n\n return sorted\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["fieldIsHiddenOrDisabled","fieldIsID","fieldIsPresentationalOnly","flattenTopLevelFields","React","RenderServerComponent","SortColumn","filterFieldsWithPermissions","isColumnActive","renderCell","sortFieldMap","buildColumnState","args","beforeRows","clientFields","collectionSlug","columns","customCellProps","dataType","docs","enableLinkedCell","enableRowSelections","fieldPermissions","i18n","payload","req","serverFields","sortColumnProps","useAsTitle","viewType","sortedFieldMap","fields","keepPresentationalFields","moveSubFieldsToTop","_sortedFieldMap","idFieldIndex","findIndex","field","idField","splice","unshift","useAsTitleFieldIndex","name","useAsTitleField","sortTo","activeColumnsIndices","sorted","reduce","acc","clientField","colIndex","accessor","undefined","serverField","find","f","fAccessor","hasCustomCell","admin","components","Cell","type","columnPref","preference","isActive","column","includes","push","CustomLabel","CustomLabelToRender","Label","clientProps","customLabelServerProps","Component","importMap","serverProps","fieldAffectsDataSubFields","label","labelWithPrefix","dotAccessor","replace","isVirtualField","virtual","Heading","_jsx","disable","isLinkedColumn","active","renderedCells","map","doc","rowIndex","relationTo","columnIndex","value"],"sources":["../../../../src/providers/TableColumns/buildColumnState/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientComponentProps,\n ClientField,\n CollectionPreferences,\n CollectionSlug,\n Column,\n DefaultCellComponentProps,\n Document,\n Field,\n PaginatedDocs,\n Payload,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedFieldsPermissions,\n ServerComponentProps,\n StaticLabel,\n ViewTypes,\n} from 'payload'\n\nimport {\n fieldIsHiddenOrDisabled,\n fieldIsID,\n fieldIsPresentationalOnly,\n flattenTopLevelFields,\n} from 'payload/shared'\nimport React from 'react'\n\nimport type { SortColumnProps } from '../../../elements/SortColumn/index.js'\n\nimport { RenderServerComponent } from '../../../elements/RenderServerComponent/index.js'\nimport {\n SortColumn,\n // eslint-disable-next-line payload/no-imports-from-exports-dir -- MUST reference the exports dir: https://github.com/payloadcms/payload/issues/12002#issuecomment-2791493587\n} from '../../../exports/client/index.js'\nimport { filterFieldsWithPermissions } from './filterFieldsWithPermissions.js'\nimport { isColumnActive } from './isColumnActive.js'\nimport { renderCell } from './renderCell.js'\nimport { sortFieldMap } from './sortFieldMap.js'\n\nexport type BuildColumnStateArgs = {\n beforeRows?: Column[]\n clientFields: ClientField[]\n columns?: CollectionPreferences['columns']\n customCellProps: DefaultCellComponentProps['customCellProps']\n enableLinkedCell?: boolean\n enableRowSelections: boolean\n enableRowTypes?: boolean\n fieldPermissions?: SanitizedFieldsPermissions\n i18n: I18nClient\n payload: Payload\n req?: PayloadRequest\n serverFields: Field[]\n sortColumnProps?: Partial<SortColumnProps>\n useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n viewType?: ViewTypes\n} & (\n | {\n collectionSlug: CollectionSlug\n dataType: 'monomorphic'\n docs: PaginatedDocs['docs']\n }\n | {\n collectionSlug?: undefined\n dataType: 'polymorphic'\n docs: {\n relationTo: CollectionSlug\n value: Document\n }[]\n }\n)\n\nexport const buildColumnState = (args: BuildColumnStateArgs): Column[] => {\n const {\n beforeRows,\n clientFields,\n collectionSlug,\n columns,\n customCellProps,\n dataType,\n docs,\n enableLinkedCell = true,\n enableRowSelections,\n fieldPermissions,\n i18n,\n payload,\n req,\n serverFields,\n sortColumnProps,\n useAsTitle,\n viewType,\n } = args\n\n // clientFields contains the fake `id` column\n let sortedFieldMap = flattenTopLevelFields(\n filterFieldsWithPermissions({ fieldPermissions, fields: clientFields }),\n {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n },\n ) as ClientField[]\n\n let _sortedFieldMap = flattenTopLevelFields(\n filterFieldsWithPermissions({\n fieldPermissions,\n fields: serverFields,\n }),\n {\n i18n,\n keepPresentationalFields: true,\n moveSubFieldsToTop: true,\n },\n ) as Field[] // TODO: think of a way to avoid this additional flatten\n\n // place the `ID` field first, if it exists\n // do the same for the `useAsTitle` field with precedence over the `ID` field\n // then sort the rest of the fields based on the `defaultColumns` or `columns`\n const idFieldIndex = sortedFieldMap?.findIndex((field) => fieldIsID(field))\n\n if (idFieldIndex > -1) {\n const idField = sortedFieldMap.splice(idFieldIndex, 1)[0]\n sortedFieldMap.unshift(idField)\n }\n\n const useAsTitleFieldIndex = useAsTitle\n ? sortedFieldMap.findIndex((field) => 'name' in field && field.name === useAsTitle)\n : -1\n\n if (useAsTitleFieldIndex > -1) {\n const useAsTitleField = sortedFieldMap.splice(useAsTitleFieldIndex, 1)[0]\n sortedFieldMap.unshift(useAsTitleField)\n }\n\n const sortTo = columns\n\n if (sortTo) {\n // sort the fields to the order of `defaultColumns` or `columns`\n sortedFieldMap = sortFieldMap<ClientField>(sortedFieldMap, sortTo)\n _sortedFieldMap = sortFieldMap<Field>(_sortedFieldMap, sortTo) // TODO: think of a way to avoid this additional sort\n }\n\n const activeColumnsIndices = []\n\n const sorted: Column[] = sortedFieldMap?.reduce((acc, clientField, colIndex) => {\n if (fieldIsHiddenOrDisabled(clientField) && !fieldIsID(clientField)) {\n return acc\n }\n\n const accessor =\n (clientField as any).accessor ?? ('name' in clientField ? clientField.name : undefined)\n\n const serverField = _sortedFieldMap.find((f) => {\n const fAccessor = (f as any).accessor ?? ('name' in f ? f.name : undefined)\n return fAccessor === accessor\n })\n\n const hasCustomCell =\n serverField?.admin &&\n 'components' in serverField.admin &&\n serverField.admin.components &&\n 'Cell' in serverField.admin.components &&\n serverField.admin.components.Cell\n\n if (serverField && serverField.type === 'group' && !hasCustomCell) {\n return acc // skip any group without a custom cell\n }\n\n const columnPref = columns?.find(\n (preference) => clientField && 'name' in clientField && preference.accessor === accessor,\n )\n\n const isActive = isColumnActive({\n accessor,\n activeColumnsIndices,\n column: columnPref,\n columns,\n })\n\n if (isActive && !activeColumnsIndices.includes(colIndex)) {\n activeColumnsIndices.push(colIndex)\n }\n\n let CustomLabel = undefined\n\n if (dataType === 'monomorphic') {\n const CustomLabelToRender =\n serverField &&\n 'admin' in serverField &&\n 'components' in serverField.admin &&\n serverField.admin.components &&\n 'Label' in serverField.admin.components &&\n serverField.admin.components.Label !== undefined // let it return `null`\n ? serverField.admin.components.Label\n : undefined\n\n // TODO: customComponent will be optional in v4\n const clientProps: Omit<ClientComponentProps, 'customComponents'> = {\n field: clientField,\n }\n\n const customLabelServerProps: Pick<\n ServerComponentProps,\n 'clientField' | 'collectionSlug' | 'field' | 'i18n' | 'payload'\n > = {\n clientField,\n collectionSlug,\n field: serverField,\n i18n,\n payload,\n }\n\n CustomLabel = CustomLabelToRender\n ? RenderServerComponent({\n clientProps,\n Component: CustomLabelToRender,\n importMap: payload.importMap,\n serverProps: customLabelServerProps,\n })\n : undefined\n }\n\n const fieldAffectsDataSubFields =\n clientField &&\n clientField.type &&\n (clientField.type === 'array' ||\n clientField.type === 'group' ||\n clientField.type === 'blocks')\n\n const label =\n clientField && 'labelWithPrefix' in clientField && clientField.labelWithPrefix !== undefined\n ? clientField.labelWithPrefix\n : 'label' in clientField\n ? clientField.label\n : undefined\n\n // Convert accessor to dot notation specifically for SortColumn sorting behavior\n const dotAccessor = accessor?.replace(/-/g, '.')\n\n const isVirtualField = serverField && 'virtual' in serverField && serverField.virtual === true\n\n const Heading = (\n <SortColumn\n disable={\n fieldAffectsDataSubFields ||\n fieldIsPresentationalOnly(clientField) ||\n isVirtualField ||\n undefined\n }\n Label={CustomLabel}\n label={label as StaticLabel}\n name={dotAccessor}\n {...(sortColumnProps || {})}\n />\n )\n\n const isLinkedColumn = enableLinkedCell && colIndex === activeColumnsIndices[0]\n\n const column: Column = {\n accessor,\n active: isActive,\n CustomLabel,\n field: clientField,\n Heading,\n isLinkedColumn,\n renderedCells: isActive\n ? docs.map((doc, rowIndex) => {\n return renderCell({\n clientField,\n collectionSlug: dataType === 'monomorphic' ? collectionSlug : doc.relationTo,\n columnIndex: colIndex,\n customCellProps,\n doc: dataType === 'monomorphic' ? doc : doc.value,\n enableRowSelections,\n i18n,\n isLinkedColumn,\n payload,\n req,\n rowIndex,\n serverField,\n viewType,\n })\n })\n : [],\n }\n\n acc.push(column)\n\n return acc\n }, [])\n\n if (beforeRows) {\n sorted.unshift(...beforeRows)\n }\n\n return sorted\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,40 @@
1
+ import { describe, expect, it, vi } from 'vitest';
2
+ import { buildColumnState } from './index.js';
3
+ vi.mock('../../../exports/client/index.js', () => ({
4
+ SortColumn: () => null
5
+ }));
6
+ describe('buildColumnState', () => {
7
+ it('should handle fields with admin components explicitly set to undefined', () => {
8
+ const clientField = {
9
+ name: 'title',
10
+ type: 'text'
11
+ };
12
+ const serverField = {
13
+ name: 'title',
14
+ type: 'text',
15
+ admin: {
16
+ components: undefined
17
+ }
18
+ };
19
+ const columns = buildColumnState({
20
+ clientFields: [clientField],
21
+ collectionSlug: 'posts',
22
+ customCellProps: {},
23
+ dataType: 'monomorphic',
24
+ docs: [],
25
+ enableRowSelections: false,
26
+ fieldPermissions: true,
27
+ i18n: {
28
+ t: vi.fn()
29
+ },
30
+ payload: {
31
+ importMap: {}
32
+ },
33
+ serverFields: [serverField],
34
+ useAsTitle: 'title'
35
+ });
36
+ expect(columns).toHaveLength(1);
37
+ expect(columns[0].CustomLabel).toBeUndefined();
38
+ });
39
+ });
40
+ //# sourceMappingURL=index.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.spec.js","names":["describe","expect","it","vi","buildColumnState","mock","SortColumn","clientField","name","type","serverField","admin","components","undefined","columns","clientFields","collectionSlug","customCellProps","dataType","docs","enableRowSelections","fieldPermissions","i18n","t","fn","payload","importMap","serverFields","useAsTitle","toHaveLength","CustomLabel","toBeUndefined"],"sources":["../../../../src/providers/TableColumns/buildColumnState/index.spec.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientField, Field, Payload } from 'payload'\n\nimport { describe, expect, it, vi } from 'vitest'\n\nimport { buildColumnState } from './index.js'\n\nvi.mock('../../../exports/client/index.js', () => ({\n SortColumn: () => null,\n}))\n\ndescribe('buildColumnState', () => {\n it('should handle fields with admin components explicitly set to undefined', () => {\n const clientField: ClientField = {\n name: 'title',\n type: 'text',\n }\n const serverField: Field = {\n name: 'title',\n type: 'text',\n admin: {\n components: undefined,\n },\n }\n\n const columns = buildColumnState({\n clientFields: [clientField],\n collectionSlug: 'posts',\n customCellProps: {},\n dataType: 'monomorphic',\n docs: [],\n enableRowSelections: false,\n fieldPermissions: true,\n i18n: {\n t: vi.fn(),\n } as unknown as I18nClient,\n payload: {\n importMap: {},\n } as unknown as Payload,\n serverFields: [serverField],\n useAsTitle: 'title',\n })\n\n expect(columns).toHaveLength(1)\n expect(columns[0].CustomLabel).toBeUndefined()\n })\n})\n"],"mappings":"AAGA,SAASA,QAAQ,EAAEC,MAAM,EAAEC,EAAE,EAAEC,EAAE,QAAQ;AAEzC,SAASC,gBAAgB,QAAQ;AAEjCD,EAAA,CAAGE,IAAI,CAAC,oCAAoC,OAAO;EACjDC,UAAA,EAAYA,CAAA,KAAM;AACpB;AAEAN,QAAA,CAAS,oBAAoB;EAC3BE,EAAA,CAAG,0EAA0E;IAC3E,MAAMK,WAAA,GAA2B;MAC/BC,IAAA,EAAM;MACNC,IAAA,EAAM;IACR;IACA,MAAMC,WAAA,GAAqB;MACzBF,IAAA,EAAM;MACNC,IAAA,EAAM;MACNE,KAAA,EAAO;QACLC,UAAA,EAAYC;MACd;IACF;IAEA,MAAMC,OAAA,GAAUV,gBAAA,CAAiB;MAC/BW,YAAA,EAAc,CAACR,WAAA,CAAY;MAC3BS,cAAA,EAAgB;MAChBC,eAAA,EAAiB,CAAC;MAClBC,QAAA,EAAU;MACVC,IAAA,EAAM,EAAE;MACRC,mBAAA,EAAqB;MACrBC,gBAAA,EAAkB;MAClBC,IAAA,EAAM;QACJC,CAAA,EAAGpB,EAAA,CAAGqB,EAAE;MACV;MACAC,OAAA,EAAS;QACPC,SAAA,EAAW,CAAC;MACd;MACAC,YAAA,EAAc,CAACjB,WAAA,CAAY;MAC3BkB,UAAA,EAAY;IACd;IAEA3B,MAAA,CAAOa,OAAA,EAASe,YAAY,CAAC;IAC7B5B,MAAA,CAAOa,OAAO,CAAC,EAAE,CAACgB,WAAW,EAAEC,aAAa;EAC9C;AACF","ignoreList":[]}
@@ -4,5 +4,5 @@ import type { ClientField, CollectionConfig, CollectionPreferences, Field } from
4
4
  * 1. If `defaultColumns` is set in the collection config, use those columns
5
5
  * 2. Otherwise take `useAtTitle, if set, and the next 3 fields that are not hidden or disabled
6
6
  */
7
- export declare const getInitialColumns: <T extends ClientField[] | Field[]>(fields: T, useAsTitle: CollectionConfig["admin"]["useAsTitle"], defaultColumns: CollectionConfig["admin"]["defaultColumns"]) => CollectionPreferences["columns"];
7
+ export declare const getInitialColumns: <T extends ClientField[] | Field[]>(fields: T, useAsTitle: CollectionConfig['admin']['useAsTitle'], defaultColumns: CollectionConfig['admin']['defaultColumns']) => CollectionPreferences['columns'];
8
8
  //# sourceMappingURL=getInitialColumns.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getInitialColumns.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/getInitialColumns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAiC1F;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,WAAW,EAAE,GAAG,KAAK,EAAE,EACjE,QAAQ,CAAC,EACT,YAAY,gBAAgB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,EACnD,gBAAgB,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAC1D,qBAAqB,CAAC,SAAS,CAoBjC,CAAA"}
1
+ {"version":3,"file":"getInitialColumns.d.ts","sourceRoot":"","sources":["../../../src/providers/TableColumns/getInitialColumns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAiC1F;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS,WAAW,EAAE,GAAG,KAAK,EAAE,UACzD,CAAC,cACG,gBAAgB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,kBACnC,gBAAgB,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAC1D,qBAAqB,CAAC,SAAS,CAoBjC,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- export type Theme = 'dark' | 'light';
2
+ import { defaultTheme, type Theme } from './shared.js';
3
+ export { defaultTheme, type Theme };
3
4
  export type ThemeContext = {
4
5
  autoMode: boolean;
5
6
  highContrastMode: boolean;
@@ -11,7 +12,6 @@ export type ThemeContext = {
11
12
  }) => void;
12
13
  theme: Theme;
13
14
  };
14
- export declare const defaultTheme: Theme;
15
15
  /**
16
16
  * Provides theme context to its children.
17
17
  *
@@ -22,6 +22,9 @@ export declare const defaultTheme: Theme;
22
22
  * scoped visual the `theme` prop sets the local theme, but setThemeoverride
23
23
  * and setHighContrastMode bubble up through each level to the root provider so
24
24
  * mutations always affect the global user preference.
25
+ *
26
+ * The ThemeProvider also reads the `?theme=light|dark|auto` query parameter and
27
+ * persists it to the theme cookie using the same mechanism as manual theme selection.
25
28
  */
26
29
  export declare const ThemeProvider: React.FC<{
27
30
  children?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Theme/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAInF,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,OAAO,CAAA;AAEpC,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB,EAAE,OAAO,CAAA;IACzB,mBAAmB,EAAE,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACtF,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACzE,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AA4DD,eAAO,MAAM,YAAY,EAAE,KAAe,CAAA;AAE1C;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAgGA,CAAA;AAED,eAAO,MAAM,QAAQ,QAAO,YAA8C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Theme/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAInF,OAAO,EAAE,YAAY,EAAE,KAAK,KAAK,EAAE,MAAM,aAAa,CAAA;AAEtD,OAAO,EAAE,YAAY,EAAE,KAAK,KAAK,EAAE,CAAA;AAEnC,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAA;IACjB,gBAAgB,EAAE,OAAO,CAAA;IACzB,mBAAmB,EAAE,CAAC,cAAc,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACtF,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IACzE,KAAK,EAAE,KAAK,CAAA;CACb,CAAA;AA+DD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAyGA,CAAA;AAED,eAAO,MAAM,QAAQ,QAAO,YAA8C,CAAA"}