@soroush.tech/design-system 2.0.0-rc.3 → 2.0.0-rc.5

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 (583) hide show
  1. package/README.md +55 -32
  2. package/dist/Accordion/Accordion.cjs +99 -0
  3. package/dist/Accordion/Accordion.d.cts +39 -0
  4. package/dist/Accordion/Accordion.d.mts +39 -0
  5. package/dist/Accordion/Accordion.mjs +97 -0
  6. package/dist/Accordion/AccordionActions.cjs +28 -0
  7. package/dist/Accordion/AccordionActions.d.cts +10 -0
  8. package/dist/Accordion/AccordionActions.d.mts +10 -0
  9. package/dist/Accordion/AccordionActions.mjs +26 -0
  10. package/dist/Accordion/AccordionDetails.cjs +22 -0
  11. package/dist/Accordion/AccordionDetails.d.cts +10 -0
  12. package/dist/Accordion/AccordionDetails.d.mts +10 -0
  13. package/dist/Accordion/AccordionDetails.mjs +20 -0
  14. package/dist/Accordion/AccordionGroup.cjs +78 -0
  15. package/dist/Accordion/AccordionGroup.d.cts +22 -0
  16. package/dist/Accordion/AccordionGroup.d.mts +22 -0
  17. package/dist/Accordion/AccordionGroup.mjs +76 -0
  18. package/dist/Accordion/AccordionSummary.cjs +98 -0
  19. package/dist/Accordion/AccordionSummary.d.cts +19 -0
  20. package/dist/Accordion/AccordionSummary.d.mts +19 -0
  21. package/dist/Accordion/AccordionSummary.mjs +96 -0
  22. package/dist/Accordion.cjs +11 -0
  23. package/dist/Accordion.d.cts +6 -0
  24. package/dist/Accordion.d.mts +6 -0
  25. package/dist/Accordion.mjs +6 -0
  26. package/dist/AccordionContext-CBiu9CIa.mjs +14 -0
  27. package/dist/AccordionContext-CpSLhcF6.cjs +43 -0
  28. package/dist/Alert/Alert.cjs +153 -0
  29. package/dist/Alert/Alert.d.cts +35 -0
  30. package/dist/Alert/Alert.d.mts +35 -0
  31. package/dist/Alert/Alert.mjs +151 -0
  32. package/dist/Alert/AlertTitle.cjs +20 -0
  33. package/dist/Alert/AlertTitle.d.cts +10 -0
  34. package/dist/Alert/AlertTitle.d.mts +10 -0
  35. package/dist/Alert/AlertTitle.mjs +19 -0
  36. package/dist/Alert.cjs +5 -0
  37. package/dist/Alert.d.cts +3 -0
  38. package/dist/Alert.d.mts +3 -0
  39. package/dist/Alert.mjs +3 -0
  40. package/dist/AppBar.cjs +3 -4
  41. package/dist/AppBar.d.cts +1 -3
  42. package/dist/AppBar.d.mts +1 -3
  43. package/dist/AppBar.mjs +3 -4
  44. package/dist/Autocomplete.cjs +664 -0
  45. package/dist/Autocomplete.d.cts +93 -0
  46. package/dist/Autocomplete.d.mts +93 -0
  47. package/dist/Autocomplete.mjs +662 -0
  48. package/dist/Avatar.cjs +4 -5
  49. package/dist/Avatar.d.cts +1 -3
  50. package/dist/Avatar.d.mts +1 -3
  51. package/dist/Avatar.mjs +4 -5
  52. package/dist/Backdrop.cjs +2 -3
  53. package/dist/Backdrop.d.cts +1 -3
  54. package/dist/Backdrop.d.mts +1 -3
  55. package/dist/Backdrop.mjs +2 -3
  56. package/dist/Badge.cjs +129 -0
  57. package/dist/Badge.d.cts +43 -0
  58. package/dist/Badge.d.mts +43 -0
  59. package/dist/Badge.mjs +127 -0
  60. package/dist/Breadcrumbs.cjs +5 -6
  61. package/dist/Breadcrumbs.d.cts +3 -5
  62. package/dist/Breadcrumbs.d.mts +3 -5
  63. package/dist/Breadcrumbs.mjs +5 -6
  64. package/dist/Button.cjs +9 -7
  65. package/dist/Button.d.cts +1 -1
  66. package/dist/Button.d.mts +1 -1
  67. package/dist/Button.mjs +9 -7
  68. package/dist/ButtonGroup.cjs +4 -5
  69. package/dist/ButtonGroup.d.cts +1 -1
  70. package/dist/ButtonGroup.d.mts +1 -1
  71. package/dist/ButtonGroup.mjs +4 -5
  72. package/dist/{ButtonGroupContext-DS-kl9lG.mjs → ButtonGroupContext-DK9whWFt.mjs} +1 -2
  73. package/dist/{ButtonGroupContext-NtkVeDVE.cjs → ButtonGroupContext-n0wa0q6H.cjs} +1 -2
  74. package/dist/Card.cjs +5 -6
  75. package/dist/Card.d.cts +4 -6
  76. package/dist/Card.d.mts +4 -6
  77. package/dist/Card.mjs +5 -6
  78. package/dist/Checkbox.cjs +16 -7
  79. package/dist/Checkbox.d.cts +4 -4
  80. package/dist/Checkbox.d.mts +4 -4
  81. package/dist/Checkbox.mjs +16 -7
  82. package/dist/Chip.cjs +193 -0
  83. package/dist/Chip.d.cts +47 -0
  84. package/dist/Chip.d.mts +47 -0
  85. package/dist/Chip.mjs +191 -0
  86. package/dist/CircularProgress.cjs +3 -4
  87. package/dist/CircularProgress.d.cts +2 -4
  88. package/dist/CircularProgress.d.mts +2 -4
  89. package/dist/CircularProgress.mjs +3 -4
  90. package/dist/Collapse.cjs +125 -0
  91. package/dist/Collapse.d.cts +2 -0
  92. package/dist/Collapse.d.mts +2 -0
  93. package/dist/Collapse.mjs +123 -0
  94. package/dist/Drawer.cjs +3 -5
  95. package/dist/Drawer.d.cts +3 -7
  96. package/dist/Drawer.d.mts +3 -7
  97. package/dist/Drawer.mjs +3 -5
  98. package/dist/Fab.cjs +113 -0
  99. package/dist/Fab.d.cts +2 -0
  100. package/dist/Fab.d.mts +2 -0
  101. package/dist/Fab.mjs +112 -0
  102. package/dist/FabMenu/FabMenu.cjs +3 -0
  103. package/dist/FabMenu/FabMenu.d.cts +51 -0
  104. package/dist/FabMenu/FabMenu.d.mts +51 -0
  105. package/dist/FabMenu/FabMenu.mjs +1 -0
  106. package/dist/FabMenu/FabMenuItem.cjs +27 -0
  107. package/dist/FabMenu/FabMenuItem.d.cts +17 -0
  108. package/dist/FabMenu/FabMenuItem.d.mts +17 -0
  109. package/dist/FabMenu/FabMenuItem.mjs +26 -0
  110. package/dist/FabMenu-BqBhZs0S.mjs +271 -0
  111. package/dist/FabMenu-fQGSZCjr.cjs +277 -0
  112. package/dist/FabMenu.cjs +5 -0
  113. package/dist/FabMenu.d.cts +3 -0
  114. package/dist/FabMenu.d.mts +3 -0
  115. package/dist/FabMenu.mjs +3 -0
  116. package/dist/FabMenuContext-C86bOvTe.cjs +21 -0
  117. package/dist/FabMenuContext-CiCWgAmf.mjs +10 -0
  118. package/dist/Fade.cjs +16 -0
  119. package/dist/Fade.d.cts +9 -0
  120. package/dist/Fade.d.mts +9 -0
  121. package/dist/Fade.mjs +15 -0
  122. package/dist/Flex.cjs +2 -3
  123. package/dist/Flex.d.cts +1 -1
  124. package/dist/Flex.d.mts +1 -1
  125. package/dist/Flex.mjs +2 -3
  126. package/dist/FocusTrap.cjs +2 -3
  127. package/dist/FocusTrap.d.cts +0 -2
  128. package/dist/FocusTrap.d.mts +0 -2
  129. package/dist/FocusTrap.mjs +2 -3
  130. package/dist/Form.cjs +3 -4
  131. package/dist/Form.d.cts +1 -5
  132. package/dist/Form.d.mts +1 -5
  133. package/dist/Form.mjs +3 -4
  134. package/dist/{FormContext-LrjAGe6U.mjs → FormContext-BTm-7WM6.mjs} +1 -2
  135. package/dist/{FormContext-BGCsWAFc.cjs → FormContext-C2C49AJK.cjs} +1 -2
  136. package/dist/FormControl.cjs +11 -11
  137. package/dist/FormControl.d.cts +1 -7
  138. package/dist/FormControl.d.mts +1 -7
  139. package/dist/FormControl.mjs +11 -11
  140. package/dist/{FormControlContext-CC2kToms.mjs → FormControlContext-Dg_ommiF.mjs} +1 -2
  141. package/dist/{FormControlContext-74gvPGFk.cjs → FormControlContext-DvEyxrdM.cjs} +1 -2
  142. package/dist/FormHelperText.cjs +5 -6
  143. package/dist/FormHelperText.d.cts +1 -3
  144. package/dist/FormHelperText.d.mts +1 -3
  145. package/dist/FormHelperText.mjs +5 -6
  146. package/dist/FormLabel.cjs +8 -6
  147. package/dist/FormLabel.d.cts +1 -3
  148. package/dist/FormLabel.d.mts +1 -3
  149. package/dist/FormLabel.mjs +8 -6
  150. package/dist/Grid.cjs +2 -3
  151. package/dist/Grid.d.cts +1 -3
  152. package/dist/Grid.d.mts +1 -3
  153. package/dist/Grid.mjs +2 -3
  154. package/dist/Grow.cjs +20 -0
  155. package/dist/Grow.d.cts +9 -0
  156. package/dist/Grow.d.mts +9 -0
  157. package/dist/Grow.mjs +19 -0
  158. package/dist/{Icon-D-EWsBVg.cjs → Icon-C5Iz5ekp.cjs} +175 -131
  159. package/dist/{Icon-BihOAP4u.mjs → Icon-XpXU-SuF.mjs} +175 -131
  160. package/dist/Icon.cjs +1 -1
  161. package/dist/Icon.d.cts +1 -1
  162. package/dist/Icon.d.mts +1 -1
  163. package/dist/Icon.mjs +1 -2
  164. package/dist/Image.cjs +2 -3
  165. package/dist/Image.d.cts +1 -3
  166. package/dist/Image.d.mts +1 -3
  167. package/dist/Image.mjs +2 -3
  168. package/dist/LinearProgress.cjs +3 -4
  169. package/dist/LinearProgress.d.cts +2 -4
  170. package/dist/LinearProgress.d.mts +2 -4
  171. package/dist/LinearProgress.mjs +3 -4
  172. package/dist/Link.cjs +6 -7
  173. package/dist/Link.d.cts +1 -3
  174. package/dist/Link.d.mts +1 -3
  175. package/dist/Link.mjs +6 -7
  176. package/dist/Menu/ContextMenu.cjs +8 -7
  177. package/dist/Menu/ContextMenu.d.cts +8 -8
  178. package/dist/Menu/ContextMenu.d.mts +8 -8
  179. package/dist/Menu/ContextMenu.mjs +8 -7
  180. package/dist/Menu/Menu.cjs +1 -1
  181. package/dist/Menu/Menu.d.cts +1 -1
  182. package/dist/Menu/Menu.d.mts +1 -1
  183. package/dist/Menu/Menu.mjs +1 -2
  184. package/dist/Menu/MenuDivider.cjs +2 -3
  185. package/dist/Menu/MenuDivider.d.cts +0 -2
  186. package/dist/Menu/MenuDivider.d.mts +0 -2
  187. package/dist/Menu/MenuDivider.mjs +2 -3
  188. package/dist/Menu/MenuItems.cjs +2 -3
  189. package/dist/Menu/MenuItems.d.cts +1 -1
  190. package/dist/Menu/MenuItems.d.mts +1 -1
  191. package/dist/Menu/MenuItems.mjs +2 -3
  192. package/dist/Menu/MenuList.cjs +1 -1
  193. package/dist/Menu/MenuList.d.cts +2 -4
  194. package/dist/Menu/MenuList.d.mts +2 -4
  195. package/dist/Menu/MenuList.mjs +1 -2
  196. package/dist/{Menu-Cgg-sX4W.cjs → Menu-Bx9jaHOy.cjs} +10 -10
  197. package/dist/{Menu-CrzHc_cn.mjs → Menu-D4AIpdJv.mjs} +10 -10
  198. package/dist/Menu.cjs +2 -2
  199. package/dist/Menu.d.cts +3 -3
  200. package/dist/Menu.d.mts +3 -3
  201. package/dist/Menu.mjs +2 -2
  202. package/dist/{MenuItem-BTP7Ijwi.cjs → MenuItem-DXRw3Yca.cjs} +50 -97
  203. package/dist/{MenuItem-DUn4IZKK.mjs → MenuItem-vXHGPK8g.mjs} +51 -98
  204. package/dist/MenuItem.cjs +1 -1
  205. package/dist/MenuItem.d.cts +1 -1
  206. package/dist/MenuItem.d.mts +1 -1
  207. package/dist/MenuItem.mjs +1 -2
  208. package/dist/{MenuList-B7msJ1IG.mjs → MenuList-CGZgfBno.mjs} +9 -15
  209. package/dist/{MenuList-D4imLXAa.cjs → MenuList-DsJmxNPu.cjs} +9 -15
  210. package/dist/{MenuListContext-DKUOhNyw.d.cts → MenuListContext-BwgQHUu9.d.cts} +2 -4
  211. package/dist/{MenuListContext-x-7lH4CH.d.mts → MenuListContext-DbnAoUdJ.d.mts} +2 -4
  212. package/dist/{Modal-BcsyrrpH.mjs → Modal-DR4TRQSH.mjs} +11 -37
  213. package/dist/{Modal-CM3osOqj.cjs → Modal-gQcAJAKH.cjs} +11 -37
  214. package/dist/Modal.cjs +1 -1
  215. package/dist/Modal.d.cts +1 -1
  216. package/dist/Modal.d.mts +1 -1
  217. package/dist/Modal.mjs +1 -2
  218. package/dist/NativeSelect.cjs +11 -16
  219. package/dist/NativeSelect.d.cts +2 -4
  220. package/dist/NativeSelect.d.mts +2 -4
  221. package/dist/NativeSelect.mjs +11 -16
  222. package/dist/NavTree/NavGroup.cjs +93 -0
  223. package/dist/NavTree/NavGroup.d.cts +21 -0
  224. package/dist/NavTree/NavGroup.d.mts +21 -0
  225. package/dist/NavTree/NavGroup.mjs +92 -0
  226. package/dist/NavTree/NavLink.cjs +78 -0
  227. package/dist/NavTree/NavLink.d.cts +24 -0
  228. package/dist/NavTree/NavLink.d.mts +24 -0
  229. package/dist/NavTree/NavLink.mjs +76 -0
  230. package/dist/NavTree/NavTree.cjs +29 -0
  231. package/dist/NavTree/NavTree.d.cts +14 -0
  232. package/dist/NavTree/NavTree.d.mts +14 -0
  233. package/dist/NavTree/NavTree.mjs +28 -0
  234. package/dist/NavTree.cjs +7 -0
  235. package/dist/NavTree.d.cts +4 -0
  236. package/dist/NavTree.d.mts +4 -0
  237. package/dist/NavTree.mjs +4 -0
  238. package/dist/NavTreeContext-Cs0zC5hK.mjs +4 -0
  239. package/dist/NavTreeContext-DrxNyII8.cjs +8 -0
  240. package/dist/{NumberField.cjs → NumberInput.cjs} +72 -51
  241. package/dist/{NumberField.d.cts → NumberInput.d.cts} +13 -10
  242. package/dist/{NumberField.d.mts → NumberInput.d.mts} +13 -10
  243. package/dist/{NumberField.mjs → NumberInput.mjs} +72 -51
  244. package/dist/Pagination/PaginationItem.cjs +4 -5
  245. package/dist/Pagination/PaginationItem.d.cts +1 -1
  246. package/dist/Pagination/PaginationItem.d.mts +1 -1
  247. package/dist/Pagination/PaginationItem.mjs +4 -5
  248. package/dist/Pagination.cjs +3 -5
  249. package/dist/Pagination.d.cts +2 -2
  250. package/dist/Pagination.d.mts +2 -2
  251. package/dist/Pagination.mjs +3 -5
  252. package/dist/Paper.cjs +4 -5
  253. package/dist/Paper.d.cts +2 -2
  254. package/dist/Paper.d.mts +2 -2
  255. package/dist/Paper.mjs +4 -5
  256. package/dist/{Popover-CiZfgiKE.cjs → Popover-BniabG7D.cjs} +6 -8
  257. package/dist/{Popover-QjM5Z1CR.mjs → Popover-Dnmeo0Av.mjs} +6 -8
  258. package/dist/Popover.cjs +1 -1
  259. package/dist/Popover.d.cts +3 -11
  260. package/dist/Popover.d.mts +3 -11
  261. package/dist/Popover.mjs +1 -2
  262. package/dist/Portal.cjs +1 -2
  263. package/dist/Portal.d.cts +1 -17
  264. package/dist/Portal.d.mts +1 -17
  265. package/dist/Portal.mjs +1 -2
  266. package/dist/Pressable.cjs +19 -16
  267. package/dist/Pressable.d.cts +1 -1
  268. package/dist/Pressable.d.mts +1 -1
  269. package/dist/Pressable.mjs +19 -16
  270. package/dist/Quote.cjs +2 -3
  271. package/dist/Quote.d.cts +2 -4
  272. package/dist/Quote.d.mts +2 -4
  273. package/dist/Quote.mjs +2 -3
  274. package/dist/Radio.cjs +16 -7
  275. package/dist/Radio.d.cts +4 -4
  276. package/dist/Radio.d.mts +4 -4
  277. package/dist/Radio.mjs +16 -7
  278. package/dist/{InputRange.cjs → RangeInput.cjs} +48 -49
  279. package/dist/{InputRange.d.cts → RangeInput.d.cts} +11 -17
  280. package/dist/{InputRange.d.mts → RangeInput.d.mts} +11 -17
  281. package/dist/{InputRange.mjs → RangeInput.mjs} +48 -49
  282. package/dist/Rating.cjs +10 -13
  283. package/dist/Rating.d.cts +1 -3
  284. package/dist/Rating.d.mts +1 -3
  285. package/dist/Rating.mjs +10 -13
  286. package/dist/ScrollArea.cjs +265 -0
  287. package/dist/ScrollArea.d.cts +36 -0
  288. package/dist/ScrollArea.d.mts +36 -0
  289. package/dist/ScrollArea.mjs +263 -0
  290. package/dist/Select.cjs +18 -28
  291. package/dist/Select.d.cts +2 -6
  292. package/dist/Select.d.mts +2 -6
  293. package/dist/Select.mjs +18 -28
  294. package/dist/Sidebar/Sidebar.cjs +44 -28
  295. package/dist/Sidebar/Sidebar.d.cts +21 -8
  296. package/dist/Sidebar/Sidebar.d.mts +21 -8
  297. package/dist/Sidebar/Sidebar.mjs +44 -28
  298. package/dist/Sidebar/SidebarItem.cjs +81 -14
  299. package/dist/Sidebar/SidebarItem.d.cts +9 -7
  300. package/dist/Sidebar/SidebarItem.d.mts +9 -7
  301. package/dist/Sidebar/SidebarItem.mjs +81 -14
  302. package/dist/Sidebar.cjs +1 -1
  303. package/dist/Sidebar.d.cts +2 -2
  304. package/dist/Sidebar.d.mts +2 -2
  305. package/dist/Sidebar.mjs +1 -1
  306. package/dist/{SidebarContext-B1lWrt77.d.cts → SidebarContext-Bod_oUMi.d.cts} +12 -5
  307. package/dist/{SidebarContext-B1lWrt77.d.mts → SidebarContext-Bod_oUMi.d.mts} +12 -5
  308. package/dist/{SidebarContext-DgSLwjur.mjs → SidebarContext-D3bF-Q4N.mjs} +2 -2
  309. package/dist/{SidebarContext-jG6OioC-.cjs → SidebarContext-mXrB4z8v.cjs} +2 -2
  310. package/dist/Skeleton.cjs +2 -3
  311. package/dist/Skeleton.d.cts +1 -3
  312. package/dist/Skeleton.d.mts +1 -3
  313. package/dist/Skeleton.mjs +2 -3
  314. package/dist/Slide.cjs +50 -0
  315. package/dist/Slide.d.cts +15 -0
  316. package/dist/Slide.d.mts +15 -0
  317. package/dist/Slide.mjs +49 -0
  318. package/dist/Snackbar.cjs +203 -0
  319. package/dist/Snackbar.d.cts +60 -0
  320. package/dist/Snackbar.d.mts +60 -0
  321. package/dist/Snackbar.mjs +201 -0
  322. package/dist/Switch.cjs +17 -8
  323. package/dist/Switch.d.cts +4 -4
  324. package/dist/Switch.d.mts +4 -4
  325. package/dist/Switch.mjs +17 -8
  326. package/dist/Table/Table.cjs +3 -4
  327. package/dist/Table/Table.d.cts +2 -4
  328. package/dist/Table/Table.d.mts +2 -4
  329. package/dist/Table/Table.mjs +3 -4
  330. package/dist/Table/TableBody.cjs +3 -4
  331. package/dist/Table/TableBody.d.cts +1 -3
  332. package/dist/Table/TableBody.d.mts +1 -3
  333. package/dist/Table/TableBody.mjs +3 -4
  334. package/dist/Table/TableCell.cjs +5 -6
  335. package/dist/Table/TableCell.d.cts +1 -1
  336. package/dist/Table/TableCell.d.mts +1 -1
  337. package/dist/Table/TableCell.mjs +5 -6
  338. package/dist/Table/TableContainer.cjs +2 -3
  339. package/dist/Table/TableContainer.d.cts +1 -3
  340. package/dist/Table/TableContainer.d.mts +1 -3
  341. package/dist/Table/TableContainer.mjs +2 -3
  342. package/dist/Table/TableControl.cjs +1 -2
  343. package/dist/Table/TableControl.d.cts +1 -3
  344. package/dist/Table/TableControl.d.mts +1 -3
  345. package/dist/Table/TableControl.mjs +1 -2
  346. package/dist/Table/TableFooter.cjs +3 -4
  347. package/dist/Table/TableFooter.d.cts +1 -3
  348. package/dist/Table/TableFooter.d.mts +1 -3
  349. package/dist/Table/TableFooter.mjs +3 -4
  350. package/dist/Table/TableHead.cjs +3 -4
  351. package/dist/Table/TableHead.d.cts +1 -3
  352. package/dist/Table/TableHead.d.mts +1 -3
  353. package/dist/Table/TableHead.mjs +3 -4
  354. package/dist/Table/TablePagination.cjs +3 -3
  355. package/dist/Table/TablePagination.d.cts +2 -4
  356. package/dist/Table/TablePagination.d.mts +2 -4
  357. package/dist/Table/TablePagination.mjs +3 -3
  358. package/dist/Table/TablePaginationActions.cjs +4 -5
  359. package/dist/Table/TablePaginationActions.d.cts +1 -1
  360. package/dist/Table/TablePaginationActions.d.mts +1 -1
  361. package/dist/Table/TablePaginationActions.mjs +4 -5
  362. package/dist/Table/TableRow.cjs +4 -5
  363. package/dist/Table/TableRow.d.cts +1 -3
  364. package/dist/Table/TableRow.d.mts +1 -3
  365. package/dist/Table/TableRow.mjs +4 -5
  366. package/dist/Table/TableSortLabel.cjs +4 -5
  367. package/dist/Table/TableSortLabel.d.cts +1 -1
  368. package/dist/Table/TableSortLabel.d.mts +1 -1
  369. package/dist/Table/TableSortLabel.mjs +4 -5
  370. package/dist/Table/hooks.cjs +3 -6
  371. package/dist/Table/hooks.d.cts +1 -3
  372. package/dist/Table/hooks.d.mts +1 -3
  373. package/dist/Table/hooks.mjs +3 -6
  374. package/dist/Table.cjs +2 -2
  375. package/dist/Table.d.cts +5 -5
  376. package/dist/Table.d.mts +5 -5
  377. package/dist/Table.mjs +2 -2
  378. package/dist/{TableContext-DhuRf6Wy.d.mts → TableContext-0hifLOKH.d.mts} +1 -3
  379. package/dist/{TableContext-Dyr89h_k.mjs → TableContext-BBzwHtLn.mjs} +1 -2
  380. package/dist/{TableContext-Bfg1C3Sr.cjs → TableContext-CK5ALcd9.cjs} +1 -2
  381. package/dist/{TableContext-Duj1nVG7.d.cts → TableContext-fIyMD_Bj.d.cts} +1 -3
  382. package/dist/{TableSectionContext-meIG4lFZ.mjs → TableSectionContext-CT6xhPDd.mjs} +1 -2
  383. package/dist/{TableSectionContext-pYlJ-duI.cjs → TableSectionContext-D25fE10g.cjs} +1 -2
  384. package/dist/Tabs/Tab.cjs +36 -17
  385. package/dist/Tabs/Tab.d.cts +2 -4
  386. package/dist/Tabs/Tab.d.mts +2 -4
  387. package/dist/Tabs/Tab.mjs +36 -17
  388. package/dist/Tabs/TabContext.cjs +2 -3
  389. package/dist/Tabs/TabContext.d.cts +1 -3
  390. package/dist/Tabs/TabContext.d.mts +1 -3
  391. package/dist/Tabs/TabContext.mjs +2 -3
  392. package/dist/Tabs/TabList.cjs +3 -4
  393. package/dist/Tabs/TabList.d.cts +1 -3
  394. package/dist/Tabs/TabList.d.mts +1 -3
  395. package/dist/Tabs/TabList.mjs +3 -4
  396. package/dist/Tabs/TabPanel.cjs +5 -6
  397. package/dist/Tabs/TabPanel.d.cts +2 -4
  398. package/dist/Tabs/TabPanel.d.mts +2 -4
  399. package/dist/Tabs/TabPanel.mjs +5 -6
  400. package/dist/Tabs/TabScrollButton.cjs +5 -6
  401. package/dist/Tabs/TabScrollButton.d.cts +1 -1
  402. package/dist/Tabs/TabScrollButton.d.mts +1 -1
  403. package/dist/Tabs/TabScrollButton.mjs +5 -6
  404. package/dist/Tabs/Tabs.cjs +1 -1
  405. package/dist/Tabs/Tabs.d.cts +2 -2
  406. package/dist/Tabs/Tabs.d.mts +2 -2
  407. package/dist/Tabs/Tabs.mjs +1 -2
  408. package/dist/{Tabs-D4tWCq78.cjs → Tabs-BsbX0jFL.cjs} +29 -25
  409. package/dist/{Tabs-BTNOJx5v.mjs → Tabs-JvjuCU8m.mjs} +29 -25
  410. package/dist/Tabs.cjs +1 -1
  411. package/dist/Tabs.d.cts +3 -3
  412. package/dist/Tabs.d.mts +3 -3
  413. package/dist/Tabs.mjs +1 -1
  414. package/dist/{TabsContext-B_XHbjcS.d.cts → TabsContext-0ZtedNyH.d.mts} +1 -3
  415. package/dist/{TabsContext-Dn2kqUwr.d.mts → TabsContext-MpMEEVuB.d.cts} +1 -3
  416. package/dist/{TabsValueContext-DvL3inf7.mjs → TabsValueContext-C0vG9V7s.mjs} +1 -2
  417. package/dist/{TabsValueContext-D40zGCpE.cjs → TabsValueContext-DklTSPKh.cjs} +1 -2
  418. package/dist/TextInput.cjs +15 -17
  419. package/dist/TextInput.d.cts +1 -3
  420. package/dist/TextInput.d.mts +1 -3
  421. package/dist/TextInput.mjs +15 -17
  422. package/dist/ToggleButton/ToggleButton.cjs +6 -7
  423. package/dist/ToggleButton/ToggleButton.d.cts +2 -4
  424. package/dist/ToggleButton/ToggleButton.d.mts +2 -4
  425. package/dist/ToggleButton/ToggleButton.mjs +6 -7
  426. package/dist/ToggleButton/ToggleButtonGroup.cjs +5 -6
  427. package/dist/ToggleButton/ToggleButtonGroup.d.cts +2 -4
  428. package/dist/ToggleButton/ToggleButtonGroup.d.mts +2 -4
  429. package/dist/ToggleButton/ToggleButtonGroup.mjs +5 -6
  430. package/dist/ToggleButton.cjs +1 -1
  431. package/dist/ToggleButton.d.cts +1 -1
  432. package/dist/ToggleButton.d.mts +1 -1
  433. package/dist/ToggleButton.mjs +1 -1
  434. package/dist/{ToggleButtonGroupContext-DxIyy8ze.mjs → ToggleButtonGroupContext-C0owas90.mjs} +1 -2
  435. package/dist/{ToggleButtonGroupContext-10jEsQdg.d.cts → ToggleButtonGroupContext-CA-4EgZL.d.cts} +0 -2
  436. package/dist/{ToggleButtonGroupContext-10jEsQdg.d.mts → ToggleButtonGroupContext-CA-4EgZL.d.mts} +0 -2
  437. package/dist/{ToggleButtonGroupContext-Ewc5Ixas.cjs → ToggleButtonGroupContext-CHA83ShW.cjs} +1 -2
  438. package/dist/Tooltip.cjs +268 -0
  439. package/dist/Tooltip.d.cts +74 -0
  440. package/dist/Tooltip.d.mts +74 -0
  441. package/dist/Tooltip.mjs +266 -0
  442. package/dist/TransferList.cjs +17 -12
  443. package/dist/TransferList.d.cts +4 -6
  444. package/dist/TransferList.d.mts +4 -6
  445. package/dist/TransferList.mjs +17 -12
  446. package/dist/Typography.cjs +3 -4
  447. package/dist/Typography.d.cts +2 -2
  448. package/dist/Typography.d.mts +2 -2
  449. package/dist/Typography.mjs +3 -4
  450. package/dist/View.cjs +2 -3
  451. package/dist/View.d.cts +1 -1
  452. package/dist/View.d.mts +1 -1
  453. package/dist/View.mjs +2 -3
  454. package/dist/Zoom.cjs +15 -0
  455. package/dist/Zoom.d.cts +8 -0
  456. package/dist/Zoom.d.mts +8 -0
  457. package/dist/Zoom.mjs +14 -0
  458. package/dist/catalog.cjs +1081 -160
  459. package/dist/catalog.d.cts +1 -5
  460. package/dist/catalog.d.mts +1 -5
  461. package/dist/catalog.mjs +1081 -160
  462. package/dist/{computePopoverPosition-DiyEOHnU.cjs → computePopoverPosition-C2W1FcYE.cjs} +3 -6
  463. package/dist/{computePopoverPosition-BIprs_xo.mjs → computePopoverPosition-qii46Z6p.mjs} +3 -6
  464. package/dist/{dividerLine-FahY-M6_.mjs → dividerLine-BC8E38Ed.mjs} +3 -5
  465. package/dist/{dividerLine-BNljcGlv.cjs → dividerLine-DFuLn1zU.cjs} +3 -5
  466. package/dist/{emotion-BAyqVw0c.mjs → emotion-E3pBNlXd.mjs} +1 -2
  467. package/dist/{emotion-DviPkkGL.cjs → emotion-sEV-zb6P.cjs} +1 -2
  468. package/dist/engine.cjs +4 -6
  469. package/dist/engine.d.cts +2 -8
  470. package/dist/engine.d.mts +1 -7
  471. package/dist/engine.mjs +3 -5
  472. package/dist/getAnchorRel-BLYap7aE.mjs +7 -0
  473. package/dist/getAnchorRel-DFMc_uIR.cjs +12 -0
  474. package/dist/getShapeRadius-C2xXOKCl.cjs +16 -0
  475. package/dist/getShapeRadius-CdCQb8OT.d.cts +3 -0
  476. package/dist/getShapeRadius-CdCQb8OT.d.mts +3 -0
  477. package/dist/getShapeRadius-DVQRARis.mjs +11 -0
  478. package/dist/getSurfaceRadius-B1QE_VLa.mjs +5 -0
  479. package/dist/getSurfaceRadius-DwOn3ALC.cjs +10 -0
  480. package/dist/getTooltipOrigins-8b5zQafY.cjs +103 -0
  481. package/dist/getTooltipOrigins-D0bLLXwY.mjs +86 -0
  482. package/dist/index-1Xzj0iAs.d.mts +1 -0
  483. package/dist/index-323PrYLR.d.cts +1 -0
  484. package/dist/{index-nqUA_6J_.d.cts → index-4maWM1H8.d.mts} +1 -7
  485. package/dist/{index-pTNq3iQn.d.mts → index-76zijQoi.d.mts} +2 -4
  486. package/dist/index-B3Bdupj3.d.mts +34 -0
  487. package/dist/{index-DGnXJwLj.d.mts → index-BAzMLTVi.d.mts} +7 -9
  488. package/dist/{index-Bx0-6yeX.d.mts → index-BC9S8Fpr.d.cts} +1 -7
  489. package/dist/{index-CG_1uPrD.d.mts → index-BChRNCld.d.mts} +2 -4
  490. package/dist/index-BV5BvdeN.d.mts +30 -0
  491. package/dist/{index-BHKgEOZJ.d.cts → index-BXlBouWV.d.mts} +3 -5
  492. package/dist/{index-WHFhjfgy.d.cts → index-Bo45R0nD.d.cts} +14 -8
  493. package/dist/index-BuAKhHMs.d.cts +30 -0
  494. package/dist/{index-B1RFybA_.d.mts → index-Byk1_ms9.d.cts} +7 -5
  495. package/dist/{index-DAwcmIjN.d.cts → index-BzQze7eY.d.cts} +2 -4
  496. package/dist/{index-ClZyaZrR.d.mts → index-C2a-5yop.d.mts} +1 -3
  497. package/dist/{index-DtYjdBvO.d.cts → index-C2tTbEBS.d.mts} +2 -4
  498. package/dist/{index-CbFaWtjK.d.mts → index-C7EUYyom.d.cts} +2 -4
  499. package/dist/{index-Dv_fk1_F.d.cts → index-CAt0-L4i.d.cts} +26 -130
  500. package/dist/{index-h4dYtVrp.d.mts → index-CF_pl72E.d.mts} +1 -13
  501. package/dist/{index-K5exjvnX.d.cts → index-CGyIuCRh.d.cts} +1 -3
  502. package/dist/{index-BkzZxHVj.d.mts → index-CJYWGPVO.d.mts} +2 -4
  503. package/dist/{index-BGbTuHP9.d.mts → index-CKywwIep.d.mts} +1 -5
  504. package/dist/index-CLTFsCYC.d.cts +34 -0
  505. package/dist/{index-KnXhlKMr.d.cts → index-CQeTS_zL.d.cts} +1 -3
  506. package/dist/{index-CJhK7JND.d.mts → index-CR8qkP8U.d.mts} +198 -28
  507. package/dist/{index-CE5JG1us.d.mts → index-C_J58B_n.d.mts} +1 -3
  508. package/dist/{index-DchHf5cF.d.cts → index-CfB7OceY.d.cts} +1 -13
  509. package/dist/{index-YKrfFC_I.d.cts → index-Cjh607-v.d.cts} +2 -4
  510. package/dist/{index-CUz2h5xY.d.mts → index-CnVvfG9_.d.mts} +2 -4
  511. package/dist/{index-ha1WjSZ5.d.mts → index-D48qVo1X.d.mts} +26 -130
  512. package/dist/{index-BelFIizY.d.cts → index-D4PcgL-c.d.cts} +2 -6
  513. package/dist/{index-BQWjh4rK.d.mts → index-DBF5n3ey.d.cts} +3 -5
  514. package/dist/{index-CknoXDLQ.d.cts → index-DbgrItbx.d.cts} +2 -4
  515. package/dist/{index-DWjz5ZzG.d.cts → index-Dm7vQHor.d.cts} +7 -9
  516. package/dist/{index-B4TeaB7b.d.cts → index-Dt274Ngt.d.mts} +7 -5
  517. package/dist/{index-ChXeKJCk.d.cts → index-Dxu6Ks2A.d.cts} +1 -5
  518. package/dist/{index-DJ0f69wh.d.cts → index-Lsm4v8fB.d.cts} +200 -30
  519. package/dist/{index-DYF8sRE-.d.cts → index-RaDENVX_.d.cts} +2 -4
  520. package/dist/{index-bpnLB_4K.d.mts → index-SotXsXXb.d.mts} +14 -8
  521. package/dist/{index-ByYxVl9O.d.mts → index-UiyZAKID.d.mts} +2 -6
  522. package/dist/index-UloRwym_.d.cts +16 -0
  523. package/dist/index-UloRwym_.d.mts +16 -0
  524. package/dist/{index-BrgwkY6z.d.mts → index-hoHPfsc1.d.cts} +3 -7
  525. package/dist/{index-CQfJZADG.d.cts → index-tOrd12AJ.d.mts} +3 -7
  526. package/dist/index.cjs +1 -1
  527. package/dist/index.d.cts +1 -1
  528. package/dist/index.d.mts +1 -1
  529. package/dist/index.mjs +1 -2
  530. package/dist/inputVariantStyles-DCGRUY9c.mjs +42 -0
  531. package/dist/inputVariantStyles-DhClkDHY.cjs +59 -0
  532. package/dist/{isRtl-BJDtm86G.mjs → isRtl-DN-EdUlg.mjs} +1 -2
  533. package/dist/{isRtl-DTkYHRPo.cjs → isRtl-Dl6QQWib.cjs} +1 -2
  534. package/dist/{precision-B58cTPB2.cjs → precision-DbF9gToz.cjs} +1 -2
  535. package/dist/{precision-B1lhxnnO.mjs → precision-DrmFmgMd.mjs} +1 -2
  536. package/dist/{rolldown-runtime-BloeesfJ.cjs → rolldown-runtime-CiKaZLfC.cjs} +1 -2
  537. package/dist/{src-DLGYOJMh.mjs → src-B-rNjHIL.mjs} +3 -6
  538. package/dist/{src-DU81aGy9.cjs → src-yC1f5WR2.cjs} +3 -5
  539. package/dist/style.cjs +4 -7
  540. package/dist/style.d.cts +2 -8
  541. package/dist/style.d.mts +2 -8
  542. package/dist/style.mjs +5 -8
  543. package/dist/{surfaceSystem-D8TbmKy3.mjs → surfaceSystem-4XDqbvf4.mjs} +3 -5
  544. package/dist/{surfaceSystem-BGQBoXv_.cjs → surfaceSystem-DI6bqK5F.cjs} +3 -5
  545. package/dist/testing.cjs +1 -2
  546. package/dist/testing.d.cts +0 -2
  547. package/dist/testing.d.mts +0 -2
  548. package/dist/testing.mjs +1 -2
  549. package/dist/{theme-Z9_QludW.mjs → theme-DyyZQFzQ.mjs} +8 -14
  550. package/dist/{theme-BxXuXRgQ.cjs → theme-XJvMdOnY.cjs} +7 -13
  551. package/dist/theme.cjs +4 -3
  552. package/dist/theme.d.cts +3 -3
  553. package/dist/theme.d.mts +3 -3
  554. package/dist/theme.mjs +4 -4
  555. package/dist/{themeDefault-Z3KmyIbm.mjs → themeDefault-BeZJzqJj.mjs} +1 -2
  556. package/dist/{themeDefault-Cebi08Cv.cjs → themeDefault-DbPHBbNO.cjs} +1 -2
  557. package/dist/{themes-gd6tcmqS.cjs → themes-C2oyu8gK.cjs} +28 -8
  558. package/dist/{themes-L-dE7_ck.mjs → themes-D-knykK0.mjs} +23 -9
  559. package/dist/tonalRadius-CU9GHoHx.cjs +9 -0
  560. package/dist/tonalRadius-CvXRueqT.mjs +4 -0
  561. package/dist/useAnchoredPlacement-COrXZxhm.mjs +105 -0
  562. package/dist/useAnchoredPlacement-ee6KzG3t.cjs +110 -0
  563. package/dist/{useControlled-CBRLsO-H.mjs → useControlled-B4uQ9Bj6.mjs} +1 -2
  564. package/dist/{useControlled-C666KpQ0.cjs → useControlled-CzCxM4J3.cjs} +1 -2
  565. package/dist/useMergedRefs-BtctsnmX.cjs +26 -0
  566. package/dist/useMergedRefs-CdfwtmUd.mjs +21 -0
  567. package/dist/{useTablePagination-D-39ZmQh.d.mts → useTablePagination-BlD8mK8k.d.mts} +1 -5
  568. package/dist/{useTablePagination-C-u3ru4N.d.cts → useTablePagination-CGjb_jPX.d.cts} +1 -5
  569. package/dist/useTransition-3EoagwIe.d.mts +40 -0
  570. package/dist/useTransition-B0V2fAq5.cjs +82 -0
  571. package/dist/useTransition-C89K0mS7.d.cts +40 -0
  572. package/dist/useTransition-CWxiEqtC.mjs +77 -0
  573. package/dist/useTransitionChild-CFhlMm65.mjs +48 -0
  574. package/dist/useTransitionChild-COlRozbU.cjs +53 -0
  575. package/dist/utils.cjs +4 -8
  576. package/dist/utils.d.cts +0 -8
  577. package/dist/utils.d.mts +0 -8
  578. package/dist/utils.mjs +4 -8
  579. package/package.json +192 -32
  580. package/dist/index-BxVTIMnB.d.cts +0 -1
  581. package/dist/index-DaIIo5QU.d.mts +0 -1
  582. package/dist/inputVariantStyles-BBkkYQtE.cjs +0 -32
  583. package/dist/inputVariantStyles-CcqpGfuP.mjs +0 -28
