@payloadcms/ui 4.0.0-internal.5d5a2b2 → 4.0.0-internal.63f8536

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 (1067) hide show
  1. package/LICENSE.md +1 -1
  2. package/dist/css/colors.css +112 -59
  3. package/dist/css/design-tokens.css +5 -0
  4. package/dist/css/elevations.css +4 -0
  5. package/dist/css/forms.css +6 -3
  6. package/dist/css/radius.css +1 -3
  7. package/dist/css/theme.css +6 -1
  8. package/dist/css/utilities.css +7 -1
  9. package/dist/elements/APIKeyInput/index.css +92 -0
  10. package/dist/elements/APIKeyInput/index.d.ts +14 -0
  11. package/dist/elements/APIKeyInput/index.d.ts.map +1 -0
  12. package/dist/elements/APIKeyInput/index.js +86 -0
  13. package/dist/elements/APIKeyInput/index.js.map +1 -0
  14. package/dist/elements/AddNewRelation/index.css +28 -28
  15. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  16. package/dist/elements/AddNewRelation/index.js +85 -103
  17. package/dist/elements/AddNewRelation/index.js.map +1 -1
  18. package/dist/elements/AppHeader/index.d.ts +4 -1
  19. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  20. package/dist/elements/AppHeader/index.js +16 -27
  21. package/dist/elements/AppHeader/index.js.map +1 -1
  22. package/dist/elements/ArrayAction/index.js +2 -2
  23. package/dist/elements/ArrayAction/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/ActionsBar/index.css +13 -11
  25. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +1 -5
  26. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  27. package/dist/elements/BulkUpload/ActionsBar/index.js +57 -61
  28. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  29. package/dist/elements/BulkUpload/AddFilesView/index.css +14 -8
  30. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +2 -2
  31. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  32. package/dist/elements/BulkUpload/AddFilesView/index.js +41 -36
  33. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  34. package/dist/elements/BulkUpload/AddingFilesView/index.css +177 -0
  35. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +6 -2
  36. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/AddingFilesView/index.js +135 -66
  38. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  39. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +4 -4
  40. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  41. package/dist/elements/BulkUpload/EditForm/index.css +9 -0
  42. package/dist/elements/BulkUpload/EditForm/index.d.ts +2 -2
  43. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  44. package/dist/elements/BulkUpload/EditForm/index.js +17 -18
  45. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  46. package/dist/elements/BulkUpload/EditForm/types.d.ts +2 -3
  47. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -1
  48. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  49. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +1 -1
  50. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -1
  51. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +77 -59
  52. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  53. package/dist/elements/BulkUpload/EditMany/index.css +71 -0
  54. package/dist/elements/BulkUpload/EditMany/index.d.ts +1 -1
  55. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -1
  56. package/dist/elements/BulkUpload/EditMany/index.js +29 -11
  57. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  58. package/dist/elements/BulkUpload/FileSidebar/index.css +79 -180
  59. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  60. package/dist/elements/BulkUpload/FileSidebar/index.js +42 -165
  61. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  62. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  63. package/dist/elements/BulkUpload/FormsManager/index.js +14 -1
  64. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  65. package/dist/elements/BulkUpload/index.css +48 -0
  66. package/dist/elements/BulkUpload/index.d.ts +6 -5
  67. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  68. package/dist/elements/BulkUpload/index.js +42 -41
  69. package/dist/elements/BulkUpload/index.js.map +1 -1
  70. package/dist/elements/Button/index.css +8 -0
  71. package/dist/elements/Button/index.d.ts.map +1 -1
  72. package/dist/elements/Button/index.js +5 -0
  73. package/dist/elements/Button/index.js.map +1 -1
  74. package/dist/elements/Card/index.css +1 -1
  75. package/dist/elements/Chip/index.css +1 -1
  76. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  77. package/dist/elements/ClipboardAction/index.js +1 -0
  78. package/dist/elements/ClipboardAction/index.js.map +1 -1
  79. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  80. package/dist/elements/CodeEditor/CodeEditor.js +19 -0
  81. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  82. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  83. package/dist/elements/Collapsible/index.js +2 -0
  84. package/dist/elements/Collapsible/index.js.map +1 -1
  85. package/dist/elements/ColumnSelection/Popup.d.ts +12 -0
  86. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -0
  87. package/dist/elements/{ColumnSelector/index.js → ColumnSelection/Popup.js} +25 -18
  88. package/dist/elements/ColumnSelection/Popup.js.map +1 -0
  89. package/dist/elements/ColumnSelection/index.d.ts +10 -0
  90. package/dist/elements/ColumnSelection/index.d.ts.map +1 -0
  91. package/dist/elements/{ColumnsButton → ColumnSelection}/index.js +23 -17
  92. package/dist/elements/ColumnSelection/index.js.map +1 -0
  93. package/dist/elements/Combobox/index.css +9 -8
  94. package/dist/elements/ConfirmationModal/index.css +7 -0
  95. package/dist/elements/ConfirmationModal/index.d.ts +1 -0
  96. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  97. package/dist/elements/ConfirmationModal/index.js +7 -3
  98. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  99. package/dist/elements/CopyLocaleData/index.js +1 -1
  100. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  101. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  102. package/dist/elements/CreateDocumentButton/index.js +0 -1
  103. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  104. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  105. package/dist/elements/DatePicker/DatePicker.js +4 -2
  106. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  107. package/dist/elements/DatePicker/index.css +14 -9
  108. package/dist/elements/DatePicker/index.js +1 -1
  109. package/dist/elements/DatePicker/index.js.map +1 -1
  110. package/dist/elements/DeleteMany/index.d.ts +3 -26
  111. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  112. package/dist/elements/DeleteMany/index.js +1 -95
  113. package/dist/elements/DeleteMany/index.js.map +1 -1
  114. package/dist/elements/Dialog/DialogHeader/index.d.ts +4 -0
  115. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -1
  116. package/dist/elements/Dialog/DialogHeader/index.js +45 -30
  117. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
  118. package/dist/elements/Dialog/DialogModal/index.d.ts +6 -1
  119. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  120. package/dist/elements/Dialog/DialogModal/index.js +58 -31
  121. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  122. package/dist/elements/Dialog/DialogTitle/index.css +9 -0
  123. package/dist/elements/Dialog/DialogTitle/index.d.ts +5 -0
  124. package/dist/elements/Dialog/DialogTitle/index.d.ts.map +1 -0
  125. package/dist/elements/Dialog/DialogTitle/index.js +10 -0
  126. package/dist/elements/Dialog/DialogTitle/index.js.map +1 -0
  127. package/dist/elements/Dialog/index.css +10 -0
  128. package/dist/elements/DocumentControls/index.css +18 -2
  129. package/dist/elements/DocumentControls/index.d.ts +6 -0
  130. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  131. package/dist/elements/DocumentControls/index.js +20 -9
  132. package/dist/elements/DocumentControls/index.js.map +1 -1
  133. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  134. package/dist/elements/DocumentDrawer/DrawerContent.js +10 -6
  135. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  136. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +76 -4
  137. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +7 -1
  138. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  139. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +150 -87
  140. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  141. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  142. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  143. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  144. package/dist/elements/DocumentFields/index.css +75 -4
  145. package/dist/elements/DocumentFields/index.d.ts +5 -0
  146. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  147. package/dist/elements/DocumentFields/index.js +9 -1
  148. package/dist/elements/DocumentFields/index.js.map +1 -1
  149. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts +12 -0
  150. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.d.ts.map +1 -0
  151. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js +28 -0
  152. package/dist/elements/DocumentHeader/DocumentHeaderRoot/index.js.map +1 -0
  153. package/dist/elements/DocumentHeader/index.js +2 -3
  154. package/dist/elements/DocumentHeader/index.js.map +1 -1
  155. package/dist/elements/DraggableSortable/DragOverlayPreview/index.css +1 -1
  156. package/dist/elements/DraggableSortable/index.js.map +1 -1
  157. package/dist/elements/Drawer/index.css +57 -26
  158. package/dist/elements/Drawer/index.d.ts +25 -0
  159. package/dist/elements/Drawer/index.d.ts.map +1 -1
  160. package/dist/elements/Drawer/index.js +133 -54
  161. package/dist/elements/Drawer/index.js.map +1 -1
  162. package/dist/elements/Drawer/types.d.ts +1 -0
  163. package/dist/elements/Drawer/types.d.ts.map +1 -1
  164. package/dist/elements/Drawer/types.js.map +1 -1
  165. package/dist/elements/DrawerActionHeader/index.css +1 -1
  166. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.css +7 -1
  167. package/dist/elements/DrawerHeader/index.d.ts +10 -0
  168. package/dist/elements/DrawerHeader/index.d.ts.map +1 -0
  169. package/dist/elements/{BulkUpload/Header → DrawerHeader}/index.js +16 -11
  170. package/dist/elements/DrawerHeader/index.js.map +1 -0
  171. package/dist/elements/Dropzone/index.css +5 -13
  172. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +1 -1
  173. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  174. package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
  175. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  176. package/dist/elements/EditMany/DrawerContent.js +76 -71
  177. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  178. package/dist/elements/EditMany/index.css +71 -0
  179. package/dist/elements/EditMany/index.d.ts +9 -11
  180. package/dist/elements/EditMany/index.d.ts.map +1 -1
  181. package/dist/elements/EditMany/index.js +2 -40
  182. package/dist/elements/EditMany/index.js.map +1 -1
  183. package/dist/elements/EditUpload/index.css +97 -158
  184. package/dist/elements/EditUpload/index.d.ts +2 -1
  185. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  186. package/dist/elements/EditUpload/index.js +209 -231
  187. package/dist/elements/EditUpload/index.js.map +1 -1
  188. package/dist/elements/EditUpload/{library.scss → library.css} +108 -46
  189. package/dist/elements/FieldSelect/index.css +3 -0
  190. package/dist/elements/FileDetails/DraggableFileDetails/index.css +32 -0
  191. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +2 -2
  192. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  193. package/dist/elements/FileDetails/DraggableFileDetails/index.js +19 -18
  194. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  195. package/dist/elements/FileDetails/FileMeta/index.css +27 -0
  196. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  197. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  198. package/dist/elements/FileDetails/FileMeta/index.js +1 -1
  199. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  200. package/dist/elements/FileDetails/StaticFileDetails/index.css +140 -0
  201. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +2 -2
  202. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  203. package/dist/elements/FileDetails/StaticFileDetails/index.js +1 -1
  204. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  205. package/dist/elements/FileDetails/index.d.ts +1 -1
  206. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  207. package/dist/elements/FileDetails/index.js.map +1 -1
  208. package/dist/elements/FileManager/FilePreview/AudioPreview/index.css +8 -0
  209. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts +10 -0
  210. package/dist/elements/FileManager/FilePreview/AudioPreview/index.d.ts.map +1 -0
  211. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js +24 -0
  212. package/dist/elements/FileManager/FilePreview/AudioPreview/index.js.map +1 -0
  213. package/dist/elements/FileManager/FilePreview/PdfPreview/index.css +9 -0
  214. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts +12 -0
  215. package/dist/elements/FileManager/FilePreview/PdfPreview/index.d.ts.map +1 -0
  216. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js +27 -0
  217. package/dist/elements/FileManager/FilePreview/PdfPreview/index.js.map +1 -0
  218. package/dist/elements/FileManager/FilePreview/VideoPreview/index.css +8 -0
  219. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts +10 -0
  220. package/dist/elements/FileManager/FilePreview/VideoPreview/index.d.ts.map +1 -0
  221. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js +24 -0
  222. package/dist/elements/FileManager/FilePreview/VideoPreview/index.js.map +1 -0
  223. package/dist/elements/FileManager/FilePreview/index.css +83 -0
  224. package/dist/elements/FileManager/FilePreview/index.d.ts +13 -0
  225. package/dist/elements/FileManager/FilePreview/index.d.ts.map +1 -0
  226. package/dist/elements/FileManager/FilePreview/index.js +140 -0
  227. package/dist/elements/FileManager/FilePreview/index.js.map +1 -0
  228. package/dist/elements/FileManager/FileToolbar/index.css +91 -0
  229. package/dist/elements/FileManager/FileToolbar/index.d.ts +14 -0
  230. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -0
  231. package/dist/elements/FileManager/FileToolbar/index.js +106 -0
  232. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -0
  233. package/dist/elements/FileManager/index.css +154 -0
  234. package/dist/elements/FileManager/index.d.ts +19 -0
  235. package/dist/elements/FileManager/index.d.ts.map +1 -0
  236. package/dist/elements/FileManager/index.js +424 -0
  237. package/dist/elements/FileManager/index.js.map +1 -0
  238. package/dist/elements/GroupBy/Popup.d.ts +21 -0
  239. package/dist/elements/GroupBy/Popup.d.ts.map +1 -0
  240. package/dist/elements/GroupBy/Popup.js +268 -0
  241. package/dist/elements/GroupBy/Popup.js.map +1 -0
  242. package/dist/elements/GroupBy/index.d.ts +12 -0
  243. package/dist/elements/GroupBy/index.d.ts.map +1 -0
  244. package/dist/elements/GroupBy/index.js +91 -0
  245. package/dist/elements/GroupBy/index.js.map +1 -0
  246. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +5 -3
  247. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.css +1 -0
  248. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts +1 -1
  249. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -1
  250. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -1
  251. package/dist/elements/Hierarchy/DocHeaderButton/index.js +12 -12
  252. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  253. package/dist/elements/Hierarchy/Field/SelectedHierarchies.css +36 -0
  254. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts +1 -1
  255. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  256. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -1
  257. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  258. package/dist/elements/Hierarchy/Field/index.client.d.ts +1 -1
  259. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  260. package/dist/elements/Hierarchy/Field/index.client.js +19 -16
  261. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  262. package/dist/elements/Hierarchy/Field/index.css +37 -0
  263. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -0
  264. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -0
  265. package/dist/elements/Hierarchy/Modal/index.css +88 -0
  266. package/dist/elements/Hierarchy/Modal/index.d.ts +20 -0
  267. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -0
  268. package/dist/elements/Hierarchy/{Drawer → Modal}/index.js +109 -83
  269. package/dist/elements/Hierarchy/Modal/index.js.map +1 -0
  270. package/dist/elements/Hierarchy/{Drawer → Modal}/types.d.ts +22 -18
  271. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -0
  272. package/dist/elements/Hierarchy/Modal/types.js.map +1 -0
  273. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts +30 -0
  274. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -0
  275. package/dist/elements/Hierarchy/{Drawer/useHierarchyDrawer.js → Modal/useHierarchyModal.js} +51 -50
  276. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -0
  277. package/dist/elements/Hierarchy/MoveMany/index.d.ts +2 -3
  278. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  279. package/dist/elements/Hierarchy/MoveMany/index.js +9 -10
  280. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  281. package/dist/elements/Hierarchy/Tree/LoadMore/index.css +27 -0
  282. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts +1 -1
  283. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -1
  284. package/dist/elements/Hierarchy/Tree/LoadMore/index.js +1 -1
  285. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -1
  286. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  287. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +36 -16
  288. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  289. package/dist/elements/Hierarchy/Tree/TreeNode/index.css +38 -13
  290. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  291. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +54 -43
  292. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  293. package/dist/elements/Hierarchy/Tree/index.css +1 -1
  294. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  295. package/dist/elements/Hierarchy/Tree/index.js +18 -5
  296. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  297. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  298. package/dist/elements/ListColumnSelectionButton/index.d.ts +11 -0
  299. package/dist/elements/ListColumnSelectionButton/index.d.ts.map +1 -0
  300. package/dist/elements/ListColumnSelectionButton/index.js +37 -0
  301. package/dist/elements/ListColumnSelectionButton/index.js.map +1 -0
  302. package/dist/elements/ListControls/index.css +5 -0
  303. package/dist/elements/ListControls/index.d.ts.map +1 -1
  304. package/dist/elements/ListControls/index.js +8 -9
  305. package/dist/elements/ListControls/index.js.map +1 -1
  306. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  307. package/dist/elements/ListDrawer/DrawerContent.js +13 -7
  308. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  309. package/dist/elements/ListDrawer/Provider.d.ts +1 -1
  310. package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
  311. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  312. package/dist/elements/ListGroupByButton/index.d.ts +12 -0
  313. package/dist/elements/ListGroupByButton/index.d.ts.map +1 -0
  314. package/dist/elements/ListGroupByButton/index.js +55 -0
  315. package/dist/elements/ListGroupByButton/index.js.map +1 -0
  316. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.d.ts.map +1 -1
  317. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +2 -0
  318. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  319. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +4 -4
  320. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  321. package/dist/elements/ListSelection/index.css +1 -1
  322. package/dist/elements/ListWhereBuilder/index.d.ts +16 -0
  323. package/dist/elements/ListWhereBuilder/index.d.ts.map +1 -0
  324. package/dist/elements/ListWhereBuilder/index.js +62 -0
  325. package/dist/elements/ListWhereBuilder/index.js.map +1 -0
  326. package/dist/elements/LivePreview/Toolbar/Controls/index.js +2 -2
  327. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  328. package/dist/elements/LivePreview/Toolbar/SizeInput/index.css +5 -44
  329. package/dist/elements/LivePreview/Toolbar/SizeInput/index.d.ts.map +1 -1
  330. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +26 -43
  331. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  332. package/dist/elements/LivePreview/Window/index.css +6 -0
  333. package/dist/elements/LoadMoreRow/index.css +34 -0
  334. package/dist/elements/LoadMoreRow/index.d.ts +1 -1
  335. package/dist/elements/LoadMoreRow/index.d.ts.map +1 -1
  336. package/dist/elements/LoadMoreRow/index.js +4 -8
  337. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  338. package/dist/elements/Loading/index.css +28 -74
  339. package/dist/elements/Loading/index.d.ts.map +1 -1
  340. package/dist/elements/Loading/index.js +16 -60
  341. package/dist/elements/Loading/index.js.map +1 -1
  342. package/dist/elements/Localizer/index.d.ts.map +1 -1
  343. package/dist/elements/Localizer/index.js +3 -4
  344. package/dist/elements/Localizer/index.js.map +1 -1
  345. package/dist/elements/MenuSeparator/index.d.ts +4 -0
  346. package/dist/elements/MenuSeparator/index.d.ts.map +1 -0
  347. package/dist/elements/MenuSeparator/index.js +10 -0
  348. package/dist/elements/MenuSeparator/index.js.map +1 -0
  349. package/dist/elements/MiniCarousel/index.css +94 -0
  350. package/dist/elements/MiniCarousel/index.d.ts +15 -0
  351. package/dist/elements/MiniCarousel/index.d.ts.map +1 -0
  352. package/dist/elements/MiniCarousel/index.js +84 -0
  353. package/dist/elements/MiniCarousel/index.js.map +1 -0
  354. package/dist/elements/Nav/SettingsMenuButton/index.css +5 -0
  355. package/dist/elements/Nav/SettingsMenuButton/index.d.ts +1 -1
  356. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  357. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -1
  358. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  359. package/dist/elements/Nav/index.css +2 -2
  360. package/dist/elements/Nav/index.d.ts.map +1 -1
  361. package/dist/elements/Nav/index.js +4 -23
  362. package/dist/elements/Nav/index.js.map +1 -1
  363. package/dist/elements/NavGroup/index.css +1 -1
  364. package/dist/elements/Pill/index.css +1 -1
  365. package/dist/elements/PillSelector/index.css +1 -1
  366. package/dist/elements/Popup/PopupButtonList/index.css +48 -4
  367. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  368. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  369. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  370. package/dist/elements/Popup/PopupGroupLabel/index.css +19 -4
  371. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  372. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  373. package/dist/elements/Popup/PopupTrigger/index.js +3 -0
  374. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  375. package/dist/elements/Popup/index.d.ts +14 -1
  376. package/dist/elements/Popup/index.d.ts.map +1 -1
  377. package/dist/elements/Popup/index.js +162 -63
  378. package/dist/elements/Popup/index.js.map +1 -1
  379. package/dist/elements/PreviewSizes/index.css +149 -0
  380. package/dist/elements/PreviewSizes/index.d.ts +2 -2
  381. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  382. package/dist/elements/PreviewSizes/index.js +1 -1
  383. package/dist/elements/PreviewSizes/index.js.map +1 -1
  384. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts +13 -0
  385. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.d.ts.map +1 -0
  386. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js +41 -0
  387. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingScheduleWhere.js.map +1 -0
  388. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts +1 -0
  389. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  390. package/dist/elements/PublishButton/ScheduleDrawer/index.js +9 -31
  391. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  392. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  393. package/dist/elements/PublishButton/index.js +4 -5
  394. package/dist/elements/PublishButton/index.js.map +1 -1
  395. package/dist/elements/PublishMany/DrawerContent.d.ts +2 -1
  396. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  397. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  398. package/dist/elements/PublishMany/index.d.ts +2 -6
  399. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  400. package/dist/elements/PublishMany/index.js +0 -38
  401. package/dist/elements/PublishMany/index.js.map +1 -1
  402. package/dist/elements/QueryPresets/cells/ColumnsCell/{index.scss → index.css} +1 -3
  403. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts +1 -1
  404. package/dist/elements/QueryPresets/cells/ColumnsCell/index.d.ts.map +1 -1
  405. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +1 -1
  406. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  407. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +1 -1
  408. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  409. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +77 -48
  410. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  411. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +1 -1
  412. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  413. package/dist/elements/QueryPresets/fields/GroupByField/index.js +12 -21
  414. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  415. package/dist/elements/QueryPresets/fields/Heading/index.css +52 -0
  416. package/dist/elements/QueryPresets/fields/Heading/index.d.ts +7 -0
  417. package/dist/elements/QueryPresets/fields/Heading/index.d.ts.map +1 -0
  418. package/dist/elements/QueryPresets/fields/Heading/index.js +31 -0
  419. package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -0
  420. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +1 -1
  421. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  422. package/dist/elements/QueryPresets/fields/WhereField/index.js +24 -23
  423. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  424. package/dist/elements/QueryPresets/fields/fields.css +23 -0
  425. package/dist/elements/ReactSelect/DropdownIndicator/index.css +1 -1
  426. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  427. package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -12
  428. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  429. package/dist/elements/ReactSelect/MultiValue/index.css +1 -1
  430. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts +5 -0
  431. package/dist/elements/ReactSelect/getCaptureMenuScroll.d.ts.map +1 -0
  432. package/dist/elements/ReactSelect/getCaptureMenuScroll.js +10 -0
  433. package/dist/elements/ReactSelect/getCaptureMenuScroll.js.map +1 -0
  434. package/dist/elements/ReactSelect/getMenuListStyles.d.ts +6 -0
  435. package/dist/elements/ReactSelect/getMenuListStyles.d.ts.map +1 -0
  436. package/dist/elements/ReactSelect/getMenuListStyles.js +7 -0
  437. package/dist/elements/ReactSelect/getMenuListStyles.js.map +1 -0
  438. package/dist/elements/ReactSelect/index.css +54 -54
  439. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  440. package/dist/elements/ReactSelect/index.js +211 -115
  441. package/dist/elements/ReactSelect/index.js.map +1 -1
  442. package/dist/elements/ReactSelect/types.d.ts +8 -1
  443. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  444. package/dist/elements/ReactSelect/types.js.map +1 -1
  445. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  446. package/dist/elements/RelationshipTable/AddNewButton.js +1 -2
  447. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  448. package/dist/elements/RelationshipTable/index.css +1 -2
  449. package/dist/elements/RelationshipTable/index.js +2 -2
  450. package/dist/elements/RelationshipTable/index.js.map +1 -1
  451. package/dist/elements/RenderTitle/index.css +10 -0
  452. package/dist/elements/RenderTitle/index.d.ts +5 -0
  453. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  454. package/dist/elements/RenderTitle/index.js +52 -27
  455. package/dist/elements/RenderTitle/index.js.map +1 -1
  456. package/dist/elements/SchedulePublishButton/index.d.ts.map +1 -1
  457. package/dist/elements/SchedulePublishButton/index.js +6 -1
  458. package/dist/elements/SchedulePublishButton/index.js.map +1 -1
  459. package/dist/elements/Search/SearchInput/index.js +1 -1
  460. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  461. package/dist/elements/SelectMany/index.js +1 -1
  462. package/dist/elements/SelectMany/index.js.map +1 -1
  463. package/dist/elements/SidebarRow/index.css +0 -2
  464. package/dist/elements/SortColumn/index.css +1 -1
  465. package/dist/elements/Spinner/index.css +16 -0
  466. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  467. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -2
  468. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  469. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  470. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +32 -13
  471. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  472. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  473. package/dist/elements/Table/OrderableRow.js +1 -1
  474. package/dist/elements/Table/OrderableRow.js.map +1 -1
  475. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  476. package/dist/elements/Table/RelationshipProvider/index.js +1 -0
  477. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  478. package/dist/elements/Table/index.css +44 -10
  479. package/dist/elements/Tabs/index.css +100 -0
  480. package/dist/elements/Tabs/index.d.ts +32 -0
  481. package/dist/elements/Tabs/index.d.ts.map +1 -0
  482. package/dist/elements/Tabs/index.js +62 -0
  483. package/dist/elements/Tabs/index.js.map +1 -0
  484. package/dist/elements/Thumbnail/index.css +41 -0
  485. package/dist/elements/Thumbnail/index.d.ts +3 -3
  486. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  487. package/dist/elements/Thumbnail/index.js +1 -1
  488. package/dist/elements/Thumbnail/index.js.map +1 -1
  489. package/dist/elements/TimezonePicker/index.css +58 -24
  490. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  491. package/dist/elements/TimezonePicker/index.js +31 -4
  492. package/dist/elements/TimezonePicker/index.js.map +1 -1
  493. package/dist/elements/Toasts/fieldErrors.d.ts +1 -0
  494. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  495. package/dist/elements/Toasts/fieldErrors.js +25 -9
  496. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  497. package/dist/elements/Toasts/index.css +5 -0
  498. package/dist/elements/Tooltip/index.css +20 -4
  499. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  500. package/dist/elements/Tooltip/index.js +71 -3
  501. package/dist/elements/Tooltip/index.js.map +1 -1
  502. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  503. package/dist/elements/UnpublishButton/index.js +5 -13
  504. package/dist/elements/UnpublishButton/index.js.map +1 -1
  505. package/dist/elements/UnpublishMany/DrawerContent.d.ts +2 -1
  506. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  507. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  508. package/dist/elements/UnpublishMany/index.d.ts +2 -4
  509. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  510. package/dist/elements/UnpublishMany/index.js +0 -38
  511. package/dist/elements/UnpublishMany/index.js.map +1 -1
  512. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +11 -0
  513. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -0
  514. package/dist/elements/Upload/UploadFromURLModal/index.js +88 -0
  515. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -0
  516. package/dist/elements/Upload/index.css +134 -45
  517. package/dist/elements/Upload/index.d.ts +3 -8
  518. package/dist/elements/Upload/index.d.ts.map +1 -1
  519. package/dist/elements/Upload/index.js +71 -92
  520. package/dist/elements/Upload/index.js.map +1 -1
  521. package/dist/elements/UserMenu/LanguageMenu/index.d.ts +6 -0
  522. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -0
  523. package/dist/elements/UserMenu/LanguageMenu/index.js +133 -0
  524. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -0
  525. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +15 -0
  526. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -0
  527. package/dist/elements/UserMenu/SettingsMenu/index.js +119 -0
  528. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -0
  529. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts +6 -0
  530. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -0
  531. package/dist/elements/UserMenu/SubMenuHeader/index.js +34 -0
  532. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -0
  533. package/dist/elements/UserMenu/ThemeMenu/index.d.ts +6 -0
  534. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -0
  535. package/dist/elements/UserMenu/ThemeMenu/index.js +145 -0
  536. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -0
  537. package/dist/elements/UserMenu/index.css +80 -0
  538. package/dist/elements/UserMenu/index.d.ts +11 -0
  539. package/dist/elements/UserMenu/index.d.ts.map +1 -0
  540. package/dist/elements/UserMenu/index.js +205 -0
  541. package/dist/elements/UserMenu/index.js.map +1 -0
  542. package/dist/elements/WhereBuilder/Condition/index.css +1 -1
  543. package/dist/elements/WhereBuilder/Condition/index.d.ts +1 -0
  544. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  545. package/dist/elements/WhereBuilder/Condition/index.js +20 -2
  546. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  547. package/dist/elements/WhereBuilder/index.d.ts +4 -3
  548. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  549. package/dist/elements/WhereBuilder/index.js +71 -62
  550. package/dist/elements/WhereBuilder/index.js.map +1 -1
  551. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  552. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  553. package/dist/elements/WhereBuilder/types.js.map +1 -1
  554. package/dist/exports/client/index.d.ts +22 -5
  555. package/dist/exports/client/index.d.ts.map +1 -1
  556. package/dist/exports/client/index.js +1 -2
  557. package/dist/exports/client/index.js.map +4 -4
  558. package/dist/exports/rsc/index.d.ts +3 -0
  559. package/dist/exports/rsc/index.d.ts.map +1 -1
  560. package/dist/exports/rsc/index.js +3 -0
  561. package/dist/exports/rsc/index.js.map +1 -1
  562. package/dist/exports/shared/index.js +2 -2
  563. package/dist/exports/shared/index.js.map +2 -2
  564. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +2 -50
  565. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.d.ts.map +1 -1
  566. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +27 -20
  567. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  568. package/dist/fields/Blocks/BlockSelector/index.css +15 -4
  569. package/dist/fields/Blocks/BlockSelector/index.js +1 -1
  570. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  571. package/dist/fields/Blocks/SectionTitle/index.d.ts.map +1 -1
  572. package/dist/fields/Blocks/SectionTitle/index.js +1 -0
  573. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  574. package/dist/fields/Blocks/index.d.ts.map +1 -1
  575. package/dist/fields/Blocks/index.js +6 -11
  576. package/dist/fields/Blocks/index.js.map +1 -1
  577. package/dist/fields/Checkbox/index.css +2 -2
  578. package/dist/fields/ConfirmPassword/index.d.ts +4 -0
  579. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  580. package/dist/fields/ConfirmPassword/index.js +37 -33
  581. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  582. package/dist/fields/Group/index.css +5 -11
  583. package/dist/fields/Join/index.js +1 -1
  584. package/dist/fields/Join/index.js.map +1 -1
  585. package/dist/fields/Number/Input.d.ts.map +1 -1
  586. package/dist/fields/Number/Input.js +62 -46
  587. package/dist/fields/Number/Input.js.map +1 -1
  588. package/dist/fields/Number/index.css +19 -0
  589. package/dist/fields/Number/types.d.ts +10 -0
  590. package/dist/fields/Number/types.d.ts.map +1 -1
  591. package/dist/fields/Number/types.js.map +1 -1
  592. package/dist/fields/Password/input.d.ts.map +1 -1
  593. package/dist/fields/Password/input.js +33 -29
  594. package/dist/fields/Password/input.js.map +1 -1
  595. package/dist/fields/Password/types.d.ts +4 -0
  596. package/dist/fields/Password/types.d.ts.map +1 -1
  597. package/dist/fields/Password/types.js.map +1 -1
  598. package/dist/fields/RadioGroup/index.css +6 -0
  599. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  600. package/dist/fields/Relationship/Input.js +4 -0
  601. package/dist/fields/Relationship/Input.js.map +1 -1
  602. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +4 -4
  603. package/dist/fields/Relationship/types.d.ts +4 -0
  604. package/dist/fields/Relationship/types.d.ts.map +1 -1
  605. package/dist/fields/Relationship/types.js.map +1 -1
  606. package/dist/fields/Row/index.d.ts +1 -1
  607. package/dist/fields/Select/Input.d.ts +4 -0
  608. package/dist/fields/Select/Input.d.ts.map +1 -1
  609. package/dist/fields/Select/Input.js +45 -40
  610. package/dist/fields/Select/Input.js.map +1 -1
  611. package/dist/fields/Slug/index.d.ts +7 -5
  612. package/dist/fields/Slug/index.d.ts.map +1 -1
  613. package/dist/fields/Slug/index.js +6 -4
  614. package/dist/fields/Slug/index.js.map +1 -1
  615. package/dist/fields/Tabs/Tab/index.d.ts +0 -1
  616. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  617. package/dist/fields/Tabs/Tab/index.js +12 -23
  618. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  619. package/dist/fields/Tabs/index.d.ts.map +1 -1
  620. package/dist/fields/Tabs/index.js +37 -37
  621. package/dist/fields/Tabs/index.js.map +1 -1
  622. package/dist/fields/Text/Input.d.ts.map +1 -1
  623. package/dist/fields/Text/Input.js +44 -37
  624. package/dist/fields/Text/Input.js.map +1 -1
  625. package/dist/fields/Text/types.d.ts +9 -0
  626. package/dist/fields/Text/types.d.ts.map +1 -1
  627. package/dist/fields/Text/types.js.map +1 -1
  628. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  629. package/dist/fields/Textarea/Input.js +27 -23
  630. package/dist/fields/Textarea/Input.js.map +1 -1
  631. package/dist/fields/Textarea/index.css +1 -1
  632. package/dist/fields/Textarea/types.d.ts +4 -0
  633. package/dist/fields/Textarea/types.d.ts.map +1 -1
  634. package/dist/fields/Textarea/types.js.map +1 -1
  635. package/dist/fields/Upload/HasMany/index.css +4 -0
  636. package/dist/fields/Upload/Input.d.ts.map +1 -1
  637. package/dist/fields/Upload/Input.js +12 -11
  638. package/dist/fields/Upload/Input.js.map +1 -1
  639. package/dist/fields/Upload/index.js +1 -1
  640. package/dist/fields/Upload/index.js.map +1 -1
  641. package/dist/fields/index.d.ts.map +1 -1
  642. package/dist/fields/index.js +2 -0
  643. package/dist/fields/index.js.map +1 -1
  644. package/dist/forms/Form/types.d.ts +2 -2
  645. package/dist/forms/Form/types.d.ts.map +1 -1
  646. package/dist/forms/Form/types.js.map +1 -1
  647. package/dist/forms/RenderFields/RenderField.d.ts +1 -1
  648. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  649. package/dist/forms/RenderFields/RenderField.js +12 -1
  650. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  651. package/dist/forms/RenderFields/index.css +4 -4
  652. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts +1 -0
  653. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  654. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +22 -6
  655. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  656. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts +2 -2
  657. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.d.ts.map +1 -1
  658. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  659. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts +2 -2
  660. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  661. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  662. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts +2 -2
  663. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.d.ts.map +1 -1
  664. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +1 -1
  665. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  666. package/dist/forms/fieldSchemasToFormState/index.d.ts +2 -1
  667. package/dist/forms/fieldSchemasToFormState/index.d.ts.map +1 -1
  668. package/dist/forms/fieldSchemasToFormState/index.js +2 -0
  669. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  670. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts +2 -1
  671. package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
  672. package/dist/forms/fieldSchemasToFormState/iterateFields.js +2 -0
  673. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  674. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
  675. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  676. package/dist/forms/useField/index.js.map +1 -1
  677. package/dist/graphics/Icon/index.js +1 -1
  678. package/dist/graphics/Icon/index.js.map +1 -1
  679. package/dist/hooks/useElementHeightVariable.d.ts +15 -0
  680. package/dist/hooks/useElementHeightVariable.d.ts.map +1 -0
  681. package/dist/hooks/useElementHeightVariable.js +53 -0
  682. package/dist/hooks/useElementHeightVariable.js.map +1 -0
  683. package/dist/icons/Check/index.css +1 -2
  684. package/dist/icons/Check/index.js +1 -1
  685. package/dist/icons/Check/index.js.map +1 -1
  686. package/dist/icons/Crop/index.css +5 -0
  687. package/dist/icons/Crop/index.d.ts +7 -0
  688. package/dist/icons/Crop/index.d.ts.map +1 -0
  689. package/dist/icons/Crop/index.js +24 -0
  690. package/dist/icons/Crop/index.js.map +1 -0
  691. package/dist/icons/Dots/index.css +4 -4
  692. package/dist/icons/Download/index.css +5 -0
  693. package/dist/icons/{ExternalLink → Download}/index.d.ts +1 -1
  694. package/dist/icons/Download/index.d.ts.map +1 -0
  695. package/dist/icons/Download/index.js +27 -0
  696. package/dist/icons/Download/index.js.map +1 -0
  697. package/dist/icons/Gear/index.d.ts.map +1 -1
  698. package/dist/icons/Gear/index.js +8 -1
  699. package/dist/icons/Gear/index.js.map +1 -1
  700. package/dist/icons/InteractionEnter/index.css +5 -0
  701. package/dist/icons/InteractionEnter/index.d.ts +11 -0
  702. package/dist/icons/InteractionEnter/index.d.ts.map +1 -0
  703. package/dist/icons/InteractionEnter/index.js +25 -0
  704. package/dist/icons/InteractionEnter/index.js.map +1 -0
  705. package/dist/icons/{Write → Key}/index.css +1 -1
  706. package/dist/icons/Key/index.d.ts +7 -0
  707. package/dist/icons/Key/index.d.ts.map +1 -0
  708. package/dist/icons/Key/index.js +24 -0
  709. package/dist/icons/Key/index.js.map +1 -0
  710. package/dist/icons/LogOut/index.js +2 -2
  711. package/dist/icons/LogOut/index.js.map +1 -1
  712. package/dist/icons/{ExternalLink → NewTab}/index.css +1 -1
  713. package/dist/icons/NewTab/index.d.ts +7 -0
  714. package/dist/icons/NewTab/index.d.ts.map +1 -0
  715. package/dist/icons/NewTab/index.js +25 -0
  716. package/dist/icons/NewTab/index.js.map +1 -0
  717. package/dist/icons/Replace/index.css +5 -0
  718. package/dist/icons/Replace/index.d.ts +6 -0
  719. package/dist/icons/Replace/index.d.ts.map +1 -0
  720. package/dist/icons/Replace/index.js +20 -0
  721. package/dist/icons/Replace/index.js.map +1 -0
  722. package/dist/icons/Reset/index.css +5 -0
  723. package/dist/icons/Reset/index.d.ts +7 -0
  724. package/dist/icons/Reset/index.d.ts.map +1 -0
  725. package/dist/icons/Reset/index.js +25 -0
  726. package/dist/icons/Reset/index.js.map +1 -0
  727. package/dist/icons/Schedule/index.d.ts.map +1 -1
  728. package/dist/icons/Schedule/index.js +38 -39
  729. package/dist/icons/Schedule/index.js.map +1 -1
  730. package/dist/icons/Swap/index.js +1 -1
  731. package/dist/icons/Swap/index.js.map +1 -1
  732. package/dist/icons/VariableColor/index.css +5 -0
  733. package/dist/icons/VariableColor/index.d.ts +7 -0
  734. package/dist/icons/VariableColor/index.d.ts.map +1 -0
  735. package/dist/icons/VariableColor/index.js +23 -0
  736. package/dist/icons/VariableColor/index.js.map +1 -0
  737. package/dist/icons/Warning/index.css +1 -7
  738. package/dist/icons/Warning/index.d.ts +1 -1
  739. package/dist/icons/Warning/index.d.ts.map +1 -1
  740. package/dist/icons/Warning/index.js +11 -16
  741. package/dist/icons/Warning/index.js.map +1 -1
  742. package/dist/icons/WarningTriangle/index.css +5 -0
  743. package/dist/icons/WarningTriangle/index.d.ts +6 -0
  744. package/dist/icons/WarningTriangle/index.d.ts.map +1 -0
  745. package/dist/icons/WarningTriangle/index.js +21 -0
  746. package/dist/icons/WarningTriangle/index.js.map +1 -0
  747. package/dist/icons/Write/index.d.ts +0 -1
  748. package/dist/icons/Write/index.d.ts.map +1 -1
  749. package/dist/icons/Write/index.js +1 -2
  750. package/dist/icons/Write/index.js.map +1 -1
  751. package/dist/providers/Auth/index.d.ts +2 -2
  752. package/dist/providers/Auth/index.d.ts.map +1 -1
  753. package/dist/providers/Auth/index.js.map +1 -1
  754. package/dist/providers/Config/index.js.map +1 -1
  755. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  756. package/dist/providers/DocumentInfo/index.js +4 -0
  757. package/dist/providers/DocumentInfo/index.js.map +1 -1
  758. package/dist/providers/DocumentInfo/types.d.ts +6 -2
  759. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  760. package/dist/providers/DocumentInfo/types.js.map +1 -1
  761. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  762. package/dist/providers/ListQuery/index.js +1 -8
  763. package/dist/providers/ListQuery/index.js.map +1 -1
  764. package/dist/providers/Root/index.d.ts +2 -2
  765. package/dist/providers/Root/index.d.ts.map +1 -1
  766. package/dist/providers/Root/index.js +27 -24
  767. package/dist/providers/Root/index.js.map +1 -1
  768. package/dist/providers/TableColumns/RenderDefaultCell/index.css +1 -0
  769. package/dist/providers/Theme/index.d.ts +17 -2
  770. package/dist/providers/Theme/index.d.ts.map +1 -1
  771. package/dist/providers/Theme/index.js +126 -75
  772. package/dist/providers/Theme/index.js.map +1 -1
  773. package/dist/providers/ToastContainer/index.css +208 -0
  774. package/dist/providers/ToastContainer/index.d.ts +1 -0
  775. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  776. package/dist/providers/ToastContainer/index.js +19 -6
  777. package/dist/providers/ToastContainer/index.js.map +1 -1
  778. package/dist/scss/app.scss +10 -4
  779. package/dist/styles.css +1369 -1
  780. package/dist/templates/Default/index.d.ts.map +1 -1
  781. package/dist/templates/Default/index.js +59 -3
  782. package/dist/templates/Default/index.js.map +1 -1
  783. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +1 -2
  784. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  785. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -2
  786. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  787. package/dist/utilities/buildFormState.d.ts.map +1 -1
  788. package/dist/utilities/buildFormState.js +1 -0
  789. package/dist/utilities/buildFormState.js.map +1 -1
  790. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  791. package/dist/utilities/copyDataFromLocale.js +2 -1
  792. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  793. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  794. package/dist/utilities/formatDocTitle/formatDateTitle.js +1 -1
  795. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  796. package/dist/utilities/formatRelativeDate.d.ts +15 -0
  797. package/dist/utilities/formatRelativeDate.d.ts.map +1 -0
  798. package/dist/utilities/formatRelativeDate.js +62 -0
  799. package/dist/utilities/formatRelativeDate.js.map +1 -0
  800. package/dist/utilities/getDocPreferences.d.ts +2 -2
  801. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  802. package/dist/utilities/getDocPreferences.js.map +1 -1
  803. package/dist/utilities/getDocumentData.d.ts +2 -2
  804. package/dist/utilities/getDocumentData.d.ts.map +1 -1
  805. package/dist/utilities/getDocumentData.js.map +1 -1
  806. package/dist/utilities/getGlobalData.d.ts.map +1 -1
  807. package/dist/utilities/getGlobalData.js.map +1 -1
  808. package/dist/utilities/getHasScheduledPublish.d.ts +12 -0
  809. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -0
  810. package/dist/utilities/getHasScheduledPublish.js +38 -0
  811. package/dist/utilities/getHasScheduledPublish.js.map +1 -0
  812. package/dist/utilities/getIsLocked.d.ts +2 -2
  813. package/dist/utilities/getIsLocked.d.ts.map +1 -1
  814. package/dist/utilities/getIsLocked.js.map +1 -1
  815. package/dist/utilities/getVersions.d.ts +2 -2
  816. package/dist/utilities/getVersions.d.ts.map +1 -1
  817. package/dist/utilities/getVersions.js +3 -26
  818. package/dist/utilities/getVersions.js.map +1 -1
  819. package/dist/utilities/handleAuthRedirect.d.ts +2 -2
  820. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  821. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  822. package/dist/utilities/handleFormStateLocking.d.ts +2 -2
  823. package/dist/utilities/handleFormStateLocking.d.ts.map +1 -1
  824. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  825. package/dist/utilities/handleLivePreview.d.ts +1 -0
  826. package/dist/utilities/handleLivePreview.d.ts.map +1 -1
  827. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  828. package/dist/utilities/isURLAllowed.js +9 -3
  829. package/dist/utilities/isURLAllowed.js.map +1 -1
  830. package/dist/utilities/recentlyViewed.d.ts +16 -0
  831. package/dist/utilities/recentlyViewed.d.ts.map +1 -0
  832. package/dist/utilities/recentlyViewed.js +21 -0
  833. package/dist/utilities/recentlyViewed.js.map +1 -0
  834. package/dist/utilities/recentlyViewed.spec.js +92 -0
  835. package/dist/utilities/recentlyViewed.spec.js.map +1 -0
  836. package/dist/utilities/reduceFieldsToOptions.js +1 -1
  837. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  838. package/dist/utilities/renderTable.js +1 -1
  839. package/dist/utilities/renderTable.js.map +1 -1
  840. package/dist/utilities/slugify.d.ts +1 -1
  841. package/dist/utilities/slugify.js +1 -1
  842. package/dist/utilities/slugify.js.map +1 -1
  843. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  844. package/dist/utilities/traverseForLocalizedFields.js +3 -0
  845. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  846. package/dist/views/API/index.client.js +2 -2
  847. package/dist/views/API/index.client.js.map +1 -1
  848. package/dist/views/Account/ResetPreferences/index.d.ts +2 -2
  849. package/dist/views/Account/ResetPreferences/index.d.ts.map +1 -1
  850. package/dist/views/Account/ResetPreferences/index.js +1 -0
  851. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  852. package/dist/views/Account/Settings/index.css +30 -13
  853. package/dist/views/Account/Settings/index.d.ts +2 -2
  854. package/dist/views/Account/Settings/index.d.ts.map +1 -1
  855. package/dist/views/Account/Settings/index.js.map +1 -1
  856. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
  857. package/dist/views/Account/ToggleTheme/index.js +31 -47
  858. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  859. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -1
  860. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +27 -23
  861. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -1
  862. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  863. package/dist/views/Dashboard/Default/ModularDashboard/index.css +2 -0
  864. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +2 -2
  865. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
  866. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -2
  867. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  868. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts +2 -2
  869. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts.map +1 -1
  870. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -1
  871. package/dist/views/Document/index.d.ts.map +1 -1
  872. package/dist/views/Document/index.js +28 -2
  873. package/dist/views/Document/index.js.map +1 -1
  874. package/dist/views/Document/recordRecentlyViewed.d.ts +12 -0
  875. package/dist/views/Document/recordRecentlyViewed.d.ts.map +1 -0
  876. package/dist/views/Document/recordRecentlyViewed.js +40 -0
  877. package/dist/views/Document/recordRecentlyViewed.js.map +1 -0
  878. package/dist/views/Document/renderDocumentSlots.d.ts +1 -0
  879. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  880. package/dist/views/Document/renderDocumentSlots.js +47 -1
  881. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  882. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  883. package/dist/views/Edit/Auth/APIKey.js +10 -32
  884. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  885. package/dist/views/Edit/Auth/index.css +0 -67
  886. package/dist/views/Edit/index.css +143 -6
  887. package/dist/views/Edit/index.d.ts +1 -1
  888. package/dist/views/Edit/index.d.ts.map +1 -1
  889. package/dist/views/Edit/index.js +96 -79
  890. package/dist/views/Edit/index.js.map +1 -1
  891. package/dist/views/HierarchyList/DocumentListSelection/index.js +8 -8
  892. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  893. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +2 -2
  894. package/dist/views/List/ListHeader/index.css +28 -1
  895. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  896. package/dist/views/List/ListHeader/index.js +0 -1
  897. package/dist/views/List/ListHeader/index.js.map +1 -1
  898. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  899. package/dist/views/List/ListSelection/index.js +84 -33
  900. package/dist/views/List/ListSelection/index.js.map +1 -1
  901. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  902. package/dist/views/List/handleGroupBy.js +9 -0
  903. package/dist/views/List/handleGroupBy.js.map +1 -1
  904. package/dist/views/List/index.client.d.ts.map +1 -1
  905. package/dist/views/List/index.client.js +10 -9
  906. package/dist/views/List/index.client.js.map +1 -1
  907. package/dist/views/List/index.css +15 -0
  908. package/dist/views/List/index.d.ts.map +1 -1
  909. package/dist/views/List/index.js +4 -3
  910. package/dist/views/List/index.js.map +1 -1
  911. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  912. package/dist/views/List/renderListViewSlots.js +11 -0
  913. package/dist/views/List/renderListViewSlots.js.map +1 -1
  914. package/dist/views/Logout/LogoutClient.d.ts +14 -0
  915. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  916. package/dist/views/Logout/LogoutClient.js +7 -5
  917. package/dist/views/Logout/LogoutClient.js.map +1 -1
  918. package/dist/views/Logout/index.d.ts.map +1 -1
  919. package/dist/views/Logout/index.js +7 -2
  920. package/dist/views/Logout/index.js.map +1 -1
  921. package/dist/views/Verify/index.client.d.ts +4 -0
  922. package/dist/views/Verify/index.client.d.ts.map +1 -1
  923. package/dist/views/Verify/index.client.js +81 -0
  924. package/dist/views/Verify/index.client.js.map +1 -1
  925. package/dist/views/Verify/index.css +38 -0
  926. package/dist/views/Verify/index.d.ts +1 -1
  927. package/dist/views/Verify/index.d.ts.map +1 -1
  928. package/dist/views/Verify/index.js +13 -19
  929. package/dist/views/Verify/index.js.map +1 -1
  930. package/dist/views/Version/Default/index.css +3 -5
  931. package/dist/views/Version/Default/index.d.ts.map +1 -1
  932. package/dist/views/Version/Default/index.js +7 -28
  933. package/dist/views/Version/Default/index.js.map +1 -1
  934. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +2 -2
  935. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  936. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  937. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  938. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +1 -0
  939. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  940. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  941. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +1 -0
  942. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  943. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  944. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +3 -3
  945. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  946. package/dist/views/Version/Restore/index.css +2 -2
  947. package/dist/views/Version/SelectComparison/VersionDrawer/index.css +5 -0
  948. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +1 -1
  949. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -1
  950. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +1 -2
  951. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  952. package/dist/views/Version/SelectComparison/index.css +5 -0
  953. package/dist/views/Version/SelectComparison/index.d.ts +1 -1
  954. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  955. package/dist/views/Version/SelectComparison/index.js +2 -1
  956. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  957. package/dist/views/Version/SelectLocales/index.d.ts +1 -2
  958. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  959. package/dist/views/Version/SelectLocales/index.js +83 -32
  960. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  961. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  962. package/dist/views/Versions/fetchVersions.d.ts +4 -4
  963. package/dist/views/Versions/fetchVersions.d.ts.map +1 -1
  964. package/dist/views/Versions/fetchVersions.js.map +1 -1
  965. package/dist/views/Versions/index.css +19 -16
  966. package/dist/views/Versions/index.d.ts +1 -1
  967. package/dist/views/Versions/index.d.ts.map +1 -1
  968. package/dist/views/Versions/index.js +3 -26
  969. package/dist/views/Versions/index.js.map +1 -1
  970. package/dist/views/Versions/types.d.ts +2 -2
  971. package/dist/views/Versions/types.d.ts.map +1 -1
  972. package/dist/views/Versions/types.js.map +1 -1
  973. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
  974. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -0
  975. package/dist/widgets/CollectionQuery/SortField/index.js +118 -0
  976. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -0
  977. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts +18 -0
  978. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.d.ts.map +1 -0
  979. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js +91 -0
  980. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.js.map +1 -0
  981. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +100 -0
  982. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +1 -0
  983. package/dist/widgets/CollectionQuery/index.css +64 -0
  984. package/dist/widgets/CollectionQuery/index.d.ts +16 -0
  985. package/dist/widgets/CollectionQuery/index.d.ts.map +1 -0
  986. package/dist/widgets/CollectionQuery/index.js +328 -0
  987. package/dist/widgets/CollectionQuery/index.js.map +1 -0
  988. package/dist/widgets/RecentlyViewed/CollectionsField/index.css +14 -0
  989. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts +10 -0
  990. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +1 -0
  991. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +76 -0
  992. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +1 -0
  993. package/dist/widgets/RecentlyViewed/index.d.ts +10 -0
  994. package/dist/widgets/RecentlyViewed/index.d.ts.map +1 -0
  995. package/dist/widgets/RecentlyViewed/index.js +148 -0
  996. package/dist/widgets/RecentlyViewed/index.js.map +1 -0
  997. package/dist/widgets/WidgetCard/index.css +155 -0
  998. package/dist/widgets/WidgetCard/index.d.ts +19 -0
  999. package/dist/widgets/WidgetCard/index.d.ts.map +1 -0
  1000. package/dist/widgets/WidgetCard/index.js +49 -0
  1001. package/dist/widgets/WidgetCard/index.js.map +1 -0
  1002. package/package.json +5 -509
  1003. package/dist/elements/BulkUpload/AddingFilesView/index.scss +0 -25
  1004. package/dist/elements/BulkUpload/EditForm/index.scss +0 -11
  1005. package/dist/elements/BulkUpload/EditMany/index.scss +0 -171
  1006. package/dist/elements/BulkUpload/Header/index.d.ts +0 -9
  1007. package/dist/elements/BulkUpload/Header/index.d.ts.map +0 -1
  1008. package/dist/elements/BulkUpload/Header/index.js.map +0 -1
  1009. package/dist/elements/ColumnSelector/index.d.ts +0 -9
  1010. package/dist/elements/ColumnSelector/index.d.ts.map +0 -1
  1011. package/dist/elements/ColumnSelector/index.js.map +0 -1
  1012. package/dist/elements/ColumnsButton/index.d.ts +0 -7
  1013. package/dist/elements/ColumnsButton/index.d.ts.map +0 -1
  1014. package/dist/elements/ColumnsButton/index.js.map +0 -1
  1015. package/dist/elements/EditMany/index.scss +0 -182
  1016. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +0 -35
  1017. package/dist/elements/FileDetails/FileMeta/index.scss +0 -31
  1018. package/dist/elements/FileDetails/StaticFileDetails/index.scss +0 -134
  1019. package/dist/elements/GroupByBuilder/index.d.ts +0 -12
  1020. package/dist/elements/GroupByBuilder/index.d.ts.map +0 -1
  1021. package/dist/elements/GroupByBuilder/index.js +0 -164
  1022. package/dist/elements/GroupByBuilder/index.js.map +0 -1
  1023. package/dist/elements/GroupByBuilder/index.scss +0 -39
  1024. package/dist/elements/GroupByControl/index.d.ts +0 -9
  1025. package/dist/elements/GroupByControl/index.d.ts.map +0 -1
  1026. package/dist/elements/GroupByControl/index.js +0 -255
  1027. package/dist/elements/GroupByControl/index.js.map +0 -1
  1028. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +0 -1
  1029. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +0 -1
  1030. package/dist/elements/Hierarchy/Drawer/index.css +0 -108
  1031. package/dist/elements/Hierarchy/Drawer/index.d.ts +0 -20
  1032. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +0 -1
  1033. package/dist/elements/Hierarchy/Drawer/index.js.map +0 -1
  1034. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +0 -1
  1035. package/dist/elements/Hierarchy/Drawer/types.js.map +0 -1
  1036. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts +0 -30
  1037. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +0 -1
  1038. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +0 -1
  1039. package/dist/elements/Hierarchy/Field/SelectedHierarchies.scss +0 -78
  1040. package/dist/elements/Hierarchy/Field/index.scss +0 -41
  1041. package/dist/elements/Hierarchy/MoveMany/index.scss +0 -7
  1042. package/dist/elements/Hierarchy/Tree/LoadMore/index.scss +0 -26
  1043. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts +0 -7
  1044. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +0 -1
  1045. package/dist/elements/Hierarchy/Tree/TreeConnector.js +0 -23
  1046. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +0 -1
  1047. package/dist/elements/LoadMoreRow/index.scss +0 -45
  1048. package/dist/elements/Nav/SettingsMenuButton/index.scss +0 -11
  1049. package/dist/elements/PreviewSizes/index.scss +0 -147
  1050. package/dist/elements/QueryPresets/fields/ColumnsField/index.scss +0 -17
  1051. package/dist/elements/QueryPresets/fields/GroupByField/index.scss +0 -17
  1052. package/dist/elements/QueryPresets/fields/WhereField/index.scss +0 -23
  1053. package/dist/elements/Thumbnail/index.scss +0 -53
  1054. package/dist/fields/Tabs/Tab/index.css +0 -82
  1055. package/dist/icons/ExternalLink/index.d.ts.map +0 -1
  1056. package/dist/icons/ExternalLink/index.js +0 -26
  1057. package/dist/icons/ExternalLink/index.js.map +0 -1
  1058. package/dist/scss/toasts.scss +0 -146
  1059. package/dist/views/Unauthorized/index.scss +0 -14
  1060. package/dist/views/Verify/index.scss +0 -18
  1061. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +0 -18
  1062. package/dist/views/Version/SelectComparison/index.scss +0 -9
  1063. /package/dist/elements/{ColumnSelector/index.css → ColumnSelection/Popup.css} +0 -0
  1064. /package/dist/elements/{GroupByControl/index.css → GroupBy/Popup.css} +0 -0
  1065. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.d.ts +0 -0
  1066. /package/dist/elements/Hierarchy/{Drawer → Modal}/fetchAncestorPath.js +0 -0
  1067. /package/dist/elements/Hierarchy/{Drawer → Modal}/types.js +0 -0
