@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
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Coordinates requests that read or update the current auth session.
3
+ *
4
+ * Requests run in order, concurrent refreshes and logouts share a promise, and outdated results can
5
+ * be discarded after the session changes.
6
+ */export function createAuthSessionRequests() {
7
+ let authRequestQueue = Promise.resolve();
8
+ let authRequestSequence = 0;
9
+ let isLoggingOut = false;
10
+ let logoutRequest;
11
+ let pendingAuthInvalidation;
12
+ let refreshRequest;
13
+ let sessionGeneration = 0;
14
+ const clearPendingInvalidation = () => {
15
+ pendingAuthInvalidation = undefined;
16
+ };
17
+ const discardPendingResults = () => {
18
+ sessionGeneration += 1;
19
+ clearPendingInvalidation();
20
+ };
21
+ const queue = request => {
22
+ const requestGeneration = sessionGeneration;
23
+ const requestSequence = ++authRequestSequence;
24
+ const runRequest = async () => {
25
+ const isResultStale = () => sessionGeneration !== requestGeneration || isLoggingOut;
26
+ const result = await request({
27
+ acceptResult: () => {
28
+ if (isResultStale()) {
29
+ return false;
30
+ }
31
+ clearPendingInvalidation();
32
+ return true;
33
+ },
34
+ invalidateWhenIdle: invalidate => {
35
+ if (isResultStale()) {
36
+ return;
37
+ }
38
+ if (requestSequence < authRequestSequence) {
39
+ pendingAuthInvalidation = {
40
+ generation: requestGeneration,
41
+ run: invalidate
42
+ };
43
+ } else {
44
+ invalidate();
45
+ }
46
+ },
47
+ isResultStale
48
+ });
49
+ if (requestSequence === authRequestSequence) {
50
+ const pendingInvalidation = pendingAuthInvalidation;
51
+ clearPendingInvalidation();
52
+ if (pendingInvalidation?.generation === sessionGeneration) {
53
+ pendingInvalidation.run();
54
+ }
55
+ }
56
+ return result;
57
+ };
58
+ const queuedRequest = authRequestQueue.then(runRequest, runRequest);
59
+ authRequestQueue = queuedRequest.then(() => undefined, () => undefined);
60
+ return queuedRequest;
61
+ };
62
+ const refresh = request => {
63
+ const requestGeneration = sessionGeneration;
64
+ const activeRequest = refreshRequest;
65
+ if (isLoggingOut) {
66
+ return Promise.resolve(null);
67
+ }
68
+ if (activeRequest?.generation === requestGeneration) {
69
+ return activeRequest.promise;
70
+ }
71
+ const refreshPromise = queue(request);
72
+ refreshRequest = {
73
+ generation: requestGeneration,
74
+ promise: refreshPromise
75
+ };
76
+ /** Stops sharing this refresh after it settles without clearing a newer refresh request. */
77
+ const clearRefreshRequest = () => {
78
+ if (refreshRequest?.promise === refreshPromise) {
79
+ refreshRequest = undefined;
80
+ }
81
+ };
82
+ void refreshPromise.then(clearRefreshRequest, clearRefreshRequest);
83
+ return refreshPromise;
84
+ };
85
+ const logOut = ({
86
+ clearSession,
87
+ request
88
+ }) => {
89
+ if (logoutRequest !== undefined) {
90
+ return logoutRequest;
91
+ }
92
+ isLoggingOut = true;
93
+ clearSession();
94
+ const pendingLogout = queue(async () => {
95
+ try {
96
+ await request();
97
+ } finally {
98
+ isLoggingOut = false;
99
+ }
100
+ });
101
+ logoutRequest = pendingLogout;
102
+ /** Stops sharing this logout after it settles without clearing a newer logout request. */
103
+ const clearLogoutRequest = () => {
104
+ if (logoutRequest === pendingLogout) {
105
+ logoutRequest = undefined;
106
+ }
107
+ };
108
+ void pendingLogout.then(clearLogoutRequest, clearLogoutRequest);
109
+ return pendingLogout;
110
+ };
111
+ return {
112
+ discardPendingResults,
113
+ isLoggingOut: () => isLoggingOut,
114
+ logOut,
115
+ queue,
116
+ refresh
117
+ };
118
+ }
119
+ //# sourceMappingURL=authSessionRequests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authSessionRequests.js","names":["createAuthSessionRequests","authRequestQueue","Promise","resolve","authRequestSequence","isLoggingOut","logoutRequest","pendingAuthInvalidation","refreshRequest","sessionGeneration","clearPendingInvalidation","undefined","discardPendingResults","queue","request","requestGeneration","requestSequence","runRequest","isResultStale","result","acceptResult","invalidateWhenIdle","invalidate","generation","run","pendingInvalidation","queuedRequest","then","refresh","activeRequest","promise","refreshPromise","clearRefreshRequest","logOut","clearSession","pendingLogout","clearLogoutRequest"],"sources":["../../../src/providers/Auth/authSessionRequests.ts"],"sourcesContent":["import type { AuthenticatedUser } from 'payload'\n\nexport type AuthRequestContext = {\n /** Accepts the result when its session is still active and cancels any deferred invalidation. */\n acceptResult: () => boolean\n /** Invalidates the session after newer queued auth requests have had a chance to restore it. */\n invalidateWhenIdle: (invalidate: () => void) => void\n /** Whether the session changed or logout began after this request was queued. */\n isResultStale: () => boolean\n}\n\nexport type AuthSessionRequests = {\n discardPendingResults: () => void\n isLoggingOut: () => boolean\n logOut: ({\n clearSession,\n request,\n }: {\n clearSession: () => void\n request: () => Promise<void>\n }) => Promise<void>\n queue: <Result>(request: (context: AuthRequestContext) => Promise<Result>) => Promise<Result>\n refresh: (\n request: (context: AuthRequestContext) => Promise<AuthenticatedUser | null>,\n ) => Promise<AuthenticatedUser | null>\n}\n\n/**\n * Coordinates requests that read or update the current auth session.\n *\n * Requests run in order, concurrent refreshes and logouts share a promise, and outdated results can\n * be discarded after the session changes.\n */\nexport function createAuthSessionRequests(): AuthSessionRequests {\n let authRequestQueue = Promise.resolve()\n let authRequestSequence = 0\n let isLoggingOut = false\n let logoutRequest: Promise<void> | undefined\n let pendingAuthInvalidation:\n | {\n generation: number\n run: () => void\n }\n | undefined\n let refreshRequest:\n | {\n generation: number\n promise: Promise<AuthenticatedUser | null>\n }\n | undefined\n let sessionGeneration = 0\n\n const clearPendingInvalidation = (): void => {\n pendingAuthInvalidation = undefined\n }\n\n const discardPendingResults = (): void => {\n sessionGeneration += 1\n clearPendingInvalidation()\n }\n\n const queue = <Result>(\n request: (context: AuthRequestContext) => Promise<Result>,\n ): Promise<Result> => {\n const requestGeneration = sessionGeneration\n const requestSequence = ++authRequestSequence\n const runRequest = async (): Promise<Result> => {\n const isResultStale = () => sessionGeneration !== requestGeneration || isLoggingOut\n const result = await request({\n acceptResult: () => {\n if (isResultStale()) {\n return false\n }\n\n clearPendingInvalidation()\n return true\n },\n invalidateWhenIdle: (invalidate) => {\n if (isResultStale()) {\n return\n }\n\n if (requestSequence < authRequestSequence) {\n pendingAuthInvalidation = { generation: requestGeneration, run: invalidate }\n } else {\n invalidate()\n }\n },\n isResultStale,\n })\n\n if (requestSequence === authRequestSequence) {\n const pendingInvalidation = pendingAuthInvalidation\n\n clearPendingInvalidation()\n\n if (pendingInvalidation?.generation === sessionGeneration) {\n pendingInvalidation.run()\n }\n }\n\n return result\n }\n const queuedRequest = authRequestQueue.then(runRequest, runRequest)\n\n authRequestQueue = queuedRequest.then(\n () => undefined,\n () => undefined,\n )\n\n return queuedRequest\n }\n\n const refresh = (\n request: (context: AuthRequestContext) => Promise<AuthenticatedUser | null>,\n ): Promise<AuthenticatedUser | null> => {\n const requestGeneration = sessionGeneration\n const activeRequest = refreshRequest\n\n if (isLoggingOut) {\n return Promise.resolve(null)\n }\n\n if (activeRequest?.generation === requestGeneration) {\n return activeRequest.promise\n }\n\n const refreshPromise = queue(request)\n\n refreshRequest = { generation: requestGeneration, promise: refreshPromise }\n /** Stops sharing this refresh after it settles without clearing a newer refresh request. */\n const clearRefreshRequest = () => {\n if (refreshRequest?.promise === refreshPromise) {\n refreshRequest = undefined\n }\n }\n\n void refreshPromise.then(clearRefreshRequest, clearRefreshRequest)\n\n return refreshPromise\n }\n\n const logOut = ({\n clearSession,\n request,\n }: {\n clearSession: () => void\n request: () => Promise<void>\n }): Promise<void> => {\n if (logoutRequest !== undefined) {\n return logoutRequest\n }\n\n isLoggingOut = true\n clearSession()\n\n const pendingLogout = queue(async () => {\n try {\n await request()\n } finally {\n isLoggingOut = false\n }\n })\n\n logoutRequest = pendingLogout\n /** Stops sharing this logout after it settles without clearing a newer logout request. */\n const clearLogoutRequest = () => {\n if (logoutRequest === pendingLogout) {\n logoutRequest = undefined\n }\n }\n\n void pendingLogout.then(\n clearLogoutRequest, // onSuccess\n clearLogoutRequest, // onFailure\n )\n\n return pendingLogout\n }\n\n return {\n discardPendingResults,\n isLoggingOut: () => isLoggingOut,\n logOut,\n queue,\n refresh,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,121 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { createAuthSessionRequests } from './authSessionRequests.js';
3
+ describe('createAuthSessionRequests', () => {
4
+ it('should serialize auth requests in queue order', async () => {
5
+ const authRequests = createAuthSessionRequests();
6
+ const first = createDeferred();
7
+ const order = [];
8
+ const firstRequest = authRequests.queue(async () => {
9
+ order.push('first:start');
10
+ await first.promise;
11
+ order.push('first:end');
12
+ });
13
+ const secondRequest = authRequests.queue(async () => {
14
+ order.push('second');
15
+ });
16
+ expect(order).toEqual([]);
17
+ await Promise.resolve();
18
+ expect(order).toEqual(['first:start']);
19
+ first.resolve();
20
+ await Promise.all([firstRequest, secondRequest]);
21
+ expect(order).toEqual(['first:start', 'first:end', 'second']);
22
+ });
23
+ it('should share a refresh while session results remain current', async () => {
24
+ const authRequests = createAuthSessionRequests();
25
+ const refresh = createDeferred();
26
+ let runs = 0;
27
+ const run = () => authRequests.refresh(async () => {
28
+ runs += 1;
29
+ return refresh.promise;
30
+ });
31
+ const first = run();
32
+ const second = run();
33
+ expect(first).toBe(second);
34
+ refresh.resolve(null);
35
+ await Promise.all([first, second]);
36
+ expect(runs).toBe(1);
37
+ });
38
+ it('should discard a queued result after the session changes', async () => {
39
+ const authRequests = createAuthSessionRequests();
40
+ const operation = createDeferred();
41
+ let isResultStaleAfterSettlement = false;
42
+ const request = authRequests.queue(async ({
43
+ isResultStale
44
+ }) => {
45
+ await operation.promise;
46
+ isResultStaleAfterSettlement = isResultStale();
47
+ });
48
+ await Promise.resolve();
49
+ authRequests.discardPendingResults();
50
+ operation.resolve();
51
+ await request;
52
+ expect(isResultStaleAfterSettlement).toBe(true);
53
+ });
54
+ it('should settle a logout once and prevent refresh from committing', async () => {
55
+ const authRequests = createAuthSessionRequests();
56
+ const logout = createDeferred();
57
+ let clears = 0;
58
+ let logoutRequests = 0;
59
+ const first = authRequests.logOut({
60
+ clearSession: () => {
61
+ clears += 1;
62
+ authRequests.discardPendingResults();
63
+ },
64
+ request: async () => {
65
+ logoutRequests += 1;
66
+ await logout.promise;
67
+ }
68
+ });
69
+ const second = authRequests.logOut({
70
+ clearSession: () => {
71
+ clears += 1;
72
+ },
73
+ request: async () => {
74
+ logoutRequests += 1;
75
+ }
76
+ });
77
+ expect(first).toBe(second);
78
+ expect(authRequests.isLoggingOut()).toBe(true);
79
+ expect(await authRequests.refresh(async () => null)).toBeNull();
80
+ logout.resolve();
81
+ await first;
82
+ expect({
83
+ clears,
84
+ logoutRequests
85
+ }).toEqual({
86
+ clears: 1,
87
+ logoutRequests: 1
88
+ });
89
+ });
90
+ it('should discard a deferred invalidation after the session changes', async () => {
91
+ const authRequests = createAuthSessionRequests();
92
+ let invalidations = 0;
93
+ const first = authRequests.refresh(async ({
94
+ invalidateWhenIdle
95
+ }) => {
96
+ invalidateWhenIdle(() => {
97
+ invalidations += 1;
98
+ });
99
+ return null;
100
+ });
101
+ const second = authRequests.queue(async () => {
102
+ authRequests.discardPendingResults();
103
+ });
104
+ await Promise.all([first, second]);
105
+ expect(invalidations).toBe(0);
106
+ });
107
+ });
108
+ function createDeferred() {
109
+ let resolve;
110
+ const promise = new Promise(resolvePromise => {
111
+ resolve = resolvePromise;
112
+ });
113
+ if (!resolve) {
114
+ throw new Error('Expected deferred promise resolver.');
115
+ }
116
+ return {
117
+ promise,
118
+ resolve
119
+ };
120
+ }
121
+ //# sourceMappingURL=authSessionRequests.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authSessionRequests.spec.js","names":["describe","expect","it","createAuthSessionRequests","authRequests","first","createDeferred","order","firstRequest","queue","push","promise","secondRequest","toEqual","Promise","resolve","all","refresh","runs","run","second","toBe","operation","isResultStaleAfterSettlement","request","isResultStale","discardPendingResults","logout","clears","logoutRequests","logOut","clearSession","isLoggingOut","toBeNull","invalidations","invalidateWhenIdle","resolvePromise","Error"],"sources":["../../../src/providers/Auth/authSessionRequests.spec.ts"],"sourcesContent":["import { describe, expect, it } from 'vitest'\n\nimport { createAuthSessionRequests } from './authSessionRequests.js'\n\ndescribe('createAuthSessionRequests', () => {\n it('should serialize auth requests in queue order', async () => {\n const authRequests = createAuthSessionRequests()\n const first = createDeferred<void>()\n const order: string[] = []\n\n const firstRequest = authRequests.queue(async () => {\n order.push('first:start')\n await first.promise\n order.push('first:end')\n })\n const secondRequest = authRequests.queue(async () => {\n order.push('second')\n })\n\n expect(order).toEqual([])\n await Promise.resolve()\n expect(order).toEqual(['first:start'])\n\n first.resolve()\n await Promise.all([firstRequest, secondRequest])\n expect(order).toEqual(['first:start', 'first:end', 'second'])\n })\n\n it('should share a refresh while session results remain current', async () => {\n const authRequests = createAuthSessionRequests()\n const refresh = createDeferred<null>()\n let runs = 0\n const run = () =>\n authRequests.refresh(async () => {\n runs += 1\n return refresh.promise\n })\n\n const first = run()\n const second = run()\n expect(first).toBe(second)\n\n refresh.resolve(null)\n await Promise.all([first, second])\n expect(runs).toBe(1)\n })\n\n it('should discard a queued result after the session changes', async () => {\n const authRequests = createAuthSessionRequests()\n const operation = createDeferred<void>()\n let isResultStaleAfterSettlement = false\n\n const request = authRequests.queue(async ({ isResultStale }) => {\n await operation.promise\n isResultStaleAfterSettlement = isResultStale()\n })\n\n await Promise.resolve()\n authRequests.discardPendingResults()\n operation.resolve()\n await request\n\n expect(isResultStaleAfterSettlement).toBe(true)\n })\n\n it('should settle a logout once and prevent refresh from committing', async () => {\n const authRequests = createAuthSessionRequests()\n const logout = createDeferred<void>()\n let clears = 0\n let logoutRequests = 0\n\n const first = authRequests.logOut({\n clearSession: () => {\n clears += 1\n authRequests.discardPendingResults()\n },\n request: async () => {\n logoutRequests += 1\n await logout.promise\n },\n })\n const second = authRequests.logOut({\n clearSession: () => {\n clears += 1\n },\n request: async () => {\n logoutRequests += 1\n },\n })\n\n expect(first).toBe(second)\n expect(authRequests.isLoggingOut()).toBe(true)\n expect(await authRequests.refresh(async () => null)).toBeNull()\n logout.resolve()\n await first\n expect({ clears, logoutRequests }).toEqual({ clears: 1, logoutRequests: 1 })\n })\n\n it('should discard a deferred invalidation after the session changes', async () => {\n const authRequests = createAuthSessionRequests()\n let invalidations = 0\n\n const first = authRequests.refresh(async ({ invalidateWhenIdle }) => {\n invalidateWhenIdle(() => {\n invalidations += 1\n })\n return null\n })\n const second = authRequests.queue(async () => {\n authRequests.discardPendingResults()\n })\n\n await Promise.all([first, second])\n expect(invalidations).toBe(0)\n })\n})\n\nfunction createDeferred<Value>(): {\n promise: Promise<Value>\n resolve: (value: Value | PromiseLike<Value>) => void\n} {\n let resolve: ((value: Value | PromiseLike<Value>) => void) | undefined\n const promise = new Promise<Value>((resolvePromise) => {\n resolve = resolvePromise\n })\n\n if (!resolve) {\n throw new Error('Expected deferred promise resolver.')\n }\n\n return { promise, resolve }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,66 +1,12 @@
1
- import type { ClientUser, SanitizedPermissions } from 'payload';
1
+ import type { AuthenticatedUser, SanitizedPermissions } from 'payload';
2
2
  import React from 'react';
