@soyfri/shared-library 1.5.0 → 1.6.0-beta.1

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 (565) hide show
  1. package/Button-C17mExpd.cjs.map +1 -0
  2. package/Button-UkkP-bNw.js.map +1 -0
  3. package/components/ActionMenu/ActionMenu.cjs +107 -0
  4. package/components/ActionMenu/ActionMenu.cjs.map +1 -0
  5. package/components/ActionMenu/ActionMenu.d.ts +44 -0
  6. package/components/ActionMenu/ActionMenu.js +107 -0
  7. package/components/ActionMenu/ActionMenu.js.map +1 -0
  8. package/components/ActionMenu/index.d.ts +2 -0
  9. package/components/ActionMenu.d.ts +6 -0
  10. package/components/AppBar/AppBar.cjs +129 -0
  11. package/components/AppBar/AppBar.cjs.map +1 -0
  12. package/components/AppBar/AppBar.d.ts +55 -0
  13. package/components/AppBar/AppBar.js +129 -0
  14. package/components/AppBar/AppBar.js.map +1 -0
  15. package/components/AppBar/AppBar.sx.d.ts +12 -0
  16. package/components/AppBar/AppBarContext.d.ts +18 -0
  17. package/components/AppBar/AppBarMenuToggle.d.ts +39 -0
  18. package/components/AppBar/index.d.ts +6 -0
  19. package/components/AppBar.d.ts +6 -0
  20. package/components/Autocomplete/Autocomplete.cjs +313 -0
  21. package/components/Autocomplete/Autocomplete.cjs.map +1 -0
  22. package/components/Autocomplete/Autocomplete.d.ts +86 -0
  23. package/components/Autocomplete/Autocomplete.definitions.d.ts +16 -0
  24. package/components/Autocomplete/Autocomplete.helpers.d.ts +22 -0
  25. package/components/Autocomplete/Autocomplete.js +313 -0
  26. package/components/Autocomplete/Autocomplete.js.map +1 -0
  27. package/components/Autocomplete/Autocomplete.sx.d.ts +7 -0
  28. package/components/Autocomplete/_parts/AutocompleteChips.d.ts +20 -0
  29. package/components/Autocomplete/_parts/AutocompleteLoader.d.ts +9 -0
  30. package/components/Autocomplete/_parts/AutocompleteOption.d.ts +16 -0
  31. package/components/Autocomplete/index.d.ts +2 -0
  32. package/components/Autocomplete.d.ts +6 -0
  33. package/components/Avatar/Avatar.cjs +162 -0
  34. package/components/Avatar/Avatar.cjs.map +1 -0
  35. package/components/Avatar/Avatar.d.ts +33 -0
  36. package/components/Avatar/Avatar.definitions.d.ts +11 -0
  37. package/components/Avatar/Avatar.js +162 -0
  38. package/components/Avatar/Avatar.js.map +1 -0
  39. package/components/Avatar/index.d.ts +2 -0
  40. package/{dist/components → components}/Button/Button.d.ts +5 -5
  41. package/{dist/components → components}/Button/index.d.ts +1 -0
  42. package/components/Card/Card.cjs +98 -0
  43. package/components/Card/Card.cjs.map +1 -0
  44. package/components/Card/Card.d.ts +36 -0
  45. package/components/Card/Card.js +98 -0
  46. package/components/Card/Card.js.map +1 -0
  47. package/components/Card/Card.sx.d.ts +14 -0
  48. package/components/Card/index.d.ts +4 -0
  49. package/components/Card.d.ts +6 -0
  50. package/components/Checkbox/Checkbox.cjs +189 -0
  51. package/components/Checkbox/Checkbox.cjs.map +1 -0
  52. package/components/Checkbox/Checkbox.d.ts +55 -0
  53. package/components/Checkbox/Checkbox.js +189 -0
  54. package/components/Checkbox/Checkbox.js.map +1 -0
  55. package/components/Checkbox/Checkbox.sx.d.ts +13 -0
  56. package/components/Checkbox/index.d.ts +2 -0
  57. package/components/Checkbox.d.ts +6 -0
  58. package/{dist/components → components}/Chip/Chip.cjs +2 -1
  59. package/components/Chip/Chip.cjs.map +1 -0
  60. package/{dist/components → components}/Chip/Chip.js +2 -1
  61. package/components/Chip/Chip.js.map +1 -0
  62. package/components/Chip/index.d.ts +2 -0
  63. package/components/Chip.d.ts +6 -0
  64. package/components/DatePicker/DatePicker.cjs +180 -0
  65. package/components/DatePicker/DatePicker.cjs.map +1 -0
  66. package/components/DatePicker/DatePicker.d.ts +44 -0
  67. package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +1 -0
  68. package/components/DatePicker/DatePicker.helpers.d.ts +7 -0
  69. package/components/DatePicker/DatePicker.js +180 -0
  70. package/components/DatePicker/DatePicker.js.map +1 -0
  71. package/components/DatePicker/DatePicker.sx.d.ts +9 -0
  72. package/components/DatePicker/index.d.ts +2 -0
  73. package/components/DatePicker.d.ts +6 -0
  74. package/components/DateTimePicker/DateTimePicker.cjs +198 -0
  75. package/components/DateTimePicker/DateTimePicker.cjs.map +1 -0
  76. package/components/DateTimePicker/DateTimePicker.d.ts +57 -0
  77. package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +3 -0
  78. package/components/DateTimePicker/DateTimePicker.helpers.d.ts +13 -0
  79. package/components/DateTimePicker/DateTimePicker.js +198 -0
  80. package/components/DateTimePicker/DateTimePicker.js.map +1 -0
  81. package/components/DateTimePicker/DateTimePicker.sx.d.ts +7 -0
  82. package/components/DateTimePicker/index.d.ts +2 -0
  83. package/components/DateTimePicker.d.ts +6 -0
  84. package/components/Drawer/Drawer.cjs +274 -0
  85. package/components/Drawer/Drawer.cjs.map +1 -0
  86. package/components/Drawer/Drawer.d.ts +60 -0
  87. package/components/Drawer/Drawer.js +274 -0
  88. package/components/Drawer/Drawer.js.map +1 -0
  89. package/components/Drawer/Drawer.sx.d.ts +23 -0
  90. package/components/Drawer/DrawerContext.d.ts +18 -0
  91. package/components/Drawer/DrawerItem.d.ts +40 -0
  92. package/components/Drawer/index.d.ts +6 -0
  93. package/components/Drawer.d.ts +6 -0
  94. package/{dist/components → components}/Gallery/Gallery.cjs +154 -79
  95. package/components/Gallery/Gallery.cjs.map +1 -0
  96. package/components/Gallery/Gallery.d.ts +28 -0
  97. package/{dist/components → components}/Gallery/Gallery.js +154 -79
  98. package/components/Gallery/Gallery.js.map +1 -0
  99. package/components/Gallery/GalleryLightbox.d.ts +16 -0
  100. package/{dist/components → components}/Gallery/GalleryMain.d.ts +3 -7
  101. package/components/Gallery/GalleryThumbnails.d.ts +13 -0
  102. package/components/Gallery/index.d.ts +2 -0
  103. package/components/Gallery.d.ts +6 -0
  104. package/{dist/components → components}/Icon/Icon.cjs +49 -10
  105. package/components/Icon/Icon.cjs.map +1 -0
  106. package/components/Icon/Icon.d.ts +48 -0
  107. package/{dist/components → components}/Icon/Icon.js +49 -10
  108. package/components/Icon/Icon.js.map +1 -0
  109. package/components/Icon/index.d.ts +2 -0
  110. package/components/Icon.d.ts +6 -0
  111. package/components/Input/Input.cjs +188 -0
  112. package/components/Input/Input.cjs.map +1 -0
  113. package/components/Input/Input.d.ts +44 -0
  114. package/{dist/components → components}/Input/Input.definitions.d.ts +6 -2
  115. package/components/Input/Input.helpers.d.ts +14 -0
  116. package/components/Input/Input.js +188 -0
  117. package/components/Input/Input.js.map +1 -0
  118. package/components/Input/Input.sx.d.ts +8 -0
  119. package/components/Input/index.d.ts +2 -0
  120. package/components/Input.d.ts +6 -0
  121. package/components/InputGroup/InputGroup.cjs +140 -0
  122. package/components/InputGroup/InputGroup.cjs.map +1 -0
  123. package/components/InputGroup/InputGroup.d.ts +42 -0
  124. package/components/InputGroup/InputGroup.definitions.d.ts +6 -0
  125. package/components/InputGroup/InputGroup.js +140 -0
  126. package/components/InputGroup/InputGroup.js.map +1 -0
  127. package/components/InputGroup/index.d.ts +2 -0
  128. package/components/InputGroup.d.ts +6 -0
  129. package/components/Modal/Modal.cjs +348 -0
  130. package/components/Modal/Modal.cjs.map +1 -0
  131. package/components/Modal/Modal.d.ts +80 -0
  132. package/components/Modal/Modal.js +348 -0
  133. package/components/Modal/Modal.js.map +1 -0
  134. package/components/Modal/ModalBody.d.ts +11 -0
  135. package/components/Modal/ModalFooter.d.ts +27 -0
  136. package/components/Modal/ModalHeader.d.ts +11 -0
  137. package/components/Modal/index.d.ts +8 -0
  138. package/components/Modal.d.ts +6 -0
  139. package/components/RadioGroup/RadioGroup.cjs +204 -0
  140. package/components/RadioGroup/RadioGroup.cjs.map +1 -0
  141. package/components/RadioGroup/RadioGroup.d.ts +59 -0
  142. package/components/RadioGroup/RadioGroup.definitions.d.ts +6 -0
  143. package/components/RadioGroup/RadioGroup.js +204 -0
  144. package/components/RadioGroup/RadioGroup.js.map +1 -0
  145. package/components/RadioGroup/RadioGroup.sx.d.ts +20 -0
  146. package/components/RadioGroup/index.d.ts +2 -0
  147. package/components/RadioGroup.d.ts +6 -0
  148. package/components/Select/Select.cjs +313 -0
  149. package/components/Select/Select.cjs.map +1 -0
  150. package/components/Select/Select.d.ts +95 -0
  151. package/components/Select/Select.helpers.d.ts +15 -0
  152. package/components/Select/Select.js +313 -0
  153. package/components/Select/Select.js.map +1 -0
  154. package/components/Select/Select.sx.d.ts +7 -0
  155. package/components/Select/_parts/SelectMenuItem.d.ts +20 -0
  156. package/components/Select/index.d.ts +2 -0
  157. package/components/Select.d.ts +6 -0
  158. package/{dist/components → components}/Stat/Stat.cjs +2 -2
  159. package/{dist/components → components}/Stat/Stat.cjs.map +1 -1
  160. package/{dist/components → components}/Stat/Stat.js +2 -2
  161. package/{dist/components → components}/Stat/Stat.js.map +1 -1
  162. package/components/Stat/index.d.ts +2 -0
  163. package/components/Stat.d.ts +6 -0
  164. package/components/StatusMessage/StatusMessage.cjs +108 -0
  165. package/components/StatusMessage/StatusMessage.cjs.map +1 -0
  166. package/components/StatusMessage/StatusMessage.d.ts +28 -0
  167. package/components/StatusMessage/StatusMessage.js +108 -0
  168. package/components/StatusMessage/StatusMessage.js.map +1 -0
  169. package/components/StatusMessage/StatusMessageContext.d.ts +16 -0
  170. package/components/StatusMessage/index.d.ts +4 -0
  171. package/components/StatusMessage.d.ts +6 -0
  172. package/components/Stepper/Stepper.cjs +326 -0
  173. package/components/Stepper/Stepper.cjs.map +1 -0
  174. package/components/Stepper/Stepper.d.ts +17 -0
  175. package/components/Stepper/Stepper.js +326 -0
  176. package/components/Stepper/Stepper.js.map +1 -0
  177. package/components/Stepper/StepperContext.d.ts +73 -0
  178. package/components/Stepper/_hooks/useHorizontalScroll.d.ts +19 -0
  179. package/components/Stepper/_parts/StepperScrollArrow.d.ts +19 -0
  180. package/components/Stepper/index.d.ts +6 -0
  181. package/components/Stepper.d.ts +6 -0
  182. package/components/Switch/Switch.cjs +184 -0
  183. package/components/Switch/Switch.cjs.map +1 -0
  184. package/components/Switch/Switch.d.ts +48 -0
  185. package/components/Switch/Switch.definitions.d.ts +7 -0
  186. package/components/Switch/Switch.js +184 -0
  187. package/components/Switch/Switch.js.map +1 -0
  188. package/components/Switch/Switch.sx.d.ts +22 -0
  189. package/components/Switch/Switch.types.d.ts +1 -0
  190. package/components/Switch/index.d.ts +2 -0
  191. package/components/Switch.d.ts +6 -0
  192. package/components/Tabs/Tabs.cjs +112 -0
  193. package/components/Tabs/Tabs.cjs.map +1 -0
  194. package/components/Tabs/Tabs.d.ts +24 -0
  195. package/components/Tabs/Tabs.js +112 -0
  196. package/components/Tabs/Tabs.js.map +1 -0
  197. package/components/Tabs/index.d.ts +4 -0
  198. package/components/Tabs.d.ts +6 -0
  199. package/{dist/components → components}/Timeline/Timeline.cjs +3 -2
  200. package/components/Timeline/Timeline.cjs.map +1 -0
  201. package/components/Timeline/Timeline.d.ts +9 -0
  202. package/{dist/components → components}/Timeline/Timeline.js +3 -2
  203. package/components/Timeline/Timeline.js.map +1 -0
  204. package/components/Timeline/index.d.ts +4 -0
  205. package/components/Timeline.d.ts +6 -0
  206. package/components/_shared/formField.sx.d.ts +33 -0
  207. package/components/_shared/mergeSx.d.ts +7 -0
  208. package/components/_shared/resolvePreset.d.ts +18 -0
  209. package/formField.sx-8_QRnKxv.js +68 -0
  210. package/formField.sx-8_QRnKxv.js.map +1 -0
  211. package/formField.sx-BAX7KwMR.cjs +67 -0
  212. package/formField.sx-BAX7KwMR.cjs.map +1 -0
  213. package/index.cjs +153 -0
  214. package/index.cjs.map +1 -0
  215. package/index.d.ts +4 -0
  216. package/index.js +51 -0
  217. package/index.js.map +1 -0
  218. package/mergeSx-BXoNZjB_.js +10 -0
  219. package/mergeSx-BXoNZjB_.js.map +1 -0
  220. package/mergeSx-Dbccoo_H.cjs +9 -0
  221. package/mergeSx-Dbccoo_H.cjs.map +1 -0
  222. package/mui.d.ts +7 -0
  223. package/package.json +164 -43
  224. package/resolvePreset-B-IB0ehH.js +15 -0
  225. package/resolvePreset-B-IB0ehH.js.map +1 -0
  226. package/resolvePreset-CT3kU-K2.cjs +14 -0
  227. package/resolvePreset-CT3kU-K2.cjs.map +1 -0
  228. package/theme/componentStyles.d.ts +32 -0
  229. package/theme/tokens.d.ts +28 -0
  230. package/tokens-BRrcP_p_.js +21 -0
  231. package/tokens-BRrcP_p_.js.map +1 -0
  232. package/tokens-jaWWNk39.cjs +20 -0
  233. package/tokens-jaWWNk39.cjs.map +1 -0
  234. package/utils/index.d.ts +2 -0
  235. package/utils/scrollToTop.d.ts +28 -0
  236. package/.dockerignore +0 -8
  237. package/.github/workflows/publish.yml +0 -107
  238. package/.prettierrc +0 -3
  239. package/.storybook/main.ts +0 -19
  240. package/.storybook/preview.ts +0 -14
  241. package/.storybook/vitest.setup.ts +0 -9
  242. package/Dockerfile +0 -37
  243. package/build.js +0 -102
  244. package/chromatic.config.json +0 -5
  245. package/cleanDirectories.js +0 -40
  246. package/dist/Button-C17mExpd.cjs.map +0 -1
  247. package/dist/Button-UkkP-bNw.js.map +0 -1
  248. package/dist/DatePicker-BSNboVhN.js +0 -201
  249. package/dist/DatePicker-BSNboVhN.js.map +0 -1
  250. package/dist/DatePicker-BoqxWAhj.cjs +0 -200
  251. package/dist/DatePicker-BoqxWAhj.cjs.map +0 -1
  252. package/dist/Input-DFHs7cJ_.js +0 -171
  253. package/dist/Input-DFHs7cJ_.js.map +0 -1
  254. package/dist/Input-c8MwNNPg.cjs +0 -170
  255. package/dist/Input-c8MwNNPg.cjs.map +0 -1
  256. package/dist/Select-BO2N56sm.cjs +0 -411
  257. package/dist/Select-BO2N56sm.cjs.map +0 -1
  258. package/dist/Select-BcLkyHSE.js +0 -412
  259. package/dist/Select-BcLkyHSE.js.map +0 -1
  260. package/dist/components/Autocomplete/Autocomplete.cjs +0 -109
  261. package/dist/components/Autocomplete/Autocomplete.cjs.map +0 -1
  262. package/dist/components/Autocomplete/Autocomplete.d.ts +0 -28
  263. package/dist/components/Autocomplete/Autocomplete.definitions.d.ts +0 -9
  264. package/dist/components/Autocomplete/Autocomplete.js +0 -109
  265. package/dist/components/Autocomplete/Autocomplete.js.map +0 -1
  266. package/dist/components/Autocomplete/index.d.ts +0 -1
  267. package/dist/components/Autocomplete.d.ts +0 -2
  268. package/dist/components/Avatar/Avatar.cjs +0 -126
  269. package/dist/components/Avatar/Avatar.cjs.map +0 -1
  270. package/dist/components/Avatar/Avatar.d.ts +0 -19
  271. package/dist/components/Avatar/Avatar.js +0 -126
  272. package/dist/components/Avatar/Avatar.js.map +0 -1
  273. package/dist/components/Avatar/index.d.ts +0 -1
  274. package/dist/components/Card/Card.cjs +0 -28
  275. package/dist/components/Card/Card.cjs.map +0 -1
  276. package/dist/components/Card/Card.d.ts +0 -13
  277. package/dist/components/Card/Card.js +0 -28
  278. package/dist/components/Card/Card.js.map +0 -1
  279. package/dist/components/Card/index.d.ts +0 -1
  280. package/dist/components/Card.d.ts +0 -2
  281. package/dist/components/Chip/Chip.cjs.map +0 -1
  282. package/dist/components/Chip/Chip.js.map +0 -1
  283. package/dist/components/Chip/index.d.ts +0 -1
  284. package/dist/components/Chip.d.ts +0 -2
  285. package/dist/components/DatePicker/DatePicker.cjs +0 -5
  286. package/dist/components/DatePicker/DatePicker.cjs.map +0 -1
  287. package/dist/components/DatePicker/DatePicker.d.ts +0 -18
  288. package/dist/components/DatePicker/DatePicker.js +0 -5
  289. package/dist/components/DatePicker/DatePicker.js.map +0 -1
  290. package/dist/components/DatePicker/index.d.ts +0 -1
  291. package/dist/components/DatePicker.d.ts +0 -2
  292. package/dist/components/DateTimePicker/DateTimePicker.cjs +0 -208
  293. package/dist/components/DateTimePicker/DateTimePicker.cjs.map +0 -1
  294. package/dist/components/DateTimePicker/DateTimePicker.d.ts +0 -28
  295. package/dist/components/DateTimePicker/DateTimePicker.js +0 -208
  296. package/dist/components/DateTimePicker/DateTimePicker.js.map +0 -1
  297. package/dist/components/DateTimePicker/index.d.ts +0 -1
  298. package/dist/components/DateTimePicker.d.ts +0 -2
  299. package/dist/components/Gallery/Gallery.cjs.map +0 -1
  300. package/dist/components/Gallery/Gallery.d.ts +0 -12
  301. package/dist/components/Gallery/Gallery.js.map +0 -1
  302. package/dist/components/Gallery/GalleryLightbox.d.ts +0 -20
  303. package/dist/components/Gallery/GalleryThumbnails.d.ts +0 -17
  304. package/dist/components/Gallery/index.d.ts +0 -1
  305. package/dist/components/Gallery.d.ts +0 -2
  306. package/dist/components/Icon/Icon.cjs.map +0 -1
  307. package/dist/components/Icon/Icon.d.ts +0 -21
  308. package/dist/components/Icon/Icon.js.map +0 -1
  309. package/dist/components/Icon/index.d.ts +0 -1
  310. package/dist/components/Icon.d.ts +0 -2
  311. package/dist/components/Input/Input.cjs +0 -5
  312. package/dist/components/Input/Input.cjs.map +0 -1
  313. package/dist/components/Input/Input.d.ts +0 -32
  314. package/dist/components/Input/Input.js +0 -5
  315. package/dist/components/Input/Input.js.map +0 -1
  316. package/dist/components/Input/index.d.ts +0 -1
  317. package/dist/components/Input.d.ts +0 -2
  318. package/dist/components/InputGroup/InputGroup.cjs +0 -126
  319. package/dist/components/InputGroup/InputGroup.cjs.map +0 -1
  320. package/dist/components/InputGroup/InputGroup.d.ts +0 -6
  321. package/dist/components/InputGroup/InputGroup.js +0 -126
  322. package/dist/components/InputGroup/InputGroup.js.map +0 -1
  323. package/dist/components/InputGroup/index.d.ts +0 -1
  324. package/dist/components/InputGroup.d.ts +0 -2
  325. package/dist/components/Modal/Modal.cjs +0 -209
  326. package/dist/components/Modal/Modal.cjs.map +0 -1
  327. package/dist/components/Modal/Modal.d.ts +0 -29
  328. package/dist/components/Modal/Modal.js +0 -209
  329. package/dist/components/Modal/Modal.js.map +0 -1
  330. package/dist/components/Modal/ModalBody.d.ts +0 -6
  331. package/dist/components/Modal/ModalFooter.d.ts +0 -19
  332. package/dist/components/Modal/ModalHeader.d.ts +0 -6
  333. package/dist/components/Modal/index.d.ts +0 -1
  334. package/dist/components/Modal.d.ts +0 -2
  335. package/dist/components/Select/Select.cjs +0 -6
  336. package/dist/components/Select/Select.cjs.map +0 -1
  337. package/dist/components/Select/Select.d.ts +0 -60
  338. package/dist/components/Select/Select.definitions.d.ts +0 -14
  339. package/dist/components/Select/Select.js +0 -6
  340. package/dist/components/Select/Select.js.map +0 -1
  341. package/dist/components/Select/index.d.ts +0 -1
  342. package/dist/components/Select.d.ts +0 -2
  343. package/dist/components/Stat/index.d.ts +0 -1
  344. package/dist/components/Stat.d.ts +0 -2
  345. package/dist/components/StatusMessage/StatusMessage.cjs +0 -79
  346. package/dist/components/StatusMessage/StatusMessage.cjs.map +0 -1
  347. package/dist/components/StatusMessage/StatusMessage.d.ts +0 -44
  348. package/dist/components/StatusMessage/StatusMessage.js +0 -79
  349. package/dist/components/StatusMessage/StatusMessage.js.map +0 -1
  350. package/dist/components/StatusMessage/index.d.ts +0 -1
  351. package/dist/components/StatusMessage.d.ts +0 -2
  352. package/dist/components/Stepper/Stepper.cjs +0 -46
  353. package/dist/components/Stepper/Stepper.cjs.map +0 -1
  354. package/dist/components/Stepper/Stepper.d.ts +0 -11
  355. package/dist/components/Stepper/Stepper.js +0 -46
  356. package/dist/components/Stepper/Stepper.js.map +0 -1
  357. package/dist/components/Stepper/index.d.ts +0 -2
  358. package/dist/components/Stepper.d.ts +0 -2
  359. package/dist/components/Tabs/Tabs.cjs +0 -96
  360. package/dist/components/Tabs/Tabs.cjs.map +0 -1
  361. package/dist/components/Tabs/Tabs.d.ts +0 -19
  362. package/dist/components/Tabs/Tabs.js +0 -96
  363. package/dist/components/Tabs/Tabs.js.map +0 -1
  364. package/dist/components/Tabs/index.d.ts +0 -2
  365. package/dist/components/Tabs.d.ts +0 -2
  366. package/dist/components/Timeline/Timeline.cjs.map +0 -1
  367. package/dist/components/Timeline/Timeline.d.ts +0 -13
  368. package/dist/components/Timeline/Timeline.js.map +0 -1
  369. package/dist/components/Timeline/index.d.ts +0 -2
  370. package/dist/components/Timeline.d.ts +0 -2
  371. package/dist/index.cjs +0 -2
  372. package/dist/index.cjs.map +0 -1
  373. package/dist/index.d.ts +0 -0
  374. package/dist/index.js +0 -2
  375. package/dist/index.js.map +0 -1
  376. package/dist/styles.css +0 -112
  377. package/rollup.config.cjs +0 -87
  378. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -254
  379. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -387
  380. package/src/components/Autocomplete/Autocomplete.tsx +0 -139
  381. package/src/components/Autocomplete/index.ts +0 -1
  382. package/src/components/Avatar/Avatar.stories.tsx +0 -54
  383. package/src/components/Avatar/Avatar.tsx +0 -143
  384. package/src/components/Avatar/index.ts +0 -1
  385. package/src/components/Button/Button.definition.ts +0 -97
  386. package/src/components/Button/Button.stories.tsx +0 -285
  387. package/src/components/Button/Button.tsx +0 -67
  388. package/src/components/Button/index.ts +0 -1
  389. package/src/components/Card/Card.definition.ts +0 -5
  390. package/src/components/Card/Card.stories.tsx +0 -32
  391. package/src/components/Card/Card.tsx +0 -44
  392. package/src/components/Card/index.ts +0 -1
  393. package/src/components/Chip/Chip.definitions.ts +0 -167
  394. package/src/components/Chip/Chip.stories.tsx +0 -265
  395. package/src/components/Chip/Chip.tsx +0 -61
  396. package/src/components/Chip/index.ts +0 -1
  397. package/src/components/Column/Column.tsx +0 -29
  398. package/src/components/Column/index.ts +0 -1
  399. package/src/components/DatePicker/DatePicker.definitions.ts +0 -205
  400. package/src/components/DatePicker/DatePicker.stories.tsx +0 -282
  401. package/src/components/DatePicker/DatePicker.tsx +0 -165
  402. package/src/components/DatePicker/index.ts +0 -1
  403. package/src/components/DateRangePicker/DateRangePicker.definitions.ts +0 -191
  404. package/src/components/DateRangePicker/DateRangePicker.stories.tsx +0 -252
  405. package/src/components/DateRangePicker/DateRangePicker.tsx +0 -56
  406. package/src/components/DateRangePicker/index.ts +0 -1
  407. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -232
  408. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -390
  409. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -191
  410. package/src/components/DateTimePicker/index.ts +0 -1
  411. package/src/components/Flyout/Flyout.stories.tsx +0 -274
  412. package/src/components/Flyout/Flyout.tsx +0 -122
  413. package/src/components/Flyout/index.ts +0 -1
  414. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  415. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  416. package/src/components/Gallery/Gallery.tsx +0 -118
  417. package/src/components/Gallery/GalleryLightbox.tsx +0 -170
  418. package/src/components/Gallery/GalleryMain.tsx +0 -84
  419. package/src/components/Gallery/GalleryThumbnails.tsx +0 -106
  420. package/src/components/Gallery/index.ts +0 -1
  421. package/src/components/Icon/Icon.stories.tsx +0 -54
  422. package/src/components/Icon/Icon.tsx +0 -94
  423. package/src/components/Icon/index.ts +0 -2
  424. package/src/components/Input/Input.definitions.ts +0 -252
  425. package/src/components/Input/Input.stories.tsx +0 -387
  426. package/src/components/Input/Input.tsx +0 -186
  427. package/src/components/Input/index.ts +0 -1
  428. package/src/components/InputGroup/InputGroup.stories.tsx +0 -136
  429. package/src/components/InputGroup/InputGroup.tsx +0 -136
  430. package/src/components/InputGroup/index.ts +0 -1
  431. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  432. package/src/components/MenuButton/MenuButton.tsx +0 -100
  433. package/src/components/MenuButton/index.ts +0 -1
  434. package/src/components/Modal/Modal.stories.tsx +0 -293
  435. package/src/components/Modal/Modal.tsx +0 -173
  436. package/src/components/Modal/ModalBody.tsx +0 -16
  437. package/src/components/Modal/ModalFooter.tsx +0 -61
  438. package/src/components/Modal/ModalHeader.tsx +0 -18
  439. package/src/components/Modal/index.ts +0 -1
  440. package/src/components/Select/Select.definitions.ts +0 -488
  441. package/src/components/Select/Select.stories.tsx +0 -569
  442. package/src/components/Select/Select.tsx +0 -468
  443. package/src/components/Select/index.ts +0 -1
  444. package/src/components/Stat/Stat.stories.tsx +0 -85
  445. package/src/components/Stat/Stat.tsx +0 -117
  446. package/src/components/Stat/index.ts +0 -2
  447. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -130
  448. package/src/components/StatusMessage/StatusMessage.tsx +0 -162
  449. package/src/components/StatusMessage/index.ts +0 -2
  450. package/src/components/Stepper/Step.tsx +0 -21
  451. package/src/components/Stepper/Stepper.definition.ts +0 -75
  452. package/src/components/Stepper/Stepper.stories.tsx +0 -122
  453. package/src/components/Stepper/Stepper.tsx +0 -59
  454. package/src/components/Stepper/index.ts +0 -2
  455. package/src/components/Table/EmptyTable.png +0 -0
  456. package/src/components/Table/Table.definition.ts +0 -580
  457. package/src/components/Table/Table.stories.tsx +0 -853
  458. package/src/components/Table/Table.tsx +0 -495
  459. package/src/components/Table/data.ts +0 -134
  460. package/src/components/Table/exportsUtils.ts +0 -195
  461. package/src/components/Table/index.ts +0 -3
  462. package/src/components/Table/types.ts +0 -34
  463. package/src/components/Tabs/Tab.definition.ts +0 -53
  464. package/src/components/Tabs/Tab.tsx +0 -19
  465. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  466. package/src/components/Tabs/Tabs.tsx +0 -99
  467. package/src/components/Tabs/_tabUtils.tsx +0 -4
  468. package/src/components/Tabs/index.ts +0 -2
  469. package/src/components/Timeline/Timeline.definition.ts +0 -43
  470. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  471. package/src/components/Timeline/Timeline.tsx +0 -49
  472. package/src/components/Timeline/TimelineItem.tsx +0 -31
  473. package/src/components/Timeline/index.ts +0 -2
  474. package/src/components/Tooltip/Tooltip.stories.tsx +0 -117
  475. package/src/components/Tooltip/Tooltip.tsx +0 -58
  476. package/src/components/Tooltip/index.ts +0 -1
  477. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  478. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  479. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  480. package/src/hooks/ClipBoard/index.ts +0 -1
  481. package/src/index.ts +0 -1
  482. package/src/styles.css +0 -3
  483. package/tailwind.config.js +0 -10
  484. package/tsconfig.json +0 -48
  485. package/tsup.config.js +0 -41
  486. package/vite.config.js +0 -132
  487. package/vitest.config.ts +0 -35
  488. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  489. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  490. /package/{Readme.md → README.md} +0 -0
  491. /package/{dist/components → components}/Avatar.d.ts +0 -0
  492. /package/{dist/components → components}/Button/Button.cjs +0 -0
  493. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  494. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  495. /package/{dist/components → components}/Button/Button.js +0 -0
  496. /package/{dist/components → components}/Button/Button.js.map +0 -0
  497. /package/{dist/components → components}/Button.d.ts +0 -0
  498. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  499. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  500. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  501. /package/{dist/components → components}/Column/Column.cjs +0 -0
  502. /package/{dist/components → components}/Column/Column.cjs.map +0 -0
  503. /package/{dist/components → components}/Column/Column.d.ts +0 -0
  504. /package/{dist/components → components}/Column/Column.js +0 -0
  505. /package/{dist/components → components}/Column/Column.js.map +0 -0
  506. /package/{dist/components → components}/Column/index.d.ts +0 -0
  507. /package/{dist/components → components}/Column.d.ts +0 -0
  508. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs +0 -0
  509. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs.map +0 -0
  510. /package/{dist/components → components}/DateRangePicker/DateRangePicker.d.ts +0 -0
  511. /package/{dist/components → components}/DateRangePicker/DateRangePicker.definitions.d.ts +0 -0
  512. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js +0 -0
  513. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js.map +0 -0
  514. /package/{dist/components → components}/DateRangePicker/index.d.ts +0 -0
  515. /package/{dist/components → components}/DateRangePicker.d.ts +0 -0
  516. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  517. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  518. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  519. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  520. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  521. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  522. /package/{dist/components → components}/Flyout.d.ts +0 -0
  523. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  524. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  525. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  526. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  527. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  528. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  529. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  530. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  531. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  532. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  533. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  534. /package/{dist/components → components}/Table/Table.cjs +0 -0
  535. /package/{dist/components → components}/Table/Table.cjs.map +0 -0
  536. /package/{dist/components → components}/Table/Table.d.ts +0 -0
  537. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  538. /package/{dist/components → components}/Table/Table.js +0 -0
  539. /package/{dist/components → components}/Table/Table.js.map +0 -0
  540. /package/{dist/components → components}/Table/data.d.ts +0 -0
  541. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  542. /package/{dist/components → components}/Table/index.d.ts +0 -0
  543. /package/{dist/components → components}/Table/types.d.ts +0 -0
  544. /package/{dist/components → components}/Table.d.ts +0 -0
  545. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  546. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  547. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  548. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  549. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  550. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  551. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  552. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  553. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  554. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  555. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  556. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  557. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  558. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  559. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  560. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  561. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  562. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  563. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  564. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  565. /package/{dist/index.css → index.css} +0 -0