package/README.md CHANGED
@@ -91,22 +91,27 @@ import { catalog } from '@soroush.tech/design-system/catalog'
91
91
 
92
92
  SSR critical-CSS extraction (e.g. with `@emotion/server`) is a separate, opt-in concern most apps never need - that's what `CacheProvider` and its paired `styleCache` instance are for.
93
93
 
94
+ Under a strict Content Security Policy, bring your own cache with the response's nonce - `createCache({ key: 'app', nonce })` from `@emotion/cache`, given to `CacheProvider` above `ThemeProvider` - and every style tag the engine inserts carries it. The shipped `styleCache` has no nonce.
95
+
96
+ The Emotion packages are regular dependencies of this package, not peers, on purpose: nothing of Emotion is on the public surface, so an app installs nothing extra and has no version to keep in step. An app that brings its own `@emotion/react` of another major gets two copies - the components keep working, as they style through their own copy and `ThemeProvider` - at the cost of the duplicate in the bundle and Emotion's one-time development warning.
97
+
94
98
  ---
95
99
 
96
100
  ## Component inventory
97
101
 
98
102
  ### Layout & surfaces
99
103
 
100
- | Component | Purpose |
101
- | --------- | ------------------------------------------------- |
102
- | `View` | Styled `div` primitive - the base building block |
103
- | `Flex` | `View` with flexbox defaults |
104
- | `Grid` | CSS grid container |
105
- | `Paper` | Elevated surface with background and shadow |
106
- | `Card` | Content container built on `Paper` |
107
- | `Quote` | Bordered quote / terminal-panel surface on `View` |
108
- | `AppBar` | Top application bar |
109
- | `Drawer` | Slide-in side panel |
104
+ | Component | Purpose |
105
+ | ------------ | ----------------------------------------------------------------------- |
106
+ | `ScrollArea` | A scrolling area with scrollbars drawn over its content, shown on hover |
107
+ | `View` | Styled `div` primitive - the base building block |
108
+ | `Flex` | `View` with flexbox defaults |
109
+ | `Grid` | CSS grid container |
110
+ | `Paper` | Elevated surface with background and shadow |
111
+ | `Card` | Content container built on `Paper` |
112
+ | `Quote` | Bordered quote / terminal-panel surface on `View` |
113
+ | `AppBar` | Top application bar |
114
+ | `Drawer` | Slide-in side panel |
110
115
 
