@soroush.tech/design-system 2.0.0-rc.1 → 2.0.0-rc.2

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 (299) hide show
  1. package/README.md +17 -1
  2. package/dist/AppBar.d.cts +1 -3
  3. package/dist/AppBar.d.mts +1 -3
  4. package/dist/Avatar.cjs +1 -1
  5. package/dist/Avatar.d.cts +1 -3
  6. package/dist/Avatar.d.mts +1 -3
  7. package/dist/Avatar.mjs +1 -1
  8. package/dist/Backdrop.d.cts +1 -1
  9. package/dist/Backdrop.d.mts +1 -1
  10. package/dist/Breadcrumbs.cjs +132 -0
  11. package/dist/Breadcrumbs.d.cts +40 -0
  12. package/dist/Breadcrumbs.d.mts +40 -0
  13. package/dist/Breadcrumbs.mjs +131 -0
  14. package/dist/Button.cjs +1 -1
  15. package/dist/Button.d.cts +1 -1
  16. package/dist/Button.d.mts +1 -1
  17. package/dist/Button.mjs +1 -1
  18. package/dist/ButtonGroup.d.cts +1 -1
  19. package/dist/ButtonGroup.d.mts +1 -1
  20. package/dist/Card.cjs +3 -3
  21. package/dist/Card.d.cts +4 -3
  22. package/dist/Card.d.mts +4 -3
  23. package/dist/Card.mjs +3 -3
  24. package/dist/Checkbox.d.cts +1 -2
  25. package/dist/Checkbox.d.mts +1 -2
  26. package/dist/CircularProgress.d.cts +2 -3
  27. package/dist/CircularProgress.d.mts +2 -3
  28. package/dist/Drawer.d.cts +3 -2
  29. package/dist/Drawer.d.mts +3 -2
  30. package/dist/Flex.d.cts +1 -1
  31. package/dist/Flex.d.mts +1 -1
  32. package/dist/Form.d.cts +1 -1
  33. package/dist/Form.d.mts +1 -1
  34. package/dist/FormControl.cjs +1 -1
  35. package/dist/FormControl.d.cts +1 -2
  36. package/dist/FormControl.d.mts +1 -2
  37. package/dist/FormControl.mjs +1 -1
  38. package/dist/FormHelperText.d.cts +1 -1
  39. package/dist/FormHelperText.d.mts +1 -1
  40. package/dist/FormLabel.d.cts +1 -1
  41. package/dist/FormLabel.d.mts +1 -1
  42. package/dist/Grid.d.cts +1 -3
  43. package/dist/Grid.d.mts +1 -3
  44. package/dist/{Icon-CI6q2Eyi.cjs → Icon-Cvuhp9ek.cjs} +12 -2
  45. package/dist/{Icon-CH3asUJu.mjs → Icon-DlheCTJb.mjs} +12 -2
  46. package/dist/Icon.cjs +1 -1
  47. package/dist/Icon.d.cts +1 -1
  48. package/dist/Icon.d.mts +1 -1
  49. package/dist/Icon.mjs +1 -1
  50. package/dist/Image.d.cts +1 -2
  51. package/dist/Image.d.mts +1 -2
  52. package/dist/LinearProgress.d.cts +2 -3
  53. package/dist/LinearProgress.d.mts +2 -3
  54. package/dist/Link.cjs +1 -1
  55. package/dist/Link.d.cts +1 -1
  56. package/dist/Link.d.mts +1 -1
  57. package/dist/Link.mjs +1 -1
  58. package/dist/Menu/ContextMenu.cjs +146 -0
  59. package/dist/Menu/ContextMenu.d.cts +52 -0
  60. package/dist/Menu/ContextMenu.d.mts +52 -0
  61. package/dist/Menu/ContextMenu.mjs +145 -0
  62. package/dist/Menu/Menu.cjs +3 -0
  63. package/dist/Menu/Menu.d.cts +2 -0
  64. package/dist/Menu/Menu.d.mts +2 -0
  65. package/dist/Menu/Menu.mjs +2 -0
  66. package/dist/Menu/MenuDivider.cjs +29 -0
  67. package/dist/Menu/MenuDivider.d.cts +12 -0
  68. package/dist/Menu/MenuDivider.d.mts +12 -0
  69. package/dist/Menu/MenuDivider.mjs +28 -0
  70. package/dist/Menu/MenuItems.cjs +29 -0
  71. package/dist/Menu/MenuItems.d.cts +2 -0
  72. package/dist/Menu/MenuItems.d.mts +2 -0
  73. package/dist/Menu/MenuItems.mjs +28 -0
  74. package/dist/Menu/MenuList.cjs +3 -0
  75. package/dist/Menu/MenuList.d.cts +38 -0
  76. package/dist/Menu/MenuList.d.mts +38 -0
  77. package/dist/Menu/MenuList.mjs +2 -0
  78. package/dist/Menu-BkKPTOfh.cjs +172 -0
  79. package/dist/Menu-tECbAEFj.mjs +167 -0
  80. package/dist/Menu.cjs +13 -0
  81. package/dist/Menu.d.cts +7 -0
  82. package/dist/Menu.d.mts +7 -0
  83. package/dist/Menu.mjs +6 -0
  84. package/dist/MenuItem-BR7ingQx.mjs +654 -0
  85. package/dist/MenuItem-CfdN4axw.cjs +684 -0
  86. package/dist/MenuItem.cjs +2 -148
  87. package/dist/MenuItem.d.cts +2 -52
  88. package/dist/MenuItem.d.mts +2 -52
  89. package/dist/MenuItem.mjs +1 -147
  90. package/dist/MenuList-B7msJ1IG.mjs +187 -0
  91. package/dist/MenuList-D4imLXAa.cjs +223 -0
  92. package/dist/MenuListContext-Dml16k0X.d.mts +21 -0
  93. package/dist/MenuListContext-vujGcRk9.d.cts +21 -0
  94. package/dist/Modal.d.cts +1 -1
  95. package/dist/Modal.d.mts +1 -1
  96. package/dist/NativeSelect.cjs +2 -2
  97. package/dist/NativeSelect.d.cts +2 -3
  98. package/dist/NativeSelect.d.mts +2 -3
  99. package/dist/NativeSelect.mjs +2 -2
  100. package/dist/Pagination/PaginationItem.cjs +1 -1
  101. package/dist/Pagination/PaginationItem.d.cts +1 -1
  102. package/dist/Pagination/PaginationItem.d.mts +1 -1
  103. package/dist/Pagination/PaginationItem.mjs +1 -1
  104. package/dist/Pagination.d.cts +2 -2
  105. package/dist/Pagination.d.mts +2 -2
  106. package/dist/Paper.cjs +1 -1
  107. package/dist/Paper.d.cts +2 -1
  108. package/dist/Paper.d.mts +2 -1
  109. package/dist/Paper.mjs +1 -1
  110. package/dist/{Popover-TpwRSORC.cjs → Popover-CiZfgiKE.cjs} +5 -125
  111. package/dist/Popover-QjM5Z1CR.mjs +133 -0
  112. package/dist/Popover.cjs +1 -1
  113. package/dist/Popover.d.cts +6 -7
  114. package/dist/Popover.d.mts +6 -7
  115. package/dist/Popover.mjs +1 -1
  116. package/dist/Pressable.cjs +1 -1
  117. package/dist/Pressable.d.cts +1 -1
  118. package/dist/Pressable.d.mts +1 -1
  119. package/dist/Pressable.mjs +1 -1
  120. package/dist/Quote.d.cts +2 -3
  121. package/dist/Quote.d.mts +2 -3
  122. package/dist/Radio.d.cts +1 -2
  123. package/dist/Radio.d.mts +1 -2
  124. package/dist/Select.cjs +3 -3
  125. package/dist/Select.d.cts +2 -3
  126. package/dist/Select.d.mts +2 -3
  127. package/dist/Select.mjs +3 -3
  128. package/dist/Sidebar/Sidebar.d.cts +1 -1
  129. package/dist/Sidebar/Sidebar.d.mts +1 -1
  130. package/dist/Sidebar/SidebarItem.cjs +1 -1
  131. package/dist/Sidebar/SidebarItem.d.cts +3 -4
  132. package/dist/Sidebar/SidebarItem.d.mts +3 -4
  133. package/dist/Sidebar/SidebarItem.mjs +1 -1
  134. package/dist/Skeleton.d.cts +1 -2
  135. package/dist/Skeleton.d.mts +1 -2
  136. package/dist/Switch.cjs +1 -1
  137. package/dist/Switch.d.cts +1 -2
  138. package/dist/Switch.d.mts +1 -2
  139. package/dist/Switch.mjs +1 -1
  140. package/dist/Table/Table.d.cts +2 -3
  141. package/dist/Table/Table.d.mts +2 -3
  142. package/dist/Table/TableBody.d.cts +1 -2
  143. package/dist/Table/TableBody.d.mts +1 -2
  144. package/dist/Table/TableCell.d.cts +1 -1
  145. package/dist/Table/TableCell.d.mts +1 -1
  146. package/dist/Table/TableContainer.d.cts +1 -3
  147. package/dist/Table/TableContainer.d.mts +1 -3
  148. package/dist/Table/TableControl.d.cts +1 -1
  149. package/dist/Table/TableControl.d.mts +1 -1
  150. package/dist/Table/TableFooter.d.cts +1 -2
  151. package/dist/Table/TableFooter.d.mts +1 -2
  152. package/dist/Table/TableHead.d.cts +1 -2
  153. package/dist/Table/TableHead.d.mts +1 -2
  154. package/dist/Table/TablePagination.d.cts +2 -2
  155. package/dist/Table/TablePagination.d.mts +2 -2
  156. package/dist/Table/TablePaginationActions.cjs +1 -1
  157. package/dist/Table/TablePaginationActions.d.cts +1 -1
  158. package/dist/Table/TablePaginationActions.d.mts +1 -1
  159. package/dist/Table/TablePaginationActions.mjs +1 -1
  160. package/dist/Table/TableRow.d.cts +1 -2
  161. package/dist/Table/TableRow.d.mts +1 -2
  162. package/dist/Table/TableSortLabel.cjs +1 -1
  163. package/dist/Table/TableSortLabel.d.cts +1 -1
  164. package/dist/Table/TableSortLabel.d.mts +1 -1
  165. package/dist/Table/TableSortLabel.mjs +1 -1
  166. package/dist/Table/hooks.d.cts +1 -1
  167. package/dist/Table/hooks.d.mts +1 -1
  168. package/dist/Table.d.cts +5 -5
  169. package/dist/Table.d.mts +5 -5
  170. package/dist/{TableContext-BeCxbtHH.d.cts → TableContext-6PgGpUzM.d.mts} +1 -1
  171. package/dist/{TableContext-BiRiYkVZ.d.mts → TableContext-CBGk-Lh8.d.cts} +1 -1
  172. package/dist/Tabs/Tab.cjs +306 -0
  173. package/dist/Tabs/Tab.d.cts +62 -0
  174. package/dist/Tabs/Tab.d.mts +62 -0
  175. package/dist/Tabs/Tab.mjs +305 -0
  176. package/dist/Tabs/TabContext.cjs +34 -0
  177. package/dist/Tabs/TabContext.d.cts +20 -0
  178. package/dist/Tabs/TabContext.d.mts +20 -0
  179. package/dist/Tabs/TabContext.mjs +33 -0
  180. package/dist/Tabs/TabList.cjs +31 -0
  181. package/dist/Tabs/TabList.d.cts +11 -0
  182. package/dist/Tabs/TabList.d.mts +11 -0
  183. package/dist/Tabs/TabList.mjs +30 -0
  184. package/dist/Tabs/TabPanel.cjs +40 -0
  185. package/dist/Tabs/TabPanel.d.cts +27 -0
  186. package/dist/Tabs/TabPanel.d.mts +27 -0
  187. package/dist/Tabs/TabPanel.mjs +38 -0
  188. package/dist/Tabs/TabScrollButton.cjs +93 -0
  189. package/dist/Tabs/TabScrollButton.d.cts +2 -0
  190. package/dist/Tabs/TabScrollButton.d.mts +2 -0
  191. package/dist/Tabs/TabScrollButton.mjs +91 -0
  192. package/dist/Tabs/Tabs.cjs +3 -0
  193. package/dist/Tabs/Tabs.d.cts +3 -0
  194. package/dist/Tabs/Tabs.d.mts +3 -0
  195. package/dist/Tabs/Tabs.mjs +2 -0
  196. package/dist/Tabs-D_wkX-Jb.cjs +645 -0
  197. package/dist/Tabs-YfCUbkQV.mjs +633 -0
  198. package/dist/Tabs.cjs +13 -0
  199. package/dist/Tabs.d.cts +8 -0
  200. package/dist/Tabs.d.mts +8 -0
  201. package/dist/Tabs.mjs +7 -0
  202. package/dist/TabsContext-C2agsLBN.d.cts +6 -0
  203. package/dist/TabsContext-DqyxdmGW.d.mts +6 -0
  204. package/dist/TabsValueContext-D40zGCpE.cjs +19 -0
  205. package/dist/TabsValueContext-DvL3inf7.mjs +8 -0
  206. package/dist/TextInput.cjs +1 -1
  207. package/dist/TextInput.d.cts +1 -2
  208. package/dist/TextInput.d.mts +1 -2
  209. package/dist/TextInput.mjs +1 -1
  210. package/dist/ToggleButton/ToggleButton.cjs +1 -1
  211. package/dist/ToggleButton/ToggleButton.d.cts +1 -1
  212. package/dist/ToggleButton/ToggleButton.d.mts +1 -1
  213. package/dist/ToggleButton/ToggleButton.mjs +1 -1
  214. package/dist/ToggleButton/ToggleButtonGroup.cjs +1 -1
  215. package/dist/ToggleButton/ToggleButtonGroup.d.cts +1 -1
  216. package/dist/ToggleButton/ToggleButtonGroup.d.mts +1 -1
  217. package/dist/ToggleButton/ToggleButtonGroup.mjs +1 -1
  218. package/dist/Typography.cjs +1 -1
  219. package/dist/Typography.d.cts +2 -2
  220. package/dist/Typography.d.mts +2 -2
  221. package/dist/Typography.mjs +1 -1
  222. package/dist/View.d.cts +1 -1
  223. package/dist/View.d.mts +1 -1
  224. package/dist/catalog.cjs +4110 -0
  225. package/dist/catalog.d.cts +90 -0
  226. package/dist/catalog.d.mts +90 -0
  227. package/dist/catalog.mjs +4109 -0
  228. package/dist/computePopoverPosition-BIprs_xo.mjs +123 -0
  229. package/dist/computePopoverPosition-DiyEOHnU.cjs +128 -0
  230. package/dist/dividerLine-BNljcGlv.cjs +66 -0
  231. package/dist/dividerLine-FahY-M6_.mjs +31 -0
  232. package/dist/engine.d.cts +1 -1
  233. package/dist/engine.d.mts +1 -1
  234. package/dist/index-B3LIhqHR.d.cts +98 -0
  235. package/dist/{index-DbEnSf2m.d.cts → index-B8DNxyEw.d.mts} +3 -4
  236. package/dist/{index-CxUsrlg1.d.cts → index-BCnKYNlZ.d.cts} +1 -2
  237. package/dist/{index-BUoVTCqX.d.mts → index-BFruxTHv.d.cts} +2 -3
  238. package/dist/{index-BSqet8aO.d.cts → index-BSA6SKao.d.mts} +2 -3
  239. package/dist/{index-CrN4MSUF.d.cts → index-BVPrG1L0.d.mts} +1 -1
  240. package/dist/{index-Celm-8iN.d.cts → index-BbgFYfX_.d.mts} +3 -4
  241. package/dist/{index-B78VkB0-.d.cts → index-Bhdn4KTy.d.cts} +2 -3
  242. package/dist/{index-Chg6pSrr.d.mts → index-BiVvxOvj.d.cts} +3 -4
  243. package/dist/index-BjPX49XA.d.mts +34 -0
  244. package/dist/{index-BB-dLv5V.d.mts → index-BjfPEP_5.d.cts} +3 -4
  245. package/dist/{index-Bid71KeF.d.cts → index-BlLH6rlE.d.cts} +2 -2
  246. package/dist/{index-Ctqajtac.d.cts → index-BqpS_Huq.d.mts} +12 -4
  247. package/dist/{index-BhibLnZ0.d.cts → index-Bxd9NOWb.d.mts} +2 -3
  248. package/dist/index-C3KrFPCj.d.mts +35 -0
  249. package/dist/{themes-RX2UX5gD.d.mts → index-CVNJEUwJ.d.mts} +217 -8
  250. package/dist/index-CWnbCxgw.d.cts +72 -0
  251. package/dist/index-Cj5Rhh_9.d.mts +72 -0
  252. package/dist/index-CoEqjFYn.d.mts +98 -0
  253. package/dist/{index-S-ClM6WM.d.mts → index-CrIxI8Na.d.mts} +2 -2
  254. package/dist/index-DBteSahY.d.cts +1 -0
  255. package/dist/index-DCmH5f9I.d.cts +72 -0
  256. package/dist/{index-VOsBSWEu.d.mts → index-DDJuUfL5.d.cts} +1 -1
  257. package/dist/{index-DdqdSOct.d.cts → index-DIC7HKpP.d.mts} +2 -3
  258. package/dist/{index-BfZuh9c2.d.mts → index-DJCpnTH3.d.mts} +2 -3
  259. package/dist/index-DQcnJ5H4.d.cts +35 -0
  260. package/dist/{index-DNwF3DUX.d.cts → index-DXhMkjQ6.d.cts} +2 -3
  261. package/dist/index-DckSub2J.d.mts +72 -0
  262. package/dist/{index-nc4Sxiy9.d.mts → index-DeDxYlSQ.d.mts} +2 -3
  263. package/dist/{themes-Kbk9h5cN.d.cts → index-DmJ7yWWi.d.cts} +214 -5
  264. package/dist/{index-Wnv6jCR3.d.mts → index-DqjXDutI.d.mts} +1 -2
  265. package/dist/{index-GpnmW6vu.d.mts → index-DrVYWt-X.d.mts} +1 -2
  266. package/dist/{index-Belxmt1X.d.cts → index-DuVNRXP4.d.cts} +1 -2
  267. package/dist/{index-smqjMLAZ.d.mts → index-IdMqR82e.d.cts} +2 -3
  268. package/dist/{index-DXvQ-JVZ.d.mts → index-XxydXX8l.d.cts} +2 -3
  269. package/dist/index-_G1osn09.d.mts +1 -0
  270. package/dist/index-gnh-Oe0n.d.cts +34 -0
  271. package/dist/{index-DO9J-Fla.d.mts → index-qlfNErNd.d.cts} +12 -4
  272. package/dist/index.d.cts +1 -2
  273. package/dist/index.d.mts +1 -2
  274. package/dist/style.cjs +1 -1
  275. package/dist/style.d.cts +2 -2
  276. package/dist/style.d.mts +2 -2
  277. package/dist/style.mjs +1 -1
  278. package/dist/surfaceSystem-BGQBoXv_.cjs +38 -0
  279. package/dist/surfaceSystem-D8TbmKy3.mjs +21 -0
  280. package/dist/theme-BxXuXRgQ.cjs +137 -0
  281. package/dist/theme-Z9_QludW.mjs +102 -0
  282. package/dist/theme.cjs +25 -24
  283. package/dist/theme.d.cts +3 -3
  284. package/dist/theme.d.mts +3 -3
  285. package/dist/theme.mjs +2 -1
  286. package/dist/{theme-CDVxig_g.mjs → themes-L-dE7_ck.mjs} +10 -110
  287. package/dist/{theme-BXlAP3xf.cjs → themes-gd6tcmqS.cjs} +0 -136
  288. package/dist/{useTablePagination-COTiNH_8.d.mts → useTablePagination-C5VKtqDp.d.cts} +1 -1
  289. package/dist/{useTablePagination-WFkaUZu8.d.cts → useTablePagination-C6LSlt3w.d.mts} +1 -1
  290. package/package.json +43 -2
  291. package/dist/Popover-DwnSLpp1.mjs +0 -253
  292. package/dist/index-B_dKjEDR.d.mts +0 -23
  293. package/dist/index-C1WqEDtQ.d.mts +0 -69
  294. package/dist/index-CA7HnbtH.d.cts +0 -21
  295. package/dist/index-CKZaErxJ.d.mts +0 -21
  296. package/dist/index-DBUwu65Z.d.cts +0 -69
  297. package/dist/index-DzQJSYIh.d.cts +0 -23
  298. package/dist/index-cuv3o-L7.d.mts +0 -34
  299. package/dist/index-nB94D7UM.d.cts +0 -34
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_src = require("./src-DU81aGy9.cjs");
3
3
  const require_View = require("./View.cjs");