@@ -34,6 +34,7 @@
34
34
  border-radius: var(--popup-item-radius);
35
35
  display: flex;
36
36
  align-items: stretch;
37
+ flex: 1;
37
38
  color: var(--popup-item-color, var(--color-text));
38
39
  font-family: var(--text-body-medium-font-family);
39
40
  font-size: var(--text-body-medium-font-size);
@@ -45,6 +46,11 @@
45
46
  .popup-button-list__label {
46
47
  display: flex;
47
48
  align-items: center;
49
+ font-family: var(--text-body-medium-font-family);
50
+ font-size: var(--text-body-medium-font-size);
51
+ font-weight: var(--text-body-medium-font-weight);
52
+ letter-spacing: var(--text-body-medium-letter-spacing);
53
+ line-height: var(--text-body-medium-line-height);
48
54
  padding: var(--spacer-1) var(--spacer-2) var(--spacer-1) var(--spacer-1);
49
55
  }
50
56
 
@@ -84,6 +90,22 @@
84
90
  /* Hide icon element by default (outside RadioGroup/MenuItem) */
85
91
  .popup-button-list__icon {
86
92
  display: none;
93
+ flex-shrink: 0;
94
+ }
95
+
96
+ .popup-button-list__submenu-icon {
97
+ flex-shrink: 0;
98
+ }
99
+
100
+ /* RadioGroup - selected items show only the checkmark, no background fill */
101
+ .popup-button-list--with-icons .popup-button-list__button--selected {
102
+ background-color: transparent;
103
+ color: var(--popup-item-color, var(--color-text));
104
+ }
105
+
106
+ .popup-button-list--with-icons .popup-button-list__button--selected:hover {
107
+ background-color: var(--popup-item-bg-hover, var(--color-bg-selected-strong));
108
+ color: var(--popup-item-color-hover, var(--color-text-onselected-strong));
87
109
  }