3
- export type UserWithToken<T = ClientUser> = {
4
- /** seconds until expiration */
5
- exp: number;
6
- refreshedToken?: string;
7
- token?: string;
8
- user: T;
9
- };
10
- export type AuthContext<T = ClientUser> = {
11
- fetchFullUser: () => Promise<null | T>;
12
- logOut: () => Promise<boolean>;
13
- /**
14
- * These are the permissions for the current user from a global scope.
15
- *
16
- * When checking for permissions on document specific level, use the `useDocumentInfo` hook instead.
17
- *
18
- * @example
19
- *
20
- * ```tsx
21
- * import { useAuth } from 'payload/ui'
22
- *
23
- * const MyComponent: React.FC = () => {
24
- * const { permissions } = useAuth()
25
- *
26
- * if (permissions?.collections?.myCollection?.create) {
27
- * // user can create documents in 'myCollection'
28
- * }
29
- *
30
- * return null
31
- * }
32
- * ```
33
- *
34
- * with useDocumentInfo:
35
- *
36
- * ```tsx
37
- * import { useDocumentInfo } from 'payload/ui'
38
- *
39
- * const MyComponent: React.FC = () => {
40
- * const { docPermissions } = useDocumentInfo()
41
- * if (docPermissions?.create) {
42
- * // user can create this document
43
- * }
44
- * return null
45
- * } ```
46
- */
47
- permissions?: SanitizedPermissions;
48
- refreshCookie: (forceRefresh?: boolean) => void;
49
- refreshCookieAsync: () => Promise<ClientUser>;
50
- refreshPermissions: () => Promise<void>;
51
- setPermissions: (permissions: SanitizedPermissions) => void;
52
- setUser: (user: null | UserWithToken<T>) => void;
53
- strategy?: string;
54
- token?: string;
55
- tokenExpirationMs?: number;
56
- user?: null | T;
57
- };
3
+ import type { AuthContext } from './types.js';
4
+ export type { AuthContext, AuthSession, UserWithToken } from './types.js';
58
5
  type Props = {
59
6
  children: React.ReactNode;
60
7
  permissions?: SanitizedPermissions;
61
- user?: ClientUser | null;
8
+ user?: AuthenticatedUser | null;
62
9
  };