4
4
  const require_themeDefault = require("./themeDefault-Cebi08Cv.cjs");
5
- const require_theme = require("./theme-BXlAP3xf.cjs");
5
+ const require_theme = require("./theme-BxXuXRgQ.cjs");
6
6
  const require_FormControlContext = require("./FormControlContext-74gvPGFk.cjs");
7
7
  const require_FormContext = require("./FormContext-BGCsWAFc.cjs");
8
8
  let react = require("react");
@@ -1,5 +1,4 @@
1
- import { T as Theme } from "./themes-Kbk9h5cN.cjs";
2
- import { s as ViewProps } from "./index-nB94D7UM.cjs";
1
+ import { Qt as ViewProps, V as Theme } from "./index-DmJ7yWWi.cjs";
3
2
  import { ReactNode } from "react";
4
3
  //#region src/FormControl/FormControl.d.ts
5
4
  interface FormControlProps extends Omit<ViewProps, 'color'> {
@@ -1,5 +1,4 @@
1
- import { T as Theme } from "./themes-RX2UX5gD.mjs";
2
- import { s as ViewProps } from "./index-cuv3o-L7.mjs";
1
+ import { Qt as ViewProps, V as Theme } from "./index-CVNJEUwJ.mjs";
3
2
  import { ReactNode } from "react";
4
3
  //#region src/FormControl/FormControl.d.ts
5
4
  interface FormControlProps extends Omit<ViewProps, 'color'> {
@@ -1,7 +1,7 @@
1
1
  import { o as styled } from "./src-DLGYOJMh.mjs";
2
2
  import { View } from "./View.mjs";
3
3
  import { t as themeDefault } from "./themeDefault-Z3KmyIbm.mjs";
4
- import { r as useTheme } from "./theme-CDVxig_g.mjs";
4
+ import { r as useTheme } from "./theme-Z9_QludW.mjs";
5
5
  import { t as FormControlContext } from "./FormControlContext-CC2kToms.mjs";
6
6
  import { t as FormContext } from "./FormContext-LrjAGe6U.mjs";
7
7
  import { useContext, useId, useMemo, useState } from "react";
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-BSqet8aO.cjs";
1
+ import { a as TypographyProps } from "./index-IdMqR82e.cjs";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/FormHelperText/FormHelperText.d.ts
4
4
  interface FormHelperTextProps extends TypographyProps {
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-smqjMLAZ.mjs";
1
+ import { a as TypographyProps } from "./index-BSA6SKao.mjs";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/FormHelperText/FormHelperText.d.ts
4
4
  interface FormHelperTextProps extends TypographyProps {
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-BSqet8aO.cjs";
1
+ import { a as TypographyProps } from "./index-IdMqR82e.cjs";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/FormLabel/FormLabel.d.ts
4
4
  interface FormLabelProps extends TypographyProps {
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-smqjMLAZ.mjs";
1
+ import { a as TypographyProps } from "./index-BSA6SKao.mjs";
2
2
  import { ReactNode } from "react";
3
3
  //#region src/FormLabel/FormLabel.d.ts
4
4
  interface FormLabelProps extends TypographyProps {
package/dist/Grid.d.cts CHANGED
@@ -1,6 +1,4 @@
1
- import { T as Theme } from "./themes-Kbk9h5cN.cjs";
2
- import "./index-DBUwu65Z.cjs";
3
- import { s as ViewProps } from "./index-nB94D7UM.cjs";
1
+ import { Qt as ViewProps, V as Theme } from "./index-DmJ7yWWi.cjs";
4
2
  import { FlexboxProps, GridProps as GridProps$1, LayoutGridProps } from "@soroush.tech/styled-system";
5
3
  //#region src/Grid/Grid.d.ts
6
4
  /** Valid values for the gap / columnGap / rowGap props - derived from theme.space keys. */
package/dist/Grid.d.mts CHANGED
@@ -1,6 +1,4 @@
1
- import { T as Theme } from "./themes-RX2UX5gD.mjs";
2
- import "./index-C1WqEDtQ.mjs";
3
- import { s as ViewProps } from "./index-cuv3o-L7.mjs";
1
+ import { Qt as ViewProps, V as Theme } from "./index-CVNJEUwJ.mjs";
4
2
  import { FlexboxProps, GridProps as GridProps$1, LayoutGridProps } from "@soroush.tech/styled-system";
5
3
  //#region src/Grid/Grid.d.ts
6
4
  /** Valid values for the gap / columnGap / rowGap props - derived from theme.space keys. */
@@ -1,6 +1,6 @@
1
1
  const require_src = require("./src-DU81aGy9.cjs");
2
2
  const require_themeDefault = require("./themeDefault-Cebi08Cv.cjs");
3
- const require_theme = require("./theme-BXlAP3xf.cjs");
3
+ const require_theme = require("./theme-BxXuXRgQ.cjs");
4
4
  require("react");
5
5
  let react_jsx_runtime = require("react/jsx-runtime");
6
6
  let _soroush_tech_styled_system_should_forward_prop = require("@soroush.tech/styled-system/should-forward-prop");
@@ -535,6 +535,15 @@ const SvgMenu = (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
535
535
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z" })
536
536
  });
537
537
  //#endregion
538
+ //#region src/Icon/icons/MoreHoriz.tsx
539
+ const SvgMoreHoriz = (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
540
+ viewBox: "0 0 24 24",
541
+ fill: "#9cff93",
542
+ xmlns: "http://www.w3.org/2000/svg",
543
+ ...props,
544
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", { d: "M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2" })
545
+ });
546
+ //#endregion
538
547
  //#region src/Icon/icons/Neurology.tsx
539
548
  const SvgNeurology = (props) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("svg", {
540
549
  viewBox: "0 -960 960 960",
@@ -764,6 +773,7 @@ const icons = {
764
773
  link: SvgLink,
765
774
  lock: SvgLock,
766
775
  menu: SvgMenu,
776
+ more_horiz: SvgMoreHoriz,
767
777
  neurology: SvgNeurology,
768
778
  psychology: SvgPsychology,
769
779
  rebase_edit: SvgRebaseEdit,
@@ -802,7 +812,7 @@ const StyledIcon = require_src.styled("svg", {
802
812
  })({ fill: "currentColor" });
803
813
  function Icon({ name, color, size, ...rest }) {
804
814
  const theme = require_theme.useTheme();
805
- const resolvedSize = size ?? theme.icon[require_themeDefault.themeDefault(theme, "iconSize", "lg")];
815
+ const resolvedSize = (typeof size === "string" && Object.hasOwn(theme.icon, size) ? theme.icon[size] : size) ?? theme.icon[require_themeDefault.themeDefault(theme, "iconSize", "lg")];
806
816
  return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(StyledIcon, {
807
817
  as: icons[name],
808
818
  color: color ?? require_themeDefault.themeDefault(theme, "accentTextColor", "primary"),
@@ -1,6 +1,6 @@
1
1
  import { a as src_exports, i as props, o as styled, t as createShouldForwardProp } from "./src-DLGYOJMh.mjs";
2
2
  import { t as themeDefault } from "./themeDefault-Z3KmyIbm.mjs";
3
- import { r as useTheme } from "./theme-CDVxig_g.mjs";
3
+ import { r as useTheme } from "./theme-Z9_QludW.mjs";
4
4
  import "react";
5
5
  import { jsx, jsxs } from "react/jsx-runtime";
6
6
  //#region src/Icon/icons/AccountTree.tsx
@@ -534,6 +534,15 @@ const SvgMenu = (props) => /* @__PURE__ */ jsx("svg", {
534
534
  children: /* @__PURE__ */ jsx("path", { d: "M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z" })
535
535
  });
536
536
  //#endregion
537
+ //#region src/Icon/icons/MoreHoriz.tsx
538
+ const SvgMoreHoriz = (props) => /* @__PURE__ */ jsx("svg", {
539
+ viewBox: "0 0 24 24",
540
+ fill: "#9cff93",
541
+ xmlns: "http://www.w3.org/2000/svg",
542
+ ...props,
543
+ children: /* @__PURE__ */ jsx("path", { d: "M6 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m12 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2m-6 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2" })
544
+ });
545
+ //#endregion
537
546
  //#region src/Icon/icons/Neurology.tsx
538
547
  const SvgNeurology = (props) => /* @__PURE__ */ jsx("svg", {
539
548
  viewBox: "0 -960 960 960",
@@ -763,6 +772,7 @@ const icons = {
763
772
  link: SvgLink,
764
773
  lock: SvgLock,
765
774
  menu: SvgMenu,
775
+ more_horiz: SvgMoreHoriz,
766
776
  neurology: SvgNeurology,
767
777
  psychology: SvgPsychology,
768
778
  rebase_edit: SvgRebaseEdit,
@@ -801,7 +811,7 @@ const StyledIcon = styled("svg", {
801
811
  })({ fill: "currentColor" });
802
812
  function Icon({ name, color, size, ...rest }) {
803
813
  const theme = useTheme();
804
- const resolvedSize = size ?? theme.icon[themeDefault(theme, "iconSize", "lg")];
814
+ const resolvedSize = (typeof size === "string" && Object.hasOwn(theme.icon, size) ? theme.icon[size] : size) ?? theme.icon[themeDefault(theme, "iconSize", "lg")];
805
815
  return /* @__PURE__ */ jsx(StyledIcon, {
806
816
  as: icons[name],
807
817
  color: color ?? themeDefault(theme, "accentTextColor", "primary"),
package/dist/Icon.cjs CHANGED
@@ -1,4 +1,4 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_Icon = require("./Icon-CI6q2Eyi.cjs");
2
+ const require_Icon = require("./Icon-Cvuhp9ek.cjs");
3
3
  exports.Icon = require_Icon.Icon;
4
4
  exports.icons = require_Icon.icons;
package/dist/Icon.d.cts CHANGED
@@ -1,2 +1,2 @@
1
- import { i as icons, n as IconProps, r as IconName, t as Icon } from "./index-Ctqajtac.cjs";
1
+ import { i as icons, n as IconProps, r as IconName, t as Icon } from "./index-qlfNErNd.cjs";
2
2
  export { Icon, type IconName, IconProps, icons };
package/dist/Icon.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { i as icons, n as IconProps, r as IconName, t as Icon } from "./index-DO9J-Fla.mjs";
1
+ import { i as icons, n as IconProps, r as IconName, t as Icon } from "./index-BqpS_Huq.mjs";
2
2
  export { Icon, type IconName, IconProps, icons };
package/dist/Icon.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import { n as icons, t as Icon } from "./Icon-CH3asUJu.mjs";
1
+ import { n as icons, t as Icon } from "./Icon-DlheCTJb.mjs";
2
2
  export { Icon, icons };
package/dist/Image.d.cts CHANGED
@@ -1,5 +1,4 @@
1
- import { T as Theme } from "./themes-Kbk9h5cN.cjs";
2
- import "./index-DBUwu65Z.cjs";
1
+ import { V as Theme } from "./index-DmJ7yWWi.cjs";
3
2
  import { CSSProperties, ImgHTMLAttributes } from "react";
4
3
  import { BackgroundProps, LayoutProps, PositionProps, SpaceProps } from "@soroush.tech/styled-system";
5
4
  //#region src/Image/Image.d.ts
package/dist/Image.d.mts CHANGED
@@ -1,5 +1,4 @@
1
- import { T as Theme } from "./themes-RX2UX5gD.mjs";
2
- import "./index-C1WqEDtQ.mjs";
1
+ import { V as Theme } from "./index-CVNJEUwJ.mjs";
3
2
  import { BackgroundProps, LayoutProps, PositionProps, SpaceProps } from "@soroush.tech/styled-system";
4
3
  import { CSSProperties, ImgHTMLAttributes } from "react";
5
4
  //#region src/Image/Image.d.ts
@@ -1,6 +1,5 @@
1
- import { T as Theme } from "./themes-Kbk9h5cN.cjs";
2
- import "./index-DBUwu65Z.cjs";
3
- import { n as ButtonColor } from "./index-BhibLnZ0.cjs";
1
+ import { V as Theme } from "./index-DmJ7yWWi.cjs";
2
+ import { n as ButtonColor } from "./index-XxydXX8l.cjs";
4
3
  import { HTMLAttributes } from "react";
5
4
  import { LayoutProps, PaddingProps, SpaceProps } from "@soroush.tech/styled-system";
6
5
  //#region src/LinearProgress/LinearProgress.d.ts
@@ -1,6 +1,5 @@
1
- import { T as Theme } from "./themes-RX2UX5gD.mjs";
2
- import "./index-C1WqEDtQ.mjs";
3
- import { n as ButtonColor } from "./index-DXvQ-JVZ.mjs";
1
+ import { V as Theme } from "./index-CVNJEUwJ.mjs";
2
+ import { n as ButtonColor } from "./index-Bxd9NOWb.mjs";
4
3
  import { LayoutProps, PaddingProps, SpaceProps } from "@soroush.tech/styled-system";
5
4
  import { HTMLAttributes } from "react";
6
5
  //#region src/LinearProgress/LinearProgress.d.ts
package/dist/Link.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_src = require("./src-DU81aGy9.cjs");
3
3
  const require_themeDefault = require("./themeDefault-Cebi08Cv.cjs");
4
- const require_theme = require("./theme-BXlAP3xf.cjs");
4
+ const require_theme = require("./theme-BxXuXRgQ.cjs");
5
5
  const require_Typography = require("./Typography.cjs");
6
6
  require("react");
7
7
  let react_jsx_runtime = require("react/jsx-runtime");
package/dist/Link.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-BSqet8aO.cjs";
1
+ import { a as TypographyProps } from "./index-IdMqR82e.cjs";
2
2
  import { AnchorHTMLAttributes } from "react";
3
3
  //#region src/Link/Link.d.ts
4
4
  type LinkUnderline = 'always' | 'hover' | 'none';
package/dist/Link.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as TypographyProps } from "./index-smqjMLAZ.mjs";
1
+ import { a as TypographyProps } from "./index-BSA6SKao.mjs";
2
2
  import { AnchorHTMLAttributes } from "react";
3
3
  //#region src/Link/Link.d.ts
4
4
  type LinkUnderline = 'always' | 'hover' | 'none';
package/dist/Link.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { o as styled } from "./src-DLGYOJMh.mjs";
2
2
  import { t as themeDefault } from "./themeDefault-Z3KmyIbm.mjs";
3
- import { r as useTheme } from "./theme-CDVxig_g.mjs";
3
+ import { r as useTheme } from "./theme-Z9_QludW.mjs";
4
4
  import { Typography } from "./Typography.mjs";
5
5
  import "react";
6
6
  import { jsx } from "react/jsx-runtime";
@@ -0,0 +1,146 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-DU81aGy9.cjs");
3
+ const require_theme = require("../theme-BxXuXRgQ.cjs");
4
+ const require_MenuList = require("../MenuList-D4imLXAa.cjs");
5
+ const require_MenuItem = require("../MenuItem-CfdN4axw.cjs");
6
+ const require_Menu_MenuItems = require("./MenuItems.cjs");
7
+ let react = require("react");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
+ //#region src/Menu/ContextMenu/ContextMenu.tsx
10
+ const ContextMenuPaper = require_src.styled(require_MenuItem.MenuPaper, {
11
+ name: "ContextMenu",
12
+ slot: "paper",
13
+ label: "ContextMenuPaper"
14
+ })();
15
+ const ContextMenuRoot = require_src.styled("div", {
16
+ name: "ContextMenu",
17
+ label: "ContextMenu"
18
+ })({ display: "contents" });
19
+ const isMenuKey = (event) => event.key === "ContextMenu" || event.key === "F10" && event.shiftKey;
20
+ /** The element given, listening for a right-click and the context-menu keys. */
21
+ function ContextMenuTarget({ element, onContextMenu, onKeyDown }) {
22
+ return (0, react.cloneElement)(element, {
23
+ onContextMenu,
24
+ onKeyDown
25
+ });
26
+ }
27
+ /**
28
+ * @description A `MenuList` opened at the pointer by a right-click over its target, or at
29
+ * the focused element by the context-menu key or Shift+F10. It is placed and closes as
30
+ * `Menu` does - Escape, a chosen row or focus leaving - and gives focus back to where it
31
+ * was. The browser's own menu is held back only when this one opens.
32
+ */
33
+ function ContextMenu({ target, children, items, onClose, onSelect, marginThreshold: marginThresholdProp, elevation: elevationProp, layer: layerProp, emptyLabel, color: colorProp, textColor: textColorProp, size: sizeProp, dense: denseProp, "aria-label": ariaLabel, className, "data-testid": dataTestid }) {
34
+ const dp = require_theme.useDefaultProps("ContextMenu");
35
+ const marginThreshold = marginThresholdProp ?? dp.marginThreshold ?? 2;
36
+ const elevation = elevationProp ?? dp.elevation ?? 8;
37
+ const layer = layerProp ?? dp.layer ?? "modal";
38
+ const color = colorProp ?? dp.color;
39
+ const textColor = textColorProp ?? dp.textColor;
40
+ const size = sizeProp ?? dp.size;
41
+ const dense = denseProp ?? dp.dense;
42
+ const theme = require_theme.useTheme();
43
+ const [point, setPoint] = (0, react.useState)(null);
44
+ const isOpen = point !== null;
45
+ const rootRef = (0, react.useRef)(null);
46
+ const surfaceRef = (0, react.useRef)(null);
47
+ const returnFocusRef = (0, react.useRef)(null);
48
+ const listId = (0, react.useId)();
49
+ const margin = Number.parseFloat(String(theme.space[marginThreshold]));
50
+ const menuContext = (0, react.useMemo)(() => ({
51
+ align: "start",
52
+ margin,
53
+ elevation,
54
+ layer
55
+ }), [
56
+ margin,
57
+ elevation,
58
+ layer
59
+ ]);
60
+ require_MenuItem.useMenuPlacement({
61
+ isOpen,
62
+ anchorRef: rootRef,
63
+ anchorPosition: point,
64
+ surfaceRef,
65
+ placement: "below",
66
+ align: "start",
67
+ margin
68
+ });
69
+ const openAt = (top, left) => {
70
+ returnFocusRef.current = document.activeElement;
71
+ setPoint({
72
+ top,
73
+ left
74
+ });
75
+ };
76
+ const close = (0, react.useCallback)((event, reason) => {
77
+ setPoint(null);
78
+ onClose?.(event, reason);
79
+ if (reason !== "blur") returnFocusRef.current.focus();
80
+ }, [onClose]);
81
+ const handleActivate = (0, react.useCallback)((_value, event) => close(event, "select"), [close]);
82
+ const handleContextMenu = (event) => {
83
+ target.props.onContextMenu?.(event);
84
+ event.preventDefault();
85
+ openAt(event.clientY, event.clientX);
86
+ };
87
+ const handleKeyDown = (event) => {
88
+ target.props.onKeyDown?.(event);
89
+ if (!isMenuKey(event)) return;
90
+ event.preventDefault();
91
+ const { bottom, left } = event.target.getBoundingClientRect();
92
+ openAt(bottom, left);
93
+ };
94
+ const handleSurfaceKeyDown = (event) => {
95
+ if (event.key === "Escape") {
96
+ event.preventDefault();
97
+ close(event, "escapeKey");
98
+ }
99
+ };
100
+ const handleBlur = (event) => {
101
+ const next = event.relatedTarget;
102
+ if (isOpen && !event.currentTarget.contains(next)) close(event, "blur");
103
+ };
104
+ const hasRows = items ? items.length > 0 : react.Children.toArray(children).length > 0;
105
+ const rows = items ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Menu_MenuItems.MenuItems, { items }) : children;
106
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(ContextMenuRoot, {
107
+ ref: rootRef,
108
+ className,
109
+ "data-testid": dataTestid,
110
+ onBlur: handleBlur,
111
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ContextMenuTarget, {
112
+ element: target,
113
+ onContextMenu: handleContextMenu,
114
+ onKeyDown: handleKeyDown
115
+ }), isOpen && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ContextMenuPaper, {
116
+ ref: surfaceRef,
117
+ elevation,
118
+ layer,
119
+ margin,
120
+ onKeyDown: handleSurfaceKeyDown,
121
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MenuItem.MenuContext.Provider, {
122
+ value: menuContext,
123
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MenuList.MenuActivationContext.Provider, {
124
+ value: handleActivate,
125
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MenuList.MenuList, {
126
+ id: listId,
127
+ "aria-label": ariaLabel,
128
+ shouldAutoFocus: true,
129
+ onSelect,
130
+ color,
131
+ textColor,
132
+ size,
133
+ dense,
134
+ width: "100%",
135
+ children: hasRows ? rows : emptyLabel != null && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_MenuItem.MenuItem, {
136
+ disabled: true,
137
+ children: emptyLabel
138
+ })
139
+ })
140
+ })
141
+ })
142
+ })]
143
+ });
144
+ }
145
+ //#endregion
146
+ exports.ContextMenu = ContextMenu;
@@ -0,0 +1,52 @@
1
+ import { V as Theme, Vt as PaperElevation } from "../index-DmJ7yWWi.cjs";
2
+ import "../index-DBteSahY.cjs";
3
+ import { t as MenuItemValue } from "../MenuListContext-vujGcRk9.cjs";
4
+ import { n as MenuItemData } from "../index-DQcnJ5H4.cjs";
5
+ import { n as MenuCloseReason } from "../index-CWnbCxgw.cjs";
6
+ import { KeyboardEvent, MouseEvent, ReactElement, ReactNode, SyntheticEvent } from "react";
7
+ //#region src/Menu/ContextMenu/ContextMenu.d.ts
8
+ interface TargetProps {
9
+ onContextMenu?: (event: MouseEvent<HTMLElement>) => void;
10
+ onKeyDown?: (event: KeyboardEvent<HTMLElement>) => void;
11
+ }
12
+ interface ContextMenuProps {
13
+ /** The element whose right-click opens the menu - the canvas, a row, a card. Its own `onContextMenu` / `onKeyDown` still run. */
14
+ target: ReactElement<TargetProps>;
15
+ /** `MenuItem` rows and `MenuDivider`s. */
16
+ children?: ReactNode;
17
+ /** The rows as data, in place of `children`. */
18
+ items?: readonly MenuItemData[];
19
+ /** Fired when the menu asks to close, with why. */
20
+ onClose?: (event: SyntheticEvent, reason: MenuCloseReason) => void;
21
+ /** Fired with a row's `value` when a row that has one is chosen. */
22
+ onSelect?: (value: MenuItemValue) => void;
23
+ /** The least room between the list and the window's edge - a `theme.space` key. Default: `2`. */
24
+ marginThreshold?: keyof Theme['space'];
25
+ /** Shadow depth of the surface. Default: `8`. */
26
+ elevation?: PaperElevation;
27
+ /** Stacking layer from `theme.zOrder`. Default: `'modal'`. */
28
+ layer?: keyof Theme['zOrder'];
29
+ /** Shown as one disabled row when the menu has no rows. Without it, the list stays empty. */
30
+ emptyLabel?: ReactNode;
31
+ /** Accent color for every row - resolves to `theme.palette[color]`. */
32
+ color?: keyof Theme['palette'];
33
+ /** Base text color for every row - resolves against `theme.text`. */
34
+ textColor?: keyof Theme['text'];
35
+ /** Density token for every row - resolves against `theme.sizes`. */
36
+ size?: keyof Theme['sizes'];
37
+ /** Compact vertical padding for every row. */
38
+ dense?: boolean;
39
+ /** Names the list. */
40
+ 'aria-label'?: string;
41
+ className?: string;
42
+ 'data-testid'?: string;
43
+ }
44
+ /**
45
+ * @description A `MenuList` opened at the pointer by a right-click over its target, or at
46
+ * the focused element by the context-menu key or Shift+F10. It is placed and closes as
47
+ * `Menu` does - Escape, a chosen row or focus leaving - and gives focus back to where it
48
+ * was. The browser's own menu is held back only when this one opens.
49
+ */
50
+ declare function ContextMenu({ target, children, items, onClose, onSelect, marginThreshold: marginThresholdProp, elevation: elevationProp, layer: layerProp, emptyLabel, color: colorProp, textColor: textColorProp, size: sizeProp, dense: denseProp, 'aria-label': ariaLabel, className, 'data-testid': dataTestid }: Readonly<ContextMenuProps>): import("react").JSX.Element;
51
+ //#endregion
52
+ export { ContextMenu, ContextMenuProps };
@@ -0,0 +1,52 @@
1
+ import { V as Theme, Vt as PaperElevation } from "../index-CVNJEUwJ.mjs";
2
+ import "../index-_G1osn09.mjs";
3
+ import { t as MenuItemValue } from "../MenuListContext-Dml16k0X.mjs";
4
+ import { n as MenuItemData } from "../index-C3KrFPCj.mjs";
5
+ import { n as MenuCloseReason } from "../index-DckSub2J.mjs";
6
+ import { KeyboardEvent, MouseEvent, ReactElement, ReactNode, SyntheticEvent } from "react";
7
+ //#region src/Menu/ContextMenu/ContextMenu.d.ts
8
+ interface TargetProps {
9
+ onContextMenu?: (event: MouseEvent<HTMLElement>) => void;
10
+ onKeyDown?: (event: KeyboardEvent<HTMLElement>) => void;
11
+ }
12
+ interface ContextMenuProps {
13
+ /** The element whose right-click opens the menu - the canvas, a row, a card. Its own `onContextMenu` / `onKeyDown` still run. */
14
+ target: ReactElement<TargetProps>;
15
+ /** `MenuItem` rows and `MenuDivider`s. */
16
+ children?: ReactNode;
17
+ /** The rows as data, in place of `children`. */
18
+ items?: readonly MenuItemData[];
19
+ /** Fired when the menu asks to close, with why. */
20
+ onClose?: (event: SyntheticEvent, reason: MenuCloseReason) => void;
21
+ /** Fired with a row's `value` when a row that has one is chosen. */
22
+ onSelect?: (value: MenuItemValue) => void;
23
+ /** The least room between the list and the window's edge - a `theme.space` key. Default: `2`. */
24
+ marginThreshold?: keyof Theme['space'];
25
+ /** Shadow depth of the surface. Default: `8`. */
26
+ elevation?: PaperElevation;
27
+ /** Stacking layer from `theme.zOrder`. Default: `'modal'`. */
28
+ layer?: keyof Theme['zOrder'];
29
+ /** Shown as one disabled row when the menu has no rows. Without it, the list stays empty. */
30
+ emptyLabel?: ReactNode;
31
+ /** Accent color for every row - resolves to `theme.palette[color]`. */
32
+ color?: keyof Theme['palette'];
33
+ /** Base text color for every row - resolves against `theme.text`. */
34
+ textColor?: keyof Theme['text'];
35
+ /** Density token for every row - resolves against `theme.sizes`. */
36
+ size?: keyof Theme['sizes'];
37
+ /** Compact vertical padding for every row. */
38
+ dense?: boolean;
39
+ /** Names the list. */
40
+ 'aria-label'?: string;
41
+ className?: string;
42
+ 'data-testid'?: string;
43
+ }
44
+ /**
45
+ * @description A `MenuList` opened at the pointer by a right-click over its target, or at
46
+ * the focused element by the context-menu key or Shift+F10. It is placed and closes as
47
+ * `Menu` does - Escape, a chosen row or focus leaving - and gives focus back to where it
48
+ * was. The browser's own menu is held back only when this one opens.
49
+ */
50
+ declare function ContextMenu({ target, children, items, onClose, onSelect, marginThreshold: marginThresholdProp, elevation: elevationProp, layer: layerProp, emptyLabel, color: colorProp, textColor: textColorProp, size: sizeProp, dense: denseProp, 'aria-label': ariaLabel, className, 'data-testid': dataTestid }: Readonly<ContextMenuProps>): import("react").JSX.Element;
51
+ //#endregion
52
+ export { ContextMenu, ContextMenuProps };