111
116
  ### Content & data display
112
117
 
@@ -118,17 +123,20 @@ SSR critical-CSS extraction (e.g. with `@emotion/server`) is a separate, opt-in
118
123
  | `Image` | Image with styled-system props |
119
124
  | `Avatar` | User/entity avatar |
120
125
  | `Table` | Compound data table - exports `TableContainer`, `TableHead`, `TableBody`, `TableFooter`, `TableRow`, `TableCell`, `TablePagination`, `TablePaginationActions`, `TableSortLabel`, and `TableControl` from `@soroush.tech/design-system/Table` |
126
+ | `Accordion` | A heading that opens and closes a region - exports `AccordionSummary`, `AccordionDetails`, `AccordionActions` and `AccordionGroup` from `@soroush.tech/design-system/Accordion` |
121
127
 
122
128
  ### Inputs & forms
123
129
 
124
130
  | Component | Purpose |
125
131
  | ---------------------------------------------------- | ----------------------------------------------------------------------------------------- |
132
+ | `Autocomplete` | A field whose text finds an option in a list - one, several as chips, or free text |
133
+ | `Fab` | A floating action button: the one main action of a page, circular or extended |
126
134
  | `Button`, `ButtonGroup`, `ToggleButton` | Actions and toggles |
127
135
  | `TextInput` | Text field |