88
110
 
89
111
  /* RadioGroup - for radio-style selection rows with 16px icons */
@@ -95,7 +117,6 @@
95
117
  display: flex;
96
118
  align-items: center;
97
119
  justify-content: center;
98
- flex-shrink: 0;
99
120
  width: calc(var(--spacer-3) + var(--spacer-1));
100
121
  padding: var(--spacer-1) 0 var(--spacer-1) var(--spacer-1);
101
122
  }
@@ -114,7 +135,6 @@
114
135
  display: flex;
115
136
  align-items: center;
116
137
  justify-content: center;
117
- flex-shrink: 0;
118
138
  width: calc(var(--spacer-3) + var(--spacer-1));
119
139
  padding: var(--spacer-1) 0 var(--spacer-1) var(--spacer-1);
120
140
  }
@@ -124,7 +144,31 @@
124
144
  }
125
145
 
126
146
  .popup-button-list--large .popup-button-list__icon {
127
- width: var(--spacer-4);
128
- padding: 0;
147
+ width: auto;
148
+ padding: 0 0 0 var(--spacer-1);
149
+ }
150
+
151
+ /* Submenu trigger buttons: icon on left, label in middle, chevron pushed right */
152
+ .popup-button-list__button--submenu-trigger {
153
+ align-items: center;
154
+ }
155
+
156
+ .popup-button-list__submenu-icon {
157
+ display: flex;
158
+ align-items: center;
159
+ justify-content: center;
160
+ padding-inline-start: var(--spacer-1);
161
+ }
162
+
163
+ .popup-button-list__chevron {
164
+ display: flex;
165
+ align-items: center;
166
+ margin-left: auto;
167
+ opacity: 0.5;
168
+ }
169
+
170
+ .popup-button-list__button--submenu-trigger:hover .popup-button-list__chevron,
171
+ .popup-button-list__button--selected .popup-button-list__chevron {
172
+ opacity: 1;
129
173
  }