@@ -0,0 +1,33 @@
1
+ import { default as React } from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ export interface AvatarItem {
4
+ text?: string;
5
+ imageUrl?: string;
6
+ badge?: string;
7
+ color?: string;
8
+ backgroundColor?: string;
9
+ }
10
+ export type AvatarSize = 'sm' | 'md' | 'lg' | 'xl' | number;
11
+ export interface AvatarProps {
12
+ type?: string;
13
+ items: AvatarItem[];
14
+ displayedAvatars?: number;
15
+ size?: AvatarSize;
16
+ showText?: boolean;
17
+ showTooltip?: boolean;
18
+ /**
19
+ * sx aplicado al contenedor raíz.
20
+ */
21
+ sx?: SxProps<Theme>;
22
+ /**
23
+ * sx aplicado a cada MuiAvatar individual (se mergea sobre los defaults).
24
+ */
25
+ avatarSx?: SxProps<Theme>;
26
+ className?: string;
27
+ /**
28
+ * Overlap (px) entre avatares cuando hay varios. Default depende del tamaño.
29
+ */
30
+ overlap?: number;
31
+ }
32
+ export declare const Avatar: React.FC<AvatarProps>;
33
+ export default Avatar;
@@ -0,0 +1,11 @@
1
+ export declare const DefaultAvatarDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const DefaultAvatarExample = () => (\n <Avatar\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=1' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=2' },\n ]}\n />\n);\n";
2
+ export declare const WithTypeAndTextDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const WithTypeAndTextExample = () => (\n <Avatar\n type=\"Owner\"\n items={[{ text: 'Maria', imageUrl: 'https://i.pravatar.cc/150?img=5' }]}\n showText\n />\n);\n";
3
+ export declare const WithBadgesAndTooltipDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const WithBadgesAndTooltipExample = () => (\n <Avatar\n showTooltip\n items={[\n { text: 'John D.', badge: 'JD', backgroundColor: '#EF5350', color: '#fff' },\n { text: 'Alice B.', badge: 'AB', backgroundColor: '#AB47BC', color: '#fff' },\n ]}\n />\n);\n";
4
+ export declare const SizeSmallDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const SizeSmallExample = () => (\n <Avatar\n size=\"sm\"\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=11' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=12' },\n { text: 'User Three', imageUrl: 'https://i.pravatar.cc/150?img=13' },\n ]}\n />\n);\n";
5
+ export declare const SizeMediumDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const SizeMediumExample = () => (\n <Avatar\n size=\"md\"\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=21' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=22' },\n { text: 'User Three', imageUrl: 'https://i.pravatar.cc/150?img=23' },\n ]}\n />\n);\n";
6
+ export declare const SizeLargeDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const SizeLargeExample = () => (\n <Avatar\n size=\"lg\"\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=31' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=32' },\n ]}\n />\n);\n";
7
+ export declare const SizeExtraLargeDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const SizeExtraLargeExample = () => (\n <Avatar\n size=\"xl\"\n items={[{ text: 'Maria', imageUrl: 'https://i.pravatar.cc/150?img=5' }]}\n showText={false}\n />\n);\n";
8
+ export declare const NumericSizeDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const NumericSizeExample = () => (\n <Avatar\n size={72}\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=41' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=42' },\n ]}\n showText={false}\n />\n);\n";
9
+ export declare const FallbackIconDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const FallbackIconExample = () => (\n <Avatar\n items={[\n { text: 'Without image' },\n { text: 'Broken image', imageUrl: 'https://example.invalid/broken.png' },\n ]}\n showTooltip\n />\n);\n";
10
+ export declare const DisplayedAvatarsLimitDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const DisplayedAvatarsLimitExample = () => (\n <Avatar\n displayedAvatars={3}\n items={[\n { text: 'User 1', imageUrl: 'https://i.pravatar.cc/150?img=51' },\n { text: 'User 2', imageUrl: 'https://i.pravatar.cc/150?img=52' },\n { text: 'User 3', imageUrl: 'https://i.pravatar.cc/150?img=53' },\n { text: 'User 4', imageUrl: 'https://i.pravatar.cc/150?img=54' },\n { text: 'User 5', imageUrl: 'https://i.pravatar.cc/150?img=55' },\n ]}\n />\n);\n";
11
+ export declare const CustomStylingDefinition = "\nimport { Avatar } from './Avatar';\n\nexport const CustomStylingExample = () => (\n <Avatar\n size=\"md\"\n items={[\n { text: 'User One', imageUrl: 'https://i.pravatar.cc/150?img=61' },\n { text: 'User Two', imageUrl: 'https://i.pravatar.cc/150?img=62' },\n ]}\n sx={{\n p: 1,\n borderRadius: 2,\n bgcolor: 'action.hover',\n }}\n avatarSx={{\n border: (theme) => '3px solid ' + theme.palette.primary.main,\n }}\n />\n);\n";
@@ -0,0 +1,162 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { jsxs, jsx } from "react/jsx-runtime";
21
+ import React__default, { useState } from "react";
22
+ import { Box, Typography, Avatar as Avatar$1, Tooltip } from "@mui/material";
23
+ import AccountCircleIcon from "@mui/icons-material/AccountCircle";
24
+ const sizeMap = {
25
+ sm: { px: 32, border: 2, font: 14, overlap: 8 },
26
+ md: { px: 40, border: 2, font: 16, overlap: 10 },
27
+ lg: { px: 56, border: 3, font: 22, overlap: 14 },
28
+ xl: { px: 96, border: 4, font: 36, overlap: 20 }
29
+ };
30
+ const resolveSize = (size) => {
31
+ if (typeof size === "number") {
32
+ return {
33
+ px: size,
34
+ border: Math.max(2, Math.round(size * 0.05)),
35
+ font: Math.round(size * 0.4),
36
+ overlap: Math.round(size * 0.25)
37
+ };
38
+ }
39
+ return sizeMap[size];
40
+ };
41
+ const mergeSx = (base, extra) => {
42
+ if (!extra) return base;
43
+ const baseArr = Array.isArray(base) ? base : [base];
44
+ const extraArr = Array.isArray(extra) ? extra : [extra];
45
+ return [...baseArr, ...extraArr];
46
+ };
47
+ const Avatar = ({
48
+ items,
49
+ type,
50
+ displayedAvatars = 4,
51
+ size = "sm",
52
+ showText = true,
53
+ showTooltip = false,
54
+ sx,
55
+ avatarSx,
56
+ className,
57
+ overlap
58
+ }) => {
59
+ var _a;
60
+ const [failedUrls, setFailedUrls] = useState(/* @__PURE__ */ new Set());
61
+ const handleImageError = (url) => {
62
+ setFailedUrls((prev) => {
63
+ if (prev.has(url)) return prev;
64
+ const next = new Set(prev);
65
+ next.add(url);
66
+ return next;
67
+ });
68
+ };
69
+ if (!items || items.length === 0) {
70
+ return null;
71
+ }
72
+ const s = resolveSize(size);
73
+ const effectiveOverlap = overlap != null ? overlap : s.overlap;
74
+ const visibleItems = items.slice(0, displayedAvatars);
75
+ const baseAvatarSx = {
76
+ width: s.px,
77
+ height: s.px,
78
+ fontSize: s.font,
79
+ fontWeight: 700,
80
+ border: (theme) => `${s.border}px solid ${theme.palette.background.paper}`,
81
+ boxSizing: "content-box"
82
+ };
83
+ const renderSingleAvatar = (item, i) => {
84
+ var _a2, _b, _c, _d, _e;
85
+ const hasImage = !!item.imageUrl && !failedUrls.has(item.imageUrl);
86
+ const showBadgeFallback = !!item.badge;
87
+ const itemKey = (_c = item.imageUrl) != null ? _c : `${(_a2 = item.text) != null ? _a2 : ""}-${(_b = item.badge) != null ? _b : ""}-${i}`;
88
+ const itemSx = __spreadProps(__spreadValues({
89
+ bgcolor: (_d = item.backgroundColor) != null ? _d : "action.selected",
90
+ color: (_e = item.color) != null ? _e : "text.secondary"
91
+ }, i > 0 && { marginLeft: `-${effectiveOverlap}px` }), {
92
+ zIndex: visibleItems.length - i
93
+ });
94
+ const finalSx = mergeSx(mergeSx(baseAvatarSx, itemSx), avatarSx);
95
+ const avatarEl = /* @__PURE__ */ jsx(
96
+ Avatar$1,
97
+ {
98
+ alt: item.text || "User avatar",
99
+ src: hasImage ? item.imageUrl : void 0,
100
+ imgProps: {
101
+ onError: () => {
102
+ if (item.imageUrl) handleImageError(item.imageUrl);
103
+ }
104
+ },
105
+ sx: finalSx,
106
+ children: !hasImage && showBadgeFallback ? /* @__PURE__ */ jsx("span", { "aria-label": item.text, children: item.badge }) : !hasImage ? /* @__PURE__ */ jsx(
107
+ AccountCircleIcon,
108
+ {
109
+ "aria-label": item.text,
110
+ sx: { width: "100%", height: "100%" }
111
+ }
112
+ ) : null
113
+ }
114
+ );
115
+ if (showTooltip && item.text) {
116
+ return /* @__PURE__ */ jsx(Tooltip, { title: item.text, children: avatarEl }, itemKey);
117
+ }
118
+ return /* @__PURE__ */ jsx(React__default.Fragment, { children: avatarEl }, itemKey);
119
+ };
120
+ return /* @__PURE__ */ jsxs(
121
+ Box,
122
+ {
123
+ className,
124
+ sx: mergeSx(
125
+ {
126
+ display: "flex",
127
+ alignItems: "center",
128
+ lineHeight: 1,
129
+ width: "fit-content"
130
+ },
131
+ sx
132
+ ),
133
+ children: [
134
+ /* @__PURE__ */ jsx(Box, { sx: { display: "flex", alignItems: "center" }, children: visibleItems.map((item, i) => renderSingleAvatar(item, i)) }),
135
+ showText && ((_a = items[0]) == null ? void 0 : _a.text) && /* @__PURE__ */ jsxs(
136
+ Typography,
137
+ {
138
+ variant: "caption",
139
+ sx: {
140
+ ml: 1,
141
+ fontSize: "0.75rem",
142
+ fontWeight: 400,
143
+ color: "text.primary"
144
+ },
145
+ children: [
146
+ type && items.length === 1 && /* @__PURE__ */ jsxs(Box, { component: "span", sx: { mr: 0.5 }, children: [
147
+ type,
148
+ ":"
149
+ ] }),
150
+ items[0].text,
151
+ items.length > 1 && ` +${items.length - 1}`
152
+ ]
153
+ }
154
+ )
155
+ ]
156
+ }
157
+ );
158
+ };
159
+ export {
160
+ Avatar
161
+ };
162
+ //# sourceMappingURL=Avatar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar.js","sources":["../../../src/components/Avatar/Avatar.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport {\n Avatar as MuiAvatar,\n Box,\n Tooltip,\n Typography,\n type SxProps,\n type Theme,\n} from '@mui/material';\nimport AccountCircleIcon from '@mui/icons-material/AccountCircle';\n\nexport interface AvatarItem {\n text?: string;\n imageUrl?: string;\n badge?: string;\n color?: string;\n backgroundColor?: string;\n}\n\nexport type AvatarSize = 'sm' | 'md' | 'lg' | 'xl' | number;\n\nexport interface AvatarProps {\n type?: string;\n items: AvatarItem[];\n displayedAvatars?: number;\n size?: AvatarSize;\n showText?: boolean;\n showTooltip?: boolean;\n /**\n * sx aplicado al contenedor raíz.\n */\n sx?: SxProps<Theme>;\n /**\n * sx aplicado a cada MuiAvatar individual (se mergea sobre los defaults).\n */\n avatarSx?: SxProps<Theme>;\n className?: string;\n /**\n * Overlap (px) entre avatares cuando hay varios. Default depende del tamaño.\n */\n overlap?: number;\n}\n\n// Escala alineada con la escala de MUI (sm=32, md=40, lg=56, xl=96) con borde\n// proporcional para el efecto stacked.\nconst sizeMap: Record<\n Exclude<AvatarSize, number>,\n { px: number; border: number; font: number; overlap: number }\n> = {\n sm: { px: 32, border: 2, font: 14, overlap: 8 },\n md: { px: 40, border: 2, font: 16, overlap: 10 },\n lg: { px: 56, border: 3, font: 22, overlap: 14 },\n xl: { px: 96, border: 4, font: 36, overlap: 20 },\n};\n\nconst resolveSize = (size: AvatarSize) => {\n if (typeof size === 'number') {\n return {\n px: size,\n border: Math.max(2, Math.round(size * 0.05)),\n font: Math.round(size * 0.4),\n overlap: Math.round(size * 0.25),\n };\n }\n return sizeMap[size];\n};\n\nconst mergeSx = (base: SxProps<Theme>, extra?: SxProps<Theme>): SxProps<Theme> => {\n if (!extra) return base;\n const baseArr = Array.isArray(base) ? base : [base];\n const extraArr = Array.isArray(extra) ? extra : [extra];\n return [...baseArr, ...extraArr] as SxProps<Theme>;\n};\n\nexport const Avatar: React.FC<AvatarProps> = ({\n items,\n type,\n displayedAvatars = 4,\n size = 'sm',\n showText = true,\n showTooltip = false,\n sx,\n avatarSx,\n className,\n overlap,\n}) => {\n // Indexamos por URL (no por posición) para que cambios en `items` — reorder,\n // filtrado, paginación — no hagan que un avatar válido \"herede\" el estado de\n // imagen rota de un item anterior que estaba en la misma posición.\n const [failedUrls, setFailedUrls] = useState<Set<string>>(new Set());\n\n const handleImageError = (url: string) => {\n setFailedUrls((prev) => {\n if (prev.has(url)) return prev;\n const next = new Set(prev);\n next.add(url);\n return next;\n });\n };\n\n if (!items || items.length === 0) {\n return null;\n }\n\n const s = resolveSize(size);\n const effectiveOverlap = overlap ?? s.overlap;\n const visibleItems = items.slice(0, displayedAvatars);\n\n const baseAvatarSx: SxProps<Theme> = {\n width: s.px,\n height: s.px,\n fontSize: s.font,\n fontWeight: 700,\n border: (theme) => `${s.border}px solid ${theme.palette.background.paper}`,\n boxSizing: 'content-box',\n };\n\n const renderSingleAvatar = (item: AvatarItem, i: number) => {\n const hasImage = !!item.imageUrl && !failedUrls.has(item.imageUrl);\n const showBadgeFallback = !!item.badge;\n const itemKey = item.imageUrl ?? `${item.text ?? ''}-${item.badge ?? ''}-${i}`;\n\n // Defaults tirando al theme; item.color / item.backgroundColor tienen prioridad.\n const itemSx: SxProps<Theme> = {\n bgcolor: item.backgroundColor ?? 'action.selected',\n color: item.color ?? 'text.secondary',\n // Stacking manual: margen negativo al segundo avatar en adelante.\n ...(i > 0 && { marginLeft: `-${effectiveOverlap}px` }),\n zIndex: visibleItems.length - i,\n };\n\n const finalSx = mergeSx(mergeSx(baseAvatarSx, itemSx), avatarSx);\n\n const avatarEl = (\n <MuiAvatar\n alt={item.text || 'User avatar'}\n src={hasImage ? item.imageUrl : undefined}\n imgProps={{\n onError: () => {\n if (item.imageUrl) handleImageError(item.imageUrl);\n },\n }}\n sx={finalSx}\n >\n {!hasImage && showBadgeFallback ? (\n <span aria-label={item.text}>{item.badge}</span>\n ) : !hasImage ? (\n <AccountCircleIcon\n aria-label={item.text}\n sx={{ width: '100%', height: '100%' }}\n />\n ) : null}\n </MuiAvatar>\n );\n\n if (showTooltip && item.text) {\n return (\n <Tooltip key={itemKey} title={item.text}>\n {avatarEl}\n </Tooltip>\n );\n }\n return <React.Fragment key={itemKey}>{avatarEl}</React.Fragment>;\n };\n\n return (\n <Box\n className={className}\n sx={mergeSx(\n {\n display: 'flex',\n alignItems: 'center',\n lineHeight: 1,\n width: 'fit-content',\n },\n sx,\n )}\n >\n <Box sx={{ display: 'flex', alignItems: 'center' }}>\n {visibleItems.map((item, i) => renderSingleAvatar(item, i))}\n </Box>\n\n {showText && items[0]?.text && (\n <Typography\n variant=\"caption\"\n sx={{\n ml: 1,\n fontSize: '0.75rem',\n fontWeight: 400,\n color: 'text.primary',\n }}\n >\n {type && items.length === 1 && (\n <Box component=\"span\" sx={{ mr: 0.5 }}>\n {type}:\n </Box>\n )}\n {items[0].text}\n {items.length > 1 && ` +${items.length - 1}`}\n </Typography>\n )}\n </Box>\n );\n};\n\nexport default Avatar;\n"],"names":["_a","MuiAvatar","React"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { default as Avatar } from './Avatar';
2
+ export type { AvatarItem, AvatarProps, AvatarSize } from './Avatar';
@@ -1,7 +1,6 @@
1
- import { ButtonProps } from '@mui/material/Button';
1
+ import { SxProps, Theme } from '@mui/material/styles';
2
2
  import { default as React } from 'react';
3
- type PickButtonProps = Pick<ButtonProps, "href" | "children" | "onClick" | "color" | "disabled" | "className" | "endIcon" | "startIcon" | "loading" | "loadingIndicator" | "variant" | "size" | "loadingPosition" | "type" | "sx">;
4
- export interface MyButtonProps extends PickButtonProps {
3
+ export interface ButtonProps {
5
4
  children?: React.ReactNode;
6
5
  variant?: "text" | "outlined" | "contained";
7
6
  disabled?: boolean;
@@ -13,10 +12,11 @@ export interface MyButtonProps extends PickButtonProps {
13
12
  loading?: boolean;
14
13
  loadingIndicator?: React.ReactNode;
15
14
  loadingPosition?: "start" | "end" | "center";
16
- color?: "primary" | "success" | "error" | "info" | "warning";
15
+ color?: "inherit" | "primary" | "secondary" | "success" | "error" | "info" | "warning";
17
16
  href?: string;
18
17
  "data-testid"?: string;
19
18
  type?: "button" | "submit";
19
+ sx?: SxProps<Theme>;
20
20
  }
21
- export declare const Button: React.FC<MyButtonProps>;
21
+ export declare const Button: React.FC<ButtonProps>;
22
22
  export default Button;
@@ -1 +1,2 @@
1
1
  export { default as Button } from './Button';
2
+ export type { ButtonProps } from './Button';
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
22
+ const jsxRuntime = require("react/jsx-runtime");
23
+ const material = require("@mui/material");
24
+ const resolvePreset = require("../../resolvePreset-CT3kU-K2.cjs");
25
+ const paddingMap = {
26
+ none: 0,
27
+ dense: 1.5,
28
+ normal: 2.5,
29
+ loose: 4
30
+ };
31
+ function buildCardSx({
32
+ variant,
33
+ padding,
34
+ clickable
35
+ }) {
36
+ return (theme) => __spreadProps(__spreadValues({
37
+ borderRadius: 2,
38
+ backgroundColor: "background.paper",
39
+ boxShadow: variant === "elevated" ? theme.shadows[1] : "none",
40
+ border: variant === "outlined" ? `1px solid ${theme.palette.divider}` : "none",
41
+ transition: theme.transitions.create(
42
+ ["box-shadow", "transform", "border-color"],
43
+ { duration: theme.transitions.duration.shorter }
44
+ ),
45
+ cursor: clickable ? "pointer" : "default"
46
+ }, clickable && {
47
+ "&:hover": {
48
+ boxShadow: variant === "elevated" ? theme.shadows[3] : variant === "outlined" ? theme.shadows[1] : "none",
49
+ transform: variant !== "plain" ? "translateY(-1px)" : "none"
50
+ },
51
+ "&:active": {
52
+ transform: "translateY(0)"
53
+ }
54
+ }), {
55
+ p: paddingMap[padding]
56
+ });
57
+ }
58
+ function Card({
59
+ children,
60
+ variant,
61
+ padding = "normal",
62
+ clickable = false,
63
+ preset,
64
+ raised,
65
+ sx,
66
+ onClick,
67
+ onBlur,
68
+ className,
69
+ "data-testid": dataTestId
70
+ }) {
71
+ const theme = material.useTheme();
72
+ const resolvedVariant = raised ? "elevated" : variant != null ? variant : "elevated";
73
+ const presetSx = resolvePreset.resolvePreset("Card", preset, theme);
74
+ const rootSx = [
75
+ buildCardSx({
76
+ variant: resolvedVariant,
77
+ padding,
78
+ clickable: clickable || Boolean(onClick)
79
+ }),
80
+ ...presetSx ? [presetSx] : [],
81
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
82
+ ];
83
+ return /* @__PURE__ */ jsxRuntime.jsx(
84
+ material.Card,
85
+ {
86
+ sx: rootSx,
87
+ className,
88
+ "data-testid": dataTestId,
89
+ onClick,
90
+ onBlur,
91
+ children
92
+ }
93
+ );
94
+ }
95
+ exports.Card = Card;
96
+ exports.buildCardSx = buildCardSx;
97
+ exports.default = Card;
98
+ //# sourceMappingURL=Card.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.cjs","sources":["../../../src/components/Card/Card.sx.ts","../../../src/components/Card/Card.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nexport type CardVariant = 'elevated' | 'outlined' | 'plain';\nexport type CardPadding = 'none' | 'dense' | 'normal' | 'loose';\n\nexport interface BuildCardSxArgs {\n variant: CardVariant;\n padding: CardPadding;\n clickable: boolean;\n}\n\nconst paddingMap: Record<CardPadding, number> = {\n none: 0,\n dense: 1.5,\n normal: 2.5,\n loose: 4,\n};\n\n/**\n * Estilo base del Card. La prop `sx` del consumer se compone encima junto al\n * preset resuelto (en Card.tsx). Este builder solo se ocupa de variant +\n * padding para que siga siendo predecible.\n */\nexport function buildCardSx({\n variant,\n padding,\n clickable,\n}: BuildCardSxArgs): SxProps<Theme> {\n return (theme) => ({\n borderRadius: 2,\n backgroundColor: 'background.paper',\n boxShadow: variant === 'elevated' ? theme.shadows[1] : 'none',\n border:\n variant === 'outlined'\n ? `1px solid ${theme.palette.divider}`\n : 'none',\n transition: theme.transitions.create(\n ['box-shadow', 'transform', 'border-color'],\n { duration: theme.transitions.duration.shorter },\n ),\n cursor: clickable ? 'pointer' : 'default',\n ...(clickable && {\n '&:hover': {\n boxShadow:\n variant === 'elevated'\n ? theme.shadows[3]\n : variant === 'outlined'\n ? theme.shadows[1]\n : 'none',\n transform: variant !== 'plain' ? 'translateY(-1px)' : 'none',\n },\n '&:active': {\n transform: 'translateY(0)',\n },\n }),\n p: paddingMap[padding],\n });\n}\n","import React, { type ReactNode } from 'react';\nimport { Card as MuiCard, useTheme } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport { buildCardSx, type CardVariant, type CardPadding } from './Card.sx';\n\nexport interface CardProps {\n /** Contenido del Card. */\n children?: ReactNode;\n /**\n * Variante visual.\n * - `elevated` (default): sombra sutil.\n * - `outlined`: borde sin sombra.\n * - `plain`: sin borde ni sombra, útil para layouts con nesting.\n */\n variant?: CardVariant;\n /** Densidad del padding interno. */\n padding?: CardPadding;\n /** Si `true`, muestra feedback de hover/active (cursor, sombra). */\n clickable?: boolean;\n /**\n * Preset registrado en `theme.styles.Card`. `\"default\"` usa el estilo\n * built-in sin preset extra.\n */\n preset?: string;\n /**\n * MUI `raised` legacy — mantenido por backward-compat. Equivale a\n * `variant=\"elevated\"` con sombra mayor. Ignora `variant` si se usa.\n */\n raised?: boolean;\n /** sx del root. Se compone sobre el base + preset. */\n sx?: SxProps<Theme>;\n onClick?: () => void;\n onBlur?: () => void;\n className?: string;\n 'data-testid'?: string;\n}\n\nexport function Card({\n children,\n variant,\n padding = 'normal',\n clickable = false,\n preset,\n raised,\n sx,\n onClick,\n onBlur,\n className,\n 'data-testid': dataTestId,\n}: CardProps) {\n const theme = useTheme();\n\n const resolvedVariant: CardVariant = raised\n ? 'elevated'\n : (variant ?? 'elevated');\n\n const presetSx = resolvePreset('Card', preset, theme);\n\n const rootSx: SxProps<Theme> = [\n buildCardSx({\n variant: resolvedVariant,\n padding,\n clickable: clickable || Boolean(onClick),\n }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n return (\n <MuiCard\n sx={rootSx}\n className={className}\n data-testid={dataTestId}\n onClick={onClick}\n onBlur={onBlur}\n >\n {children}\n </MuiCard>\n );\n}\n\nexport default Card;\n"],"names":["useTheme","resolvePreset","jsx","MuiCard"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,aAA0C;AAAA,EAC9C,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAOO,SAAS,YAAY;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AACF,GAAoC;AAClC,SAAO,CAAC,UAAW;AAAA,IACjB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB,WAAW,YAAY,aAAa,MAAM,QAAQ,CAAC,IAAI;AAAA,IACvD,QACE,YAAY,aACR,aAAa,MAAM,QAAQ,OAAO,KAClC;AAAA,IACN,YAAY,MAAM,YAAY;AAAA,MAC5B,CAAC,cAAc,aAAa,cAAc;AAAA,MAC1C,EAAE,UAAU,MAAM,YAAY,SAAS,QAAA;AAAA,IAAQ;AAAA,IAEjD,QAAQ,YAAY,YAAY;AAAA,KAC5B,aAAa;AAAA,IACf,WAAW;AAAA,MACT,WACE,YAAY,aACR,MAAM,QAAQ,CAAC,IACf,YAAY,aACV,MAAM,QAAQ,CAAC,IACf;AAAA,MACR,WAAW,YAAY,UAAU,qBAAqB;AAAA,IAAA;AAAA,IAExD,YAAY;AAAA,MACV,WAAW;AAAA,IAAA;AAAA,EACb,IAzBe;AAAA,IA2BjB,GAAG,WAAW,OAAO;AAAA,EAAA;AAEzB;AClBO,SAAS,KAAK;AAAA,EACnB;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AACjB,GAAc;AACZ,QAAM,QAAQA,SAAAA,SAAA;AAEd,QAAM,kBAA+B,SACjC,aACC,4BAAW;AAEhB,QAAM,WAAWC,cAAAA,cAAc,QAAQ,QAAQ,KAAK;AAEpD,QAAM,SAAyB;AAAA,IAC7B,YAAY;AAAA,MACV,SAAS;AAAA,MACT;AAAA,MACA,WAAW,aAAa,QAAQ,OAAO;AAAA,IAAA,CACxC;AAAA,IACD,GAAI,WAAW,CAAC,QAAQ,IAAI,CAAA;AAAA,IAC5B,GAAI,MAAM,QAAQ,EAAE,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,CAAA;AAAA,EAAC;AAG5C,SACEC,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC,IAAI;AAAA,MACJ;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;;;;"}
@@ -0,0 +1,36 @@
1
+ import { ReactNode } from 'react';
2
+ import { SxProps, Theme } from '@mui/material/styles';
3
+ import { CardVariant, CardPadding } from './Card.sx';
4
+ export interface CardProps {
5
+ /** Contenido del Card. */
6
+ children?: ReactNode;
7
+ /**
8
+ * Variante visual.
9
+ * - `elevated` (default): sombra sutil.
10
+ * - `outlined`: borde sin sombra.
11
+ * - `plain`: sin borde ni sombra, útil para layouts con nesting.
12
+ */
13
+ variant?: CardVariant;
14
+ /** Densidad del padding interno. */
15
+ padding?: CardPadding;
16
+ /** Si `true`, muestra feedback de hover/active (cursor, sombra). */
17
+ clickable?: boolean;
18
+ /**
19
+ * Preset registrado en `theme.styles.Card`. `"default"` usa el estilo
20
+ * built-in sin preset extra.
21
+ */
22
+ preset?: string;
23
+ /**
24
+ * MUI `raised` legacy — mantenido por backward-compat. Equivale a
25
+ * `variant="elevated"` con sombra mayor. Ignora `variant` si se usa.
26
+ */
27
+ raised?: boolean;
28
+ /** sx del root. Se compone sobre el base + preset. */
29
+ sx?: SxProps<Theme>;
30
+ onClick?: () => void;
31
+ onBlur?: () => void;
32
+ className?: string;
33
+ 'data-testid'?: string;
34
+ }
35
+ export declare function Card({ children, variant, padding, clickable, preset, raised, sx, onClick, onBlur, className, 'data-testid': dataTestId, }: CardProps): import("react/jsx-runtime").JSX.Element;
36
+ export default Card;
@@ -0,0 +1,98 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ import { jsx } from "react/jsx-runtime";
21
+ import { useTheme, Card as Card$1 } from "@mui/material";
22
+ import { r as resolvePreset } from "../../resolvePreset-B-IB0ehH.js";
23
+ const paddingMap = {
24
+ none: 0,
25
+ dense: 1.5,
26
+ normal: 2.5,
27
+ loose: 4
28
+ };
29
+ function buildCardSx({
30
+ variant,
31
+ padding,
32
+ clickable
33
+ }) {
34
+ return (theme) => __spreadProps(__spreadValues({
35
+ borderRadius: 2,
36
+ backgroundColor: "background.paper",
37
+ boxShadow: variant === "elevated" ? theme.shadows[1] : "none",
38
+ border: variant === "outlined" ? `1px solid ${theme.palette.divider}` : "none",
39
+ transition: theme.transitions.create(
40
+ ["box-shadow", "transform", "border-color"],
41
+ { duration: theme.transitions.duration.shorter }
42
+ ),
43
+ cursor: clickable ? "pointer" : "default"
44
+ }, clickable && {
45
+ "&:hover": {
46
+ boxShadow: variant === "elevated" ? theme.shadows[3] : variant === "outlined" ? theme.shadows[1] : "none",
47
+ transform: variant !== "plain" ? "translateY(-1px)" : "none"
48
+ },
49
+ "&:active": {
50
+ transform: "translateY(0)"
51
+ }
52
+ }), {
53
+ p: paddingMap[padding]
54
+ });
55
+ }
56
+ function Card({
57
+ children,
58
+ variant,
59
+ padding = "normal",
60
+ clickable = false,
61
+ preset,
62
+ raised,
63
+ sx,
64
+ onClick,
65
+ onBlur,
66
+ className,
67
+ "data-testid": dataTestId
68
+ }) {
69
+ const theme = useTheme();
70
+ const resolvedVariant = raised ? "elevated" : variant != null ? variant : "elevated";
71
+ const presetSx = resolvePreset("Card", preset, theme);
72
+ const rootSx = [
73
+ buildCardSx({
74
+ variant: resolvedVariant,
75
+ padding,
76
+ clickable: clickable || Boolean(onClick)
77
+ }),
78
+ ...presetSx ? [presetSx] : [],
79
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
80
+ ];
81
+ return /* @__PURE__ */ jsx(
82
+ Card$1,
83
+ {
84
+ sx: rootSx,
85
+ className,
86
+ "data-testid": dataTestId,
87
+ onClick,
88
+ onBlur,
89
+ children
90
+ }
91
+ );
92
+ }
93
+ export {
94
+ Card,
95
+ buildCardSx,
96
+ Card as default
97
+ };
98
+ //# sourceMappingURL=Card.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card.js","sources":["../../../src/components/Card/Card.sx.ts","../../../src/components/Card/Card.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nexport type CardVariant = 'elevated' | 'outlined' | 'plain';\nexport type CardPadding = 'none' | 'dense' | 'normal' | 'loose';\n\nexport interface BuildCardSxArgs {\n variant: CardVariant;\n padding: CardPadding;\n clickable: boolean;\n}\n\nconst paddingMap: Record<CardPadding, number> = {\n none: 0,\n dense: 1.5,\n normal: 2.5,\n loose: 4,\n};\n\n/**\n * Estilo base del Card. La prop `sx` del consumer se compone encima junto al\n * preset resuelto (en Card.tsx). Este builder solo se ocupa de variant +\n * padding para que siga siendo predecible.\n */\nexport function buildCardSx({\n variant,\n padding,\n clickable,\n}: BuildCardSxArgs): SxProps<Theme> {\n return (theme) => ({\n borderRadius: 2,\n backgroundColor: 'background.paper',\n boxShadow: variant === 'elevated' ? theme.shadows[1] : 'none',\n border:\n variant === 'outlined'\n ? `1px solid ${theme.palette.divider}`\n : 'none',\n transition: theme.transitions.create(\n ['box-shadow', 'transform', 'border-color'],\n { duration: theme.transitions.duration.shorter },\n ),\n cursor: clickable ? 'pointer' : 'default',\n ...(clickable && {\n '&:hover': {\n boxShadow:\n variant === 'elevated'\n ? theme.shadows[3]\n : variant === 'outlined'\n ? theme.shadows[1]\n : 'none',\n transform: variant !== 'plain' ? 'translateY(-1px)' : 'none',\n },\n '&:active': {\n transform: 'translateY(0)',\n },\n }),\n p: paddingMap[padding],\n });\n}\n","import React, { type ReactNode } from 'react';\nimport { Card as MuiCard, useTheme } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport { buildCardSx, type CardVariant, type CardPadding } from './Card.sx';\n\nexport interface CardProps {\n /** Contenido del Card. */\n children?: ReactNode;\n /**\n * Variante visual.\n * - `elevated` (default): sombra sutil.\n * - `outlined`: borde sin sombra.\n * - `plain`: sin borde ni sombra, útil para layouts con nesting.\n */\n variant?: CardVariant;\n /** Densidad del padding interno. */\n padding?: CardPadding;\n /** Si `true`, muestra feedback de hover/active (cursor, sombra). */\n clickable?: boolean;\n /**\n * Preset registrado en `theme.styles.Card`. `\"default\"` usa el estilo\n * built-in sin preset extra.\n */\n preset?: string;\n /**\n * MUI `raised` legacy — mantenido por backward-compat. Equivale a\n * `variant=\"elevated\"` con sombra mayor. Ignora `variant` si se usa.\n */\n raised?: boolean;\n /** sx del root. Se compone sobre el base + preset. */\n sx?: SxProps<Theme>;\n onClick?: () => void;\n onBlur?: () => void;\n className?: string;\n 'data-testid'?: string;\n}\n\nexport function Card({\n children,\n variant,\n padding = 'normal',\n clickable = false,\n preset,\n raised,\n sx,\n onClick,\n onBlur,\n className,\n 'data-testid': dataTestId,\n}: CardProps) {\n const theme = useTheme();\n\n const resolvedVariant: CardVariant = raised\n ? 'elevated'\n : (variant ?? 'elevated');\n\n const presetSx = resolvePreset('Card', preset, theme);\n\n const rootSx: SxProps<Theme> = [\n buildCardSx({\n variant: resolvedVariant,\n padding,\n clickable: clickable || Boolean(onClick),\n }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n return (\n <MuiCard\n sx={rootSx}\n className={className}\n data-testid={dataTestId}\n onClick={onClick}\n onBlur={onBlur}\n >\n {children}\n </MuiCard>\n );\n}\n\nexport default Card;\n"],"names":["MuiCard"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAWA,MAAM,aAA0C;AAAA,EAC9C,MAAM;AAAA,EACN,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACT;AAOO,SAAS,YAAY;AAAA,EAC1B;AAAA,EACA;AAAA,EACA;AACF,GAAoC;AAClC,SAAO,CAAC,UAAW;AAAA,IACjB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB,WAAW,YAAY,aAAa,MAAM,QAAQ,CAAC,IAAI;AAAA,IACvD,QACE,YAAY,aACR,aAAa,MAAM,QAAQ,OAAO,KAClC;AAAA,IACN,YAAY,MAAM,YAAY;AAAA,MAC5B,CAAC,cAAc,aAAa,cAAc;AAAA,MAC1C,EAAE,UAAU,MAAM,YAAY,SAAS,QAAA;AAAA,IAAQ;AAAA,IAEjD,QAAQ,YAAY,YAAY;AAAA,KAC5B,aAAa;AAAA,IACf,WAAW;AAAA,MACT,WACE,YAAY,aACR,MAAM,QAAQ,CAAC,IACf,YAAY,aACV,MAAM,QAAQ,CAAC,IACf;AAAA,MACR,WAAW,YAAY,UAAU,qBAAqB;AAAA,IAAA;AAAA,IAExD,YAAY;AAAA,MACV,WAAW;AAAA,IAAA;AAAA,EACb,IAzBe;AAAA,IA2BjB,GAAG,WAAW,OAAO;AAAA,EAAA;AAEzB;AClBO,SAAS,KAAK;AAAA,EACnB;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV,YAAY;AAAA,EACZ;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAe;AACjB,GAAc;AACZ,QAAM,QAAQ,SAAA;AAEd,QAAM,kBAA+B,SACjC,aACC,4BAAW;AAEhB,QAAM,WAAW,cAAc,QAAQ,QAAQ,KAAK;AAEpD,QAAM,SAAyB;AAAA,IAC7B,YAAY;AAAA,MACV,SAAS;AAAA,MACT;AAAA,MACA,WAAW,aAAa,QAAQ,OAAO;AAAA,IAAA,CACxC;AAAA,IACD,GAAI,WAAW,CAAC,QAAQ,IAAI,CAAA;AAAA,IAC5B,GAAI,MAAM,QAAQ,EAAE,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,CAAA;AAAA,EAAC;AAG5C,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC,IAAI;AAAA,MACJ;AAAA,MACA,eAAa;AAAA,MACb;AAAA,MACA;AAAA,MAEC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -0,0 +1,14 @@
1
+ import { SxProps, Theme } from '@mui/material/styles';
2
+ export type CardVariant = 'elevated' | 'outlined' | 'plain';
3
+ export type CardPadding = 'none' | 'dense' | 'normal' | 'loose';
4
+ export interface BuildCardSxArgs {
5
+ variant: CardVariant;
6
+ padding: CardPadding;
7
+ clickable: boolean;
8
+ }
9
+ /**
10
+ * Estilo base del Card. La prop `sx` del consumer se compone encima junto al
11
+ * preset resuelto (en Card.tsx). Este builder solo se ocupa de variant +
12
+ * padding para que siga siendo predecible.
13
+ */
14
+ export declare function buildCardSx({ variant, padding, clickable, }: BuildCardSxArgs): SxProps<Theme>;
@@ -0,0 +1,4 @@
1
+ export { Card, default } from './Card';
2
+ export type { CardProps } from './Card';
3
+ export type { CardVariant, CardPadding } from './Card.sx';
4
+ export { buildCardSx } from './Card.sx';
@@ -0,0 +1,6 @@
1
+ export * from './Card/index'
2
+ export {}
3
+ import _default from './Card/index'
4
+ export default _default
5
+ export * from './Card/index'
6
+ export {}