128
136
  | `Checkbox`, `Radio`, `Switch` | Selection controls |
129
- | `InputRange` | A slider - one value on a range, or two or more thumbs for a range of values |
137
+ | `RangeInput` | A slider - one value on a range, or two or more thumbs for a range of values |
130
138
  | `TransferList` | Two lists and the buttons that move the checked items from one to the other |
131
- | `NumberField` | A field for a number - read in its locale, clamped to a range, stepped by keys or buttons |
139
+ | `NumberInput` | A field for a number - read in its locale, clamped to a range, stepped by keys or buttons |
132
140
  | `Rating` | A row of icons the user sets as a rating, or a read-only display of one |
133
141
  | `NativeSelect` | Low-level platform `<select>` - not recommended; use `Select native` |
134
142
  | `Select` | The select to use - custom listbox, or `native` for the platform picker |
@@ -140,27 +148,41 @@ SSR critical-CSS extraction (e.g. with `@emotion/server`) is a separate, opt-in
140
148
 
141
149
  | Component | Purpose |
142
150
  | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
151
+ | `NavTree` | A tree of links to the pages of a site - groups of links, which can fold |
143
152
  | `Breadcrumbs` | The trail of links from a site's root to the current page - a long one collapses behind a button that shows it all |
144
153
  | `Menu` | A trigger and the list of commands it opens - exports `MenuList` (the `role="menu"` list that owns the keyboard), `MenuDivider`, `MenuItems` (rows from data) and `ContextMenu` (the same list, opened at the pointer by a right-click) from `@soroush.tech/design-system/Menu` |