130
174
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,aAAa,CAAA;AAIpB,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,mBAAmB,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE/E,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;CACxC,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACzB,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAGA,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmE5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAElE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,OAAO,aAAa,CAAA;AAIpB,OAAO,EAAE,gBAAgB,IAAI,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACtE,OAAO,EAAE,mBAAmB,IAAI,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAE/E,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;CACxC,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CACzB,CAUA,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAGA,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC/B,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAA;CACzC,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAmE5C,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAUlE,CAAA"}
@@ -116,6 +116,7 @@ export const Button = ({
116
116
  export const RadioGroupItem = props => {
117
117
  return /*#__PURE__*/_jsx(Button, {
118
118
  ...props,
119
+ className: [`${baseClass}__button--radio-group-item`, props.className].filter(Boolean).join(' '),
119
120
  icon: props.active ? /*#__PURE__*/_jsx(CheckIcon, {
120
121
  size: 16
121
122
  }) : undefined
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","CheckIcon","Link","baseClass","PopupListDivider","Divider","PopupListGroupLabel","GroupLabel","ButtonGroup","buttonSize","children","className","textAlign","classes","filter","Boolean","join","_jsx","MenuItem","size","RadioGroup","Button","id","active","disabled","href","icon","onClick","iconElement","_jsxs","e","prefetch","type","RadioGroupItem","props","undefined"],"sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"sourcesContent":["'use client'\nimport type { LinkAdapterProps } from 'payload'\n\nimport * as React from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { Link } from '../../Link/index.js'\nimport './index.css'\n\nconst baseClass = 'popup-button-list'\n\nexport { PopupListDivider as Divider } from '../PopupDivider/index.js'\nexport { PopupListGroupLabel as GroupLabel } from '../PopupGroupLabel/index.js'\n\nexport const ButtonGroup: React.FC<{\n buttonSize?: 'default' | 'medium'\n children: React.ReactNode\n className?: string\n textAlign?: 'center' | 'left' | 'right'\n}> = ({ buttonSize = 'default', children, className, textAlign = 'left' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}__text-align--${textAlign}`,\n `${baseClass}__button-size--${buttonSize}`,\n ]\n .filter(Boolean)\n .join(' ')\n return <div className={classes}>{children}</div>\n}\n\n/**\n * A ButtonGroup variant for action menu items.\n * @param size - 'large' for 24px icons (default), 'small' for 16px icons\n */\nexport const MenuItem: React.FC<{\n children: React.ReactNode\n className?: string\n size?: 'large' | 'small'\n}> = ({ children, className, size = 'large' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}--with-actions`,\n size === 'large' && `${baseClass}--large`,\n ]\n .filter(Boolean)\n .join(' ')\n return <div className={classes}>{children}</div>\n}\n\n/**\n * A ButtonGroup variant for radio-style selection items.\n * Uses 16px icons with padding on label - ideal for checkbox/selection rows.\n */\nexport const RadioGroup: React.FC<{\n children: React.ReactNode\n className?: string\n}> = ({ children, className }) => {\n const classes = [baseClass, className, `${baseClass}--with-icons`].filter(Boolean).join(' ')\n return <div className={classes}>{children}</div>\n}\n\ntype MenuButtonProps = {\n active?: boolean\n children: React.ReactNode\n className?: string\n disabled?: boolean\n href?: LinkAdapterProps['href']\n icon?: React.ReactNode\n id?: string\n onClick?: (e?: React.MouseEvent) => void\n}\n\nexport const Button: React.FC<MenuButtonProps> = ({\n id,\n active,\n children,\n className,\n disabled,\n href,\n icon,\n onClick,\n}) => {\n const classes = [\n `${baseClass}__button`,\n disabled && `${baseClass}__disabled`,\n active && `${baseClass}__button--selected`,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Always render icon element - CSS hides it outside RadioGroup/MenuItem\n const iconElement = <span className={`${baseClass}__icon`}>{icon}</span>\n\n if (!disabled) {\n if (href) {\n return (\n <Link\n className={classes}\n href={href}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n prefetch={false}\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </Link>\n )\n }\n\n if (onClick) {\n return (\n <button\n className={classes}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n }\n }\n\n return (\n <div className={classes} id={id}>\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </div>\n )\n}\n\n/**\n * A Button variant for use within RadioGroup.\n * Automatically shows a checkmark icon when active.\n */\nexport const RadioGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return <Button {...props} icon={props.active ? <CheckIcon size={16} /> : undefined} />\n}\n"],"mappings":"AAAA;;;AAGA,YAAYA,KAAA,MAAW;AAEvB,SAASC,SAAS,QAAQ;AAC1B,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,SAASC,gBAAA,IAAoBC,OAAO,QAAQ;AAC5C,SAASC,mBAAA,IAAuBC,UAAU,QAAQ;AAElD,OAAO,MAAMC,WAAA,GAKRA,CAAC;EAAEC,UAAA,GAAa,SAAS;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,SAAA,GAAY;AAAM,CAAE;EACvE,MAAMC,OAAA,GAAU,CACdV,SAAA,EACAQ,SAAA,EACA,GAAGR,SAAA,iBAA0BS,SAAA,EAAW,EACxC,GAAGT,SAAA,kBAA2BM,UAAA,EAAY,CAC3C,CACEK,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EACR,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAEA;;;;AAIA,OAAO,MAAMQ,QAAA,GAIRA,CAAC;EAAER,QAAQ;EAAEC,SAAS;EAAEQ,IAAA,GAAO;AAAO,CAAE;EAC3C,MAAMN,OAAA,GAAU,CACdV,SAAA,EACAQ,SAAA,EACA,GAAGR,SAAA,gBAAyB,EAC5BgB,IAAA,KAAS,WAAW,GAAGhB,SAAA,SAAkB,CAC1C,CACEW,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EACR,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAEA;;;;AAIA,OAAO,MAAMU,UAAA,GAGRA,CAAC;EAAEV,QAAQ;EAAEC;AAAS,CAAE;EAC3B,MAAME,OAAA,GAAU,CAACV,SAAA,EAAWQ,SAAA,EAAW,GAAGR,SAAA,cAAuB,CAAC,CAACW,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACxF,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAaA,OAAO,MAAMW,MAAA,GAAoCA,CAAC;EAChDC,EAAE;EACFC,MAAM;EACNb,QAAQ;EACRC,SAAS;EACTa,QAAQ;EACRC,IAAI;EACJC,IAAI;EACJC;AAAO,CACR;EACC,MAAMd,OAAA,GAAU,CACd,GAAGV,SAAA,UAAmB,EACtBqB,QAAA,IAAY,GAAGrB,SAAA,YAAqB,EACpCoB,MAAA,IAAU,GAAGpB,SAAA,oBAA6B,EAC1CQ,SAAA,CACD,CACEG,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER;EACA,MAAMY,WAAA,gBAAcX,IAAA,CAAC;IAAKN,SAAA,EAAW,GAAGR,SAAA,QAAiB;cAAGuB;;EAE5D,IAAI,CAACF,QAAA,EAAU;IACb,IAAIC,IAAA,EAAM;MACR,oBACEI,KAAA,CAAC3B,IAAA;QACCS,SAAA,EAAWE,OAAA;QACXY,IAAA,EAAMA,IAAA;QACNH,EAAA,EAAIA,EAAA;QACJK,OAAA,EAAUG,CAAA;UACR,IAAIH,OAAA,EAAS;YACXA,OAAA,CAAQG,CAAA;UACV;QACF;QACAC,QAAA,EAAU;mBAETH,WAAA,E,aACDX,IAAA,CAAC;UAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;oBAAGO;;;IAG/C;IAEA,IAAIiB,OAAA,EAAS;MACX,oBACEE,KAAA,CAAC;QACClB,SAAA,EAAWE,OAAA;QACXS,EAAA,EAAIA,EAAA;QACJK,OAAA,EAAUG,CAAA;UACR,IAAIH,OAAA,EAAS;YACXA,OAAA,CAAQG,CAAA;UACV;QACF;QACAE,IAAA,EAAK;mBAEJJ,WAAA,E,aACDX,IAAA,CAAC;UAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;oBAAGO;;;IAG/C;EACF;EAEA,oBACEmB,KAAA,CAAC;IAAIlB,SAAA,EAAWE,OAAA;IAASS,EAAA,EAAIA,EAAA;eAC1BM,WAAA,E,aACDX,IAAA,CAAC;MAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;gBAAGO;;;AAG/C;AAEA;;;;AAIA,OAAO,MAAMuB,cAAA,GAA2DC,KAAA;EACtE,oBAAOjB,IAAA,CAACI,MAAA;IAAQ,GAAGa,KAAK;IAAER,IAAA,EAAMQ,KAAA,CAAMX,MAAM,gBAAGN,IAAA,CAAChB,SAAA;MAAUkB,IAAA,EAAM;SAASgB;;AAC3E","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","CheckIcon","Link","baseClass","PopupListDivider","Divider","PopupListGroupLabel","GroupLabel","ButtonGroup","buttonSize","children","className","textAlign","classes","filter","Boolean","join","_jsx","MenuItem","size","RadioGroup","Button","id","active","disabled","href","icon","onClick","iconElement","_jsxs","e","prefetch","type","RadioGroupItem","props","undefined"],"sources":["../../../../src/elements/Popup/PopupButtonList/index.tsx"],"sourcesContent":["'use client'\nimport type { LinkAdapterProps } from 'payload'\n\nimport * as React from 'react'\n\nimport { CheckIcon } from '../../../icons/Check/index.js'\nimport { Link } from '../../Link/index.js'\nimport './index.css'\n\nconst baseClass = 'popup-button-list'\n\nexport { PopupListDivider as Divider } from '../PopupDivider/index.js'\nexport { PopupListGroupLabel as GroupLabel } from '../PopupGroupLabel/index.js'\n\nexport const ButtonGroup: React.FC<{\n buttonSize?: 'default' | 'medium'\n children: React.ReactNode\n className?: string\n textAlign?: 'center' | 'left' | 'right'\n}> = ({ buttonSize = 'default', children, className, textAlign = 'left' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}__text-align--${textAlign}`,\n `${baseClass}__button-size--${buttonSize}`,\n ]\n .filter(Boolean)\n .join(' ')\n return <div className={classes}>{children}</div>\n}\n\n/**\n * A ButtonGroup variant for action menu items.\n * @param size - 'large' for 24px icons (default), 'small' for 16px icons\n */\nexport const MenuItem: React.FC<{\n children: React.ReactNode\n className?: string\n size?: 'large' | 'small'\n}> = ({ children, className, size = 'large' }) => {\n const classes = [\n baseClass,\n className,\n `${baseClass}--with-actions`,\n size === 'large' && `${baseClass}--large`,\n ]\n .filter(Boolean)\n .join(' ')\n return <div className={classes}>{children}</div>\n}\n\n/**\n * A ButtonGroup variant for radio-style selection items.\n * Uses 16px icons with padding on label - ideal for checkbox/selection rows.\n */\nexport const RadioGroup: React.FC<{\n children: React.ReactNode\n className?: string\n}> = ({ children, className }) => {\n const classes = [baseClass, className, `${baseClass}--with-icons`].filter(Boolean).join(' ')\n return <div className={classes}>{children}</div>\n}\n\ntype MenuButtonProps = {\n active?: boolean\n children: React.ReactNode\n className?: string\n disabled?: boolean\n href?: LinkAdapterProps['href']\n icon?: React.ReactNode\n id?: string\n onClick?: (e?: React.MouseEvent) => void\n}\n\nexport const Button: React.FC<MenuButtonProps> = ({\n id,\n active,\n children,\n className,\n disabled,\n href,\n icon,\n onClick,\n}) => {\n const classes = [\n `${baseClass}__button`,\n disabled && `${baseClass}__disabled`,\n active && `${baseClass}__button--selected`,\n className,\n ]\n .filter(Boolean)\n .join(' ')\n\n // Always render icon element - CSS hides it outside RadioGroup/MenuItem\n const iconElement = <span className={`${baseClass}__icon`}>{icon}</span>\n\n if (!disabled) {\n if (href) {\n return (\n <Link\n className={classes}\n href={href}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n prefetch={false}\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </Link>\n )\n }\n\n if (onClick) {\n return (\n <button\n className={classes}\n id={id}\n onClick={(e) => {\n if (onClick) {\n onClick(e)\n }\n }}\n type=\"button\"\n >\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </button>\n )\n }\n }\n\n return (\n <div className={classes} id={id}>\n {iconElement}\n <span className={`${baseClass}__label`}>{children}</span>\n </div>\n )\n}\n\n/**\n * A Button variant for use within RadioGroup.\n * Automatically shows a checkmark icon when active.\n */\nexport const RadioGroupItem: React.FC<Omit<MenuButtonProps, 'icon'>> = (props) => {\n return (\n <Button\n {...props}\n className={[`${baseClass}__button--radio-group-item`, props.className]\n .filter(Boolean)\n .join(' ')}\n icon={props.active ? <CheckIcon size={16} /> : undefined}\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,YAAYA,KAAA,MAAW;AAEvB,SAASC,SAAS,QAAQ;AAC1B,SAASC,IAAI,QAAQ;AACrB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,SAASC,gBAAA,IAAoBC,OAAO,QAAQ;AAC5C,SAASC,mBAAA,IAAuBC,UAAU,QAAQ;AAElD,OAAO,MAAMC,WAAA,GAKRA,CAAC;EAAEC,UAAA,GAAa,SAAS;EAAEC,QAAQ;EAAEC,SAAS;EAAEC,SAAA,GAAY;AAAM,CAAE;EACvE,MAAMC,OAAA,GAAU,CACdV,SAAA,EACAQ,SAAA,EACA,GAAGR,SAAA,iBAA0BS,SAAA,EAAW,EACxC,GAAGT,SAAA,kBAA2BM,UAAA,EAAY,CAC3C,CACEK,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EACR,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAEA;;;;AAIA,OAAO,MAAMQ,QAAA,GAIRA,CAAC;EAAER,QAAQ;EAAEC,SAAS;EAAEQ,IAAA,GAAO;AAAO,CAAE;EAC3C,MAAMN,OAAA,GAAU,CACdV,SAAA,EACAQ,SAAA,EACA,GAAGR,SAAA,gBAAyB,EAC5BgB,IAAA,KAAS,WAAW,GAAGhB,SAAA,SAAkB,CAC1C,CACEW,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EACR,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAEA;;;;AAIA,OAAO,MAAMU,UAAA,GAGRA,CAAC;EAAEV,QAAQ;EAAEC;AAAS,CAAE;EAC3B,MAAME,OAAA,GAAU,CAACV,SAAA,EAAWQ,SAAA,EAAW,GAAGR,SAAA,cAAuB,CAAC,CAACW,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;EACxF,oBAAOC,IAAA,CAAC;IAAIN,SAAA,EAAWE,OAAA;cAAUH;;AACnC;AAaA,OAAO,MAAMW,MAAA,GAAoCA,CAAC;EAChDC,EAAE;EACFC,MAAM;EACNb,QAAQ;EACRC,SAAS;EACTa,QAAQ;EACRC,IAAI;EACJC,IAAI;EACJC;AAAO,CACR;EACC,MAAMd,OAAA,GAAU,CACd,GAAGV,SAAA,UAAmB,EACtBqB,QAAA,IAAY,GAAGrB,SAAA,YAAqB,EACpCoB,MAAA,IAAU,GAAGpB,SAAA,oBAA6B,EAC1CQ,SAAA,CACD,CACEG,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER;EACA,MAAMY,WAAA,gBAAcX,IAAA,CAAC;IAAKN,SAAA,EAAW,GAAGR,SAAA,QAAiB;cAAGuB;;EAE5D,IAAI,CAACF,QAAA,EAAU;IACb,IAAIC,IAAA,EAAM;MACR,oBACEI,KAAA,CAAC3B,IAAA;QACCS,SAAA,EAAWE,OAAA;QACXY,IAAA,EAAMA,IAAA;QACNH,EAAA,EAAIA,EAAA;QACJK,OAAA,EAAUG,CAAA;UACR,IAAIH,OAAA,EAAS;YACXA,OAAA,CAAQG,CAAA;UACV;QACF;QACAC,QAAA,EAAU;mBAETH,WAAA,E,aACDX,IAAA,CAAC;UAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;oBAAGO;;;IAG/C;IAEA,IAAIiB,OAAA,EAAS;MACX,oBACEE,KAAA,CAAC;QACClB,SAAA,EAAWE,OAAA;QACXS,EAAA,EAAIA,EAAA;QACJK,OAAA,EAAUG,CAAA;UACR,IAAIH,OAAA,EAAS;YACXA,OAAA,CAAQG,CAAA;UACV;QACF;QACAE,IAAA,EAAK;mBAEJJ,WAAA,E,aACDX,IAAA,CAAC;UAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;oBAAGO;;;IAG/C;EACF;EAEA,oBACEmB,KAAA,CAAC;IAAIlB,SAAA,EAAWE,OAAA;IAASS,EAAA,EAAIA,EAAA;eAC1BM,WAAA,E,aACDX,IAAA,CAAC;MAAKN,SAAA,EAAW,GAAGR,SAAA,SAAkB;gBAAGO;;;AAG/C;AAEA;;;;AAIA,OAAO,MAAMuB,cAAA,GAA2DC,KAAA;EACtE,oBACEjB,IAAA,CAACI,MAAA;IACE,GAAGa,KAAK;IACTvB,SAAA,EAAW,CAAC,GAAGR,SAAA,4BAAqC,EAAE+B,KAAA,CAAMvB,SAAS,CAAC,CACnEG,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;IACRU,IAAA,EAAMQ,KAAA,CAAMX,MAAM,gBAAGN,IAAA,CAAChB,SAAA;MAAUkB,IAAA,EAAM;SAASgB;;AAGrD","ignoreList":[]}
@@ -1,9 +1,24 @@
1
1
  @layer payload-default {
2
2
  .popup-list-group-label {
3
3
  color: var(--color-text-secondary);
4
- font-weight: 500;
5
- line-height: 1;
6
- margin-top: var(--spacer-1);
7
- margin-bottom: var(--spacer-2);
4
+ font-family: var(--text-body-medium-font-family);
5
+ font-size: var(--text-body-medium-font-size);
6
+ font-weight: var(--text-body-medium-font-weight);
7
+ letter-spacing: var(--text-body-medium-letter-spacing);
8
+ line-height: var(--text-body-medium-line-height);
9
+ padding-block: var(--spacer-1);
10
+ padding-inline: var(--spacer-3);
11
+ }
12
+
13
+ /* Align the label's text with its sibling button labels, which carry a
14
+ var(--spacer-1) inset. The icon variants reserve an extra icon-slot
15
+ inset, so their labels sit one more var(--spacer-1) in. */
16
+ .popup-button-list .popup-list-group-label {
17
+ padding-inline-start: var(--spacer-1);
18
+ }
19
+
20
+ .popup-button-list--with-actions .popup-list-group-label,
21
+ .popup-button-list--with-icons .popup-list-group-label {
22
+ padding-inline-start: var(--spacer-2);
8
23
  }
9
24
  }
@@ -10,6 +10,7 @@ export type PopupButtonRenderProps = {
10
10
  export type PopupTriggerProps = {
11
11
  active: boolean;
12
12
  button?: React.ReactNode;
13
+ buttonAriaLabel?: string;
13
14
  buttonType: 'custom' | 'default';
14
15
  className?: string;
15
16
  disabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupTrigger/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,aAAa,CAAA;AAIpB,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,OAAO,CAAA;IACf,eAAe,EAAE,OAAO,CAAA;IACxB,eAAe,EAAE,IAAI,CAAA;IACrB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAA;IAChC,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAA;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,KAAK,CAAC,SAAS,CAAA;IACjE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3D,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA6EpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Popup/PopupTrigger/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,aAAa,CAAA;AAIpB,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,OAAO,CAAA;IACf,eAAe,EAAE,OAAO,CAAA;IACxB,eAAe,EAAE,IAAI,CAAA;IACrB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAA;IAChC,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,EAAE,QAAQ,GAAG,SAAS,CAAA;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,KAAK,CAAC,SAAS,CAAA;IACjE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3D,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAgFpD,CAAA"}
@@ -8,6 +8,7 @@ export const PopupTrigger = props => {
8
8
  const {
9
9
  active,
10
10
  button,
11
+ buttonAriaLabel,
11
12
  buttonType,
12
13
  className,
13
14
  disabled,
@@ -40,6 +41,7 @@ export const PopupTrigger = props => {
40
41
  }
41
42
  if (buttonType === 'custom') {
42
43
  return /*#__PURE__*/_jsx("div", {
44
+ "aria-label": buttonAriaLabel,
43
45
  className: classes,
44
46
  onClick: handleClick,
45
47
  onKeyDown: handleKeyDown,
@@ -49,6 +51,7 @@ export const PopupTrigger = props => {
49
51
  });
50
52
  }
51
53
  return /*#__PURE__*/_jsx("button", {
54
+ "aria-label": buttonAriaLabel,
52
55
  className: classes,
53
56
  disabled: disabled,
54
57
  onClick: handleClick,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","baseClass","PopupTrigger","props","active","button","buttonType","className","disabled","noBackground","renderButton","setActive","size","classes","filter","Boolean","join","handleClick","handleKeyDown","e","key","preventDefault","_jsx","_Fragment","onClick","onKeyDown","role","tabIndex","type"],"sources":["../../../../src/elements/Popup/PopupTrigger/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport './index.css'\n\nconst baseClass = 'popup-button'\n\nexport type PopupButtonRenderProps = {\n active: boolean\n 'aria-expanded': boolean\n 'aria-haspopup': true\n onClick: React.MouseEventHandler\n onKeyDown: React.KeyboardEventHandler\n}\n\nexport type PopupTriggerProps = {\n active: boolean\n button?: React.ReactNode\n buttonType: 'custom' | 'default'\n className?: string\n disabled?: boolean\n noBackground?: boolean\n renderButton?: (props: PopupButtonRenderProps) => React.ReactNode\n setActive: (active: boolean, viaKeyboard?: boolean) => void\n size?: 'large' | 'medium'\n}\n\nexport const PopupTrigger: React.FC<PopupTriggerProps> = (props) => {\n const {\n active,\n button,\n buttonType,\n className,\n disabled,\n noBackground,\n renderButton,\n setActive,\n size,\n } = props\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--${buttonType}`,\n !noBackground && `${baseClass}--background`,\n size && `${baseClass}--size-${size}`,\n disabled && `${baseClass}--disabled`,\n active && `${baseClass}--active`,\n ]\n .filter(Boolean)\n .join(' ')\n\n const handleClick: React.MouseEventHandler = () => {\n setActive(!active, false)\n }\n\n const handleKeyDown: React.KeyboardEventHandler = (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n setActive(!active, true)\n }\n }\n\n // Render prop mode: consumer provides the button, we provide the handlers\n if (renderButton) {\n return (\n <>\n {renderButton({\n active,\n 'aria-expanded': active,\n 'aria-haspopup': true,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n })}\n </>\n )\n }\n\n if (buttonType === 'custom') {\n return (\n <div\n className={classes}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={0}\n >\n {button}\n </div>\n )\n }\n\n return (\n <button\n className={classes}\n disabled={disabled}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n tabIndex={0}\n type=\"button\"\n >\n {button}\n </button>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAsBlB,OAAO,MAAMC,YAAA,GAA6CC,KAAA;EACxD,MAAM;IACJC,MAAM;IACNC,MAAM;IACNC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,YAAY;IACZC,YAAY;IACZC,SAAS;IACTC;EAAI,CACL,GAAGT,KAAA;EAEJ,MAAMU,OAAA,GAAU,CACdZ,SAAA,EACAM,SAAA,EACA,GAAGN,SAAA,KAAcK,UAAA,EAAY,EAC7B,CAACG,YAAA,IAAgB,GAAGR,SAAA,cAAuB,EAC3CW,IAAA,IAAQ,GAAGX,SAAA,UAAmBW,IAAA,EAAM,EACpCJ,QAAA,IAAY,GAAGP,SAAA,YAAqB,EACpCG,MAAA,IAAU,GAAGH,SAAA,UAAmB,CACjC,CACEa,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,MAAMC,WAAA,GAAuCA,CAAA;IAC3CN,SAAA,CAAU,CAACP,MAAA,EAAQ;EACrB;EAEA,MAAMc,aAAA,GAA6CC,CAAA;IACjD,IAAIA,CAAA,CAAEC,GAAG,KAAK,WAAWD,CAAA,CAAEC,GAAG,KAAK,KAAK;MACtCD,CAAA,CAAEE,cAAc;MAChBV,SAAA,CAAU,CAACP,MAAA,EAAQ;IACrB;EACF;EAEA;EACA,IAAIM,YAAA,EAAc;IAChB,oBACEY,IAAA,CAAAC,SAAA;gBACGb,YAAA,CAAa;QACZN,MAAA;QACA,iBAAiBA,MAAA;QACjB,iBAAiB;QACjBoB,OAAA,EAASP,WAAA;QACTQ,SAAA,EAAWP;MACb;;EAGN;EAEA,IAAIZ,UAAA,KAAe,UAAU;IAC3B,oBACEgB,IAAA,CAAC;MACCf,SAAA,EAAWM,OAAA;MACXW,OAAA,EAASP,WAAA;MACTQ,SAAA,EAAWP,aAAA;MACXQ,IAAA,EAAK;MACLC,QAAA,EAAU;gBAETtB;;EAGP;EAEA,oBACEiB,IAAA,CAAC;IACCf,SAAA,EAAWM,OAAA;IACXL,QAAA,EAAUA,QAAA;IACVgB,OAAA,EAASP,WAAA;IACTQ,SAAA,EAAWP,aAAA;IACXS,QAAA,EAAU;IACVC,IAAA,EAAK;cAEJvB;;AAGP","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","baseClass","PopupTrigger","props","active","button","buttonAriaLabel","buttonType","className","disabled","noBackground","renderButton","setActive","size","classes","filter","Boolean","join","handleClick","handleKeyDown","e","key","preventDefault","_jsx","_Fragment","onClick","onKeyDown","role","tabIndex","type"],"sources":["../../../../src/elements/Popup/PopupTrigger/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport './index.css'\n\nconst baseClass = 'popup-button'\n\nexport type PopupButtonRenderProps = {\n active: boolean\n 'aria-expanded': boolean\n 'aria-haspopup': true\n onClick: React.MouseEventHandler\n onKeyDown: React.KeyboardEventHandler\n}\n\nexport type PopupTriggerProps = {\n active: boolean\n button?: React.ReactNode\n buttonAriaLabel?: string\n buttonType: 'custom' | 'default'\n className?: string\n disabled?: boolean\n noBackground?: boolean\n renderButton?: (props: PopupButtonRenderProps) => React.ReactNode\n setActive: (active: boolean, viaKeyboard?: boolean) => void\n size?: 'large' | 'medium'\n}\n\nexport const PopupTrigger: React.FC<PopupTriggerProps> = (props) => {\n const {\n active,\n button,\n buttonAriaLabel,\n buttonType,\n className,\n disabled,\n noBackground,\n renderButton,\n setActive,\n size,\n } = props\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--${buttonType}`,\n !noBackground && `${baseClass}--background`,\n size && `${baseClass}--size-${size}`,\n disabled && `${baseClass}--disabled`,\n active && `${baseClass}--active`,\n ]\n .filter(Boolean)\n .join(' ')\n\n const handleClick: React.MouseEventHandler = () => {\n setActive(!active, false)\n }\n\n const handleKeyDown: React.KeyboardEventHandler = (e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n setActive(!active, true)\n }\n }\n\n // Render prop mode: consumer provides the button, we provide the handlers\n if (renderButton) {\n return (\n <>\n {renderButton({\n active,\n 'aria-expanded': active,\n 'aria-haspopup': true,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n })}\n </>\n )\n }\n\n if (buttonType === 'custom') {\n return (\n <div\n aria-label={buttonAriaLabel}\n className={classes}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n role=\"button\"\n tabIndex={0}\n >\n {button}\n </div>\n )\n }\n\n return (\n <button\n aria-label={buttonAriaLabel}\n className={classes}\n disabled={disabled}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n tabIndex={0}\n type=\"button\"\n >\n {button}\n </button>\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAuBlB,OAAO,MAAMC,YAAA,GAA6CC,KAAA;EACxD,MAAM;IACJC,MAAM;IACNC,MAAM;IACNC,eAAe;IACfC,UAAU;IACVC,SAAS;IACTC,QAAQ;IACRC,YAAY;IACZC,YAAY;IACZC,SAAS;IACTC;EAAI,CACL,GAAGV,KAAA;EAEJ,MAAMW,OAAA,GAAU,CACdb,SAAA,EACAO,SAAA,EACA,GAAGP,SAAA,KAAcM,UAAA,EAAY,EAC7B,CAACG,YAAA,IAAgB,GAAGT,SAAA,cAAuB,EAC3CY,IAAA,IAAQ,GAAGZ,SAAA,UAAmBY,IAAA,EAAM,EACpCJ,QAAA,IAAY,GAAGR,SAAA,YAAqB,EACpCG,MAAA,IAAU,GAAGH,SAAA,UAAmB,CACjC,CACEc,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,MAAMC,WAAA,GAAuCA,CAAA;IAC3CN,SAAA,CAAU,CAACR,MAAA,EAAQ;EACrB;EAEA,MAAMe,aAAA,GAA6CC,CAAA;IACjD,IAAIA,CAAA,CAAEC,GAAG,KAAK,WAAWD,CAAA,CAAEC,GAAG,KAAK,KAAK;MACtCD,CAAA,CAAEE,cAAc;MAChBV,SAAA,CAAU,CAACR,MAAA,EAAQ;IACrB;EACF;EAEA;EACA,IAAIO,YAAA,EAAc;IAChB,oBACEY,IAAA,CAAAC,SAAA;gBACGb,YAAA,CAAa;QACZP,MAAA;QACA,iBAAiBA,MAAA;QACjB,iBAAiB;QACjBqB,OAAA,EAASP,WAAA;QACTQ,SAAA,EAAWP;MACb;;EAGN;EAEA,IAAIZ,UAAA,KAAe,UAAU;IAC3B,oBACEgB,IAAA,CAAC;MACC,cAAYjB,eAAA;MACZE,SAAA,EAAWM,OAAA;MACXW,OAAA,EAASP,WAAA;MACTQ,SAAA,EAAWP,aAAA;MACXQ,IAAA,EAAK;MACLC,QAAA,EAAU;gBAETvB;;EAGP;EAEA,oBACEkB,IAAA,CAAC;IACC,cAAYjB,eAAA;IACZE,SAAA,EAAWM,OAAA;IACXL,QAAA,EAAUA,QAAA;IACVgB,OAAA,EAASP,WAAA;IACTQ,SAAA,EAAWP,aAAA;IACXS,QAAA,EAAU;IACVC,IAAA,EAAK;cAEJxB;;AAGP","ignoreList":[]}
@@ -6,6 +6,12 @@ export type PopupProps = {
6
6
  backgroundColor?: CSSProperties['backgroundColor'];
7
7
  boundingRef?: React.RefObject<HTMLElement>;
8
8
  button?: React.ReactNode;
9
+ /**
10
+ * Accessible label for the trigger button.
11
+ * Necessary when the button has an icon-only content,
12
+ * so the button has an accessible name for screen readers.
13
+ */
14
+ buttonAriaLabel?: string;
9
15
  /**
10
16
  * The class name to apply to the button that triggers the popup.
11
17
  */
@@ -61,7 +67,14 @@ export type PopupProps = {
61
67
  * @default false
62
68
  */
63
69
  showScrollbar?: boolean;
64
- size?: 'fit-content' | 'large' | 'medium' | 'small';
70
+ /**
71
+ * Position the popup to the side of the trigger instead of above/below.
72
+ * The popup's top edge aligns with the trigger's top edge (with viewport clamping).
73
+ * Automatically flips to the opposite side if there is not enough space.
74
+ * When set, `verticalAlign`, `horizontalAlign`, and the caret are ignored.
75
+ */
76
+ side?: 'left' | 'right';
77
+ size?: 'fit-content' | 'large' | 'small';
65
78
  /**
66
79
  * Theme for the popup content. Defaults to 'dark'.
67
80
  * Set to 'auto' to inherit the current theme.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Popup/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD,OAAO,KAAmD,MAAM,OAAO,CAAA;AAIvE,OAAO,aAAa,CAAA;AAuBpB,MAAM,MAAM,UAAU,GAAG;IACvB,eAAe,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IAClD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IAC/B,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IACjC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC7C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IACxC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAA;IACzD;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QACrB,MAAM,EAAE,OAAO,CAAA;QACf,eAAe,EAAE,OAAO,CAAA;QACxB,eAAe,EAAE,IAAI,CAAA;QACrB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAA;QAChC,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAA;KACtC,KAAK,KAAK,CAAC,SAAS,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAA;IACnD;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IACjC;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;CACjC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAoZtC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/Popup/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,SAAS,MAAM,4BAA4B,CAAA;AAEvD,OAAO,KAAuE,MAAM,OAAO,CAAA;AAK3F,OAAO,aAAa,CAAA;AA4CpB,MAAM,MAAM,UAAU,GAAG;IACvB,eAAe,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAA;IAClD,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAA;IAC1C,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,UAAU,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAA;IAC/B,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAA;IACjC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;IAC7C,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;IACxC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,KAAK,CAAC,SAAS,CAAA;IACzD;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QACrB,MAAM,EAAE,OAAO,CAAA;QACf,eAAe,EAAE,OAAO,CAAA;QACxB,eAAe,EAAE,IAAI,CAAA;QACrB,OAAO,EAAE,KAAK,CAAC,iBAAiB,CAAA;QAChC,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAAA;KACtC,KAAK,KAAK,CAAC,SAAS,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;;;OAKG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IACvB,IAAI,CAAC,EAAE,aAAa,GAAG,OAAO,GAAG,OAAO,CAAA;IACxC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;IACjC;;;;;;;;OAQG;IACH,aAAa,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAA;CACjC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAsftC,CAAA"}
@@ -1,17 +1,33 @@
1
1
  'use client';
2
2
 
3
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
4
4
  export * as PopupList from './PopupButtonList/index.js';
5
- import React, { useCallback, useEffect, useRef, useState } from 'react';
5
+ import React, { createContext, use, useCallback, useEffect, useRef, useState } from 'react';
6
6
  import { createPortal } from 'react-dom';
7
7
  import { useEffectEvent } from '../../hooks/useEffectEvent.js';
8
+ import { ThemeProvider } from '../../providers/Theme/index.js';
8
9
  import './index.css';
9
10
  import { PopupTrigger } from './PopupTrigger/index.js';
10
11
  const baseClass = 'popup';
12
+ const PopupContext = /*#__PURE__*/createContext(null);
11
13
  /**
12
14
  * Selector for all elements the browser considers tabbable.
13
15
  */
14
16
  const TABBABLE_SELECTOR = ['a[href]', 'button:not(:disabled)', 'input:not(:disabled):not([type="hidden"])', 'select:not(:disabled)', 'textarea:not(:disabled)', '[tabindex]', '[contenteditable]:not([contenteditable="false"])', 'audio[controls]', 'video[controls]', 'summary'].map(s => `${s}:not([tabindex="-1"])`).join(', ');
17
+ /**
18
+ * Returns whether the element has a `position: fixed` ancestor (e.g. an open Drawer).
19
+ * Such popups must be positioned with `fixed` so they don't drift when the background scrolls.
20
+ */
21
+ const hasFixedAncestor = element => {
22
+ let node = element?.parentElement;
23
+ while (node && node !== document.body) {
24
+ if (window.getComputedStyle(node).position === 'fixed') {
25
+ return true;
26
+ }
27
+ node = node.parentElement;
28
+ }
29
+ return false;
30
+ };
15
31
  /**
16
32
  * Component that renders a popup, as well as a button that triggers the popup.
17
33
  *
@@ -22,6 +38,7 @@ export const Popup = props => {
22
38
  const {
23
39
  id,
24
40
  button,
41
+ buttonAriaLabel,
25
42
  buttonClassName,
26
43
  buttonSize,
27
44
  buttonType = 'default',
@@ -40,18 +57,25 @@ export const Popup = props => {
40
57
  renderButton,
41
58
  showOnHover = false,
42
59
  showScrollbar = false,
43
- size = 'medium',
60
+ side,
61
+ size = 'fit-content',
44
62
  theme = 'dark',
45
63
  verticalAlign = 'bottom'
46
64
  } = props;
47
65
  const popupRef = useRef(null);
48
66
  const triggerRef = useRef(null);
49
67
  /**
68
+ * Whether the trigger is inside a `position: fixed` ancestor (e.g. a Drawer),
69
+ * in which case the popup is positioned with `fixed` instead of `absolute`.
70
+ */
71
+ const isFixedRef = useRef(false);
72
+ /**
50
73
  * Keeps track of whether the popup was opened via keyboard.
51
74
  * This is used to determine whether to autofocus the first element in the popup.
52
75
  * If the popup was opened via mouse, we do not want to autofocus the first element.
53
76
  */
54
77
  const openedViaKeyboardRef = useRef(false);
78
+ const parentPopup = use(PopupContext);
55
79
  const [mounted, setMounted] = useState(false);
56
80
  const [active, setActiveInternal] = useState(initActive);
57
81
  const [isOnTop, setIsOnTop] = useState(verticalAlign === 'top');
@@ -83,52 +107,94 @@ export const Popup = props => {
83
107
  }
84
108
  const triggerRect = trigger.getBoundingClientRect();
85
109
  const popupRect = popup.getBoundingClientRect();
110
+ // Inside a fixed ancestor, use `fixed` (no scroll offset) so background scrolling
111
+ // doesn't shift the popup. Otherwise use page coordinates (absolute).
112
+ const useFixed = isFixedRef.current;
113
+ const scrollY = useFixed ? 0 : window.scrollY;
114
+ const scrollX = useFixed ? 0 : window.scrollX;
86
115
  // Gap between the popup and the trigger/viewport edges (in pixels)
87
116
  const offset = 10;
88
- // /////////////////////////////////////
89
- // Vertical Positioning
90
- // Calculates the `top` position in absolute page coordinates.
91
- // Uses `verticalAlign` prop as the preferred direction, but flips
92
- // to the opposite side if there's not enough viewport space.
93
- // /////////////////////////////////////
117
+ // Additional gap used in side mode so the child popup has breathing room from its parent
118
+ const sideOffset = 4;
94
119
  let top;
95
- let onTop = verticalAlign === 'top';
96
- if (verticalAlign === 'bottom') {
97
- top = triggerRect.bottom + window.scrollY + offset;
98
- if (triggerRect.bottom + popupRect.height + offset > window.innerHeight) {
99
- // Try to flip above — only do so if there's actually enough room
100
- const topIfAbove = triggerRect.top + window.scrollY - popupRect.height - offset;
101
- if (topIfAbove >= window.scrollY) {
102
- top = topIfAbove;
103
- onTop = true;
120
+ let left;
121
+ let caretLeft;
122
+ if (side) {
123
+ // /////////////////////////////////////
124
+ // Side Positioning
125
+ // Places the popup to the left or right of the parent popup (not just the trigger),
126
+ // top-aligned with the trigger. Flips to the opposite side if there is not enough
127
+ // viewport space.
128
+ // /////////////////////////////////////
129
+ // Top: align with trigger top, clamped to viewport
130
+ top = triggerRect.top + scrollY;
131
+ const maxTop = scrollY + window.innerHeight - popupRect.height - offset;
132
+ top = Math.max(scrollY + offset, Math.min(top, maxTop));
133
+ // Use the parent popup's bounding rect as the reference for left/right positioning
134
+ // so the child appears 4px from the parent popup edge, not just the trigger button.
135
+ const anchorRect = parentPopup?.popupRef.current ? parentPopup.popupRef.current.getBoundingClientRect() : triggerRect;
136
+ if (side === 'left') {
137
+ left = anchorRect.left - popupRect.width - sideOffset;
138
+ if (left < offset) {
139
+ // flip to right side
140
+ left = anchorRect.right + sideOffset;
141
+ }
142
+ } else {
143
+ left = anchorRect.right + sideOffset;
144
+ if (left + popupRect.width + offset > window.innerWidth) {
145
+ // flip to left side
146
+ left = anchorRect.left - popupRect.width - sideOffset;
104
147
  }
105
- // else: not enough room above either — keep below and let it overflow rather than going off-screen
106
148
  }
149
+ left = left + scrollX;
150
+ // Caret not used in side mode; set a neutral value
151
+ caretLeft = popupRect.width / 2;
152
+ setIsOnTop(false);
107
153
  } else {
108
- top = triggerRect.top + window.scrollY - popupRect.height - offset;
109
- if (triggerRect.top - popupRect.height - offset < 0) {
110
- top = triggerRect.bottom + window.scrollY + offset;
111
- onTop = false;
154
+ // /////////////////////////////////////
155
+ // Vertical Positioning
156
+ // Calculates the `top` position in absolute page coordinates.
157
+ // Uses `verticalAlign` prop as the preferred direction, but flips
158
+ // to the opposite side if there's not enough viewport space.
159
+ // /////////////////////////////////////
160
+ let onTop = verticalAlign === 'top';
161
+ if (verticalAlign === 'bottom') {
162
+ top = triggerRect.bottom + scrollY + offset;
163
+ if (triggerRect.bottom + popupRect.height + offset > window.innerHeight) {
164
+ // Try to flip above — only do so if there's actually enough room
165
+ const topIfAbove = triggerRect.top + scrollY - popupRect.height - offset;
166
+ if (topIfAbove >= scrollY) {
167
+ top = topIfAbove;
168
+ onTop = true;
169
+ }
170
+ // else: not enough room above either — keep below and let it overflow rather than going off-screen
171
+ }
172
+ } else {
173
+ top = triggerRect.top + scrollY - popupRect.height - offset;
174
+ if (triggerRect.top - popupRect.height - offset < 0) {
175
+ top = triggerRect.bottom + scrollY + offset;
176
+ onTop = false;
177
+ }
112
178
  }
179
+ setIsOnTop(onTop);
180
+ // /////////////////////////////////////
181
+ // Horizontal Positioning
182
+ // Calculates the `left` position based on `horizontalAlign` prop:
183
+ // - 'left': aligns popup's left edge with trigger's left edge
184
+ // - 'right': aligns popup's right edge with trigger's right edge
185
+ // - 'center': centers popup horizontally relative to trigger
186
+ // Then clamps to keep the popup within viewport bounds.
187
+ // /////////////////////////////////////
188
+ left = horizontalAlign === 'right' ? triggerRect.right - popupRect.width : horizontalAlign === 'center' ? triggerRect.left + triggerRect.width / 2 - popupRect.width / 2 : triggerRect.left;
189
+ left = Math.max(offset, Math.min(left, window.innerWidth - popupRect.width - offset));
190
+ // /////////////////////////////////////
191
+ // Caret Positioning
192
+ // Positions the caret arrow to point at the trigger's horizontal center.
193
+ // Clamps between 12px from edges to prevent caret from overflowing the popup.
194
+ // /////////////////////////////////////
195
+ const triggerCenter = triggerRect.left + triggerRect.width / 2;
196
+ caretLeft = Math.max(12, Math.min(triggerCenter - left, popupRect.width - 12));
113
197
  }
114
- setIsOnTop(onTop);
115
- // /////////////////////////////////////
116
- // Horizontal Positioning
117
- // Calculates the `left` position based on `horizontalAlign` prop:
118
- // - 'left': aligns popup's left edge with trigger's left edge
119
- // - 'right': aligns popup's right edge with trigger's right edge
120
- // - 'center': centers popup horizontally relative to trigger
121
- // Then clamps to keep the popup within viewport bounds.
122
- // /////////////////////////////////////
123
- let left = horizontalAlign === 'right' ? triggerRect.right - popupRect.width : horizontalAlign === 'center' ? triggerRect.left + triggerRect.width / 2 - popupRect.width / 2 : triggerRect.left;
124
- left = Math.max(offset, Math.min(left, window.innerWidth - popupRect.width - offset));
125
- // /////////////////////////////////////
126
- // Caret Positioning
127
- // Positions the caret arrow to point at the trigger's horizontal center.
128
- // Clamps between 12px from edges to prevent caret from overflowing the popup.
129
- // /////////////////////////////////////
130
- const triggerCenter = triggerRect.left + triggerRect.width / 2;
131
- const caretLeft = Math.max(12, Math.min(triggerCenter - left, popupRect.width - 12));
132
198
  // /////////////////////////////////////
133
199
  // Apply Styles (only if changed)
134
200
  // Compares calculated position with current styles to avoid unnecessary
@@ -138,8 +204,12 @@ export const Popup = props => {
138
204
  // Values are rounded to match browser's CSS precision and avoid false updates.
139
205
  // /////////////////////////////////////
140
206
  const newTop = `${Math.round(top)}px`;
141
- const newLeft = `${Math.round(left + window.scrollX)}px`;
207
+ const newLeft = `${Math.round(left + scrollX)}px`;
142
208
  const newCaretLeft = `${Math.round(caretLeft)}px`;
209
+ const newPosition = useFixed ? 'fixed' : '';
210
+ if (popup.style.position !== newPosition) {
211
+ popup.style.position = newPosition;
212
+ }
143
213
  if (popup.style.top !== newTop) {
144
214
  popup.style.top = newTop;
145
215
  }
@@ -222,6 +292,10 @@ export const Popup = props => {
222
292
  // Check if the clicked element or any ancestor is an actionable element
223
293
  const actionable = target_0.closest('button, a[href], [role="button"], [role="menuitem"]');
224
294
  if (actionable && popupRef.current?.contains(actionable)) {
295
+ // Don't close if clicking a nested popup's trigger — it will manage its own open state
296
+ if (actionable.closest(`.${baseClass}__trigger-wrap`)) {
297
+ return;
298
+ }
225
299
  setActive(false);
226
300
  }
227
301
  });
@@ -230,10 +304,20 @@ export const Popup = props => {
230
304
  // /////////////////////////////////////
231
305
  useEffect(() => {
232
306
  if (!active) {
307
+ const popup_1 = popupRef.current;
308
+ if (popup_1) {
309
+ // Clear inline position styles so the CSS `top: -9999px` rule on
310
+ // `.popup__hidden-content` takes effect. Without this, the inline
311
+ // styles set during positioning would win over the CSS rule, keeping
312
+ // portaled children (e.g. a ReactSelect menu) visually on-screen.
313
+ popup_1.style.position = '';
314
+ popup_1.style.top = '';
315
+ popup_1.style.left = '';
316
+ }
233
317
  return;
234
318
  }
235
- const popup_1 = popupRef.current;
236
- if (!popup_1) {
319
+ const popup_2 = popupRef.current;
320
+ if (!popup_2) {
237
321
  return;
238
322
  }
239
323
  // /////////////////////////////////////
@@ -247,9 +331,11 @@ export const Popup = props => {
247
331
  // after the browser has finished laying out the newly-visible popup
248
332
  // content. The rAF call is the authoritative one — it catches cases
249
333
  // where the popup height wasn't stable yet during the first call
250
- // (e.g. ColumnSelector content rendering after hidden → visible
334
+ // (e.g. ColumnSelection popup content rendering after hidden → visible
251
335
  // class switch), which was causing incorrect flip-to-top decisions.
252
336
  // /////////////////////////////////////
337
+ // Decide the positioning strategy once per open.
338
+ isFixedRef.current = hasFixedAncestor(triggerRef.current);
253
339
  updatePosition();
254
340
  const rafId = requestAnimationFrame(() => {
255
341
  updatePosition();
@@ -262,7 +348,7 @@ export const Popup = props => {
262
348
  if (openedViaKeyboardRef.current) {
263
349
  // Use requestAnimationFrame to ensure DOM is ready.
264
350
  requestAnimationFrame(() => {
265
- const firstFocusable = popup_1.querySelector(TABBABLE_SELECTOR);
351
+ const firstFocusable = popup_2.querySelector(TABBABLE_SELECTOR);
266
352
  firstFocusable?.focus();
267
353
  });
268
354
  }
@@ -279,7 +365,7 @@ export const Popup = props => {
279
365
  });
280
366
  document.addEventListener('mousedown', handleClickOutside);
281
367
  document.addEventListener('keydown', handleKeyDown);
282
- popup_1.addEventListener('click', handleActionableClick);
368
+ popup_2.addEventListener('click', handleActionableClick);
283
369
  return () => {
284
370
  cancelAnimationFrame(rafId);
285
371
  window.removeEventListener('resize', updatePosition);
@@ -288,7 +374,7 @@ export const Popup = props => {
288
374
  });
289
375
  document.removeEventListener('mousedown', handleClickOutside);
290
376
  document.removeEventListener('keydown', handleKeyDown);
291
- popup_1.removeEventListener('click', handleActionableClick);
377
+ popup_2.removeEventListener('click', handleActionableClick);
292
378
  };
293
379
  }, [active]);
294
380
  useEffect(() => {
@@ -299,6 +385,7 @@ export const Popup = props => {
299
385
  const Trigger = /*#__PURE__*/_jsx(PopupTrigger, {
300
386
  active: active,
301
387
  button: button,
388
+ buttonAriaLabel: buttonAriaLabel,
302
389
  buttonType: buttonType,
303
390
  className: buttonClassName,
304
391
  disabled: disabled,
@@ -326,21 +413,33 @@ export const Popup = props => {
326
413
  // Otherwise, modals opened from the popup will close unexpectedly when clicking within the modal, since
327
414
  // that closes the popup due to the click outside handler.
328
415
  /*#__PURE__*/
329
- createPortal(/*#__PURE__*/_jsxs("div", {
330
- className: active ? [`${baseClass}__content`, `${baseClass}--size-${size}`, isOnTop ? `${baseClass}--v-top` : `${baseClass}--v-bottom`, portalClassName].filter(Boolean).join(' ') :
331
- // tests do not accidentally target inactive popups.
332
- `${baseClass}__hidden-content`,
333
- "data-popup-id": id || undefined,
334
- "data-theme": theme === 'auto' ? undefined : theme,
335
- ref: popupRef,
336
- children: [/*#__PURE__*/_jsxs("div", {
337
- className: `${baseClass}__scroll-container${showScrollbar ? ` ${baseClass}__scroll-container--show-scrollbar` : ''}`,
338
- children: [render?.({
339
- close: () => setActive(false)
340
- }), children]
341
- }), caret && /*#__PURE__*/_jsx("div", {
342
- className: `${baseClass}__caret`
343
- })]
416
+ createPortal(/*#__PURE__*/_jsx(PopupContext, {
417
+ value: {
418
+ popupRef
419
+ },
420
+ children: /*#__PURE__*/_jsxs("div", {
421
+ className: active ? [`${baseClass}__content`, `${baseClass}--size-${size}`, side ? `${baseClass}--side-${side}` : isOnTop ? `${baseClass}--v-top` : `${baseClass}--v-bottom`, portalClassName].filter(Boolean).join(' ') :
422
+ // tests do not accidentally target inactive popups.
423
+ `${baseClass}__hidden-content`,
424
+ "data-popup-id": id || undefined,
425
+ "data-theme": theme === 'auto' ? undefined : theme,
426
+ ref: popupRef,
427
+ children: [/*#__PURE__*/_jsx("div", {
428
+ className: `${baseClass}__scroll-container${showScrollbar ? ` ${baseClass}__scroll-container--show-scrollbar` : ''}`,
429
+ children: theme === 'auto' ? /*#__PURE__*/_jsxs(_Fragment, {
430
+ children: [render?.({
431
+ close: () => setActive(false)
432
+ }), children]
433
+ }) : /*#__PURE__*/_jsxs(ThemeProvider, {
434
+ theme: theme,
435
+ children: [render?.({
436
+ close: () => setActive(false)
437
+ }), children]
438
+ })
439
+ }), caret && !side && /*#__PURE__*/_jsx("div", {
440
+ className: `${baseClass}__caret`
441
+ })]
442
+ })
344
443
  }), document.body) : null]
345
444
  });
346
445
  };