63
10
  export declare function AuthProvider({ children, permissions: initialPermissions, user: initialUser, }: Props): React.JSX.Element;
64
- export declare const useAuth: <T = ClientUser>() => AuthContext<T>;
65
- export {};
11
+ export declare const useAuth: <T = AuthenticatedUser>() => AuthContext<T>;
66
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Auth/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAK/D,OAAO,KAA+D,MAAM,OAAO,CAAA;AAWnF,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,UAAU,IAAI;IAC1C,+BAA+B;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,CAAC,CAAA;CACR,CAAA;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,GAAG,UAAU,IAAI;IACxC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;IACtC,MAAM,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACH,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,aAAa,EAAE,CAAC,YAAY,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/C,kBAAkB,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAA;IAC7C,kBAAkB,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACvC,cAAc,EAAE,CAAC,WAAW,EAAE,oBAAoB,KAAK,IAAI,CAAA;IAC3D,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,IAAI,CAAC,EAAE,IAAI,GAAG,CAAC,CAAA;CAChB,CAAA;AAMD,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,IAAI,CAAC,EAAE,UAAU,GAAG,IAAI,CAAA;CACzB,CAAA;AAED,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,EAAE,kBAAkB,EAC/B,IAAI,EAAE,WAAW,GAClB,EAAE,KAAK,qBAgUP;AAED,eAAO,MAAM,OAAO,GAAI,CAAC,GAAG,UAAU,OAAM,WAAW,CAAC,CAAC,CAAmC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/Auth/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKtE,OAAO,KAA+D,MAAM,OAAO,CAAA;AAInF,OAAO,KAAK,EAAE,WAAW,EAA8B,MAAM,YAAY,CAAA;AAczE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAIzE,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,WAAW,CAAC,EAAE,oBAAoB,CAAA;IAClC,IAAI,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAA;CAChC,CAAA;AAsBD,wBAAgB,YAAY,CAAC,EAC3B,QAAQ,EACR,WAAW,EAAE,kBAAkB,EAC/B,IAAI,EAAE,WAAW,GAClB,EAAE,KAAK,qBAodP;AAED,eAAO,MAAM,OAAO,GAAI,CAAC,GAAG,iBAAiB,OAAM,WAAW,CAAC,CAAC,CAAmC,CAAA"}