145
154
  | `Tabs` | A row of tabs - exports `Tab`, `TabContext` (holds the value for a `TabList` and its panels), `TabList` (the `Tabs` of a `TabContext`), `TabPanel` (the content a tab shows) and `TabScrollButton` from `@soroush.tech/design-system/Tabs` |
146
155
 
147
156
  ### Feedback
148
157
 
149
- | Component | Purpose |
150
- | ------------------------------------ | ---------------------------------------------- |
151
- | `CircularProgress`, `LinearProgress` | Determinate/indeterminate progress indicators |
152
- | `Skeleton` | Loading placeholder with pulse/wave animations |
153
- | `Backdrop` | Dimmed overlay behind modal surfaces |
158
+ | Component | Purpose |
159
+ | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- |
160
+ | `FabMenu` | A fab that opens a stack of actions from the corner of a page |
161
+ | `Snackbar` | A transient message in a corner of the window, with auto-hide and an action |
162
+ | `Alert` | An inline message with a severity, an icon, a title and an action - exports `AlertTitle` from `@soroush.tech/design-system/Alert` |
163
+ | `Badge` | A count or a dot anchored over another element |
164
+ | `Chip` | A compact tag: a label, an icon or avatar, a click and a delete |
165
+ | `CircularProgress`, `LinearProgress` | Determinate/indeterminate progress indicators |
166
+ | `Skeleton` | Loading placeholder with pulse/wave animations |
167
+ | `Backdrop` | Dimmed overlay behind modal surfaces |
168
+
169
+ ### Transitions
170
+
171
+ | Component | Purpose |
172
+ | ------------------------------- | ------------------------------------------------------------------ |
173
+ | `Collapse` | Opens and closes its content by its height, or its width |
174
+ | `Fade`, `Grow`, `Slide`, `Zoom` | Show and hide one child by opacity, scale, an edge or from nothing |
154
175
 
