@payloadcms/ui 4.0.0-internal.d3909a9 → 4.0.0-internal.d7d662c

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 (761) hide show
  1. package/dist/css/app.css +2 -2
  2. package/dist/css/colors.css +65 -0
  3. package/dist/elements/APIKeyInput/index.js +22 -23
  4. package/dist/elements/APIKeyInput/index.js.map +1 -1
  5. package/dist/elements/AddNewRelation/index.js +17 -19
  6. package/dist/elements/AddNewRelation/index.js.map +1 -1
  7. package/dist/elements/ArrayAction/index.js +39 -30
  8. package/dist/elements/ArrayAction/index.js.map +1 -1
  9. package/dist/elements/Autosave/index.js +234 -142
  10. package/dist/elements/Autosave/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  12. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  14. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  15. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  16. package/dist/elements/BulkUpload/EditMany/index.js +29 -21
  17. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  18. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  19. package/dist/elements/BulkUpload/index.js +63 -23
  20. package/dist/elements/BulkUpload/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/useUploadCollectionOptions.js.map +1 -1
  22. package/dist/elements/Button/index.css +3 -3
  23. package/dist/elements/Button/index.d.ts.map +1 -1
  24. package/dist/elements/Button/index.js +2 -1
  25. package/dist/elements/Button/index.js.map +1 -1
  26. package/dist/elements/Button/types.d.ts +1 -0
  27. package/dist/elements/Button/types.d.ts.map +1 -1
  28. package/dist/elements/Button/types.js.map +1 -1
  29. package/dist/elements/CardGrid/index.css +0 -1
  30. package/dist/elements/Chip/index.js.map +1 -1
  31. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  32. package/dist/elements/ClipboardAction/index.js +213 -88
  33. package/dist/elements/ClipboardAction/index.js.map +1 -1
  34. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  35. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  36. package/dist/elements/CodeEditor/CodeEditor.js +95 -56
  37. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  38. package/dist/elements/CollapseAllToggle/index.js +47 -32
  39. package/dist/elements/CollapseAllToggle/index.js.map +1 -1
  40. package/dist/elements/Collapsible/index.css +15 -4
  41. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  42. package/dist/elements/Collapsible/index.js +46 -38
  43. package/dist/elements/Collapsible/index.js.map +1 -1
  44. package/dist/elements/Collapsible/provider.js +37 -14
  45. package/dist/elements/Collapsible/provider.js.map +1 -1
  46. package/dist/elements/ColumnSelection/Popup.css +4 -0
  47. package/dist/elements/ColumnSelection/Popup.js +10 -2
  48. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  49. package/dist/elements/ColumnSelection/index.js.map +1 -1
  50. package/dist/elements/CommandPalette/index.css +8 -0
  51. package/dist/elements/ConfirmationModal/index.d.ts +3 -0
  52. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  53. package/dist/elements/ConfirmationModal/index.js +2 -0
  54. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  55. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  56. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  57. package/dist/elements/CreateDocumentButton/index.js +45 -43
  58. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  59. package/dist/elements/DatePicker/index.css +5 -0
  60. package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -1
  61. package/dist/elements/DefaultListViewTabs/index.css +4 -0
  62. package/dist/elements/DefaultListViewTabs/index.js +47 -37
  63. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  64. package/dist/elements/DelayedSpinner/index.js.map +1 -1
  65. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  66. package/dist/elements/DeleteDocument/index.js +1 -3
  67. package/dist/elements/DeleteDocument/index.js.map +1 -1
  68. package/dist/elements/Dialog/DialogCancel/index.js.map +1 -1
  69. package/dist/elements/Dialog/DialogConfirm/index.js.map +1 -1
  70. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  71. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  72. package/dist/elements/DocumentCard/index.d.ts +2 -0
  73. package/dist/elements/DocumentCard/index.d.ts.map +1 -1
  74. package/dist/elements/DocumentCard/index.js +2 -0
  75. package/dist/elements/DocumentCard/index.js.map +1 -1
  76. package/dist/elements/DocumentControls/index.js +1 -1
  77. package/dist/elements/DocumentControls/index.js.map +1 -1
  78. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  79. package/dist/elements/DocumentFields/index.js +125 -64
  80. package/dist/elements/DocumentFields/index.js.map +1 -1
  81. package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
  82. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  83. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +80 -34
  84. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  85. package/dist/elements/DocumentHeader/Tabs/Tab/index.css +4 -0
  86. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  87. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  88. package/dist/elements/DocumentLocked/index.js +1 -0
  89. package/dist/elements/DocumentLocked/index.js.map +1 -1
  90. package/dist/elements/DocumentStaleData/index.js.map +1 -1
  91. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  92. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js +2 -0
  93. package/dist/elements/DraggableSortable/DragOverlayPreview/index.js.map +1 -1
  94. package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
  95. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +10 -7
  96. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  97. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +2 -0
  98. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  99. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  100. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  101. package/dist/elements/DraggableSortable/index.js +104 -170
  102. package/dist/elements/DraggableSortable/index.js.map +1 -1
  103. package/dist/elements/DraggableSortable/types.d.ts +1 -0
  104. package/dist/elements/DraggableSortable/types.d.ts.map +1 -1
  105. package/dist/elements/DraggableSortable/types.js.map +1 -1
  106. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  107. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts +14 -0
  108. package/dist/elements/DraggableSortable/useRowAccessibility.d.ts.map +1 -0
  109. package/dist/elements/DraggableSortable/useRowAccessibility.js +99 -0
  110. package/dist/elements/DraggableSortable/useRowAccessibility.js.map +1 -0
  111. package/dist/elements/Drawer/index.js +138 -81
  112. package/dist/elements/Drawer/index.js.map +1 -1
  113. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  114. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  115. package/dist/elements/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +177 -62
  117. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  118. package/dist/elements/EditMany/DrawerContent.js +1 -1
  119. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  120. package/dist/elements/EditMany/index.js.map +1 -1
  121. package/dist/elements/FieldDiffContainer/index.d.ts.map +1 -1
  122. package/dist/elements/FieldDiffContainer/index.js +7 -1
  123. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  124. package/dist/elements/FieldDiffLabel/index.d.ts +1 -0
  125. package/dist/elements/FieldDiffLabel/index.d.ts.map +1 -1
  126. package/dist/elements/FieldDiffLabel/index.js +2 -0
  127. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  128. package/dist/elements/FieldSelect/index.js +23 -14
  129. package/dist/elements/FieldSelect/index.js.map +1 -1
  130. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  131. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  132. package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
  133. package/dist/elements/FileManager/index.js.map +1 -1
  134. package/dist/elements/FullscreenModal/index.js.map +1 -1
  135. package/dist/elements/GenerateConfirmation/index.js +21 -21
  136. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  137. package/dist/elements/GroupBy/Popup.js.map +1 -1
  138. package/dist/elements/GroupBy/index.js +120 -66
  139. package/dist/elements/GroupBy/index.js.map +1 -1
  140. package/dist/elements/HTMLDiff/colors.css +7 -0
  141. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  142. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +51 -42
  143. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  144. package/dist/elements/Hierarchy/DocHeaderButton/index.js +1 -1
  145. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  146. package/dist/elements/Hierarchy/EditButton/index.js.map +1 -1
  147. package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -1
  148. package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -1
  149. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js +25 -18
  150. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -1
  151. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -1
  152. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  153. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  154. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  155. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  156. package/dist/elements/Hierarchy/Tree/index.js +10 -5
  157. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  158. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  159. package/dist/elements/HydratePreferences/index.js.map +1 -1
  160. package/dist/elements/IDLabel/index.js.map +1 -1
  161. package/dist/elements/InputStepper/index.js.map +1 -1
  162. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  163. package/dist/elements/ItemsDrawer/index.js +186 -105
  164. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  165. package/dist/elements/LLMInstructionsDescription/index.js.map +1 -1
  166. package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -1
  167. package/dist/elements/LayoutToggle/index.js.map +1 -1
  168. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  169. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +1 -1
  170. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  171. package/dist/elements/Link/index.js +1 -1
  172. package/dist/elements/Link/index.js.map +1 -1
  173. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -1
  174. package/dist/elements/ListControls/index.js.map +1 -1
  175. package/dist/elements/ListDrawer/DrawerContent.js +1 -1
  176. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  177. package/dist/elements/ListDrawer/Provider.d.ts +3 -2
  178. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  179. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  180. package/dist/elements/ListDrawer/index.js.map +1 -1
  181. package/dist/elements/ListGroupByButton/index.js.map +1 -1
  182. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  183. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -1
  184. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  185. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  186. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +11 -12
  187. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  188. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +1 -1
  189. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  190. package/dist/elements/ListSelection/index.js.map +1 -1
  191. package/dist/elements/ListWhereBuilder/index.js.map +1 -1
  192. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  193. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  194. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  195. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  196. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  197. package/dist/elements/LivePreview/Window/index.d.ts.map +1 -1
  198. package/dist/elements/LivePreview/Window/index.js +6 -1
  199. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  200. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  201. package/dist/elements/Loading/index.js +62 -18
  202. package/dist/elements/Loading/index.js.map +1 -1
  203. package/dist/elements/LoadingOverlay/index.js +93 -49
  204. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  205. package/dist/elements/Localizer/index.js +133 -108
  206. package/dist/elements/Localizer/index.js.map +1 -1
  207. package/dist/elements/Locked/index.js +54 -37
  208. package/dist/elements/Locked/index.js.map +1 -1
  209. package/dist/elements/Logout/index.js.map +1 -1
  210. package/dist/elements/MiniCarousel/index.js +102 -38
  211. package/dist/elements/MiniCarousel/index.js.map +1 -1
  212. package/dist/elements/Modal/index.d.ts.map +1 -1
  213. package/dist/elements/Modal/index.js +13 -1
  214. package/dist/elements/Modal/index.js.map +1 -1
  215. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  216. package/dist/elements/Nav/NavWrapper/index.js +13 -14
  217. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  218. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  219. package/dist/elements/Nav/SidebarTabs/TabError/index.js.map +1 -1
  220. package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
  221. package/dist/elements/Nav/SidebarTabs/index.client.js +31 -20
  222. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  223. package/dist/elements/Nav/index.client.js.map +1 -1
  224. package/dist/elements/Nav/index.css +5 -0
  225. package/dist/elements/NavGroup/index.css +27 -3
  226. package/dist/elements/NavGroup/index.js +31 -38
  227. package/dist/elements/NavGroup/index.js.map +1 -1
  228. package/dist/elements/NoListResults/index.css +1 -0
  229. package/dist/elements/NoListResults/index.js +1 -1
  230. package/dist/elements/NoListResults/index.js.map +1 -1
  231. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  232. package/dist/elements/PageControls/index.js.map +1 -1
  233. package/dist/elements/Pagination/ClickableArrow/index.js +10 -11
  234. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  235. package/dist/elements/Pagination/SimplePagination/index.js.map +1 -1
  236. package/dist/elements/Pagination/index.js +36 -37
  237. package/dist/elements/Pagination/index.js.map +1 -1
  238. package/dist/elements/PerPage/index.js.map +1 -1
  239. package/dist/elements/Pill/index.js.map +1 -1
  240. package/dist/elements/Popup/index.d.ts.map +1 -1
  241. package/dist/elements/Popup/index.js +19 -3
  242. package/dist/elements/Popup/index.js.map +1 -1
  243. package/dist/elements/PreviewButton/index.js.map +1 -1
  244. package/dist/elements/PreviewSizes/index.js +141 -70
  245. package/dist/elements/PreviewSizes/index.js.map +1 -1
  246. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  247. package/dist/elements/PublishButton/ScheduleDrawer/index.js +16 -8
  248. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  249. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  250. package/dist/elements/PublishButton/index.js +1 -0
  251. package/dist/elements/PublishButton/index.js.map +1 -1
  252. package/dist/elements/PublishMany/DrawerContent.js +1 -1
  253. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  254. package/dist/elements/PublishMany/index.js +32 -24
  255. package/dist/elements/PublishMany/index.js.map +1 -1
  256. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +194 -100
  257. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  258. package/dist/elements/QueryPresets/fields/GroupByField/index.js +78 -29
  259. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  260. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -1
  261. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  262. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  263. package/dist/elements/ReactSelect/MultiValue/index.js +19 -9
  264. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  265. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  266. package/dist/elements/ReactSelect/MultiValueRemove/index.js +38 -29
  267. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  268. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  269. package/dist/elements/ReactSelect/index.css +4 -0
  270. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  271. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  272. package/dist/elements/RelationshipTable/index.js +1 -1
  273. package/dist/elements/RelationshipTable/index.js.map +1 -1
  274. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  275. package/dist/elements/RenderTitle/index.js.map +1 -1
  276. package/dist/elements/RestoreMany/index.js +1 -1
  277. package/dist/elements/RestoreMany/index.js.map +1 -1
  278. package/dist/elements/SchedulePublishButton/index.js +111 -39
  279. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  280. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  281. package/dist/elements/SegmentedControl/index.js.map +1 -1
  282. package/dist/elements/SelectAll/index.js.map +1 -1
  283. package/dist/elements/SelectRow/index.js +31 -21
  284. package/dist/elements/SelectRow/index.js.map +1 -1
  285. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  286. package/dist/elements/SidebarToggle/index.js.map +1 -1
  287. package/dist/elements/SkipToContent/index.js.map +1 -1
  288. package/dist/elements/SortHeader/index.js.map +1 -1
  289. package/dist/elements/SortRow/index.js.map +1 -1
  290. package/dist/elements/Spinner/index.js.map +1 -1
  291. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  292. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  293. package/dist/elements/StepNav/context.js.map +1 -1
  294. package/dist/elements/Switch/index.css +2 -2
  295. package/dist/elements/Switch/index.js.map +1 -1
  296. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -9
  297. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  298. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +80 -27
  299. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  300. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +9 -10
  301. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  302. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  303. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  304. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +21 -32
  305. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  306. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  307. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  308. package/dist/elements/Table/DefaultCell/fields/Status/index.js.map +1 -1
  309. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  310. package/dist/elements/Table/GridNavigation/useGridNavigation.js.map +1 -1
  311. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  312. package/dist/elements/Table/TableIdentity.js +32 -16
  313. package/dist/elements/Table/TableIdentity.js.map +1 -1
  314. package/dist/elements/Table/useAriaSort.js.map +1 -1
  315. package/dist/elements/Thumbnail/index.js +133 -53
  316. package/dist/elements/Thumbnail/index.js.map +1 -1
  317. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  318. package/dist/elements/TimezonePicker/index.js +113 -54
  319. package/dist/elements/TimezonePicker/index.js.map +1 -1
  320. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  321. package/dist/elements/Tooltip/index.js.map +1 -1
  322. package/dist/elements/TrashBanner/index.js.map +1 -1
  323. package/dist/elements/UnpublishMany/DrawerContent.js +1 -1
  324. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  325. package/dist/elements/UnpublishMany/index.js +32 -24
  326. package/dist/elements/UnpublishMany/index.js.map +1 -1
  327. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  328. package/dist/elements/Upload/index.js.map +1 -1
  329. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -1
  330. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -1
  331. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  332. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  333. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  334. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  335. package/dist/elements/UserMenu/index.js +2 -1
  336. package/dist/elements/UserMenu/index.js.map +1 -1
  337. package/dist/elements/ViewDescription/index.js.map +1 -1
  338. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  339. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  340. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  341. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  342. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  343. package/dist/elements/WhereBuilder/Condition/index.js +1 -0
  344. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  345. package/dist/exports/client/{CodeEditor-I6PL55BF.js → CodeEditor-23ZGBN6S.js} +2 -2
  346. package/dist/exports/client/{DatePicker-RFCB5VGD.js → DatePicker-AZBZPMY6.js} +2 -2
  347. package/dist/exports/client/chunk-EXVR6BZK.js +27 -0
  348. package/dist/exports/client/chunk-EXVR6BZK.js.map +7 -0
  349. package/dist/exports/client/{chunk-AVJIZPR3.js → chunk-SMBFG6XU.js} +1 -1
  350. package/dist/exports/client/{chunk-AVJIZPR3.js.map → chunk-SMBFG6XU.js.map} +1 -1
  351. package/dist/exports/client/{chunk-O2RR6XEH.js → chunk-ZP2PB6M4.js} +2 -2
  352. package/dist/exports/client/{chunk-O2RR6XEH.js.map → chunk-ZP2PB6M4.js.map} +1 -1
  353. package/dist/exports/client/index.d.ts +2 -2
  354. package/dist/exports/client/index.d.ts.map +1 -1
  355. package/dist/exports/client/index.js +27 -27
  356. package/dist/exports/client/index.js.map +4 -4
  357. package/dist/exports/rsc/index.d.ts +1 -1
  358. package/dist/exports/rsc/index.d.ts.map +1 -1
  359. package/dist/exports/rsc/index.js +1 -1
  360. package/dist/exports/rsc/index.js.map +1 -1
  361. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  362. package/dist/fields/Array/ArrayRow.js +207 -99
  363. package/dist/fields/Array/ArrayRow.js.map +1 -1
  364. package/dist/fields/Array/index.d.ts.map +1 -1
  365. package/dist/fields/Array/index.js +521 -308
  366. package/dist/fields/Array/index.js.map +1 -1
  367. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  368. package/dist/fields/Blocks/BlockRow.js +224 -136
  369. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  370. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  371. package/dist/fields/Blocks/BlockSelector/index.js +114 -74
  372. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  373. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  374. package/dist/fields/Blocks/RowActions.js +75 -55
  375. package/dist/fields/Blocks/RowActions.js.map +1 -1
  376. package/dist/fields/Blocks/SectionTitle/index.css +4 -0
  377. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  378. package/dist/fields/Blocks/index.d.ts.map +1 -1
  379. package/dist/fields/Blocks/index.js +1 -0
  380. package/dist/fields/Blocks/index.js.map +1 -1
  381. package/dist/fields/Checkbox/index.css +3 -3
  382. package/dist/fields/Code/index.d.ts.map +1 -1
  383. package/dist/fields/Code/index.js +3 -2
  384. package/dist/fields/Code/index.js.map +1 -1
  385. package/dist/fields/Collapsible/index.js +114 -73
  386. package/dist/fields/Collapsible/index.js.map +1 -1
  387. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  388. package/dist/fields/DateTime/index.js +215 -121
  389. package/dist/fields/DateTime/index.js.map +1 -1
  390. package/dist/fields/FieldDescription/index.js +29 -21
  391. package/dist/fields/FieldDescription/index.js.map +1 -1
  392. package/dist/fields/FieldError/index.js.map +1 -1
  393. package/dist/fields/FieldLabel/index.js.map +1 -1
  394. package/dist/fields/Group/index.js +75 -46
  395. package/dist/fields/Group/index.js.map +1 -1
  396. package/dist/fields/Hidden/index.js +23 -15
  397. package/dist/fields/Hidden/index.js.map +1 -1
  398. package/dist/fields/JSON/index.d.ts.map +1 -1
  399. package/dist/fields/JSON/index.js +3 -2
  400. package/dist/fields/JSON/index.js.map +1 -1
  401. package/dist/fields/Number/Input.js.map +1 -1
  402. package/dist/fields/Password/input.js +46 -27
  403. package/dist/fields/Password/input.js.map +1 -1
  404. package/dist/fields/RadioGroup/Radio/index.js +35 -35
  405. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  406. package/dist/fields/Relationship/Input.js +14 -14
  407. package/dist/fields/Relationship/Input.js.map +1 -1
  408. package/dist/fields/Relationship/index.js +216 -111
  409. package/dist/fields/Relationship/index.js.map +1 -1
  410. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  411. package/dist/fields/Relationship/select-components/SingleValue/index.js +9 -11
  412. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  413. package/dist/fields/Select/Input.js +26 -10
  414. package/dist/fields/Select/Input.js.map +1 -1
  415. package/dist/fields/Select/index.js +158 -77
  416. package/dist/fields/Select/index.js.map +1 -1
  417. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  418. package/dist/fields/Tabs/index.css +11 -15
  419. package/dist/fields/Tabs/index.js +120 -112
  420. package/dist/fields/Tabs/index.js.map +1 -1
  421. package/dist/fields/Text/Input.d.ts.map +1 -1
  422. package/dist/fields/Text/Input.js +2 -2
  423. package/dist/fields/Text/Input.js.map +1 -1
  424. package/dist/fields/Text/index.js +172 -95
  425. package/dist/fields/Text/index.js.map +1 -1
  426. package/dist/fields/Text/types.d.ts +2 -1
  427. package/dist/fields/Text/types.d.ts.map +1 -1
  428. package/dist/fields/Text/types.js.map +1 -1
  429. package/dist/fields/Textarea/Input.js +58 -28
  430. package/dist/fields/Textarea/Input.js.map +1 -1
  431. package/dist/fields/Textarea/index.js +97 -55
  432. package/dist/fields/Textarea/index.js.map +1 -1
  433. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  434. package/dist/fields/Upload/Input.d.ts.map +1 -1
  435. package/dist/fields/Upload/Input.js +16 -7
  436. package/dist/fields/Upload/Input.js.map +1 -1
  437. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  438. package/dist/fields/Upload/index.css +9 -0
  439. package/dist/fields/Upload/index.js +101 -63
  440. package/dist/fields/Upload/index.js.map +1 -1
  441. package/dist/fields/shared/useRowFocus.js.map +1 -1
  442. package/dist/forms/Form/context.js.map +1 -1
  443. package/dist/forms/Form/index.d.ts.map +1 -1
  444. package/dist/forms/Form/index.js +27 -8
  445. package/dist/forms/Form/index.js.map +1 -1
  446. package/dist/forms/Form/types.d.ts +1 -1
  447. package/dist/forms/Form/types.d.ts.map +1 -1
  448. package/dist/forms/Form/types.js.map +1 -1
  449. package/dist/forms/NullifyField/index.js.map +1 -1
  450. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  451. package/dist/forms/RenderFields/context.js +3 -2
  452. package/dist/forms/RenderFields/context.js.map +1 -1
  453. package/dist/forms/RenderFields/index.js.map +1 -1
  454. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  455. package/dist/forms/RowLabel/Context/index.js +58 -18
  456. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  457. package/dist/forms/Submit/index.js +12 -13
  458. package/dist/forms/Submit/index.js.map +1 -1
  459. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  460. package/dist/forms/useField/index.js +1 -1
  461. package/dist/forms/useField/index.js.map +1 -1
  462. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  463. package/dist/graphics/Account/Gravatar/index.js +32 -17
  464. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  465. package/dist/graphics/Account/index.js +27 -18
  466. package/dist/graphics/Account/index.js.map +1 -1
  467. package/dist/hooks/useControllableState.js.map +1 -1
  468. package/dist/hooks/useDebounce.js.map +1 -1
  469. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  470. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  471. package/dist/hooks/useDelay.js.map +1 -1
  472. package/dist/hooks/useDelayedRender.js.map +1 -1
  473. package/dist/hooks/useElementHeightVariable.js.map +1 -1
  474. package/dist/hooks/useHotkey.js.map +1 -1
  475. package/dist/hooks/useIntersect.js.map +1 -1
  476. package/dist/hooks/usePayloadAPI.js.map +1 -1
  477. package/dist/hooks/usePopupWindow.js.map +1 -1
  478. package/dist/hooks/useRelatedCollections.js.map +1 -1
  479. package/dist/hooks/useResize.js.map +1 -1
  480. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  481. package/dist/hooks/useThrottledEffect.js +21 -24
  482. package/dist/hooks/useThrottledEffect.js.map +1 -1
  483. package/dist/hooks/useUseAsTitle.js.map +1 -1
  484. package/dist/layouts/Root/RootProviders.d.ts.map +1 -1
  485. package/dist/layouts/Root/RootProviders.js +31 -28
  486. package/dist/layouts/Root/RootProviders.js.map +1 -1
  487. package/dist/providers/Actions/index.js.map +1 -1
  488. package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -1
  489. package/dist/providers/Auth/index.js +2 -2
  490. package/dist/providers/Auth/index.js.map +1 -1
  491. package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -1
  492. package/dist/providers/ClientFunction/index.js.map +1 -1
  493. package/dist/providers/Config/index.js +65 -32
  494. package/dist/providers/Config/index.js.map +1 -1
  495. package/dist/providers/DocumentEvents/index.js.map +1 -1
  496. package/dist/providers/EditDepth/index.js.map +1 -1
  497. package/dist/providers/Embed/index.js.map +1 -1
  498. package/dist/providers/EntityVisibility/index.js.map +1 -1
  499. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  500. package/dist/providers/ListQuery/index.js +5 -5
  501. package/dist/providers/ListQuery/index.js.map +1 -1
  502. package/dist/providers/ListQuery/types.d.ts +6 -1
  503. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  504. package/dist/providers/ListQuery/types.js.map +1 -1
  505. package/dist/providers/ModalAccessibility/index.js.map +1 -1
  506. package/dist/providers/ModalFocus/index.d.ts +15 -0
  507. package/dist/providers/ModalFocus/index.d.ts.map +1 -0
  508. package/dist/providers/ModalFocus/index.js +70 -0
  509. package/dist/providers/ModalFocus/index.js.map +1 -0
  510. package/dist/providers/RouteCache/index.js.map +1 -1
  511. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  512. package/dist/providers/RouteTransition/index.d.ts +3 -2
  513. package/dist/providers/RouteTransition/index.d.ts.map +1 -1
  514. package/dist/providers/RouteTransition/index.js +78 -105
  515. package/dist/providers/RouteTransition/index.js.map +1 -1
  516. package/dist/providers/RouterAdapter/index.js.map +1 -1
  517. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  518. package/dist/providers/TableColumns/index.d.ts.map +1 -1
  519. package/dist/providers/TableColumns/index.js +18 -35
  520. package/dist/providers/TableColumns/index.js.map +1 -1
  521. package/dist/providers/Theme/index.js.map +1 -1
  522. package/dist/providers/ToastContainer/index.js.map +1 -1
  523. package/dist/providers/Translation/index.js.map +1 -1
  524. package/dist/providers/UploadControls/index.js.map +1 -1
  525. package/dist/providers/UploadEdits/index.js.map +1 -1
  526. package/dist/providers/UploadHandlers/index.js.map +1 -1
  527. package/dist/styles.css +66 -1
  528. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  529. package/dist/utilities/serverFunctionRegistry.js +2 -2
  530. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  531. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  532. package/dist/views/API/index.client.d.ts.map +1 -1
  533. package/dist/views/API/index.client.js +1 -0
  534. package/dist/views/API/index.client.js.map +1 -1
  535. package/dist/views/Account/ResetPreferences/index.js +17 -17
  536. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  537. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  538. package/dist/views/Account/ToggleHighContrast/index.js.map +1 -1
  539. package/dist/views/Account/ToggleTheme/index.js +106 -27
  540. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  541. package/dist/views/Account/index.client.js.map +1 -1
  542. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  543. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  544. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  545. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +373 -151
  546. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  547. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  548. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
  549. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +2 -1
  550. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  551. package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -1
  552. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  553. package/dist/views/Edit/Auth/index.js +13 -11
  554. package/dist/views/Edit/Auth/index.js.map +1 -1
  555. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  556. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  557. package/dist/views/Edit/index.d.ts.map +1 -1
  558. package/dist/views/Edit/index.js +27 -16
  559. package/dist/views/Edit/index.js.map +1 -1
  560. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  561. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +45 -41
  562. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  563. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  564. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  565. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  566. package/dist/views/HierarchyList/HierarchyTable/DateCell.js +8 -9
  567. package/dist/views/HierarchyList/HierarchyTable/DateCell.js.map +1 -1
  568. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -1
  569. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  570. package/dist/views/HierarchyList/index.js +2 -2
  571. package/dist/views/HierarchyList/index.js.map +1 -1
  572. package/dist/views/List/DocumentGrid/index.js.map +1 -1
  573. package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -1
  574. package/dist/views/List/ListSelection/index.js.map +1 -1
  575. package/dist/views/Login/LoginField/index.js.map +1 -1
  576. package/dist/views/Login/LoginForm/index.js.map +1 -1
  577. package/dist/views/Logout/LogoutClient.js.map +1 -1
  578. package/dist/views/NotFound/index.client.js.map +1 -1
  579. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  580. package/dist/views/Verify/index.client.js.map +1 -1
  581. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  582. package/dist/views/Version/Default/index.js +321 -181
  583. package/dist/views/Version/Default/index.js.map +1 -1
  584. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  585. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  586. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +9 -11
  587. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  588. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  589. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +41 -29
  590. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  591. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  592. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  593. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +19 -19
  594. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  595. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  596. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  597. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  598. package/dist/views/Version/Restore/index.js +176 -77
  599. package/dist/views/Version/Restore/index.js.map +1 -1
  600. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  601. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  602. package/dist/views/Version/SelectComparison/index.js +113 -33
  603. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  604. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  605. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  606. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  607. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  608. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js.map +1 -1
  609. package/dist/views/Versions/index.client.js +9 -11
  610. package/dist/views/Versions/index.client.js.map +1 -1
  611. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.css +28 -0
  612. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts +16 -0
  613. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts.map +1 -0
  614. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js +98 -0
  615. package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js.map +1 -0
  616. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.css +70 -0
  617. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts +13 -0
  618. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts.map +1 -0
  619. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js +81 -0
  620. package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js.map +1 -0
  621. package/dist/widgets/{RecentlyViewed/pinnedPreferences.d.ts → Activity/Tabs/PinnedDocuments/preferences.d.ts} +6 -9
  622. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.d.ts.map +1 -0
  623. package/dist/widgets/{RecentlyViewed/pinnedPreferences.js → Activity/Tabs/PinnedDocuments/preferences.js} +3 -22
  624. package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.js.map +1 -0
  625. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts +39 -0
  626. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts.map +1 -0
  627. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js +83 -0
  628. package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js.map +1 -0
  629. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts +9 -0
  630. package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts.map +1 -0
  631. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js +23 -0
  632. package/dist/widgets/Activity/Tabs/RecentDocuments/index.js.map +1 -0
  633. package/dist/widgets/Activity/components/DocumentList/index.css +61 -0
  634. package/dist/widgets/Activity/components/DocumentList/index.d.ts +15 -0
  635. package/dist/widgets/Activity/components/DocumentList/index.d.ts.map +1 -0
  636. package/dist/widgets/Activity/components/DocumentList/index.js +56 -0
  637. package/dist/widgets/Activity/components/DocumentList/index.js.map +1 -0
  638. package/dist/widgets/Activity/components/EmptyState/index.css +47 -0
  639. package/dist/widgets/Activity/components/EmptyState/index.d.ts +12 -0
  640. package/dist/widgets/Activity/components/EmptyState/index.d.ts.map +1 -0
  641. package/dist/widgets/Activity/components/EmptyState/index.js +37 -0
  642. package/dist/widgets/Activity/components/EmptyState/index.js.map +1 -0
  643. package/dist/widgets/Activity/components/Pagination/index.css +42 -0
  644. package/dist/widgets/Activity/components/Pagination/index.d.ts +20 -0
  645. package/dist/widgets/Activity/components/Pagination/index.d.ts.map +1 -0
  646. package/dist/widgets/Activity/components/Pagination/index.js +125 -0
  647. package/dist/widgets/Activity/components/Pagination/index.js.map +1 -0
  648. package/dist/widgets/Activity/components/StatusPill/index.css +24 -0
  649. package/dist/widgets/Activity/components/StatusPill/index.d.ts +8 -0
  650. package/dist/widgets/Activity/components/StatusPill/index.d.ts.map +1 -0
  651. package/dist/widgets/Activity/components/StatusPill/index.js +18 -0
  652. package/dist/widgets/Activity/components/StatusPill/index.js.map +1 -0
  653. package/dist/widgets/Activity/index.client.d.ts +15 -0
  654. package/dist/widgets/Activity/index.client.d.ts.map +1 -0
  655. package/dist/widgets/Activity/index.client.js +186 -0
  656. package/dist/widgets/Activity/index.client.js.map +1 -0
  657. package/dist/widgets/Activity/index.css +320 -0
  658. package/dist/widgets/Activity/index.d.ts +13 -0
  659. package/dist/widgets/Activity/index.d.ts.map +1 -0
  660. package/dist/widgets/Activity/index.js +100 -0
  661. package/dist/widgets/Activity/index.js.map +1 -0
  662. package/dist/widgets/{RecentlyViewed/index.client.d.ts → Activity/types.d.ts} +5 -13
  663. package/dist/widgets/Activity/types.d.ts.map +1 -0
  664. package/dist/widgets/Activity/types.js +2 -0
  665. package/dist/widgets/Activity/types.js.map +1 -0
  666. package/dist/widgets/Activity/utils/cache.d.ts +33 -0
  667. package/dist/widgets/Activity/utils/cache.d.ts.map +1 -0
  668. package/dist/widgets/Activity/utils/cache.js +72 -0
  669. package/dist/widgets/Activity/utils/cache.js.map +1 -0
  670. package/dist/widgets/Activity/utils/constants.d.ts +5 -0
  671. package/dist/widgets/Activity/utils/constants.d.ts.map +1 -0
  672. package/dist/widgets/Activity/utils/constants.js +4 -0
  673. package/dist/widgets/Activity/utils/constants.js.map +1 -0
  674. package/dist/widgets/Activity/utils/documents.d.ts +11 -0
  675. package/dist/widgets/Activity/utils/documents.d.ts.map +1 -0
  676. package/dist/widgets/Activity/utils/documents.js +38 -0
  677. package/dist/widgets/Activity/utils/documents.js.map +1 -0
  678. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts +20 -0
  679. package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts.map +1 -0
  680. package/dist/widgets/{RecentlyViewed/getDocuments.js → Activity/utils/getActivityWidgetDocs.js} +18 -19
  681. package/dist/widgets/Activity/utils/getActivityWidgetDocs.js.map +1 -0
  682. package/dist/widgets/Activity/utils/state.d.ts +44 -0
  683. package/dist/widgets/Activity/utils/state.d.ts.map +1 -0
  684. package/dist/widgets/Activity/utils/state.js +80 -0
  685. package/dist/widgets/Activity/utils/state.js.map +1 -0
  686. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts +35 -0
  687. package/dist/widgets/Activity/utils/useActivityDocuments.d.ts.map +1 -0
  688. package/dist/widgets/Activity/utils/useActivityDocuments.js +141 -0
  689. package/dist/widgets/Activity/utils/useActivityDocuments.js.map +1 -0
  690. package/dist/widgets/Activity/utils/usePageSize.d.ts +11 -0
  691. package/dist/widgets/Activity/utils/usePageSize.d.ts.map +1 -0
  692. package/dist/widgets/Activity/utils/usePageSize.js +35 -0
  693. package/dist/widgets/Activity/utils/usePageSize.js.map +1 -0
  694. package/dist/widgets/CollectionCards/index.client.d.ts +3 -0
  695. package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -1
  696. package/dist/widgets/CollectionCards/index.client.js +3 -0
  697. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  698. package/dist/widgets/CollectionCards/index.d.ts +3 -0
  699. package/dist/widgets/CollectionCards/index.d.ts.map +1 -1
  700. package/dist/widgets/CollectionCards/index.js +3 -0
  701. package/dist/widgets/CollectionCards/index.js.map +1 -1
  702. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  703. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -1
  704. package/dist/widgets/CollectionQuery/SortField/index.js +181 -73
  705. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -1
  706. package/dist/widgets/CollectionQuery/index.d.ts +3 -0
  707. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -1
  708. package/dist/widgets/CollectionQuery/index.js +3 -0
  709. package/dist/widgets/CollectionQuery/index.js.map +1 -1
  710. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts +3 -0
  711. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts.map +1 -1
  712. package/dist/widgets/UploadDropzone/CollectionsField/index.js +65 -14
  713. package/dist/widgets/UploadDropzone/CollectionsField/index.js.map +1 -1
  714. package/dist/widgets/UploadDropzone/index.client.d.ts +3 -0
  715. package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -1
  716. package/dist/widgets/UploadDropzone/index.client.js +3 -0
  717. package/dist/widgets/UploadDropzone/index.client.js.map +1 -1
  718. package/dist/widgets/UploadDropzone/index.d.ts +3 -0
  719. package/dist/widgets/UploadDropzone/index.d.ts.map +1 -1
  720. package/dist/widgets/UploadDropzone/index.js +3 -0
  721. package/dist/widgets/UploadDropzone/index.js.map +1 -1
  722. package/dist/widgets/Welcome/index.d.ts +3 -0
  723. package/dist/widgets/Welcome/index.d.ts.map +1 -1
  724. package/dist/widgets/Welcome/index.js +3 -0
  725. package/dist/widgets/Welcome/index.js.map +1 -1
  726. package/dist/widgets/WidgetCard/index.css +0 -20
  727. package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.css +2 -2
  728. package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.d.ts +3 -1
  729. package/dist/widgets/shared/CollectionFilter/index.d.ts.map +1 -0
  730. package/dist/widgets/shared/CollectionFilter/index.js +170 -0
  731. package/dist/widgets/shared/CollectionFilter/index.js.map +1 -0
  732. package/package.json +8 -7
  733. package/dist/exports/client/chunk-R7M6BG75.js +0 -27
  734. package/dist/exports/client/chunk-R7M6BG75.js.map +0 -7
  735. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +0 -1
  736. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +0 -102
  737. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +0 -1
  738. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.css +0 -41
  739. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts +0 -19
  740. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts.map +0 -1
  741. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js +0 -121
  742. package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js.map +0 -1
  743. package/dist/widgets/RecentlyViewed/getDocuments.d.ts +0 -20
  744. package/dist/widgets/RecentlyViewed/getDocuments.d.ts.map +0 -1
  745. package/dist/widgets/RecentlyViewed/getDocuments.js.map +0 -1
  746. package/dist/widgets/RecentlyViewed/index.client.d.ts.map +0 -1
  747. package/dist/widgets/RecentlyViewed/index.client.js +0 -409
  748. package/dist/widgets/RecentlyViewed/index.client.js.map +0 -1
  749. package/dist/widgets/RecentlyViewed/index.css +0 -352
  750. package/dist/widgets/RecentlyViewed/index.d.ts +0 -10
  751. package/dist/widgets/RecentlyViewed/index.d.ts.map +0 -1
  752. package/dist/widgets/RecentlyViewed/index.js +0 -47
  753. package/dist/widgets/RecentlyViewed/index.js.map +0 -1
  754. package/dist/widgets/RecentlyViewed/pinnedPreferences.d.ts.map +0 -1
  755. package/dist/widgets/RecentlyViewed/pinnedPreferences.js.map +0 -1
  756. package/dist/widgets/RecentlyViewed/recents.d.ts +0 -8
  757. package/dist/widgets/RecentlyViewed/recents.d.ts.map +0 -1
  758. package/dist/widgets/RecentlyViewed/recents.js +0 -19
  759. package/dist/widgets/RecentlyViewed/recents.js.map +0 -1
  760. /package/dist/exports/client/{CodeEditor-I6PL55BF.js.map → CodeEditor-23ZGBN6S.js.map} +0 -0
  761. /package/dist/exports/client/{DatePicker-RFCB5VGD.js.map → DatePicker-AZBZPMY6.js.map} +0 -0