155
176
  ### Overlay & behavior primitives
156
177
 
157
- | Component | Purpose |
158
- | --------------- | ---------------------------------------------------------------- |
159
- | `Portal` | Renders children into a DOM node outside the parent hierarchy |
160
- | `FocusTrap` | Keeps focus inside a subtree |
161
- | `Modal` | Dialog primitive composing `Portal`, `Backdrop`, and `FocusTrap` |
162
- | `Popover` | Anchored floating surface built on `Modal` |
163
- | `ThemeProvider` | Supplies the theme and global styles to the app |
178
+ | Component | Purpose |
179
+ | --------------- | ----------------------------------------------------------------------------------- |
180
+ | `Tooltip` | A short description of one element, shown on hover, keyboard focus and a long touch |
181
+ | `Portal` | Renders children into a DOM node outside the parent hierarchy |
182
+ | `FocusTrap` | Keeps focus inside a subtree |
183
+ | `Modal` | Dialog primitive composing `Portal`, `Backdrop`, and `FocusTrap` |
184
+ | `Popover` | Anchored floating surface built on `Modal` |
185
+ | `ThemeProvider` | Supplies the theme and global styles to the app |
164
186
 
165
187
  ---
166
188
 
@@ -168,14 +190,14 @@ SSR critical-CSS extraction (e.g. with `@emotion/server`) is a separate, opt-in
168
190
 
169
191
  Components never hardcode colors or sizes - props resolve against scales on the `Theme` object:
170
192
 
171
- | Group | Scales |
172
- | ------------------ | ------------------------------------------------------------------------------------------------------ |
173
- | Color | `palette` (main/light/dark/contrastText per color) · `text` · `background` · `border` · `colorScheme` |
174
- | Typography | `typography` (variant map) · `fonts` · `fontSizes` · `fontWeights` · `lineHeights` · `letterSpacings` |
175
- | Space & shape | `space` · `sizes` · `radii` · `borderWidths` · `shadows` |
176
- | Layout | `breakpoints` (xs/sm/md/lg/xl window classes) · `layout` (columns, margins, panels, top bar per class) |
177
- | Component scales | `avatar` (size steps) · `skeleton` (wave highlight) |
178
- | Layering & effects | `zOrder` (appBar/drawer/modal) · `blur` · `logoFilter` · `portraitBlend` · `portraitOpacity` |
193
+ | Group | Scales |
194
+ | ------------------ | ------------------------------------------------------------------------------------------------------------- |
195
+ | Color | `palette` (main/light/dark/contrastText per color) · `text` · `background` · `border` · `colorScheme` |
196
+ | Typography | `typography` (variant map) · `fonts` · `fontSizes` · `fontWeights` · `lineHeights` · `letterSpacings` |
197
+ | Space & shape | `space` · `sizes` · `radii` · `borderWidths` · `shadows` |
198
+ | Layout | `breakpoints` (xs/sm/md/lg/xl window classes) · `layout` (columns, margins, panels, top bar per class) |
199
+ | Component scales | `avatar` (size steps) · `skeleton` (wave highlight) |
200
+ | Layering & effects | `zOrder` (appBar/drawer/modal/snackbar/tooltip) · `blur` · `logoFilter` · `portraitBlend` · `portraitOpacity` |
179
201
 
180
202
  Prop types are derived from the interface (`keyof Theme['text']`), so adding a token to `themes.ts` propagates everywhere automatically. See [`design-system.md`](./design-system.md) for the full scale table and the palette rules.
181
203
 