@@ -13,7 +13,7 @@ import { DocumentDrawer } from '../DocumentDrawer/index.js';
13
13
  import { Popup, PopupList } from '../Popup/index.js';
14
14
  const baseClass = 'create-document-button';
15
15
  export function CreateDocumentButton(t0) {
16
- const $ = _c(41);
16
+ const $ = _c(43);
17
17
  const {
18
18
  buttonStyle: t1,
19
19
  collections,
@@ -140,49 +140,49 @@ export function CreateDocumentButton(t0) {
140
140
  }
141
141
  const buttonLabel_0 = t6;
142
142
  let t7;
143
- if ($[26] !== buttonLabel_0 || $[27] !== buttonStyle || $[28] !== size) {
144
- t7 = t8 => {
145
- const {
146
- active,
147
- ...buttonProps
148
- } = t8;
149
- return _jsx(Button, {
150
- ...buttonProps,
151
- buttonStyle,
152
- className: `${baseClass}__popup-button`,
153
- icon: "chevron",
154
- selected: active,
155
- size,
156
- children: buttonLabel_0
157
- });
158
- };
159
- $[26] = buttonLabel_0;
160
- $[27] = buttonStyle;
161
- $[28] = size;
162
- $[29] = t7;
163
- } else {
164
- t7 = $[29];
165
- }
166
- let t8;
167
- if ($[30] !== collections || $[31] !== drawerSlug || $[32] !== getCollectionLabel || $[33] !== handleSave || $[34] !== handleSelect || $[35] !== selectedCollection || $[36] !== t7) {
143
+ if ($[26] !== buttonLabel_0 || $[27] !== buttonStyle || $[28] !== collections || $[29] !== drawerSlug || $[30] !== getCollectionLabel || $[31] !== handleSave || $[32] !== handleSelect || $[33] !== selectedCollection || $[34] !== size) {
144
+ let t8;
145
+ if ($[36] !== buttonLabel_0 || $[37] !== buttonStyle || $[38] !== size) {
146
+ t8 = t9 => {
147
+ const {
148
+ active,
149
+ ...buttonProps
150
+ } = t9;
151
+ return _jsx(Button, {
152
+ ...buttonProps,
153
+ buttonStyle,
154
+ className: `${baseClass}__popup-button`,
155
+ icon: "chevron",
156
+ selected: active,
157
+ size,
158
+ children: buttonLabel_0
159
+ });
160
+ };
161
+ $[36] = buttonLabel_0;
162
+ $[37] = buttonStyle;
163
+ $[38] = size;
164
+ $[39] = t8;
165
+ } else {
166
+ t8 = $[39];
167
+ }
168
168
  let t9;
169
- if ($[38] !== getCollectionLabel || $[39] !== handleSelect) {
169
+ if ($[40] !== getCollectionLabel || $[41] !== handleSelect) {
170
170
  t9 = collection_1 => _jsx(PopupList.Button, {
171
171
  onClick: () => handleSelect(collection_1),
172
172
  children: getCollectionLabel(collection_1)
173
173
  }, collection_1.collectionSlug);
174
- $[38] = getCollectionLabel;
175
- $[39] = handleSelect;
176
- $[40] = t9;
174
+ $[40] = getCollectionLabel;
175
+ $[41] = handleSelect;
176
+ $[42] = t9;
177
177
  } else {
178
- t9 = $[40];
178
+ t9 = $[42];
179
179
  }
180
- t8 = _jsxs(_Fragment, {
180
+ t7 = _jsxs(_Fragment, {
181
181
  children: [_jsx(Popup, {
182
182
  className: `${baseClass}__popup`,
183
183
  horizontalAlign: "right",
184
184
  popupType: "menu",
185
- renderButton: t7,
185
+ renderButton: t8,
186
186
  children: _jsx(PopupList.ButtonGroup, {
187
187
  children: collections.map(t9)
188
188
  })
@@ -194,17 +194,19 @@ export function CreateDocumentButton(t0) {
194
194
  redirectAfterCreate: false
195
195
  })]
196
196
  });
197
- $[30] = collections;
198
- $[31] = drawerSlug;
199
- $[32] = getCollectionLabel;
200
- $[33] = handleSave;
201
- $[34] = handleSelect;
202
- $[35] = selectedCollection;
203
- $[36] = t7;
204
- $[37] = t8;
197
+ $[26] = buttonLabel_0;
198
+ $[27] = buttonStyle;
199
+ $[28] = collections;
200
+ $[29] = drawerSlug;
201
+ $[30] = getCollectionLabel;
202
+ $[31] = handleSave;
203
+ $[32] = handleSelect;
204
+ $[33] = selectedCollection;
205
+ $[34] = size;
206
+ $[35] = t7;
205
207
  } else {
206
- t8 = $[37];
208
+ t7 = $[35];
207
209
  }
208
- return t8;
210
+ return t7;
209
211
  }
210
212
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","hasAutosaveEnabled","React","useState","useConfig","useTranslation","Button","DocumentDrawer","Popup","PopupList","baseClass","CreateDocumentButton","t0","$","buttonStyle","t1","collections","drawerSlug","label","onSave","size","t2","undefined","config","i18n","t","closeModal","openModal","selectedCollection","setSelectedCollection","length","t3","option","collectionConfig","find","slug","collectionSlug","labels","singular","getCollectionLabel","t4","collection","handleSelect","t5","args","handleSave","collection_0","t6","buttonLabel","t7","_jsxs","_Fragment","children","_jsx","className","margin","onClick","initialData","redirectAfterCreate","buttonLabel_0","t8","active","buttonProps","icon","selected","t9","collection_1","horizontalAlign","popupType","renderButton","ButtonGroup","map"],"sources":["../../../src/elements/CreateDocumentButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { hasAutosaveEnabled } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport type { Props as ButtonProps } from '../Button/types.js'\nimport type { DocumentDrawerContextProps } from '../DocumentDrawer/Provider.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { DocumentDrawer } from '../DocumentDrawer/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\n\nconst baseClass = 'create-document-button'\n\nexport type CollectionOption = {\n collectionSlug: string\n /** Initial data to populate the form when creating */\n initialData?: Record<string, unknown>\n /** Optional label override (defaults to collection's singular label) */\n label?: string\n}\n\nexport type CreateDocumentButtonProps = {\n /** Button style */\n buttonStyle?: ButtonProps['buttonStyle']\n /** Collections available for creation */\n collections: CollectionOption[]\n /** Unique slug for the drawer modal */\n drawerSlug: string\n /** Custom button label (defaults to \"Create New\" for multiple, \"Create New {label}\" for single) */\n label?: string\n /** Called when a document is successfully saved */\n onSave?: DocumentDrawerContextProps['onSave']\n /** Button size */\n size?: ButtonProps['size']\n}\n\nexport function CreateDocumentButton({\n buttonStyle = 'pill',\n collections,\n drawerSlug,\n label,\n onSave,\n size = 'medium',\n}: CreateDocumentButtonProps) {\n const { config } = useConfig()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n\n const [selectedCollection, setSelectedCollection] = useState<CollectionOption | null>(null)\n\n if (collections.length === 0) {\n return null\n }\n\n const getCollectionLabel = (option: CollectionOption) => {\n if (option.label) {\n return option.label\n }\n const collectionConfig = config.collections.find((c) => c.slug === option.collectionSlug)\n return getTranslation(collectionConfig?.labels?.singular, i18n) || option.collectionSlug\n }\n\n const handleSelect = (collection: CollectionOption) => {\n setSelectedCollection(collection)\n openModal(drawerSlug)\n }\n\n const handleSave: DocumentDrawerContextProps['onSave'] = (args) => {\n if (!hasAutosaveEnabled(args.collectionConfig)) {\n closeModal(drawerSlug)\n }\n\n return onSave?.(args)\n }\n\n // Single collection - render simple button\n if (collections.length === 1) {\n const collection = collections[0]\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Button\n buttonStyle={buttonStyle}\n className={baseClass}\n margin={false}\n onClick={() => handleSelect(collection)}\n size={size}\n >\n {buttonLabel}\n </Button>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n }\n\n // Multiple collections - render dropdown\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Popup\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n popupType=\"menu\"\n renderButton={({ active, ...buttonProps }) => (\n <Button\n {...buttonProps}\n buttonStyle={buttonStyle}\n className={`${baseClass}__popup-button`}\n icon=\"chevron\"\n selected={active}\n size={size}\n >\n {buttonLabel}\n </Button>\n )}\n >\n <PopupList.ButtonGroup>\n {collections.map((collection) => (\n <PopupList.Button\n key={collection.collectionSlug}\n onClick={() => handleSelect(collection)}\n >\n {getCollectionLabel(collection)}\n </PopupList.Button>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","hasAutosaveEnabled","React","useState","useConfig","useTranslation","Button","DocumentDrawer","Popup","PopupList","baseClass","CreateDocumentButton","t0","$","buttonStyle","t1","collections","drawerSlug","label","onSave","size","t2","undefined","config","i18n","t","closeModal","openModal","selectedCollection","setSelectedCollection","length","t3","option","collectionConfig","find","slug","collectionSlug","labels","singular","getCollectionLabel","t4","collection","handleSelect","t5","args","handleSave","collection_0","t6","buttonLabel","t7","_jsxs","_Fragment","children","_jsx","className","margin","onClick","initialData","redirectAfterCreate","buttonLabel_0","t8","t9","active","buttonProps","icon","selected","collection_1","horizontalAlign","popupType","renderButton","ButtonGroup","map"],"sources":["../../../src/elements/CreateDocumentButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { hasAutosaveEnabled } from 'payload/shared'\nimport React, { useState } from 'react'\n\nimport type { Props as ButtonProps } from '../Button/types.js'\nimport type { DocumentDrawerContextProps } from '../DocumentDrawer/Provider.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { DocumentDrawer } from '../DocumentDrawer/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\n\nconst baseClass = 'create-document-button'\n\nexport type CollectionOption = {\n collectionSlug: string\n /** Initial data to populate the form when creating */\n initialData?: Record<string, unknown>\n /** Optional label override (defaults to collection's singular label) */\n label?: string\n}\n\nexport type CreateDocumentButtonProps = {\n /** Button style */\n buttonStyle?: ButtonProps['buttonStyle']\n /** Collections available for creation */\n collections: CollectionOption[]\n /** Unique slug for the drawer modal */\n drawerSlug: string\n /** Custom button label (defaults to \"Create New\" for multiple, \"Create New {label}\" for single) */\n label?: string\n /** Called when a document is successfully saved */\n onSave?: DocumentDrawerContextProps['onSave']\n /** Button size */\n size?: ButtonProps['size']\n}\n\nexport function CreateDocumentButton({\n buttonStyle = 'pill',\n collections,\n drawerSlug,\n label,\n onSave,\n size = 'medium',\n}: CreateDocumentButtonProps) {\n const { config } = useConfig()\n const { i18n, t } = useTranslation()\n const { closeModal, openModal } = useModal()\n\n const [selectedCollection, setSelectedCollection] = useState<CollectionOption | null>(null)\n\n if (collections.length === 0) {\n return null\n }\n\n const getCollectionLabel = (option: CollectionOption) => {\n if (option.label) {\n return option.label\n }\n const collectionConfig = config.collections.find((c) => c.slug === option.collectionSlug)\n return getTranslation(collectionConfig?.labels?.singular, i18n) || option.collectionSlug\n }\n\n const handleSelect = (collection: CollectionOption) => {\n setSelectedCollection(collection)\n openModal(drawerSlug)\n }\n\n const handleSave: DocumentDrawerContextProps['onSave'] = (args) => {\n if (!hasAutosaveEnabled(args.collectionConfig)) {\n closeModal(drawerSlug)\n }\n\n return onSave?.(args)\n }\n\n // Single collection - render simple button\n if (collections.length === 1) {\n const collection = collections[0]\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Button\n buttonStyle={buttonStyle}\n className={baseClass}\n margin={false}\n onClick={() => handleSelect(collection)}\n size={size}\n >\n {buttonLabel}\n </Button>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n }\n\n // Multiple collections - render dropdown\n const buttonLabel = label || t('general:createNew')\n\n return (\n <>\n <Popup\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n popupType=\"menu\"\n renderButton={({ active, ...buttonProps }) => (\n <Button\n {...buttonProps}\n buttonStyle={buttonStyle}\n className={`${baseClass}__popup-button`}\n icon=\"chevron\"\n selected={active}\n size={size}\n >\n {buttonLabel}\n </Button>\n )}\n >\n <PopupList.ButtonGroup>\n {collections.map((collection) => (\n <PopupList.Button\n key={collection.collectionSlug}\n onClick={() => handleSelect(collection)}\n >\n {getCollectionLabel(collection)}\n </PopupList.Button>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n {selectedCollection && (\n <DocumentDrawer\n collectionSlug={selectedCollection.collectionSlug}\n drawerSlug={drawerSlug}\n initialData={selectedCollection.initialData}\n onSave={handleSave}\n redirectAfterCreate={false}\n />\n )}\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -954,4 +954,9 @@
954
954
  transform: translateY(-50%);
955
955
  }
956
956
  }
957
+
958
+ html[data-enhanced-contrast]
959
+ .react-datepicker__day--today:not(.react-datepicker__day--selected)::after {
960
+ background-color: var(--color-icon-brand);
961
+ }
957
962
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useDatePickerKeyboard.js","names":["c","_c","React","useDatePickerKeyboard","t0","$","overrides","datePickerRef","useRef","calendarRef","hasTypedInput","shouldFocusCalendar","calendarFocusFrame","t1","Symbol","for","event","stopPropagation","defaultPrevented","preventDefault","current","setOpen","sendFocusBackToInput","onEscape","onOverrideKeyDownRef","onKeyDown","t2","t3","t4","useLayoutEffect","t5","event_0","key","onCalendarKeyDown","t6","t7","cancelAnimationFrame","useEffect","t8","event_1","onBlur","t9","event_2","selectionMeta","onChangeRaw","target","input","t10","onCalendarClose","t11","requestAnimationFrame","isCalendarOpen","calendar","focusTarget","querySelector","focus","onCalendarOpen","t12","event_3","includes","t13","event_4","isCalendarCell","HTMLElement","matches","onKeyDownCapture","t14"],"sources":["../../../src/elements/DatePicker/useDatePickerKeyboard.ts"],"sourcesContent":["'use client'\n\nimport type ReactDatePicker from 'react-datepicker'\nimport type { DatePickerProps } from 'react-datepicker'\n\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\ntype DatePickerComponent = typeof ReactDatePicker extends { default: infer Component }\n ? Component\n : typeof ReactDatePicker\n\nexport const useDatePickerKeyboard = ({ overrides }: Props) => {\n const datePickerRef = React.useRef<React.ComponentRef<DatePickerComponent>>(null)\n const calendarRef = React.useRef<HTMLDivElement>(null)\n const hasTypedInput = React.useRef(false)\n const shouldFocusCalendar = React.useRef(false)\n const calendarFocusFrame = React.useRef<null | number>(null)\n const onEscape = React.useCallback((event: React.KeyboardEvent) => {\n event.stopPropagation()\n if (!event.defaultPrevented) {\n event.preventDefault()\n datePickerRef.current?.setOpen(false, true)\n datePickerRef.current?.sendFocusBackToInput()\n }\n }, [])\n const onOverrideKeyDownRef = React.useRef(overrides?.onKeyDown)\n\n React.useLayoutEffect(() => {\n onOverrideKeyDownRef.current = overrides?.onKeyDown\n }, [overrides?.onKeyDown])\n\n const onCalendarKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Escape') {\n if (!event.defaultPrevented) {\n onOverrideKeyDownRef.current?.(event)\n }\n onEscape(event)\n }\n },\n [onEscape],\n )\n\n React.useEffect(\n () => () => {\n if (calendarFocusFrame.current !== null) {\n cancelAnimationFrame(calendarFocusFrame.current)\n }\n },\n [],\n )\n\n const onBlur: NonNullable<DatePickerProps['onBlur']> = (event) => {\n hasTypedInput.current = false\n overrides?.onBlur?.(event)\n }\n const onChangeRaw: NonNullable<DatePickerProps['onChangeRaw']> = (event, selectionMeta) => {\n overrides?.onChangeRaw?.(event, selectionMeta)\n\n if (event && !event.defaultPrevented && event.target === datePickerRef.current?.input) {\n hasTypedInput.current = true\n }\n }\n const onCalendarClose = () => {\n hasTypedInput.current = false\n shouldFocusCalendar.current = false\n if (calendarFocusFrame.current !== null) {\n cancelAnimationFrame(calendarFocusFrame.current)\n calendarFocusFrame.current = null\n }\n overrides?.onCalendarClose?.()\n }\n const onCalendarOpen = () => {\n if (shouldFocusCalendar.current) {\n calendarFocusFrame.current = requestAnimationFrame(() => {\n calendarFocusFrame.current = null\n shouldFocusCalendar.current = false\n if (!datePickerRef.current?.isCalendarOpen()) {\n return\n }\n const calendar = calendarRef.current\n const focusTarget =\n calendar?.querySelector<HTMLElement>('[tabindex=\"0\"]') ||\n calendar?.querySelector<HTMLElement>('button:not(:disabled), select:not(:disabled)')\n\n focusTarget?.focus()\n })\n }\n overrides?.onCalendarOpen?.()\n }\n const onKeyDown: NonNullable<DatePickerProps['onKeyDown']> = (event) => {\n overrides?.onKeyDown?.(event)\n\n if (event.key === 'Escape' && datePickerRef.current?.isCalendarOpen()) {\n onEscape(event)\n }\n\n if (\n !event.defaultPrevented &&\n event.target === datePickerRef.current?.input &&\n !datePickerRef.current.isCalendarOpen() &&\n ['ArrowDown', 'ArrowUp', 'Enter'].includes(event.key)\n ) {\n event.preventDefault()\n // Enter confirms typed input instead of opening the calendar over nearby controls.\n if (event.key === 'Enter' && hasTypedInput.current) {\n hasTypedInput.current = false\n datePickerRef.current.setOpen(false)\n return\n }\n shouldFocusCalendar.current = true\n datePickerRef.current?.setOpen(true)\n }\n }\n\n const onKeyDownCapture: React.KeyboardEventHandler<HTMLDivElement> = (event) => {\n // Cells handle Escape themselves, which can blur the input after we restore focus.\n // Intercept only the cell itself so nested controls can consume Escape.\n const isCalendarCell =\n event.target instanceof HTMLElement &&\n event.target.matches(\n '.react-datepicker__day, .react-datepicker__week-number, .react-datepicker__month-text, .react-datepicker__year-text',\n )\n\n if (\n event.key === 'Escape' &&\n (event.target === datePickerRef.current?.input || isCalendarCell) &&\n datePickerRef.current?.isCalendarOpen()\n ) {\n overrides?.onKeyDown?.(event)\n onEscape(event)\n }\n }\n\n return {\n calendarRef,\n datePickerRef,\n onBlur,\n onCalendarClose,\n onCalendarKeyDown,\n onCalendarOpen,\n onChangeRaw,\n onKeyDown,\n onKeyDownCapture,\n }\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;AAKA,OAAOC,KAAA,MAAW;AAQlB,OAAO,MAAMC,qBAAA,GAAwBC,EAAA;EAAA,MAAAC,CAAA,GAAAJ,EAAA;EAAC;IAAAK;EAAA,IAAAF,EAAoB;EACxD,MAAAG,aAAA,GAAsBL,KAAA,CAAAM,MAAA,KAAsD;EAC5E,MAAAC,WAAA,GAAoBP,KAAA,CAAAM,MAAA,KAA6B;EACjD,MAAAE,aAAA,GAAsBR,KAAA,CAAAM,MAAA,MAAa;EACnC,MAAAG,mBAAA,GAA4BT,KAAA,CAAAM,MAAA,MAAa;EACzC,MAAAI,kBAAA,GAA2BV,KAAA,CAAAM,MAAA,KAA4B;EAAA,IAAAK,EAAA;EAAA,IAAAR,CAAA,QAAAS,MAAA,CAAAC,GAAA;IACpBF,EAAA,GAAAG,KAAA;MACjCA,KAAA,CAAAC,eAAA,CAAqB;MAAA,KAChBD,KAAA,CAAAE,gBAAA;QACHF,KAAA,CAAAG,cAAA,CAAoB;QACpBZ,aAAA,CAAAa,OAAA,EAAAC,OAAA;QACAd,aAAA,CAAAa,OAAA,EAAAE,oBAAA;MAAA;IAAA;IAEJjB,CAAA,MAAAQ,EAAA;EAAA;IAAAA,EAAA,GAAAR,CAAA;EAAA;EAPA,MAAAkB,QAAA,GAAiBV,EAOZ;EACL,MAAAW,oBAAA,GAA6BtB,KAAA,CAAAM,MAAA,CAAaF,SAAA,EAAAmB,SAAW;EAAA,IAAAC,EAAA;EAAA,IAAArB,CAAA,QAAAC,SAAA,EAAAmB,SAAA;IAE/BC,EAAA,GAAAA,CAAA;MACpBF,oBAAA,CAAAJ,OAAA,GAA+Bd,SAAA,EAAAmB,SAAA;IAAA;IACjCpB,CAAA,MAAAC,SAAA,EAAAmB,SAAA;IAAApB,CAAA,MAAAqB,EAAA;EAAA;IAAAA,EAAA,GAAArB,CAAA;EAAA;EAAI,MAAAsB,EAAA,GAAArB,SAAA,EAAAmB,SAAA;EAAW,IAAAG,EAAA;EAAA,IAAAvB,CAAA,QAAAsB,EAAA;IAAZC,EAAA,IAACD,EAAW;IAAUtB,CAAA,MAAAsB,EAAA;IAAAtB,CAAA,MAAAuB,EAAA;EAAA;IAAAA,EAAA,GAAAvB,CAAA;EAAA;EAFzBH,KAAA,CAAA2B,eAAA,CAAsBH,EAEtB,EAAGE,EAAsB;EAAA,IAAAE,EAAA;EAAA,IAAAzB,CAAA,QAAAS,MAAA,CAAAC,GAAA;IAGvBe,EAAA,GAAAC,OAAA;MAAA,IACMf,OAAA,CAAAgB,GAAA,KAAc;QAAA,KACXhB,OAAA,CAAAE,gBAAA;UACHM,oBAAA,CAAAJ,OAAA,GAA+BJ,OAAA;QAAA;QAEjCO,QAAA,CAASP,OAAA;MAAA;IAAA;IAEbX,CAAA,MAAAyB,EAAA;EAAA;IAAAA,EAAA,GAAAzB,CAAA;EAAA;EARF,MAAA4B,iBAAA,GAA0BH,EASd;EAAA,IAAAI,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAA9B,CAAA,QAAAS,MAAA,CAAAC,GAAA;IAIVmB,EAAA,GAAAA,CAAA;MAAA,IACMtB,kBAAA,CAAAQ,OAAA,SAA+B;QACjCgB,oBAAA,CAAqBxB,kBAAA,CAAAQ,OAA0B;MAAA;IAAA;IAGnDe,EAAA;IAAE9B,CAAA,MAAA6B,EAAA;IAAA7B,CAAA,MAAA8B,EAAA;EAAA;IAAAD,EAAA,GAAA7B,CAAA;IAAA8B,EAAA,GAAA9B,CAAA;EAAA;EANJH,KAAA,CAAAmC,SAAA,CACEH,EAIA,EACAC,EAAE;EAAA,IAAAG,EAAA;EAAA,IAAAjC,CAAA,QAAAC,SAAA;IAGmDgC,EAAA,GAAAC,OAAA;MACrD7B,aAAA,CAAAU,OAAA;MACAd,SAAA,EAAAkC,MAAA,GAAoBxB,OAAA;IAAA;IACtBX,CAAA,MAAAC,SAAA;IAAAD,CAAA,MAAAiC,EAAA;EAAA;IAAAA,EAAA,GAAAjC,CAAA;EAAA;EAHA,MAAAmC,MAAA,GAAuDF,EAGvD;EAAA,IAAAG,EAAA;EAAA,IAAApC,CAAA,SAAAC,SAAA;IACiEmC,EAAA,GAAAA,CAAAC,OAAA,EAAAC,aAAA;MAC/DrC,SAAA,EAAAsC,WAAA,GAAyB5B,OAAA,EAAO2B,aAAA;MAAA,IAE5B3B,OAAA,KAAUA,OAAA,CAAAE,gBAAsB,IAAIF,OAAA,CAAA6B,MAAA,KAAiBtC,aAAA,CAAAa,OAAA,EAAA0B,KAAuB;QAC9EpC,aAAA,CAAAU,OAAA;MAAA;IAAA;IAEJf,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAAoC,EAAA;EAAA;IAAAA,EAAA,GAAApC,CAAA;EAAA;EANA,MAAAuC,WAAA,GAAiEH,EAMjE;EAAA,IAAAM,GAAA;EAAA,IAAA1C,CAAA,SAAAC,SAAA;IACwByC,GAAA,GAAAA,CAAA;MACtBrC,aAAA,CAAAU,OAAA;MACAT,mBAAA,CAAAS,OAAA;MAAA,IACIR,kBAAA,CAAAQ,OAAA,SAA+B;QACjCgB,oBAAA,CAAqBxB,kBAAA,CAAAQ,OAA0B;QAC/CR,kBAAA,CAAAQ,OAAA;MAAA;MAEFd,SAAA,EAAA0C,eAAA;IAAA;IACF3C,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAA0C,GAAA;EAAA;IAAAA,GAAA,GAAA1C,CAAA;EAAA;EARA,MAAA2C,eAAA,GAAwBD,GAQxB;EAAA,IAAAE,GAAA;EAAA,IAAA5C,CAAA,SAAAC,SAAA;IACuB2C,GAAA,GAAAA,CAAA;MAAA,IACjBtC,mBAAA,CAAAS,OAAA;QACFR,kBAAA,CAAAQ,OAAA,GAA6B8B,qBAAA;UAC3BtC,kBAAA,CAAAQ,OAAA;UACAT,mBAAA,CAAAS,OAAA;UAAA,KACKb,aAAA,CAAAa,OAAA,EAAA+B,cAAA;YAAA;UAAA;UAGL,MAAAC,QAAA,GAAiB3C,WAAA,CAAAW,OAAA;UACjB,MAAAiC,WAAA,GACED,QAAA,EAAAE,aAAA,CAAqC,uBACrCF,QAAA,EAAAE,aAAA,CAAqC;UAEvCD,WAAA,EAAAE,KAAA;QAAA,CACF;MAAA;MAEFjD,SAAA,EAAAkD,cAAA;IAAA;IACFnD,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAA4C,GAAA;EAAA;IAAAA,GAAA,GAAA5C,CAAA;EAAA;EAjBA,MAAAmD,cAAA,GAAuBP,GAiBvB;EAAA,IAAAQ,GAAA;EAAA,IAAApD,CAAA,SAAAC,SAAA;IAC6DmD,GAAA,GAAAC,OAAA;MAC3DpD,SAAA,EAAAmB,SAAA,GAAuBT,OAAA;MAAA,IAEnBA,OAAA,CAAAgB,GAAA,KAAc,YAAYzB,aAAA,CAAAa,OAAA,EAAA+B,cAAA,EAAuB;QACnD5B,QAAA,CAASP,OAAA;MAAA;MAAA,IAIT,CAACA,OAAA,CAAAE,gBAAA,IACDF,OAAA,CAAA6B,MAAA,KAAiBtC,aAAA,CAAAa,OAAA,EAAA0B,KAAuB,KACvCvC,aAAA,CAAAa,OAAA,CAAA+B,cAAA,CAAoC,KACrC,CAAC,aAAa,WAAW,SAAAQ,QAAA,CAAkB3C,OAAA,CAAAgB,GAAS;QAEpDhB,OAAA,CAAAG,cAAA,CAAoB;QAAA,IAEhBH,OAAA,CAAAgB,GAAA,KAAc,WAAWtB,aAAA,CAAAU,OAAqB;UAChDV,aAAA,CAAAU,OAAA;UACAb,aAAA,CAAAa,OAAA,CAAAC,OAAA,MAA8B;UAAA;QAAA;QAGhCV,mBAAA,CAAAS,OAAA;QACAb,aAAA,CAAAa,OAAA,EAAAC,OAAA;MAAA;IAAA;IAEJhB,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAAoD,GAAA;EAAA;IAAAA,GAAA,GAAApD,CAAA;EAAA;EAvBA,MAAAoB,SAAA,GAA6DgC,GAuB7D;EAAA,IAAAG,GAAA;EAAA,IAAAvD,CAAA,SAAAC,SAAA;IAEqEsD,GAAA,GAAAC,OAAA;MAGnE,MAAAC,cAAA,GACE9C,OAAA,CAAA6B,MAAA,YAAAkB,WAAwB,IACxB/C,OAAA,CAAA6B,MAAA,CAAAmB,OAAA,CACE;MAAA,IAIFhD,OAAA,CAAAgB,GAAA,KAAc,aACbhB,OAAA,CAAA6B,MAAA,KAAiBtC,aAAA,CAAAa,OAAA,EAAA0B,KAAuB,IAASgB,cAAa,KAC/DvD,aAAA,CAAAa,OAAA,EAAA+B,cAAA,EAAuB;QAEvB7C,SAAA,EAAAmB,SAAA,GAAuBT,OAAA;QACvBO,QAAA,CAASP,OAAA;MAAA;IAAA;IAEbX,CAAA,OAAAC,SAAA;IAAAD,CAAA,OAAAuD,GAAA;EAAA;IAAAA,GAAA,GAAAvD,CAAA;EAAA;EAjBA,MAAA4D,gBAAA,GAAqEL,GAiBrE;EAAA,IAAAM,GAAA;EAAA,IAAA7D,CAAA,SAAAmC,MAAA,IAAAnC,CAAA,SAAA2C,eAAA,IAAA3C,CAAA,SAAAmD,cAAA,IAAAnD,CAAA,SAAAuC,WAAA,IAAAvC,CAAA,SAAAoB,SAAA,IAAApB,CAAA,SAAA4D,gBAAA;IAEOC,GAAA;MAAAzD,WAAA;MAAAF,aAAA;MAAAiC,MAAA;MAAAQ,eAAA;MAAAf,iBAAA;MAAAuB,cAAA;MAAAZ,WAAA;MAAAnB,SAAA;MAAAwC;IAAA;IAUP5D,CAAA,OAAAmC,MAAA;IAAAnC,CAAA,OAAA2C,eAAA;IAAA3C,CAAA,OAAAmD,cAAA;IAAAnD,CAAA,OAAAuC,WAAA;IAAAvC,CAAA,OAAAoB,SAAA;IAAApB,CAAA,OAAA4D,gBAAA;IAAA5D,CAAA,OAAA6D,GAAA;EAAA;IAAAA,GAAA,GAAA7D,CAAA;EAAA;EAAA,OAVO6D,GAUP;AAAA,CACF","ignoreList":[]}
1
+ {"version":3,"file":"useDatePickerKeyboard.js","names":["c","_c","React","useDatePickerKeyboard","t0","$","overrides","datePickerRef","useRef","calendarRef","hasTypedInput","shouldFocusCalendar","calendarFocusFrame","t1","Symbol","for","event","stopPropagation","defaultPrevented","preventDefault","current","setOpen","sendFocusBackToInput","onEscape","onOverrideKeyDownRef","onKeyDown","t2","t3","t4","useLayoutEffect","t5","event_0","key","onCalendarKeyDown","t6","t7","cancelAnimationFrame","useEffect","t8","event_1","onBlur","t9","event_2","selectionMeta","onChangeRaw","target","input","t10","onCalendarClose","t11","requestAnimationFrame","isCalendarOpen","calendar","focusTarget","querySelector","focus","onCalendarOpen","t12","event_3","includes","t13","event_4","isCalendarCell","HTMLElement","matches","onKeyDownCapture","t14"],"sources":["../../../src/elements/DatePicker/useDatePickerKeyboard.ts"],"sourcesContent":["'use client'\n\nimport type ReactDatePicker from 'react-datepicker'\nimport type { DatePickerProps } from 'react-datepicker'\n\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\ntype DatePickerComponent = typeof ReactDatePicker extends { default: infer Component }\n ? Component\n : typeof ReactDatePicker\n\nexport const useDatePickerKeyboard = ({ overrides }: Props) => {\n const datePickerRef = React.useRef<React.ComponentRef<DatePickerComponent>>(null)\n const calendarRef = React.useRef<HTMLDivElement>(null)\n const hasTypedInput = React.useRef(false)\n const shouldFocusCalendar = React.useRef(false)\n const calendarFocusFrame = React.useRef<null | number>(null)\n const onEscape = React.useCallback((event: React.KeyboardEvent) => {\n event.stopPropagation()\n if (!event.defaultPrevented) {\n event.preventDefault()\n datePickerRef.current?.setOpen(false, true)\n datePickerRef.current?.sendFocusBackToInput()\n }\n }, [])\n const onOverrideKeyDownRef = React.useRef(overrides?.onKeyDown)\n\n React.useLayoutEffect(() => {\n onOverrideKeyDownRef.current = overrides?.onKeyDown\n }, [overrides?.onKeyDown])\n\n const onCalendarKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Escape') {\n if (!event.defaultPrevented) {\n onOverrideKeyDownRef.current?.(event)\n }\n onEscape(event)\n }\n },\n [onEscape],\n )\n\n React.useEffect(\n () => () => {\n if (calendarFocusFrame.current !== null) {\n cancelAnimationFrame(calendarFocusFrame.current)\n }\n },\n [],\n )\n\n const onBlur: NonNullable<DatePickerProps['onBlur']> = (event) => {\n hasTypedInput.current = false\n overrides?.onBlur?.(event)\n }\n const onChangeRaw: NonNullable<DatePickerProps['onChangeRaw']> = (event, selectionMeta) => {\n overrides?.onChangeRaw?.(event, selectionMeta)\n\n if (event && !event.defaultPrevented && event.target === datePickerRef.current?.input) {\n hasTypedInput.current = true\n }\n }\n const onCalendarClose = () => {\n hasTypedInput.current = false\n shouldFocusCalendar.current = false\n if (calendarFocusFrame.current !== null) {\n cancelAnimationFrame(calendarFocusFrame.current)\n calendarFocusFrame.current = null\n }\n overrides?.onCalendarClose?.()\n }\n const onCalendarOpen = () => {\n if (shouldFocusCalendar.current) {\n calendarFocusFrame.current = requestAnimationFrame(() => {\n calendarFocusFrame.current = null\n shouldFocusCalendar.current = false\n if (!datePickerRef.current?.isCalendarOpen()) {\n return\n }\n const calendar = calendarRef.current\n const focusTarget =\n calendar?.querySelector<HTMLElement>('[tabindex=\"0\"]') ||\n calendar?.querySelector<HTMLElement>('button:not(:disabled), select:not(:disabled)')\n\n focusTarget?.focus()\n })\n }\n overrides?.onCalendarOpen?.()\n }\n const onKeyDown: NonNullable<DatePickerProps['onKeyDown']> = (event) => {\n overrides?.onKeyDown?.(event)\n\n if (event.key === 'Escape' && datePickerRef.current?.isCalendarOpen()) {\n onEscape(event)\n }\n\n if (\n !event.defaultPrevented &&\n event.target === datePickerRef.current?.input &&\n !datePickerRef.current.isCalendarOpen() &&\n ['ArrowDown', 'ArrowUp', 'Enter'].includes(event.key)\n ) {\n event.preventDefault()\n // Enter confirms typed input instead of opening the calendar over nearby controls.\n if (event.key === 'Enter' && hasTypedInput.current) {\n hasTypedInput.current = false\n datePickerRef.current.setOpen(false)\n return\n }\n shouldFocusCalendar.current = true\n datePickerRef.current?.setOpen(true)\n }\n }\n\n const onKeyDownCapture: React.KeyboardEventHandler<HTMLDivElement> = (event) => {\n // Cells handle Escape themselves, which can blur the input after we restore focus.\n // Intercept only the cell itself so nested controls can consume Escape.\n const isCalendarCell =\n event.target instanceof HTMLElement &&\n event.target.matches(\n '.react-datepicker__day, .react-datepicker__week-number, .react-datepicker__month-text, .react-datepicker__year-text',\n )\n\n if (\n event.key === 'Escape' &&\n (event.target === datePickerRef.current?.input || isCalendarCell) &&\n datePickerRef.current?.isCalendarOpen()\n ) {\n overrides?.onKeyDown?.(event)\n onEscape(event)\n }\n }\n\n return {\n calendarRef,\n datePickerRef,\n onBlur,\n onCalendarClose,\n onCalendarKeyDown,\n onCalendarOpen,\n onChangeRaw,\n onKeyDown,\n onKeyDownCapture,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -14,6 +14,10 @@
14
14
 
15
15
  .default-list-view-tabs__button--active {
16
16
  color: var(--color-text);
17
+
18
+ html[data-enhanced-contrast] & {
19
+ border-color: var(--color-border-control);
20
+ }
17
21
  }
18
22
 
19
23
  .default-list-view-tabs__button--active:disabled {
@@ -12,7 +12,7 @@ import { Button } from '../Button/index.js';
12
12
  import './index.css';
13
13
  const baseClass = 'default-list-view-tabs';
14
14
  export const DefaultListViewTabs = t0 => {
15
- const $ = _c(24);
15
+ const $ = _c(27);
16
16
  const {
17
17
  collectionConfig,
18
18
  config,
@@ -84,44 +84,54 @@ export const DefaultListViewTabs = t0 => {
84
84
  t3 = $[8];
85
85
  }
86
86
  const collectionLabel = t3;
87
- const allButtonLabel = `${t("general:all")} ${collectionLabel}`;
88
87
  let t4;
89
- if ($[9] !== allButtonLabel || $[10] !== collectionConfig.labels?.singular || $[11] !== collectionLabel || $[12] !== handleViewChange || $[13] !== i18n || $[14] !== isHierarchyEnabled || $[15] !== isTrashEnabled || $[16] !== t || $[17] !== viewType) {
90
- let t5;
91
- if ($[19] === Symbol.for("react.memo_cache_sentinel")) {
92
- t5 = /\s+/g;
93
- $[19] = t5;
94
- } else {
95
- t5 = $[19];
96
- }
97
- const allButtonId = allButtonLabel.toLowerCase().replace(t5, "-");
88
+ if ($[9] !== t) {
89
+ t4 = t("general:all");
90
+ $[9] = t;
91
+ $[10] = t4;
92
+ } else {
93
+ t4 = $[10];
94
+ }
95
+ const allButtonLabel = `${t4} ${collectionLabel}`;
96
+ let t5;
97
+ if ($[11] !== allButtonLabel || $[12] !== collectionConfig.labels?.singular || $[13] !== collectionLabel || $[14] !== handleViewChange || $[15] !== i18n || $[16] !== isHierarchyEnabled || $[17] !== isTrashEnabled || $[18] !== t || $[19] !== viewType) {
98
+ const allButtonId = allButtonLabel.toLowerCase().replace(/\s+/g, "-");
98
99
  const t6 = viewType === "list" && `${baseClass}__button--active`;
99
100
  let t7;
100
- if ($[20] !== t6) {
101
+ if ($[21] !== t6) {
101
102
  t7 = [`${baseClass}__button`, t6].filter(Boolean);
102
- $[20] = t6;
103
- $[21] = t7;
103
+ $[21] = t6;
104
+ $[22] = t7;
105
+ } else {
106
+ t7 = $[22];
107
+ }
108
+ const t8 = t7.join(" ");
109
+ let t9;
110
+ if ($[23] !== handleViewChange) {
111
+ t9 = () => handleViewChange("list");
112
+ $[23] = handleViewChange;
113
+ $[24] = t9;
104
114
  } else {
105
- t7 = $[21];
115
+ t9 = $[24];
106
116
  }
107
- let t8;
108
- if ($[22] !== handleViewChange) {
109
- t8 = () => handleViewChange("list");
110
- $[22] = handleViewChange;
111
- $[23] = t8;
117
+ let t10;
118
+ if ($[25] !== t) {
119
+ t10 = t("general:all");
120
+ $[25] = t;
121
+ $[26] = t10;
112
122
  } else {
113
- t8 = $[23];
123
+ t10 = $[26];
114
124
  }
115
- t4 = _jsxs("div", {
125
+ t5 = _jsxs("div", {
116
126
  className: baseClass,
117
127
  children: [_jsx(Button, {
118
128
  buttonStyle: viewType === "list" ? "pill" : "ghost",
119
- className: t7.join(" "),
129
+ className: t8,
120
130
  disabled: viewType === "list",
121
131
  el: "button",
122
132
  id: allButtonId,
123
- onClick: t8,
124
- children: `${t("general:all")} ${collectionLabel}`
133
+ onClick: t9,
134
+ children: `${t10} ${collectionLabel}`
125
135
  }), isHierarchyEnabled && _jsx(Button, {
126
136
  buttonStyle: viewType === "hierarchy" ? "pill" : "ghost",
127
137
  className: [`${baseClass}__button`, viewType === "hierarchy" && `${baseClass}__button--active`].filter(Boolean).join(" "),
@@ -140,19 +150,19 @@ export const DefaultListViewTabs = t0 => {
140
150
  children: t("general:trash")
141
151
  })]
142
152
  });
143
- $[9] = allButtonLabel;
144
- $[10] = collectionConfig.labels?.singular;
145
- $[11] = collectionLabel;
146
- $[12] = handleViewChange;
147
- $[13] = i18n;
148
- $[14] = isHierarchyEnabled;
149
- $[15] = isTrashEnabled;
150
- $[16] = t;
151
- $[17] = viewType;
152
- $[18] = t4;
153
+ $[11] = allButtonLabel;
154
+ $[12] = collectionConfig.labels?.singular;
155
+ $[13] = collectionLabel;
156
+ $[14] = handleViewChange;
157
+ $[15] = i18n;
158
+ $[16] = isHierarchyEnabled;
159
+ $[17] = isTrashEnabled;
160
+ $[18] = t;
161
+ $[19] = viewType;
162
+ $[20] = t5;
153
163
  } else {
154
- t4 = $[18];
164
+ t5 = $[20];
155
165
  }
156
- return t4;
166
+ return t5;
157
167
  };
158
168
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","React","usePreferences","useRouter","useTranslation","Button","baseClass","DefaultListViewTabs","t0","$","collectionConfig","config","onChange","viewType","i18n","t","setPreference","router","isTrashEnabled","trash","isHierarchyEnabled","Boolean","hierarchy","t1","slug","newViewType","listViewType","preferences","path","bb23","url","adminRoute","routes","admin","push","handleViewChange","t2","labels","plural","t3","collectionLabel","allButtonLabel","t4","singular","t5","Symbol","for","allButtonId","toLowerCase","replace","t6","t7","filter","t8","_jsxs","className","children","_jsx","buttonStyle","join","disabled","el","id","onClick"],"sources":["../../../src/elements/DefaultListViewTabs/index.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n CollectionPreferences,\n ViewTypes,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.css'\n\nconst baseClass = 'default-list-view-tabs'\n\ntype DefaultListViewTabsProps = {\n collectionConfig: ClientCollectionConfig\n config: ClientConfig\n onChange?: (viewType: ViewTypes) => void\n viewType?: ViewTypes\n}\n\nexport const DefaultListViewTabs: React.FC<DefaultListViewTabsProps> = ({\n collectionConfig,\n config,\n onChange,\n viewType,\n}) => {\n const { i18n, t } = useTranslation()\n const { setPreference } = usePreferences()\n const router = useRouter()\n const isTrashEnabled = collectionConfig.trash\n const isHierarchyEnabled = Boolean(collectionConfig.hierarchy)\n\n if (!isTrashEnabled && !isHierarchyEnabled) {\n return null\n }\n\n const handleViewChange = async (newViewType: ViewTypes) => {\n if (onChange) {\n onChange(newViewType)\n }\n\n // Save preference for list vs hierarchy (not trash)\n if (newViewType === 'list' || newViewType === 'hierarchy') {\n const listViewType = newViewType as 'hierarchy' | 'list'\n\n await setPreference<CollectionPreferences>(\n `collection-${collectionConfig.slug}`,\n (preferences) => ({\n ...(preferences ?? {}),\n listViewType,\n }),\n )\n }\n\n let path: `/${string}` = `/collections/${collectionConfig.slug}?view=all`\n switch (newViewType) {\n case 'hierarchy':\n path = `/collections/${collectionConfig.slug}?view=hierarchy`\n break\n case 'trash':\n path = `/collections/${collectionConfig.slug}/trash`\n break\n }\n\n const url = formatAdminURL({\n adminRoute: config.routes.admin,\n path,\n })\n\n router.push(url)\n }\n\n const collectionLabel = getTranslation(collectionConfig?.labels?.plural, i18n)\n const allButtonLabel = `${t('general:all')} ${collectionLabel}`\n const allButtonId = allButtonLabel.toLowerCase().replace(/\\s+/g, '-')\n\n return (\n <div className={baseClass}>\n <Button\n buttonStyle={viewType === 'list' ? 'pill' : 'ghost'}\n className={[`${baseClass}__button`, viewType === 'list' && `${baseClass}__button--active`]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'list'}\n el=\"button\"\n id={allButtonId}\n onClick={() => handleViewChange('list')}\n >\n {`${t('general:all')} ${collectionLabel}`}\n </Button>\n\n {isHierarchyEnabled && (\n <Button\n buttonStyle={viewType === 'hierarchy' ? 'pill' : 'ghost'}\n className={[\n `${baseClass}__button`,\n viewType === 'hierarchy' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'hierarchy'}\n el=\"button\"\n id=\"hierarchy-view-pill\"\n onClick={() => handleViewChange('hierarchy')}\n >\n {`${t('general:by')} ${getTranslation(collectionConfig?.labels?.singular, i18n)}`}\n </Button>\n )}\n\n {isTrashEnabled && (\n <Button\n buttonStyle={viewType === 'trash' ? 'pill' : 'ghost'}\n className={[\n `${baseClass}__button`,\n viewType === 'trash' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'trash'}\n el=\"button\"\n id=\"trash-view-pill\"\n onClick={() => handleViewChange('trash')}\n >\n {t('general:trash')}\n </Button>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","React","usePreferences","useRouter","useTranslation","Button","baseClass","DefaultListViewTabs","t0","$","collectionConfig","config","onChange","viewType","i18n","t","setPreference","router","isTrashEnabled","trash","isHierarchyEnabled","Boolean","hierarchy","t1","slug","newViewType","listViewType","preferences","path","bb23","url","adminRoute","routes","admin","push","handleViewChange","t2","labels","plural","t3","collectionLabel","t4","allButtonLabel","t5","singular","allButtonId","toLowerCase","replace","t6","t7","filter","t8","join","t9","t10","_jsxs","className","children","_jsx","buttonStyle","disabled","el","id","onClick"],"sources":["../../../src/elements/DefaultListViewTabs/index.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n CollectionPreferences,\n ViewTypes,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React from 'react'\n\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.css'\n\nconst baseClass = 'default-list-view-tabs'\n\ntype DefaultListViewTabsProps = {\n collectionConfig: ClientCollectionConfig\n config: ClientConfig\n onChange?: (viewType: ViewTypes) => void\n viewType?: ViewTypes\n}\n\nexport const DefaultListViewTabs: React.FC<DefaultListViewTabsProps> = ({\n collectionConfig,\n config,\n onChange,\n viewType,\n}) => {\n const { i18n, t } = useTranslation()\n const { setPreference } = usePreferences()\n const router = useRouter()\n const isTrashEnabled = collectionConfig.trash\n const isHierarchyEnabled = Boolean(collectionConfig.hierarchy)\n\n if (!isTrashEnabled && !isHierarchyEnabled) {\n return null\n }\n\n const handleViewChange = async (newViewType: ViewTypes) => {\n if (onChange) {\n onChange(newViewType)\n }\n\n // Save preference for list vs hierarchy (not trash)\n if (newViewType === 'list' || newViewType === 'hierarchy') {\n const listViewType = newViewType as 'hierarchy' | 'list'\n\n await setPreference<CollectionPreferences>(\n `collection-${collectionConfig.slug}`,\n (preferences) => ({\n ...(preferences ?? {}),\n listViewType,\n }),\n )\n }\n\n let path: `/${string}` = `/collections/${collectionConfig.slug}?view=all`\n switch (newViewType) {\n case 'hierarchy':\n path = `/collections/${collectionConfig.slug}?view=hierarchy`\n break\n case 'trash':\n path = `/collections/${collectionConfig.slug}/trash`\n break\n }\n\n const url = formatAdminURL({\n adminRoute: config.routes.admin,\n path,\n })\n\n router.push(url)\n }\n\n const collectionLabel = getTranslation(collectionConfig?.labels?.plural, i18n)\n const allButtonLabel = `${t('general:all')} ${collectionLabel}`\n const allButtonId = allButtonLabel.toLowerCase().replace(/\\s+/g, '-')\n\n return (\n <div className={baseClass}>\n <Button\n buttonStyle={viewType === 'list' ? 'pill' : 'ghost'}\n className={[`${baseClass}__button`, viewType === 'list' && `${baseClass}__button--active`]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'list'}\n el=\"button\"\n id={allButtonId}\n onClick={() => handleViewChange('list')}\n >\n {`${t('general:all')} ${collectionLabel}`}\n </Button>\n\n {isHierarchyEnabled && (\n <Button\n buttonStyle={viewType === 'hierarchy' ? 'pill' : 'ghost'}\n className={[\n `${baseClass}__button`,\n viewType === 'hierarchy' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'hierarchy'}\n el=\"button\"\n id=\"hierarchy-view-pill\"\n onClick={() => handleViewChange('hierarchy')}\n >\n {`${t('general:by')} ${getTranslation(collectionConfig?.labels?.singular, i18n)}`}\n </Button>\n )}\n\n {isTrashEnabled && (\n <Button\n buttonStyle={viewType === 'trash' ? 'pill' : 'ghost'}\n className={[\n `${baseClass}__button`,\n viewType === 'trash' && `${baseClass}__button--active`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={viewType === 'trash'}\n el=\"button\"\n id=\"trash-view-pill\"\n onClick={() => handleViewChange('trash')}\n >\n {t('general:trash')}\n </Button>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useState","Spinner","DelayedSpinner","t0","$","baseClass","delay","t1","isLoading","spinnerProps","undefined","showLoading","setShowLoading","t2","t3","timer","setTimeout","clearTimeout","className","t4","t5","_jsx","children"],"sources":["../../../src/elements/DelayedSpinner/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect, useState } from 'react'\n\nimport { Spinner } from '../Spinner/index.js'\n\nexport type DelayedSpinnerProps = {\n /**\n * Base CSS class name for the wrapper\n */\n baseClass?: string\n /**\n * Delay in milliseconds before showing the spinner\n * @default 200\n */\n delay?: number\n /**\n * Whether loading is in progress\n */\n isLoading: boolean\n /**\n * Custom spinner props to pass through\n */\n spinnerProps?: React.ComponentProps<typeof Spinner>\n}\n\nexport const DelayedSpinner: React.FC<DelayedSpinnerProps> = ({\n baseClass,\n delay = 200,\n isLoading,\n spinnerProps,\n}) => {\n const [showLoading, setShowLoading] = useState(false)\n\n useEffect(() => {\n if (isLoading) {\n const timer = setTimeout(() => {\n setShowLoading(true)\n }, delay)\n return () => clearTimeout(timer)\n } else {\n setShowLoading(false)\n }\n }, [delay, isLoading])\n\n if (!showLoading) {\n return null\n }\n\n const className = baseClass || 'delayed-spinner'\n\n return (\n <div className={`${className}__loading`}>\n <Spinner {...spinnerProps} />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,IAASC,SAAS,EAAEC,QAAQ,QAAQ;AAE3C,SAASC,OAAO,QAAQ;AAsBxB,OAAO,MAAMC,cAAA,GAAgDC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ,SAAA;IAAAC,KAAA,EAAAC,EAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAN,EAK7D;EAHC,MAAAG,KAAA,GAAAC,EAAW,KAAAG,SAAA,SAAXH,EAAW;EAIX,OAAAI,WAAA,EAAAC,cAAA,IAAsCZ,QAAA,MAAS;EAAA,IAAAa,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAV,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAI,SAAA;IAErCK,EAAA,GAAAA,CAAA;MAAA,IACJL,SAAA;QACF,MAAAO,KAAA,GAAcC,UAAA;UACZJ,cAAA,KAAe;QAAA,GACdN,KAAA;QAAA,aACUW,YAAA,CAAaF,KAAA;MAAA;QAE1BH,cAAA,MAAe;MAAA;IAAA;IAEhBE,EAAA,IAACR,KAAA,EAAOE,SAAA;IAAUJ,CAAA,MAAAE,KAAA;IAAAF,CAAA,MAAAI,SAAA;IAAAJ,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAD,EAAA,GAAAT,CAAA;IAAAU,EAAA,GAAAV,CAAA;EAAA;EATrBL,SAAA,CAAUc,EASV,EAAGC,EAAkB;EAAA,KAEhBH,WAAA;IAAA;EAAA;EAIL,MAAAO,SAAA,GAAkBb,SAAA,IAAa;EAGb,MAAAc,EAAA,MAAGD,SAAA,WAAoB;EAAA,IAAAE,EAAA;EAAA,IAAAhB,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAe,EAAA;IAAvCC,EAAA,GAAAC,IAAA,CAAC;MAAAH,SAAA,EAAeC,EAAuB;MAAAG,QAAA,EACrCD,IAAA,CAAApB,OAAA;QAAA,GAAaQ;MAAY,C;;;;;;;;SAD3BW,E;CAIJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useEffect","useState","Spinner","DelayedSpinner","t0","$","baseClass","delay","t1","isLoading","spinnerProps","undefined","showLoading","setShowLoading","t2","t3","timer","setTimeout","clearTimeout","className","t4","t5","_jsx","children"],"sources":["../../../src/elements/DelayedSpinner/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useEffect, useState } from 'react'\n\nimport { Spinner } from '../Spinner/index.js'\n\nexport type DelayedSpinnerProps = {\n /**\n * Base CSS class name for the wrapper\n */\n baseClass?: string\n /**\n * Delay in milliseconds before showing the spinner\n * @default 200\n */\n delay?: number\n /**\n * Whether loading is in progress\n */\n isLoading: boolean\n /**\n * Custom spinner props to pass through\n */\n spinnerProps?: React.ComponentProps<typeof Spinner>\n}\n\nexport const DelayedSpinner: React.FC<DelayedSpinnerProps> = ({\n baseClass,\n delay = 200,\n isLoading,\n spinnerProps,\n}) => {\n const [showLoading, setShowLoading] = useState(false)\n\n useEffect(() => {\n if (isLoading) {\n const timer = setTimeout(() => {\n setShowLoading(true)\n }, delay)\n return () => clearTimeout(timer)\n } else {\n setShowLoading(false)\n }\n }, [delay, isLoading])\n\n if (!showLoading) {\n return null\n }\n\n const className = baseClass || 'delayed-spinner'\n\n return (\n <div className={`${className}__loading`}>\n <Spinner {...spinnerProps} />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,IAASC,SAAS,EAAEC,QAAQ,QAAQ;AAE3C,SAASC,OAAO,QAAQ;AAsBxB,OAAO,MAAMC,cAAA,GAAgDC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ,SAAA;IAAAC,KAAA,EAAAC,EAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAN,EAK7D;EAHC,MAAAG,KAAA,GAAAC,EAAW,KAAXG,SAAW,GAAX,GAAW,GAAXH,EAAW;EAIX,OAAAI,WAAA,EAAAC,cAAA,IAAsCZ,QAAA,CAAS;EAAA,IAAAa,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAV,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAI,SAAA;IAErCK,EAAA,GAAAA,CAAA;MACR,IAAIL,SAAA;QACF,MAAAO,KAAA,GAAcC,UAAA,CAAW;UACvBJ,cAAA,CAAe;QAAA,CACjB,EAAGN,KAAA;QAAA,OACI,MAAMW,YAAA,CAAaF,KAAA;MAAA;QAE1BH,cAAA,CAAe;MAAA;IACjB,CACF;IAAGE,EAAA,IAACR,KAAA,EAAOE,SAAA,CAAU;IAAAJ,CAAA,MAAAE,KAAA;IAAAF,CAAA,MAAAI,SAAA;IAAAJ,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAD,EAAA,GAAAT,CAAA;IAAAU,EAAA,GAAAV,CAAA;EAAA;EATrBL,SAAA,CAAUc,EASV,EAAGC,EAAkB;EAErB,IAAI,CAACH,WAAA;IAAA,OACI;EAAA;EAGT,MAAAO,SAAA,GAAkBb,SAAa,IAAb,iBAAa;EAGb,MAAAc,EAAA,MAAGD,SAAA,WAAoB;EAAA,IAAAE,EAAA;EAAA,IAAAhB,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAe,EAAA;IAAvCC,EAAA,GAAAC,IAAA,CAAC;MAAAH,SAAA,EAAeC,EAAuB;MAAAG,QAAA,EACrCD,IAAA,CAACpB,OAAA;QAAA,GAAYQ;;;;;;;;;SADfW,E;CAIJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAmB9E,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4L1C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/DeleteDocument/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAKxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAmB9E,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,QAAQ,CAAC,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAA;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;CACtE,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuL1C,CAAA"}
@@ -145,9 +145,7 @@ export const DeleteDocument = props => {
145
145
  return /*#__PURE__*/_jsxs(Fragment, {
146
146
  children: [/*#__PURE__*/_jsx(PopupList.Button, {
147
147
  id: buttonId,
148
- onClick: () => {
149
- openModal(modalSlug);
150
- },
148
+ onClick: () => openModal(modalSlug),
151
149
  children: t('general:delete')
152
150
  }), /*#__PURE__*/_jsx(ConfirmationModal, {
153
151
  body: /*#__PURE__*/_jsxs(Fragment, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","React","Fragment","useCallback","useState","toast","CheckboxInput","useForm","useConfig","useDocumentEvents","useDocumentInfo","useDocumentTitle","useRouter","useRouteTransition","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","PopupList","Translation","baseClass","DeleteDocument","props","id","buttonId","collectionSlug","onDelete","redirectAfterDelete","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","getEntityConfig","collectionConfig","hasDeletePermission","hasTrashPermission","setModified","router","i18n","t","startRouteTransition","openModal","reportUpdate","modalSlug","deletePermanently","setDeletePermanently","addDefaultError","error","handleDelete","permanentlyDelete","url","apiRoute","path","res","delete","headers","language","patch","body","JSON","stringify","deletedAt","Date","toISOString","json","status","success","label","message","deleteEvent","entitySlug","operation","updatedAt","push","errors","forEach","_err","_jsxs","_jsx","Button","onClick","elements","1","children","i18nKey","trash","variables","checked","name","onToggle","e","target","className","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly redirectAfterDelete?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n readonly useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onDelete,\n redirectAfterDelete = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { hasDeletePermission, hasTrashPermission } = useDocumentInfo()\n const { setModified } = useForm()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n const { reportUpdate } = useDocumentEvents()\n\n const modalSlug = `delete-${id}`\n\n const [deletePermanently, setDeletePermanently] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setModified(false)\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n })\n\n try {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}`,\n })\n const res = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t(permanentlyDelete ? 'general:titleDeleted' : 'general:titleTrashed', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n // A trashed document also disappears from default queries, so both permanent\n // deletes and trashing report as a `delete` event.\n const deleteEvent = {\n id,\n entitySlug: collectionSlug,\n operation: 'delete' as const,\n updatedAt: new Date().toISOString(),\n }\n\n if (redirectAfterDelete) {\n // Navigating away tears this surface down, so just notify other surfaces.\n reportUpdate(deleteEvent)\n\n return startRouteTransition(() =>\n router.push(formatAdminURL({ adminRoute, path: `/collections/${collectionSlug}` })),\n )\n }\n\n if (typeof onDelete === 'function') {\n await onDelete({ id, collectionConfig })\n }\n\n reportUpdate(deleteEvent)\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n\n return\n } catch (_err) {\n return addDefaultError()\n }\n }, [\n deletePermanently,\n setModified,\n hasDeletePermission,\n hasTrashPermission,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterDelete,\n onDelete,\n collectionConfig,\n startRouteTransition,\n reportUpdate,\n ])\n\n if (id) {\n return (\n <Fragment>\n <PopupList.Button\n id={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:delete')}\n </PopupList.Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig.trash && hasTrashPermission\n ? 'general:aboutToTrash'\n : 'general:aboutToDelete'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig.trash && hasTrashPermission && hasDeletePermission && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","formatAdminURL","React","Fragment","useCallback","useState","toast","CheckboxInput","useForm","useConfig","useDocumentEvents","useDocumentInfo","useDocumentTitle","useRouter","useRouteTransition","useTranslation","requests","shouldPermanentlyDelete","ConfirmationModal","PopupList","Translation","baseClass","DeleteDocument","props","id","buttonId","collectionSlug","onDelete","redirectAfterDelete","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","getEntityConfig","collectionConfig","hasDeletePermission","hasTrashPermission","setModified","router","i18n","t","startRouteTransition","openModal","reportUpdate","modalSlug","deletePermanently","setDeletePermanently","addDefaultError","error","handleDelete","permanentlyDelete","url","apiRoute","path","res","delete","headers","language","patch","body","JSON","stringify","deletedAt","Date","toISOString","json","status","success","label","message","deleteEvent","entitySlug","operation","updatedAt","push","errors","forEach","_err","_jsxs","_jsx","Button","onClick","elements","1","children","i18nKey","trash","variables","checked","name","onToggle","e","target","className","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/DeleteDocument/index.tsx"],"sourcesContent":["'use client'\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouter } from '../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { shouldPermanentlyDelete } from '../../utilities/shouldPermanentlyDelete.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { PopupList } from '../Popup/index.js'\nimport { Translation } from '../Translation/index.js'\n\nconst baseClass = 'delete-document'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly redirectAfterDelete?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n readonly useAsTitle: SanitizedCollectionConfig['admin']['useAsTitle']\n}\n\nexport const DeleteDocument: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onDelete,\n redirectAfterDelete = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { hasDeletePermission, hasTrashPermission } = useDocumentInfo()\n const { setModified } = useForm()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n const { reportUpdate } = useDocumentEvents()\n\n const modalSlug = `delete-${id}`\n\n const [deletePermanently, setDeletePermanently] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:deletingTitle', { title }))\n }, [t, title])\n\n const handleDelete = useCallback(async () => {\n setModified(false)\n\n const permanentlyDelete = shouldPermanentlyDelete({\n deletePermanently,\n hasDeletePermission,\n hasTrashPermission,\n })\n\n try {\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}/${id}`,\n })\n const res = permanentlyDelete\n ? await requests.delete(url, {\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n : await requests.patch(url, {\n body: JSON.stringify({\n deletedAt: new Date().toISOString(),\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t(permanentlyDelete ? 'general:titleDeleted' : 'general:titleTrashed', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n // A trashed document also disappears from default queries, so both permanent\n // deletes and trashing report as a `delete` event.\n const deleteEvent = {\n id,\n entitySlug: collectionSlug,\n operation: 'delete' as const,\n updatedAt: new Date().toISOString(),\n }\n\n if (redirectAfterDelete) {\n // Navigating away tears this surface down, so just notify other surfaces.\n reportUpdate(deleteEvent)\n\n return startRouteTransition(() =>\n router.push(formatAdminURL({ adminRoute, path: `/collections/${collectionSlug}` })),\n )\n }\n\n if (typeof onDelete === 'function') {\n await onDelete({ id, collectionConfig })\n }\n\n reportUpdate(deleteEvent)\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n\n return\n } catch (_err) {\n return addDefaultError()\n }\n }, [\n deletePermanently,\n setModified,\n hasDeletePermission,\n hasTrashPermission,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterDelete,\n onDelete,\n collectionConfig,\n startRouteTransition,\n reportUpdate,\n ])\n\n if (id) {\n return (\n <Fragment>\n <PopupList.Button id={buttonId} onClick={() => openModal(modalSlug)}>\n {t('general:delete')}\n </PopupList.Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig.trash && hasTrashPermission\n ? 'general:aboutToTrash'\n : 'general:aboutToDelete'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig.trash && hasTrashPermission && hasDeletePermission && (\n <CheckboxInput\n checked={deletePermanently}\n id=\"delete-forever\"\n label={t('general:deletePermanently')}\n name=\"delete-forever\"\n onToggle={(e) => setDeletePermanently(e.target.checked)}\n />\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={modalSlug}\n onConfirm={handleDelete}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useTranslation","Button","useModal","useDialogContext","DialogCancel","t0","$","label","onClick","slug","isConfirming","closeModal","t","t1","handleClick","t2","_jsx","buttonStyle","disabled","extraButtonProps","id","margin","size","children"],"sources":["../../../../src/elements/Dialog/DialogCancel/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\n\nexport type DialogCancelProps = {\n readonly label?: string\n readonly onClick?: () => void\n}\n\nexport const DialogCancel: React.FC<DialogCancelProps> = ({ label, onClick }) => {\n const { slug, isConfirming } = useDialogContext()\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const handleClick = () => {\n if (isConfirming) {\n return\n }\n closeModal(slug)\n onClick?.()\n }\n\n return (\n <Button\n buttonStyle=\"secondary\"\n disabled={isConfirming}\n extraButtonProps={{ 'data-dialog-action': 'cancel' }}\n id={`${slug}-cancel`}\n margin={false}\n onClick={handleClick}\n size=\"medium\"\n >\n {label ?? t('general:cancel')}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AAOjC,OAAO,MAAMC,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,KAAA;IAAAC;EAAA,IAAAH,EAAkB;EAC1E;IAAAI,IAAA;IAAAC;EAAA,IAA+BP,gBAAA;EAC/B;IAAAQ;EAAA,IAAuBT,QAAA;EACvB;IAAAU;EAAA,IAAcZ,cAAA;EAAA,IAAAa,EAAA;EAAA,IAAAP,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAI,YAAA,IAAAJ,CAAA,QAAAE,OAAA,IAAAF,CAAA,QAAAG,IAAA;IAEMI,EAAA,GAAAA,CAAA;MAAA,IACdH,YAAA;QAAA;MAAA;MAGJC,UAAA,CAAWF,IAAA;MACXD,OAAA;IAAA;IACFF,CAAA,MAAAK,UAAA;IAAAL,CAAA,MAAAI,YAAA;IAAAJ,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EANA,MAAAQ,WAAA,GAAoBD,EAMpB;EAAA,IAAAE,EAAA;EAAA,IAAAT,CAAA,QAAAQ,WAAA,IAAAR,CAAA,QAAAI,YAAA,IAAAJ,CAAA,QAAAC,KAAA,IAAAD,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAM,CAAA;IAGEG,EAAA,GAAAC,IAAA,CAAAf,MAAA;MAAAgB,WAAA,EACc;MAAAC,QAAA,EACFR,YAAA;MAAAS,gBAAA;QAAA,sBACgC;MAAA;MAAAC,EAAA,EACtC,GAAGX,IAAA,SAAa;MAAAY,MAAA;MAAAb,OAAA,EAEXM,WAAA;MAAAQ,IAAA,EACJ;MAAAC,QAAA,EAEJhB,KAAA,IAASK,CAAA,CAAE;IAAA,C;;;;;;;;;;SATdG,E;CAYJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useTranslation","Button","useModal","useDialogContext","DialogCancel","t0","$","label","onClick","slug","isConfirming","closeModal","t","t1","handleClick","t2","_jsx","buttonStyle","disabled","extraButtonProps","id","margin","size","children"],"sources":["../../../../src/elements/Dialog/DialogCancel/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\n\nexport type DialogCancelProps = {\n readonly label?: string\n readonly onClick?: () => void\n}\n\nexport const DialogCancel: React.FC<DialogCancelProps> = ({ label, onClick }) => {\n const { slug, isConfirming } = useDialogContext()\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const handleClick = () => {\n if (isConfirming) {\n return\n }\n closeModal(slug)\n onClick?.()\n }\n\n return (\n <Button\n buttonStyle=\"secondary\"\n disabled={isConfirming}\n extraButtonProps={{ 'data-dialog-action': 'cancel' }}\n id={`${slug}-cancel`}\n margin={false}\n onClick={handleClick}\n size=\"medium\"\n >\n {label ?? t('general:cancel')}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AAOjC,OAAO,MAAMC,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,KAAA;IAAAC;EAAA,IAAAH,EAAkB;EAC1E;IAAAI,IAAA;IAAAC;EAAA,IAA+BP,gBAAA;EAC/B;IAAAQ;EAAA,IAAuBT,QAAA;EACvB;IAAAU;EAAA,IAAcZ,cAAA;EAAA,IAAAa,EAAA;EAAA,IAAAP,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAI,YAAA,IAAAJ,CAAA,QAAAE,OAAA,IAAAF,CAAA,QAAAG,IAAA;IAEMI,EAAA,GAAAA,CAAA;MAClB,IAAIH,YAAA;QAAA;MAAA;MAGJC,UAAA,CAAWF,IAAA;MACXD,OAAA;IAAA,CACF;IAAAF,CAAA,MAAAK,UAAA;IAAAL,CAAA,MAAAI,YAAA;IAAAJ,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EANA,MAAAQ,WAAA,GAAoBD,EAMpB;EAAA,IAAAE,EAAA;EAAA,IAAAT,CAAA,QAAAQ,WAAA,IAAAR,CAAA,QAAAI,YAAA,IAAAJ,CAAA,QAAAC,KAAA,IAAAD,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAM,CAAA;IAGEG,EAAA,GAAAC,IAAA,CAACf,MAAA;MAAAgB,WAAA,EACa;MAAAC,QAAA,EACFR,YAAA;MAAAS,gBAAA,EACQ;QAAA,sBAAwB;MAAS;MAAAC,EAAA,EAC/C,GAAGX,IAAA,SAAa;MAAAY,MAAA,EACZ;MAAAb,OAAA,EACCM,WAAA;MAAAQ,IAAA,EACJ;MAAAC,QAAA,EAEJhB,KAAW,IAAFK,CAAA,CAAE;;;;;;;;;;;SATdG,E;CAYJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useTranslation","Button","useModal","useDialogContext","DialogConfirm","t0","$","label","loadingLabel","onClick","slug","isConfirming","setConfirming","closeModal","t","t1","handleClick","t2","resolvedLabel","_jsx","disabled","extraButtonProps","id","margin","size","children"],"sources":["../../../../src/elements/Dialog/DialogConfirm/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\n\nexport type DialogConfirmProps = {\n readonly label?: string\n readonly loadingLabel?: string\n readonly onClick: () => Promise<void> | void\n}\n\nexport const DialogConfirm: React.FC<DialogConfirmProps> = ({ label, loadingLabel, onClick }) => {\n const { slug, isConfirming, setConfirming } = useDialogContext()\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const handleClick = async () => {\n if (isConfirming) {\n return\n }\n setConfirming(true)\n await onClick()\n setConfirming(false)\n closeModal(slug)\n }\n\n const resolvedLabel = label ?? t('general:confirm')\n\n return (\n <Button\n disabled={isConfirming}\n extraButtonProps={{ 'data-dialog-action': 'confirm' }}\n id={`${slug}-confirm`}\n margin={false}\n onClick={handleClick}\n size=\"medium\"\n >\n {isConfirming && loadingLabel ? loadingLabel : resolvedLabel}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AAQjC,OAAO,MAAMC,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,KAAA;IAAAC,YAAA;IAAAC;EAAA,IAAAJ,EAAgC;EAC1F;IAAAK,IAAA;IAAAC,YAAA;IAAAC;EAAA,IAA8CT,gBAAA;EAC9C;IAAAU;EAAA,IAAuBX,QAAA;EACvB;IAAAY;EAAA,IAAcd,cAAA;EAAA,IAAAe,EAAA;EAAA,IAAAT,CAAA,QAAAO,UAAA,IAAAP,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAM,aAAA,IAAAN,CAAA,QAAAI,IAAA;IAEMK,EAAA,SAAAA,CAAA;MAAA,IACdJ,YAAA;QAAA;MAAA;MAGJC,aAAA,KAAc;MAAA,MACRH,OAAA;MACNG,aAAA,MAAc;MACdC,UAAA,CAAWH,IAAA;IAAA;IACbJ,CAAA,MAAAO,UAAA;IAAAP,CAAA,MAAAK,YAAA;IAAAL,CAAA,MAAAG,OAAA;IAAAH,CAAA,MAAAM,aAAA;IAAAN,CAAA,MAAAI,IAAA;IAAAJ,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EARA,MAAAU,WAAA,GAAoBD,EAQpB;EAAA,IAAAE,EAAA;EAAA,IAAAX,CAAA,QAAAU,WAAA,IAAAV,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAC,KAAA,IAAAD,CAAA,QAAAE,YAAA,IAAAF,CAAA,SAAAI,IAAA,IAAAJ,CAAA,SAAAQ,CAAA;IAEA,MAAAI,aAAA,GAAsBX,KAAA,IAASO,CAAA,CAAE;IAG/BG,EAAA,GAAAE,IAAA,CAAAlB,MAAA;MAAAmB,QAAA,EACYT,YAAA;MAAAU,gBAAA;QAAA,sBACgC;MAAA;MAAAC,EAAA,EACtC,GAAGZ,IAAA,UAAc;MAAAa,MAAA;MAAAd,OAAA,EAEZO,WAAA;MAAAQ,IAAA,EACJ;MAAAC,QAAA,EAEJd,YAAA,IAAgBH,YAAA,GAAeA,YAAA,GAAeU;IAAA,C;;;;;;;;;;;SARjDD,E;CAWJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useTranslation","Button","useModal","useDialogContext","DialogConfirm","t0","$","label","loadingLabel","onClick","slug","isConfirming","setConfirming","closeModal","t","t1","handleClick","t2","resolvedLabel","_jsx","disabled","extraButtonProps","id","margin","size","children"],"sources":["../../../../src/elements/Dialog/DialogConfirm/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\n\nexport type DialogConfirmProps = {\n readonly label?: string\n readonly loadingLabel?: string\n readonly onClick: () => Promise<void> | void\n}\n\nexport const DialogConfirm: React.FC<DialogConfirmProps> = ({ label, loadingLabel, onClick }) => {\n const { slug, isConfirming, setConfirming } = useDialogContext()\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const handleClick = async () => {\n if (isConfirming) {\n return\n }\n setConfirming(true)\n await onClick()\n setConfirming(false)\n closeModal(slug)\n }\n\n const resolvedLabel = label ?? t('general:confirm')\n\n return (\n <Button\n disabled={isConfirming}\n extraButtonProps={{ 'data-dialog-action': 'confirm' }}\n id={`${slug}-confirm`}\n margin={false}\n onClick={handleClick}\n size=\"medium\"\n >\n {isConfirming && loadingLabel ? loadingLabel : resolvedLabel}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AAQjC,OAAO,MAAMC,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAR,EAAA;EAAC;IAAAS,KAAA;IAAAC,YAAA;IAAAC;EAAA,IAAAJ,EAAgC;EAC1F;IAAAK,IAAA;IAAAC,YAAA;IAAAC;EAAA,IAA8CT,gBAAA;EAC9C;IAAAU;EAAA,IAAuBX,QAAA;EACvB;IAAAY;EAAA,IAAcd,cAAA;EAAA,IAAAe,EAAA;EAAA,IAAAT,CAAA,QAAAO,UAAA,IAAAP,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAM,aAAA,IAAAN,CAAA,QAAAI,IAAA;IAEMK,EAAA,SAAAA,CAAA;MAClB,IAAIJ,YAAA;QAAA;MAAA;MAGJC,aAAA,CAAc;MACd,MAAMH,OAAA;MACNG,aAAA,CAAc;MACdC,UAAA,CAAWH,IAAA;IAAA,CACb;IAAAJ,CAAA,MAAAO,UAAA;IAAAP,CAAA,MAAAK,YAAA;IAAAL,CAAA,MAAAG,OAAA;IAAAH,CAAA,MAAAM,aAAA;IAAAN,CAAA,MAAAI,IAAA;IAAAJ,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EARA,MAAAU,WAAA,GAAoBD,EAQpB;EAAA,IAAAE,EAAA;EAAA,IAAAX,CAAA,QAAAU,WAAA,IAAAV,CAAA,QAAAK,YAAA,IAAAL,CAAA,QAAAC,KAAA,IAAAD,CAAA,QAAAE,YAAA,IAAAF,CAAA,SAAAI,IAAA,IAAAJ,CAAA,SAAAQ,CAAA;IAEA,MAAAI,aAAA,GAAsBX,KAAW,IAAFO,CAAA,CAAE;IAG/BG,EAAA,GAAAE,IAAA,CAAClB,MAAA;MAAAmB,QAAA,EACWT,YAAA;MAAAU,gBAAA,EACQ;QAAA,sBAAwB;MAAU;MAAAC,EAAA,EAChD,GAAGZ,IAAA,UAAc;MAAAa,MAAA,EACb;MAAAd,OAAA,EACCO,WAAA;MAAAQ,IAAA,EACJ;MAAAC,QAAA,EAEJd,YAAgB,IAAhBH,YAA8C,GAA9CA,YAA8C,GAA9CU;;;;;;;;;;;;SARHD,E;CAWJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","XIcon","Button","useModal","useDialogContext","DialogTitle","baseClass","DialogHeader","t0","$","children","className","onClose","showClose","title","slug","isConfirming","closeModal","t1","t2","filter","Boolean","t3","join","t4","_jsxs","_jsx","buttonStyle","disabled","icon","margin","onClick","modalSlug"],"sources":["../../../../src/elements/Dialog/DialogHeader/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { XIcon } from '../../../icons/X/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\nimport { DialogTitle } from '../DialogTitle/index.js'\n\nconst baseClass = 'dialog'\n\nexport type DialogHeaderProps = {\n readonly children?: React.ReactNode\n readonly className?: string\n readonly onClose?: ({ modalSlug }: { modalSlug: string }) => void\n readonly showClose?: boolean\n readonly title?: React.ReactNode\n}\n\nexport const DialogHeader: React.FC<DialogHeaderProps> = ({\n children,\n className,\n onClose,\n showClose,\n title,\n}) => {\n const { slug, isConfirming } = useDialogContext()\n const { closeModal } = useModal()\n\n if (!title && !children && !showClose) {\n return null\n }\n\n return (\n <div\n className={[`${baseClass}__header`, showClose && `${baseClass}__header--has-close`, className]\n .filter(Boolean)\n .join(' ')}\n >\n {title ? typeof title === 'string' ? <DialogTitle title={title} /> : title : null}\n <div className={`${baseClass}__header-end`}>\n {children ? <div className={`${baseClass}__header-extras`}>{children}</div> : null}\n {showClose ? (\n <Button\n aria-label=\"Close\"\n buttonStyle=\"ghost\"\n disabled={isConfirming}\n icon={<XIcon />}\n margin={false}\n onClick={() => {\n if (onClose) {\n onClose({ modalSlug: slug })\n } else {\n closeModal(slug)\n }\n }}\n />\n ) : null}\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,KAAK,QAAQ;AACtB,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,WAAW,QAAQ;AAE5B,MAAMC,SAAA,GAAY;AAUlB,OAAO,MAAMC,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW,QAAA;IAAAC,SAAA;IAAAC,OAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAN,EAMzD;EACC;IAAAO,IAAA;IAAAC;EAAA,IAA+BZ,gBAAA;EAC/B;IAAAa;EAAA,IAAuBd,QAAA;EAAA,IAEnB,CAACW,KAAA,KAAUJ,QAAA,KAAaG,SAAA;IAAA;EAAA;EAMY,MAAAK,EAAA,GAAAL,SAAA,IAAa,GAAAP,SAAA,qBAAiC;EAAA,IAAAa,EAAA;EAAA,IAAAV,CAAA,QAAAE,SAAA,IAAAF,CAAA,QAAAS,EAAA;IAAvEC,EAAA,IAAC,GAAAb,SAAA,UAAsB,EAAEY,EAA8C,EAAEP,SAAA,EAAAS,MAAA,CAAAC,OAC1E;IAAAZ,CAAA,MAAAE,SAAA;IAAAF,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAA,EAAA,GAAAV,CAAA;EAAA;EADC,MAAAa,EAAA,GAAAH,EACD,CAAAI,IAAA,CACF;EAAA,IAAAC,EAAA;EAAA,IAAAf,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAQ,UAAA,IAAAR,CAAA,QAAAO,YAAA,IAAAP,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAI,SAAA,IAAAJ,CAAA,QAAAM,IAAA,IAAAN,CAAA,QAAAa,EAAA,IAAAb,CAAA,SAAAK,KAAA;IAHVU,EAAA,GAAAC,KAAA,CAAC;MAAAd,SAAA,EACYW,EAEH;MAAAZ,QAAA,GAEPI,KAAA,GAAQ,OAAOA,KAAA,KAAU,WAAWY,IAAA,CAAArB,WAAA;QAAAS;MAAA,C,IAAgCA,KAAA,OAAQ,EAC7EW,KAAA,CAAC;QAAAd,SAAA,EAAe,GAAAL,SAAA,cAA0B;QAAAI,QAAA,GACvCA,QAAA,GAAWgB,IAAA,CAAC;UAAAf,SAAA,EAAe,GAAAL,SAAA,iBAA6B;UAAAI;QAAA,C,QAAqB,EAC7EG,SAAA,GACCa,IAAA,CAAAxB,MAAA;UAAA,cACa;UAAAyB,WAAA,EACC;UAAAC,QAAA,EACFZ,YAAA;UAAAa,IAAA,EACJH,IAAA,CAAAzB,KAAA,IAAC;UAAA6B,MAAA;UAAAC,OAAA,EAAAA,CAAA;YAAA,IAGDnB,OAAA;cACFA,OAAA;gBAAAoB,SAAA,EAAqBjB;cAAA,CAAK;YAAA;cAE1BE,UAAA,CAAWF,IAAA;YAAA;UAAA;QAAA,C,QAIf;MAAA,C;;;;;;;;;;;;;;SAvBRS,E;CA2BJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","XIcon","Button","useModal","useDialogContext","DialogTitle","baseClass","DialogHeader","t0","$","children","className","onClose","showClose","title","slug","isConfirming","closeModal","t1","t2","filter","Boolean","t3","join","t4","_jsxs","_jsx","buttonStyle","disabled","icon","margin","onClick","modalSlug"],"sources":["../../../../src/elements/Dialog/DialogHeader/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport { XIcon } from '../../../icons/X/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useModal } from '../../Modal/index.js'\nimport { useDialogContext } from '../context.js'\nimport { DialogTitle } from '../DialogTitle/index.js'\n\nconst baseClass = 'dialog'\n\nexport type DialogHeaderProps = {\n readonly children?: React.ReactNode\n readonly className?: string\n readonly onClose?: ({ modalSlug }: { modalSlug: string }) => void\n readonly showClose?: boolean\n readonly title?: React.ReactNode\n}\n\nexport const DialogHeader: React.FC<DialogHeaderProps> = ({\n children,\n className,\n onClose,\n showClose,\n title,\n}) => {\n const { slug, isConfirming } = useDialogContext()\n const { closeModal } = useModal()\n\n if (!title && !children && !showClose) {\n return null\n }\n\n return (\n <div\n className={[`${baseClass}__header`, showClose && `${baseClass}__header--has-close`, className]\n .filter(Boolean)\n .join(' ')}\n >\n {title ? typeof title === 'string' ? <DialogTitle title={title} /> : title : null}\n <div className={`${baseClass}__header-end`}>\n {children ? <div className={`${baseClass}__header-extras`}>{children}</div> : null}\n {showClose ? (\n <Button\n aria-label=\"Close\"\n buttonStyle=\"ghost\"\n disabled={isConfirming}\n icon={<XIcon />}\n margin={false}\n onClick={() => {\n if (onClose) {\n onClose({ modalSlug: slug })\n } else {\n closeModal(slug)\n }\n }}\n />\n ) : null}\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,MAAW;AAElB,SAASC,KAAK,QAAQ;AACtB,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,gBAAgB,QAAQ;AACjC,SAASC,WAAW,QAAQ;AAE5B,MAAMC,SAAA,GAAY;AAUlB,OAAO,MAAMC,YAAA,GAA4CC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW,QAAA;IAAAC,SAAA;IAAAC,OAAA;IAAAC,SAAA;IAAAC;EAAA,IAAAN,EAMzD;EACC;IAAAO,IAAA;IAAAC;EAAA,IAA+BZ,gBAAA;EAC/B;IAAAa;EAAA,IAAuBd,QAAA;EAEvB,IAAI,CAACW,KAAU,IAAX,CAAWJ,QAAa,IAAxB,CAAwBG,SAAA;IAAA,OACnB;EAAA;EAK+B,MAAAK,EAAA,GAAAL,SAA8C,IAA9C,GAAgBP,SAAA,qBAA8B;EAAA,IAAAa,EAAA;EAAA,IAAAV,CAAA,QAAAE,SAAA,IAAAF,CAAA,QAAAS,EAAA;IAAvEC,EAAA,IAAC,GAAGb,SAAA,UAAmB,EAAEY,EAA8C,EAAEP,SAAA,CAAU,CAAAS,MACrF,CAACC,OAAA;IAAAZ,CAAA,MAAAE,SAAA;IAAAF,CAAA,MAAAS,EAAA;IAAAT,CAAA,MAAAU,EAAA;EAAA;IAAAA,EAAA,GAAAV,CAAA;EAAA;EADC,MAAAa,EAAA,GAAAH,EACD,CAAAI,IACH,CAAC;EAAA,IAAAC,EAAA;EAAA,IAAAf,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAQ,UAAA,IAAAR,CAAA,QAAAO,YAAA,IAAAP,CAAA,QAAAG,OAAA,IAAAH,CAAA,QAAAI,SAAA,IAAAJ,CAAA,QAAAM,IAAA,IAAAN,CAAA,QAAAa,EAAA,IAAAb,CAAA,SAAAK,KAAA;IAHVU,EAAA,GAAAC,KAAA,CAAC;MAAAd,SAAA,EACYW,EAEH;MAAAZ,QAAA,E,CAEPI,KAAA,GAAQ,OAAOA,KAAA,KAAU,QAA2C,GAAhCY,IAAA,CAACrB,WAAA;QAAAS;OAA+B,IAA5DA,KAAoE,GAA5E,IAA4E,EAC7EW,KAAA,CAAC;QAAAd,SAAA,EAAe,GAAGL,SAAA,cAAuB;QAAAI,QAAA,E,CACvCA,QAAA,GAAWgB,IAAA,CAAC;UAAAf,SAAA,EAAe,GAAGL,SAAA,iBAA0B;UAAAI;SAAqB,IAA7E,IAA6E,EAC7EG,SAAA,GACCa,IAAA,CAACxB,MAAA;UAAA,cACY;UAAAyB,WAAA,EACC;UAAAC,QAAA,EACFZ,YAAA;UAAAa,IAAA,EACJH,IAAA,CAACzB,KAAA;UAAA6B,MAAA,EACC;UAAAC,OAAA,EACCA,CAAA;YACP,IAAInB,OAAA;cACFA,OAAA,CAAQ;gBAAAoB,SAAA,EAAajB;cAAK;YAAA;cAE1BE,UAAA,CAAWF,IAAA;YAAA;UACb;SAGF,IAfH,IAeG;;;;;;;;;;;;;;;SAvBRS,E;CA2BJ","ignoreList":[]}