@@ -233,6 +255,7 @@ Components carry visible literal fallbacks (`size = 'md'`, `variant = 'outside'`
233
255
  | `borderRadius` / `surfaceRadius` | `'md'` / `'sq'` | grouped controls / surfaces |
234
256
  | `avatarSize` / `borderColor` / `borderWidth` | `'md'` / `'primary'` / `'thin'` | avatars and rings |
235
257
  | `iconSize` | `'lg'` | Icon default glyph size (`theme.icon`) |
258
+ | `inputMinWidth` | `'12rem'` | least width of an input not full width |
236
259
  | `buttonVariant` / `switchVariant` | `'contained'` / `'outside'` | Button / Switch visual variants |
237
260
  | `inputVariant` | `'default'` | TextInput, Select, NativeSelect frames |
238
261
  | `avatarVariant` / `cardVariant` | `'circular'` / `'paper'` | Avatar shape / Card treatment |
@@ -0,0 +1,99 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-yC1f5WR2.cjs");
3
+ const require_theme = require("../theme-XJvMdOnY.cjs");
4
+ const require_themeDefault = require("../themeDefault-DbPHBbNO.cjs");
5
+ const require_getSurfaceRadius = require("../getSurfaceRadius-DwOn3ALC.cjs");
6
+ const require_Collapse = require("../Collapse.cjs");
7
+ const require_useControlled = require("../useControlled-CzCxM4J3.cjs");
8
+ const require_AccordionContext = require("../AccordionContext-CpSLhcF6.cjs");
9
+ let react = require("react");
10
+ let react_jsx_runtime = require("react/jsx-runtime");
11
+ let _soroush_tech_styled_system_should_forward_prop = require("@soroush.tech/styled-system/should-forward-prop");
12
+ // src/Accordion/Accordion/Accordion.tsx
13
+ const AccordionRoot = require_src.styled("div", {
14
+ name: "Accordion",
15
+ label: "Accordion",
16
+ shouldForwardProp: (0, _soroush_tech_styled_system_should_forward_prop.createShouldForwardProp)([
17
+ ..._soroush_tech_styled_system_should_forward_prop.props,
18
+ "borderRadius",
19
+ "bg",
20
+ "textColor"
21
+ ]),
22
+ systemProps: [require_src.src_exports.space]
23
+ })(({ theme, borderRadius, bg, textColor }) => ({
24
+ overflow: "hidden",
25
+ backgroundColor: (0, require_src.src_exports.get)(theme, `background.${bg ?? require_themeDefault.themeDefault(theme, "surfaceBg", "paper")}`),
26
+ color: (0, require_src.src_exports.get)(theme, `text.${textColor ?? require_themeDefault.themeDefault(theme, "textColor", "initial")}`),
27
+ border: `${theme.borderWidths.thin} solid ${(0, require_src.src_exports.get)(theme, "border.default")}`,
28
+ borderRadius: require_getSurfaceRadius.getSurfaceRadius(theme, borderRadius)
29
+ }));
30
+ const AccordionRegion = require_src.styled("div", {
31
+ name: "Accordion",
32
+ slot: "region",
33
+ label: "AccordionRegion"
34
+ })({});
35
+ /**
36
+ * @description A heading that opens and closes a region. The first child is the
37
+ * `AccordionSummary`, a button in a heading; the rest is the region it opens - a
38
+ * `role="region"` named by the summary, which in turn `aria-expanded` and `aria-controls` it.
39
+ * Open or closed it owns, until `isExpanded` takes it over. In an `AccordionGroup` the arrows,
40
+ * Home and End move between the summaries, and the group may keep one open at a time.
41
+ */
42
+ function Accordion({ children, isExpanded: isExpandedProp, defaultExpanded = false, onChange, disabled = false, hasGutters: hasGuttersProp, borderRadius: borderRadiusProp, bg: bgProp, textColor: textColorProp, transition: Transition = require_Collapse.Collapse, className, "data-testid": dataTestid, ...spaceProps }) {
43
+ const dp = require_theme.useDefaultProps("Accordion");
44
+ const hasGutters = hasGuttersProp ?? dp.hasGutters ?? true;
45
+ const borderRadius = borderRadiusProp ?? dp.borderRadius;
46
+ const bg = bgProp ?? dp.bg;
47
+ const textColor = textColorProp ?? dp.textColor;
48
+ const baseId = (0, react.useId)();
49
+ const group = (0, react.useContext)(require_AccordionContext.AccordionGroupContext);
50
+ const [ownExpanded, setOwnExpanded] = require_useControlled.useControlled({
51
+ controlled: isExpandedProp,
52
+ default: defaultExpanded
53
+ });
54
+ const isInGroup = group?.isExclusive && group.openId !== void 0;
55
+ const isExpanded = isExpandedProp ?? (isInGroup ? group.openId === baseId : ownExpanded);
56
+ const context = (0, react.useMemo)(() => ({
57
+ baseId,
58
+ isExpanded,
59
+ disabled,
60
+ hasGutters,
61
+ toggle: (event) => {
62
+ const next = !isExpanded;
63
+ setOwnExpanded(next);
64
+ group?.setOpenId(next ? baseId : null);
65
+ onChange?.(event, next);
66
+ }
67
+ }), [
68
+ baseId,
69
+ isExpanded,
70
+ disabled,
71
+ hasGutters,
72
+ setOwnExpanded,
73
+ group,
74
+ onChange
75
+ ]);
76
+ const [summary, ...region] = react.Children.toArray(children);
77
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_AccordionContext.AccordionContext.Provider, {
78
+ value: context,
79
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(AccordionRoot, {
80
+ borderRadius,
81
+ bg,
82
+ textColor,
83
+ className,
84
+ "data-testid": dataTestid,
85
+ ...spaceProps,
86
+ children: [summary, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Transition, {
87
+ isShown: isExpanded,
88
+ shouldAppear: false,
89
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(AccordionRegion, {
90
+ role: "region",
91
+ id: require_AccordionContext.getRegionId(baseId),
92
+ "aria-labelledby": require_AccordionContext.getSummaryId(baseId),
93
+ children: region
94
+ })
95
+ })]
96
+ })
97
+ });
98
+ }
99
+ exports.Accordion = Accordion;
@@ -0,0 +1,39 @@
1
+ import { nt as Theme } from "../index-Lsm4v8fB.cjs";
2
+ import { r as CollapseProps } from "../index-CLTFsCYC.cjs";
3
+ import { ComponentType, ReactNode, SyntheticEvent } from "react";
4
+ import { SpaceProps } from "@soroush.tech/styled-system";
5
+ /** What an `Accordion` hands the transition that opens and closes its region. */
6
+ type AccordionTransitionProps = Pick<CollapseProps, 'isShown' | 'children' | 'shouldAppear' | 'shouldMountOnEnter' | 'shouldUnmountOnExit' | 'timeout' | 'easing'>;
7
+ interface AccordionProps extends SpaceProps<Theme> {
8
+ /** An `AccordionSummary`, then what it opens - `AccordionDetails`, `AccordionActions`. */
9
+ children: ReactNode;
10
+ /** Whether it is open. Controlled with `onChange`. */
11
+ isExpanded?: boolean;
12
+ /** Whether it is open at first, when uncontrolled. Default: `false`. */
13
+ defaultExpanded?: boolean;
14
+ /** Fired when the summary is pressed, with the state it asks for. */
15
+ onChange?: (event: SyntheticEvent, isExpanded: boolean) => void;
16
+ /** Stays as it is, and its summary is off. Default: `false`. */
17
+ disabled?: boolean;
18
+ /** Side padding on the summary, the details and the actions. Default: `true`. */
19
+ hasGutters?: boolean;
20
+ /** Corner radius, resolves against `theme.radii`. Default: `theme.defaults.surfaceRadius`, else square. */
21
+ borderRadius?: keyof Theme['radii'];
22
+ /** Background, resolves against `theme.background`. Default: `'paper'`. */
23
+ bg?: keyof Theme['background'];
24
+ /** Text color, resolves against `theme.text`. Default: `theme.defaults.textColor`, else `'initial'`. */
25
+ textColor?: keyof Theme['text'];
26
+ /** The transition that opens and closes the region. Default: `Collapse`. */
27
+ transition?: ComponentType<AccordionTransitionProps>;
28
+ className?: string;
29
+ 'data-testid'?: string;
30
+ }
31
+ /**
32
+ * @description A heading that opens and closes a region. The first child is the
33
+ * `AccordionSummary`, a button in a heading; the rest is the region it opens - a
34
+ * `role="region"` named by the summary, which in turn `aria-expanded` and `aria-controls` it.
35
+ * Open or closed it owns, until `isExpanded` takes it over. In an `AccordionGroup` the arrows,
36
+ * Home and End move between the summaries, and the group may keep one open at a time.
37
+ */
38
+ declare function Accordion({ children, isExpanded: isExpandedProp, defaultExpanded, onChange, disabled, hasGutters: hasGuttersProp, borderRadius: borderRadiusProp, bg: bgProp, textColor: textColorProp, transition: Transition, className, 'data-testid': dataTestid, ...spaceProps }: Readonly<AccordionProps>): import("react").JSX.Element;
39
+ export { Accordion, AccordionProps, AccordionTransitionProps };
@@ -0,0 +1,39 @@
1
+ import { nt as Theme } from "../index-CR8qkP8U.mjs";
2
+ import { r as CollapseProps } from "../index-B3Bdupj3.mjs";
3
+ import { SpaceProps } from "@soroush.tech/styled-system";
4
+ import { ComponentType, ReactNode, SyntheticEvent } from "react";
5
+ /** What an `Accordion` hands the transition that opens and closes its region. */
6
+ type AccordionTransitionProps = Pick<CollapseProps, 'isShown' | 'children' | 'shouldAppear' | 'shouldMountOnEnter' | 'shouldUnmountOnExit' | 'timeout' | 'easing'>;
7
+ interface AccordionProps extends SpaceProps<Theme> {
8
+ /** An `AccordionSummary`, then what it opens - `AccordionDetails`, `AccordionActions`. */
9
+ children: ReactNode;
10
+ /** Whether it is open. Controlled with `onChange`. */
11
+ isExpanded?: boolean;
12
+ /** Whether it is open at first, when uncontrolled. Default: `false`. */
13
+ defaultExpanded?: boolean;
14
+ /** Fired when the summary is pressed, with the state it asks for. */
15
+ onChange?: (event: SyntheticEvent, isExpanded: boolean) => void;
16
+ /** Stays as it is, and its summary is off. Default: `false`. */
17
+ disabled?: boolean;
18
+ /** Side padding on the summary, the details and the actions. Default: `true`. */
19
+ hasGutters?: boolean;
20
+ /** Corner radius, resolves against `theme.radii`. Default: `theme.defaults.surfaceRadius`, else square. */
21
+ borderRadius?: keyof Theme['radii'];
22
+ /** Background, resolves against `theme.background`. Default: `'paper'`. */
23
+ bg?: keyof Theme['background'];
24
+ /** Text color, resolves against `theme.text`. Default: `theme.defaults.textColor`, else `'initial'`. */
25
+ textColor?: keyof Theme['text'];
26
+ /** The transition that opens and closes the region. Default: `Collapse`. */
27
+ transition?: ComponentType<AccordionTransitionProps>;
28
+ className?: string;
29
+ 'data-testid'?: string;
30
+ }
31
+ /**
32
+ * @description A heading that opens and closes a region. The first child is the
33
+ * `AccordionSummary`, a button in a heading; the rest is the region it opens - a
34
+ * `role="region"` named by the summary, which in turn `aria-expanded` and `aria-controls` it.
35
+ * Open or closed it owns, until `isExpanded` takes it over. In an `AccordionGroup` the arrows,
36
+ * Home and End move between the summaries, and the group may keep one open at a time.
37
+ */
38
+ declare function Accordion({ children, isExpanded: isExpandedProp, defaultExpanded, onChange, disabled, hasGutters: hasGuttersProp, borderRadius: borderRadiusProp, bg: bgProp, textColor: textColorProp, transition: Transition, className, 'data-testid': dataTestid, ...spaceProps }: Readonly<AccordionProps>): import("react").JSX.Element;
39
+ export { Accordion, AccordionProps, AccordionTransitionProps };
@@ -0,0 +1,97 @@
1
+ import { a as src_exports, i as props, o as styled, t as createShouldForwardProp } from "../src-B-rNjHIL.mjs";
2
+ import { n as useDefaultProps } from "../theme-DyyZQFzQ.mjs";
3
+ import { t as themeDefault } from "../themeDefault-BeZJzqJj.mjs";
4
+ import { t as getSurfaceRadius } from "../getSurfaceRadius-B1QE_VLa.mjs";
5
+ import { Collapse } from "../Collapse.mjs";
6
+ import { t as useControlled } from "../useControlled-B4uQ9Bj6.mjs";
7
+ import { i as getSummaryId, n as AccordionGroupContext, r as getRegionId, t as AccordionContext } from "../AccordionContext-CBiu9CIa.mjs";
8
+ import { Children, useContext, useId, useMemo } from "react";
9
+ import { jsx, jsxs } from "react/jsx-runtime";
10
+ // src/Accordion/Accordion/Accordion.tsx
11
+ const AccordionRoot = styled("div", {
12
+ name: "Accordion",
13
+ label: "Accordion",
14
+ shouldForwardProp: createShouldForwardProp([
15
+ ...props,
16
+ "borderRadius",
17
+ "bg",
18
+ "textColor"
19
+ ]),
20
+ systemProps: [src_exports.space]
21
+ })(({ theme, borderRadius, bg, textColor }) => ({
22
+ overflow: "hidden",
23
+ backgroundColor: (0, src_exports.get)(theme, `background.${bg ?? themeDefault(theme, "surfaceBg", "paper")}`),
24
+ color: (0, src_exports.get)(theme, `text.${textColor ?? themeDefault(theme, "textColor", "initial")}`),
25
+ border: `${theme.borderWidths.thin} solid ${(0, src_exports.get)(theme, "border.default")}`,
26
+ borderRadius: getSurfaceRadius(theme, borderRadius)
27
+ }));
28
+ const AccordionRegion = styled("div", {
29
+ name: "Accordion",
30
+ slot: "region",
31
+ label: "AccordionRegion"
32
+ })({});
33
+ /**
34
+ * @description A heading that opens and closes a region. The first child is the
35
+ * `AccordionSummary`, a button in a heading; the rest is the region it opens - a
36
+ * `role="region"` named by the summary, which in turn `aria-expanded` and `aria-controls` it.
37
+ * Open or closed it owns, until `isExpanded` takes it over. In an `AccordionGroup` the arrows,
38
+ * Home and End move between the summaries, and the group may keep one open at a time.
39
+ */
40
+ function Accordion({ children, isExpanded: isExpandedProp, defaultExpanded = false, onChange, disabled = false, hasGutters: hasGuttersProp, borderRadius: borderRadiusProp, bg: bgProp, textColor: textColorProp, transition: Transition = Collapse, className, "data-testid": dataTestid, ...spaceProps }) {
41
+ const dp = useDefaultProps("Accordion");
42
+ const hasGutters = hasGuttersProp ?? dp.hasGutters ?? true;
43
+ const borderRadius = borderRadiusProp ?? dp.borderRadius;
44
+ const bg = bgProp ?? dp.bg;
45
+ const textColor = textColorProp ?? dp.textColor;
46
+ const baseId = useId();
47
+ const group = useContext(AccordionGroupContext);
48
+ const [ownExpanded, setOwnExpanded] = useControlled({
49
+ controlled: isExpandedProp,
50
+ default: defaultExpanded
51
+ });
52
+ const isInGroup = group?.isExclusive && group.openId !== void 0;
53
+ const isExpanded = isExpandedProp ?? (isInGroup ? group.openId === baseId : ownExpanded);
54
+ const context = useMemo(() => ({
55
+ baseId,
56
+ isExpanded,
57
+ disabled,
58
+ hasGutters,
59
+ toggle: (event) => {
60
+ const next = !isExpanded;
61
+ setOwnExpanded(next);
62
+ group?.setOpenId(next ? baseId : null);
63
+ onChange?.(event, next);
64
+ }
65
+ }), [
66
+ baseId,
67
+ isExpanded,
68
+ disabled,
69
+ hasGutters,
70
+ setOwnExpanded,
71
+ group,
72
+ onChange
73
+ ]);
74
+ const [summary, ...region] = Children.toArray(children);
75
+ return /* @__PURE__ */ jsx(AccordionContext.Provider, {
76
+ value: context,
77
+ children: /* @__PURE__ */ jsxs(AccordionRoot, {
78
+ borderRadius,
79
+ bg,
80
+ textColor,
81
+ className,
82
+ "data-testid": dataTestid,
83
+ ...spaceProps,
84
+ children: [summary, /* @__PURE__ */ jsx(Transition, {
85
+ isShown: isExpanded,
86
+ shouldAppear: false,
87
+ children: /* @__PURE__ */ jsx(AccordionRegion, {
88
+ role: "region",
89
+ id: getRegionId(baseId),
90
+ "aria-labelledby": getSummaryId(baseId),
91
+ children: region
92
+ })
93
+ })]
94
+ })
95
+ });
96
+ }
97
+ export { Accordion };
@@ -0,0 +1,28 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-yC1f5WR2.cjs");
3
+ const require_AccordionContext = require("../AccordionContext-CpSLhcF6.cjs");
4
+ let react_jsx_runtime = require("react/jsx-runtime");
5
+ let _soroush_tech_styled_system_should_forward_prop = require("@soroush.tech/styled-system/should-forward-prop");
6
+ // src/Accordion/AccordionActions/AccordionActions.tsx
7
+ const ActionsRoot = require_src.styled("div", {
8
+ name: "AccordionActions",
9
+ label: "AccordionActions",
10
+ shouldForwardProp: (0, _soroush_tech_styled_system_should_forward_prop.createShouldForwardProp)(["hasGutters"])
11
+ })(({ theme, hasGutters }) => ({
12
+ display: "flex",
13
+ alignItems: "center",
14
+ justifyContent: "flex-end",
15
+ gap: theme.space[1],
16
+ padding: `${theme.space[1]} ${hasGutters ? theme.space[2] : "0"}`
17
+ }));
18
+ /** @description The foot of an `Accordion` region: its buttons, at the end of a row. */
19
+ function AccordionActions({ children, className, "data-testid": dataTestid }) {
20
+ const { hasGutters } = require_AccordionContext.useAccordion("AccordionActions");
21
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ActionsRoot, {
22
+ hasGutters,
23
+ className,
24
+ "data-testid": dataTestid,
25
+ children
26
+ });
27
+ }
28
+ exports.AccordionActions = AccordionActions;
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ interface AccordionActionsProps {
3
+ /** The buttons at the foot of the region. */
4
+ children?: ReactNode;
5
+ className?: string;
6
+ 'data-testid'?: string;
7
+ }
8
+ /** @description The foot of an `Accordion` region: its buttons, at the end of a row. */
9
+ declare function AccordionActions({ children, className, 'data-testid': dataTestid }: Readonly<AccordionActionsProps>): import("react").JSX.Element;
10
+ export { AccordionActions, AccordionActionsProps };
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ interface AccordionActionsProps {
3
+ /** The buttons at the foot of the region. */
4
+ children?: ReactNode;
5
+ className?: string;
6
+ 'data-testid'?: string;
7
+ }
8
+ /** @description The foot of an `Accordion` region: its buttons, at the end of a row. */
9
+ declare function AccordionActions({ children, className, 'data-testid': dataTestid }: Readonly<AccordionActionsProps>): import("react").JSX.Element;
10
+ export { AccordionActions, AccordionActionsProps };
@@ -0,0 +1,26 @@
1
+ import { o as styled, t as createShouldForwardProp } from "../src-B-rNjHIL.mjs";
2
+ import { a as useAccordion } from "../AccordionContext-CBiu9CIa.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ // src/Accordion/AccordionActions/AccordionActions.tsx
5
+ const ActionsRoot = styled("div", {
6
+ name: "AccordionActions",
7
+ label: "AccordionActions",
8
+ shouldForwardProp: createShouldForwardProp(["hasGutters"])
9
+ })(({ theme, hasGutters }) => ({
10
+ display: "flex",
11
+ alignItems: "center",
12
+ justifyContent: "flex-end",
13
+ gap: theme.space[1],
14
+ padding: `${theme.space[1]} ${hasGutters ? theme.space[2] : "0"}`
15
+ }));
16
+ /** @description The foot of an `Accordion` region: its buttons, at the end of a row. */
17
+ function AccordionActions({ children, className, "data-testid": dataTestid }) {
18
+ const { hasGutters } = useAccordion("AccordionActions");
19
+ return /* @__PURE__ */ jsx(ActionsRoot, {
20
+ hasGutters,
21
+ className,
22
+ "data-testid": dataTestid,
23
+ children
24
+ });
25
+ }
26
+ export { AccordionActions };
@@ -0,0 +1,22 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_src = require("../src-yC1f5WR2.cjs");
3
+ const require_AccordionContext = require("../AccordionContext-CpSLhcF6.cjs");
4
+ let react_jsx_runtime = require("react/jsx-runtime");
5
+ let _soroush_tech_styled_system_should_forward_prop = require("@soroush.tech/styled-system/should-forward-prop");
6
+ // src/Accordion/AccordionDetails/AccordionDetails.tsx
7
+ const DetailsRoot = require_src.styled("div", {
8
+ name: "AccordionDetails",
9
+ label: "AccordionDetails",
10
+ shouldForwardProp: (0, _soroush_tech_styled_system_should_forward_prop.createShouldForwardProp)(["hasGutters"])
11
+ })(({ theme, hasGutters }) => ({ padding: `${theme.space[1]} ${hasGutters ? theme.space[2] : "0"} ${theme.space[2]}` }));
12
+ /** @description What an `Accordion` opens: the padded body of its region. */
13
+ function AccordionDetails({ children, className, "data-testid": dataTestid }) {
14
+ const { hasGutters } = require_AccordionContext.useAccordion("AccordionDetails");
15
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DetailsRoot, {
16
+ hasGutters,
17
+ className,
18
+ "data-testid": dataTestid,
19
+ children
20
+ });
21
+ }
22
+ exports.AccordionDetails = AccordionDetails;
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ interface AccordionDetailsProps {
3
+ /** What the accordion opens. */
4
+ children?: ReactNode;
5
+ className?: string;
6
+ 'data-testid'?: string;
7
+ }
8
+ /** @description What an `Accordion` opens: the padded body of its region. */
9
+ declare function AccordionDetails({ children, className, 'data-testid': dataTestid }: Readonly<AccordionDetailsProps>): import("react").JSX.Element;
10
+ export { AccordionDetails, AccordionDetailsProps };
@@ -0,0 +1,10 @@
1
+ import { ReactNode } from "react";
2
+ interface AccordionDetailsProps {
3
+ /** What the accordion opens. */
4
+ children?: ReactNode;
5
+ className?: string;
6
+ 'data-testid'?: string;
7
+ }
8
+ /** @description What an `Accordion` opens: the padded body of its region. */
9
+ declare function AccordionDetails({ children, className, 'data-testid': dataTestid }: Readonly<AccordionDetailsProps>): import("react").JSX.Element;
10
+ export { AccordionDetails, AccordionDetailsProps };
@@ -0,0 +1,20 @@
1
+ import { o as styled, t as createShouldForwardProp } from "../src-B-rNjHIL.mjs";
2
+ import { a as useAccordion } from "../AccordionContext-CBiu9CIa.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ // src/Accordion/AccordionDetails/AccordionDetails.tsx
5
+ const DetailsRoot = styled("div", {
6
+ name: "AccordionDetails",
7
+ label: "AccordionDetails",
8
+ shouldForwardProp: createShouldForwardProp(["hasGutters"])
9
+ })(({ theme, hasGutters }) => ({ padding: `${theme.space[1]} ${hasGutters ? theme.space[2] : "0"} ${theme.space[2]}` }));
10
+ /** @description What an `Accordion` opens: the padded body of its region. */
11
+ function AccordionDetails({ children, className, "data-testid": dataTestid }) {
12
+ const { hasGutters } = useAccordion("AccordionDetails");
13
+ return /* @__PURE__ */ jsx(DetailsRoot, {
14
+ hasGutters,
15
+ className,
16
+ "data-testid": dataTestid,
17
+ children
18
+ });
19
+ }
20
+ export { AccordionDetails };