@soyfri/shared-library 2.0.0-beta.10 → 2.0.0-beta.12

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 (784) hide show
  1. package/{dist/components/Autocomplete/Autocomplete.js → Autocomplete-BA-cGASd.js} +22 -20
  2. package/Autocomplete-BA-cGASd.js.map +1 -0
  3. package/{dist/components/Autocomplete/Autocomplete.cjs → Autocomplete-C2x-lBvZ.cjs} +20 -19
  4. package/Autocomplete-C2x-lBvZ.cjs.map +1 -0
  5. package/{dist/components/Avatar/Avatar.cjs → Avatar-9L7YMxya.cjs} +1 -2
  6. package/Avatar-9L7YMxya.cjs.map +1 -0
  7. package/{dist/components/Avatar/Avatar.js → Avatar-BJTr-PBd.js} +2 -2
  8. package/Avatar-BJTr-PBd.js.map +1 -0
  9. package/{dist/components/Card/Card.cjs → Card-DG_crfkK.cjs} +2 -4
  10. package/Card-DG_crfkK.cjs.map +1 -0
  11. package/{dist/components/Card/Card.js → Card-Ug-ttVSh.js} +7 -8
  12. package/Card-Ug-ttVSh.js.map +1 -0
  13. package/{dist/components/Chip/Chip.js → Chip-OPYQ1uQ_.js} +2 -2
  14. package/Chip-OPYQ1uQ_.js.map +1 -0
  15. package/{dist/components/Chip/Chip.cjs → Chip-qoJLDiva.cjs} +1 -2
  16. package/Chip-qoJLDiva.cjs.map +1 -0
  17. package/{dist/components/DatePicker/DatePicker.js → DatePicker-8f_9bwhS.js} +4 -5
  18. package/DatePicker-8f_9bwhS.js.map +1 -0
  19. package/{dist/components/DatePicker/DatePicker.cjs → DatePicker-DLSfkgGA.cjs} +3 -5
  20. package/DatePicker-DLSfkgGA.cjs.map +1 -0
  21. package/{dist/components/DateRangePicker/DateRangePicker.js → DateRangePicker-BVpeJCHI.js} +2 -2
  22. package/DateRangePicker-BVpeJCHI.js.map +1 -0
  23. package/{dist/components/DateRangePicker/DateRangePicker.cjs → DateRangePicker-B_hKQhbj.cjs} +1 -2
  24. package/DateRangePicker-B_hKQhbj.cjs.map +1 -0
  25. package/{dist/components/DateTimePicker/DateTimePicker.cjs → DateTimePicker-CWNW09-O.cjs} +3 -5
  26. package/DateTimePicker-CWNW09-O.cjs.map +1 -0
  27. package/{dist/components/DateTimePicker/DateTimePicker.js → DateTimePicker-D4L9GAod.js} +4 -5
  28. package/DateTimePicker-D4L9GAod.js.map +1 -0
  29. package/{dist/components/Input/Input.js → Input-Cp911l23.js} +4 -5
  30. package/Input-Cp911l23.js.map +1 -0
  31. package/{dist/components/Input/Input.cjs → Input-DI0jfq5X.cjs} +3 -5
  32. package/Input-DI0jfq5X.cjs.map +1 -0
  33. package/{dist/components/Modal/Modal.cjs → Modal-Bm_HH9cv.cjs} +3 -3
  34. package/Modal-Bm_HH9cv.cjs.map +1 -0
  35. package/{dist/components/Modal/Modal.js → Modal-Bnz6d9m9.js} +6 -5
  36. package/Modal-Bnz6d9m9.js.map +1 -0
  37. package/{dist/components/RadioGroup/RadioGroup.cjs → RadioGroup-CxqDHap1.cjs} +3 -5
  38. package/RadioGroup-CxqDHap1.cjs.map +1 -0
  39. package/{dist/components/RadioGroup/RadioGroup.js → RadioGroup-DMi9FvMP.js} +4 -5
  40. package/RadioGroup-DMi9FvMP.js.map +1 -0
  41. package/{dist/components/Select/Select.js → Select-3CBOfM2H.js} +5 -6
  42. package/Select-3CBOfM2H.js.map +1 -0
  43. package/{dist/components/Select/Select.cjs → Select-Bku4f4f8.cjs} +3 -5
  44. package/Select-Bku4f4f8.cjs.map +1 -0
  45. package/{dist/components/Stat/Stat.cjs → Stat-BUcFCGrz.cjs} +3 -5
  46. package/Stat-BUcFCGrz.cjs.map +1 -0
  47. package/{dist/components/Stat/Stat.js → Stat-C06A_izS.js} +4 -5
  48. package/Stat-C06A_izS.js.map +1 -0
  49. package/{dist/components/StatusMessage/StatusMessage.cjs → StatusMessage-C5B6oGZ_.cjs} +1 -2
  50. package/StatusMessage-C5B6oGZ_.cjs.map +1 -0
  51. package/{dist/components/StatusMessage/StatusMessage.js → StatusMessage-D1GlfQdz.js} +2 -2
  52. package/StatusMessage-D1GlfQdz.js.map +1 -0
  53. package/Step-Dq0N72YB.js +49 -0
  54. package/Step-Dq0N72YB.js.map +1 -0
  55. package/Step-a8U8O-91.cjs +48 -0
  56. package/Step-a8U8O-91.cjs.map +1 -0
  57. package/{dist/components/Switch/Switch.cjs → Switch-BIeobv6i.cjs} +2 -4
  58. package/Switch-BIeobv6i.cjs.map +1 -0
  59. package/{dist/components/Switch/Switch.js → Switch-DQEOxM2R.js} +3 -4
  60. package/Switch-DQEOxM2R.js.map +1 -0
  61. package/{dist/components/Tabs/Tabs.cjs → Tab-Co31KY2k.cjs} +2 -3
  62. package/Tab-Co31KY2k.cjs.map +1 -0
  63. package/{dist/components/Tabs/Tabs.js → Tab-DiK62gRz.js} +4 -4
  64. package/Tab-DiK62gRz.js.map +1 -0
  65. package/{dist/components/Table/Table.js → Table-C2LbW0B1.js} +7 -7
  66. package/Table-C2LbW0B1.js.map +1 -0
  67. package/{dist/components/Table/Table.cjs → Table-C4OM6rrC.cjs} +6 -7
  68. package/Table-C4OM6rrC.cjs.map +1 -0
  69. package/{dist/components → components}/AppBar/AppBar.cjs +1 -1
  70. package/{dist/components → components}/AppBar/AppBar.js +1 -1
  71. package/components/Autocomplete/Autocomplete.cjs +7 -0
  72. package/components/Autocomplete/Autocomplete.cjs.map +1 -0
  73. package/components/Autocomplete/Autocomplete.js +7 -0
  74. package/components/Autocomplete/Autocomplete.js.map +1 -0
  75. package/components/Avatar/Avatar.cjs +5 -0
  76. package/components/Avatar/Avatar.cjs.map +1 -0
  77. package/components/Avatar/Avatar.js +5 -0
  78. package/components/Avatar/Avatar.js.map +1 -0
  79. package/components/Card/Card.cjs +10 -0
  80. package/components/Card/Card.cjs.map +1 -0
  81. package/components/Card/Card.js +10 -0
  82. package/components/Card/Card.js.map +1 -0
  83. package/components/Chip/Chip.cjs +5 -0
  84. package/components/Chip/Chip.cjs.map +1 -0
  85. package/components/Chip/Chip.js +5 -0
  86. package/components/Chip/Chip.js.map +1 -0
  87. package/{dist/components → components}/Column/Column.cjs +1 -1
  88. package/{dist/components → components}/Column/Column.cjs.map +1 -1
  89. package/{dist/components → components}/Column/Column.d.ts +1 -1
  90. package/{dist/components → components}/Column/Column.js +1 -1
  91. package/{dist/components → components}/Column/Column.js.map +1 -1
  92. package/{dist/components → components}/Column/index.d.ts +1 -0
  93. package/components/DatePicker/DatePicker.cjs +6 -0
  94. package/components/DatePicker/DatePicker.cjs.map +1 -0
  95. package/components/DatePicker/DatePicker.js +6 -0
  96. package/components/DatePicker/DatePicker.js.map +1 -0
  97. package/components/DateRangePicker/DateRangePicker.cjs +5 -0
  98. package/components/DateRangePicker/DateRangePicker.cjs.map +1 -0
  99. package/components/DateRangePicker/DateRangePicker.js +5 -0
  100. package/components/DateRangePicker/DateRangePicker.js.map +1 -0
  101. package/components/DateTimePicker/DateTimePicker.cjs +6 -0
  102. package/components/DateTimePicker/DateTimePicker.cjs.map +1 -0
  103. package/components/DateTimePicker/DateTimePicker.js +6 -0
  104. package/components/DateTimePicker/DateTimePicker.js.map +1 -0
  105. package/{dist/components → components}/Drawer/Drawer.cjs +1 -1
  106. package/{dist/components → components}/Drawer/Drawer.js +1 -1
  107. package/components/Input/Input.cjs +6 -0
  108. package/components/Input/Input.cjs.map +1 -0
  109. package/components/Input/Input.js +6 -0
  110. package/components/Input/Input.js.map +1 -0
  111. package/components/Modal/Modal.cjs +9 -0
  112. package/components/Modal/Modal.cjs.map +1 -0
  113. package/components/Modal/Modal.js +9 -0
  114. package/components/Modal/Modal.js.map +1 -0
  115. package/{dist/components → components}/Modal/index.d.ts +2 -1
  116. package/components/Modal.d.ts +6 -0
  117. package/components/RadioGroup/RadioGroup.cjs +6 -0
  118. package/components/RadioGroup/RadioGroup.cjs.map +1 -0
  119. package/components/RadioGroup/RadioGroup.js +6 -0
  120. package/components/RadioGroup/RadioGroup.js.map +1 -0
  121. package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs +1 -1
  122. package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js +1 -1
  123. package/components/Select/Select.cjs +7 -0
  124. package/components/Select/Select.cjs.map +1 -0
  125. package/components/Select/Select.js +7 -0
  126. package/components/Select/Select.js.map +1 -0
  127. package/components/Stat/Stat.cjs +6 -0
  128. package/components/Stat/Stat.cjs.map +1 -0
  129. package/components/Stat/Stat.js +6 -0
  130. package/components/Stat/Stat.js.map +1 -0
  131. package/components/StatusMessage/StatusMessage.cjs +6 -0
  132. package/components/StatusMessage/StatusMessage.cjs.map +1 -0
  133. package/{dist/components → components}/StatusMessage/StatusMessage.d.ts +1 -1
  134. package/components/StatusMessage/StatusMessage.js +6 -0
  135. package/components/StatusMessage/StatusMessage.js.map +1 -0
  136. package/components/StatusMessage/index.d.ts +2 -0
  137. package/components/StatusMessage.d.ts +6 -0
  138. package/components/Stepper/Stepper.cjs +6 -0
  139. package/components/Stepper/Stepper.cjs.map +1 -0
  140. package/components/Stepper/Stepper.js +6 -0
  141. package/components/Stepper/Stepper.js.map +1 -0
  142. package/components/Switch/Switch.cjs +6 -0
  143. package/components/Switch/Switch.cjs.map +1 -0
  144. package/components/Switch/Switch.js +6 -0
  145. package/components/Switch/Switch.js.map +1 -0
  146. package/components/Table/Table.cjs +5 -0
  147. package/components/Table/Table.cjs.map +1 -0
  148. package/{dist/components → components}/Table/Table.d.ts +1 -1
  149. package/components/Table/Table.js +5 -0
  150. package/components/Table/Table.js.map +1 -0
  151. package/components/Tabs/Tabs.cjs +6 -0
  152. package/components/Tabs/Tabs.cjs.map +1 -0
  153. package/components/Tabs/Tabs.js +6 -0
  154. package/components/Tabs/Tabs.js.map +1 -0
  155. package/{dist/hooks → hooks}/Wizard/WizardContext.d.ts +2 -2
  156. package/{dist/index.cjs → index.cjs} +46 -1
  157. package/{dist/index.cjs.map → index.cjs.map} +1 -1
  158. package/index.d.ts +33 -0
  159. package/index.js +82 -0
  160. package/{dist/index.js.map → index.js.map} +1 -1
  161. package/package.json +178 -45
  162. package/{dist/resolvePreset-CT3kU-K2.cjs → resolvePreset-CxTI6_Ln.cjs} +3 -3
  163. package/{dist/resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +1 -1
  164. package/{dist/resolvePreset-B-IB0ehH.js → resolvePreset-K6_BfWHD.js} +3 -3
  165. package/{dist/resolvePreset-B-IB0ehH.js.map → resolvePreset-K6_BfWHD.js.map} +1 -1
  166. package/useWizard-CWdIxZzX.cjs.map +1 -0
  167. package/useWizard-CWq--C3o.js.map +1 -0
  168. package/.dockerignore +0 -8
  169. package/.github/workflows/publish.yml +0 -107
  170. package/.prettierrc +0 -3
  171. package/.storybook/main.ts +0 -19
  172. package/.storybook/preview.ts +0 -14
  173. package/.storybook/vitest.setup.ts +0 -9
  174. package/Dockerfile +0 -37
  175. package/Readme.md +0 -243
  176. package/build.js +0 -102
  177. package/chromatic.config.json +0 -5
  178. package/cleanDirectories.js +0 -40
  179. package/dist/components/Autocomplete/Autocomplete.cjs.map +0 -1
  180. package/dist/components/Autocomplete/Autocomplete.js.map +0 -1
  181. package/dist/components/Avatar/Avatar.cjs.map +0 -1
  182. package/dist/components/Avatar/Avatar.js.map +0 -1
  183. package/dist/components/Card/Card.cjs.map +0 -1
  184. package/dist/components/Card/Card.js.map +0 -1
  185. package/dist/components/Chip/Chip.cjs.map +0 -1
  186. package/dist/components/Chip/Chip.js.map +0 -1
  187. package/dist/components/DatePicker/DatePicker.cjs.map +0 -1
  188. package/dist/components/DatePicker/DatePicker.js.map +0 -1
  189. package/dist/components/DateRangePicker/DateRangePicker.cjs.map +0 -1
  190. package/dist/components/DateRangePicker/DateRangePicker.js.map +0 -1
  191. package/dist/components/DateTimePicker/DateTimePicker.cjs.map +0 -1
  192. package/dist/components/DateTimePicker/DateTimePicker.js.map +0 -1
  193. package/dist/components/Input/Input.cjs.map +0 -1
  194. package/dist/components/Input/Input.js.map +0 -1
  195. package/dist/components/Modal/Modal.cjs.map +0 -1
  196. package/dist/components/Modal/Modal.js.map +0 -1
  197. package/dist/components/Modal.d.ts +0 -2
  198. package/dist/components/RadioGroup/RadioGroup.cjs.map +0 -1
  199. package/dist/components/RadioGroup/RadioGroup.js.map +0 -1
  200. package/dist/components/Select/Select.cjs.map +0 -1
  201. package/dist/components/Select/Select.js.map +0 -1
  202. package/dist/components/Stat/Stat.cjs.map +0 -1
  203. package/dist/components/Stat/Stat.js.map +0 -1
  204. package/dist/components/StatusMessage/StatusMessage.cjs.map +0 -1
  205. package/dist/components/StatusMessage/StatusMessage.js.map +0 -1
  206. package/dist/components/StatusMessage/index.d.ts +0 -1
  207. package/dist/components/StatusMessage.d.ts +0 -2
  208. package/dist/components/Stepper/Stepper.cjs +0 -162
  209. package/dist/components/Stepper/Stepper.cjs.map +0 -1
  210. package/dist/components/Stepper/Stepper.js +0 -162
  211. package/dist/components/Stepper/Stepper.js.map +0 -1
  212. package/dist/components/Switch/Switch.cjs.map +0 -1
  213. package/dist/components/Switch/Switch.js.map +0 -1
  214. package/dist/components/Table/Table.cjs.map +0 -1
  215. package/dist/components/Table/Table.js.map +0 -1
  216. package/dist/components/Tabs/Tabs.cjs.map +0 -1
  217. package/dist/components/Tabs/Tabs.js.map +0 -1
  218. package/dist/index.d.ts +0 -3
  219. package/dist/index.js +0 -37
  220. package/dist/package.json +0 -207
  221. package/dist/useWizard-CWdIxZzX.cjs.map +0 -1
  222. package/dist/useWizard-CWq--C3o.js.map +0 -1
  223. package/rollup.config.cjs +0 -87
  224. package/src/components/ActionMenu/ActionMenu.stories.tsx +0 -230
  225. package/src/components/ActionMenu/ActionMenu.tsx +0 -174
  226. package/src/components/ActionMenu/index.ts +0 -2
  227. package/src/components/AppBar/AppBar.stories.tsx +0 -272
  228. package/src/components/AppBar/AppBar.sx.ts +0 -32
  229. package/src/components/AppBar/AppBar.tsx +0 -123
  230. package/src/components/AppBar/AppBarBrand.tsx +0 -120
  231. package/src/components/AppBar/AppBarContext.ts +0 -25
  232. package/src/components/AppBar/AppBarMenuToggle.tsx +0 -90
  233. package/src/components/AppBar/AppBarUserMenu.tsx +0 -217
  234. package/src/components/AppBar/index.ts +0 -25
  235. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -477
  236. package/src/components/Autocomplete/Autocomplete.helpers.ts +0 -60
  237. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -748
  238. package/src/components/Autocomplete/Autocomplete.sx.ts +0 -30
  239. package/src/components/Autocomplete/Autocomplete.tsx +0 -361
  240. package/src/components/Autocomplete/Autocomplete.types.ts +0 -13
  241. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +0 -55
  242. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +0 -17
  243. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +0 -31
  244. package/src/components/Autocomplete/index.ts +0 -12
  245. package/src/components/Avatar/Avatar.definitions.ts +0 -162
  246. package/src/components/Avatar/Avatar.stories.tsx +0 -258
  247. package/src/components/Avatar/Avatar.tsx +0 -206
  248. package/src/components/Avatar/index.ts +0 -1
  249. package/src/components/Button/Button.definition.ts +0 -97
  250. package/src/components/Button/Button.stories.tsx +0 -285
  251. package/src/components/Button/Button.tsx +0 -67
  252. package/src/components/Button/index.ts +0 -1
  253. package/src/components/Card/Card.definition.ts +0 -5
  254. package/src/components/Card/Card.stories.tsx +0 -221
  255. package/src/components/Card/Card.sx.ts +0 -104
  256. package/src/components/Card/Card.tsx +0 -200
  257. package/src/components/Card/index.ts +0 -9
  258. package/src/components/Chip/Chip.definitions.ts +0 -167
  259. package/src/components/Chip/Chip.stories.tsx +0 -265
  260. package/src/components/Chip/Chip.tsx +0 -61
  261. package/src/components/Chip/index.ts +0 -1
  262. package/src/components/Column/Column.tsx +0 -29
  263. package/src/components/Column/index.ts +0 -1
  264. package/src/components/DatePicker/DatePicker.definitions.ts +0 -228
  265. package/src/components/DatePicker/DatePicker.helpers.ts +0 -24
  266. package/src/components/DatePicker/DatePicker.stories.tsx +0 -309
  267. package/src/components/DatePicker/DatePicker.sx.ts +0 -33
  268. package/src/components/DatePicker/DatePicker.tsx +0 -189
  269. package/src/components/DatePicker/DatePicker.types.ts +0 -10
  270. package/src/components/DatePicker/index.ts +0 -9
  271. package/src/components/DateRangePicker/DateRangePicker.definitions.ts +0 -191
  272. package/src/components/DateRangePicker/DateRangePicker.stories.tsx +0 -252
  273. package/src/components/DateRangePicker/DateRangePicker.tsx +0 -56
  274. package/src/components/DateRangePicker/index.ts +0 -1
  275. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -256
  276. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +0 -38
  277. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -418
  278. package/src/components/DateTimePicker/DateTimePicker.sx.ts +0 -30
  279. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -225
  280. package/src/components/DateTimePicker/DateTimePicker.types.ts +0 -10
  281. package/src/components/DateTimePicker/index.ts +0 -9
  282. package/src/components/Drawer/Drawer.stories.tsx +0 -438
  283. package/src/components/Drawer/Drawer.sx.ts +0 -106
  284. package/src/components/Drawer/Drawer.tsx +0 -222
  285. package/src/components/Drawer/DrawerContext.ts +0 -26
  286. package/src/components/Drawer/DrawerItem.tsx +0 -110
  287. package/src/components/Drawer/index.ts +0 -10
  288. package/src/components/Flyout/Flyout.stories.tsx +0 -282
  289. package/src/components/Flyout/Flyout.tsx +0 -122
  290. package/src/components/Flyout/index.ts +0 -1
  291. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  292. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  293. package/src/components/Gallery/Gallery.tsx +0 -118
  294. package/src/components/Gallery/GalleryLightbox.tsx +0 -170
  295. package/src/components/Gallery/GalleryMain.tsx +0 -84
  296. package/src/components/Gallery/GalleryThumbnails.tsx +0 -106
  297. package/src/components/Gallery/index.ts +0 -1
  298. package/src/components/Icon/Icon.stories.tsx +0 -121
  299. package/src/components/Icon/Icon.tsx +0 -175
  300. package/src/components/Icon/index.ts +0 -2
  301. package/src/components/Input/Input.definitions.ts +0 -348
  302. package/src/components/Input/Input.helpers.ts +0 -49
  303. package/src/components/Input/Input.stories.tsx +0 -528
  304. package/src/components/Input/Input.sx.ts +0 -42
  305. package/src/components/Input/Input.tsx +0 -141
  306. package/src/components/Input/Input.types.ts +0 -10
  307. package/src/components/Input/index.ts +0 -9
  308. package/src/components/InputGroup/InputGroup.definitions.ts +0 -158
  309. package/src/components/InputGroup/InputGroup.stories.tsx +0 -267
  310. package/src/components/InputGroup/InputGroup.tsx +0 -179
  311. package/src/components/InputGroup/index.ts +0 -1
  312. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  313. package/src/components/MenuButton/MenuButton.tsx +0 -100
  314. package/src/components/MenuButton/index.ts +0 -1
  315. package/src/components/Modal/Modal.stories.tsx +0 -721
  316. package/src/components/Modal/Modal.tsx +0 -355
  317. package/src/components/Modal/ModalBody.tsx +0 -16
  318. package/src/components/Modal/ModalFooter.tsx +0 -71
  319. package/src/components/Modal/ModalHeader.tsx +0 -18
  320. package/src/components/Modal/index.ts +0 -6
  321. package/src/components/PageLoader/PageLoader.stories.tsx +0 -217
  322. package/src/components/PageLoader/PageLoader.tsx +0 -96
  323. package/src/components/PageLoader/index.ts +0 -2
  324. package/src/components/RadioGroup/RadioGroup.definitions.ts +0 -177
  325. package/src/components/RadioGroup/RadioGroup.stories.tsx +0 -231
  326. package/src/components/RadioGroup/RadioGroup.sx.ts +0 -75
  327. package/src/components/RadioGroup/RadioGroup.tsx +0 -196
  328. package/src/components/RadioGroup/RadioGroup.types.ts +0 -10
  329. package/src/components/RadioGroup/index.ts +0 -9
  330. package/src/components/ScrollTopButton/ScrollTopButton.stories.tsx +0 -158
  331. package/src/components/ScrollTopButton/ScrollTopButton.tsx +0 -135
  332. package/src/components/ScrollTopButton/index.ts +0 -8
  333. package/src/components/ScrollTopButton/scrollToTop.ts +0 -37
  334. package/src/components/Select/Select.definitions.ts +0 -602
  335. package/src/components/Select/Select.helpers.ts +0 -71
  336. package/src/components/Select/Select.stories.tsx +0 -687
  337. package/src/components/Select/Select.sx.ts +0 -14
  338. package/src/components/Select/Select.tsx +0 -429
  339. package/src/components/Select/Select.types.ts +0 -15
  340. package/src/components/Select/_parts/SelectMenuItem.tsx +0 -40
  341. package/src/components/Select/_parts/SelectSearchHeader.tsx +0 -51
  342. package/src/components/Select/_parts/SelectValue.tsx +0 -96
  343. package/src/components/Select/index.ts +0 -14
  344. package/src/components/Stat/Stat.stories.tsx +0 -85
  345. package/src/components/Stat/Stat.tsx +0 -117
  346. package/src/components/Stat/index.ts +0 -2
  347. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -130
  348. package/src/components/StatusMessage/StatusMessage.tsx +0 -162
  349. package/src/components/StatusMessage/index.ts +0 -2
  350. package/src/components/Stepper/Step.tsx +0 -21
  351. package/src/components/Stepper/Stepper.definition.ts +0 -75
  352. package/src/components/Stepper/Stepper.stories.tsx +0 -194
  353. package/src/components/Stepper/Stepper.tsx +0 -210
  354. package/src/components/Stepper/index.ts +0 -2
  355. package/src/components/Switch/Switch.definitions.ts +0 -134
  356. package/src/components/Switch/Switch.stories.tsx +0 -213
  357. package/src/components/Switch/Switch.sx.ts +0 -81
  358. package/src/components/Switch/Switch.tsx +0 -172
  359. package/src/components/Switch/Switch.types.ts +0 -10
  360. package/src/components/Switch/index.ts +0 -9
  361. package/src/components/Table/EmptyTable.png +0 -0
  362. package/src/components/Table/Table.definition.ts +0 -580
  363. package/src/components/Table/Table.stories.tsx +0 -853
  364. package/src/components/Table/Table.tsx +0 -495
  365. package/src/components/Table/data.ts +0 -134
  366. package/src/components/Table/exportsUtils.ts +0 -195
  367. package/src/components/Table/index.ts +0 -3
  368. package/src/components/Table/types.ts +0 -34
  369. package/src/components/Tabs/Tab.definition.ts +0 -53
  370. package/src/components/Tabs/Tab.tsx +0 -19
  371. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  372. package/src/components/Tabs/Tabs.tsx +0 -99
  373. package/src/components/Tabs/_tabUtils.tsx +0 -4
  374. package/src/components/Tabs/index.ts +0 -2
  375. package/src/components/Timeline/Timeline.definition.ts +0 -43
  376. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  377. package/src/components/Timeline/Timeline.tsx +0 -49
  378. package/src/components/Timeline/TimelineItem.tsx +0 -31
  379. package/src/components/Timeline/index.ts +0 -2
  380. package/src/components/Tooltip/Tooltip.stories.tsx +0 -129
  381. package/src/components/Tooltip/Tooltip.tsx +0 -58
  382. package/src/components/Tooltip/index.ts +0 -1
  383. package/src/components/_shared/formField.sx.ts +0 -118
  384. package/src/components/_shared/resolvePreset.ts +0 -35
  385. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  386. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  387. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  388. package/src/hooks/ClipBoard/index.ts +0 -1
  389. package/src/hooks/Wizard/Wizard.stories.tsx +0 -301
  390. package/src/hooks/Wizard/WizardContext.tsx +0 -166
  391. package/src/hooks/Wizard/index.ts +0 -6
  392. package/src/hooks/Wizard/useWizard.ts +0 -13
  393. package/src/index.ts +0 -17
  394. package/src/mui.ts +0 -54
  395. package/src/styles.css +0 -3
  396. package/src/theme/componentStyles.ts +0 -49
  397. package/src/theme/tokens.ts +0 -43
  398. package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
  399. package/storybook-static/assets/AccountCircle-BDZFsbTw.js +0 -1
  400. package/storybook-static/assets/ActionMenu-EynP8yU1.js +0 -19
  401. package/storybook-static/assets/ActionMenu.stories-DqSqRGix.js +0 -185
  402. package/storybook-static/assets/Alert-3zvTPc0p.js +0 -1
  403. package/storybook-static/assets/AppBar.stories-DcX3M5th.js +0 -172
  404. package/storybook-static/assets/Autocomplete.stories-CXJm8FOT.js +0 -788
  405. package/storybook-static/assets/Avatar-NbFfkZws.js +0 -1
  406. package/storybook-static/assets/Avatar.stories-CwOYCzqU.js +0 -390
  407. package/storybook-static/assets/Box-BnhEcfFm.js +0 -1
  408. package/storybook-static/assets/Button-D9h7OggD.js +0 -1
  409. package/storybook-static/assets/Button-DBpqmVB_.js +0 -1
  410. package/storybook-static/assets/Button.stories-F20dmnjq.js +0 -320
  411. package/storybook-static/assets/ButtonBase-qyaMEhe4.js +0 -74
  412. package/storybook-static/assets/Card.stories-B3NpAhO0.js +0 -154
  413. package/storybook-static/assets/CheckCircleOutline-CEj5mDsl.js +0 -1
  414. package/storybook-static/assets/Chip-C3vKPpzR.js +0 -1
  415. package/storybook-static/assets/Chip.stories-sxcfHVo9.js +0 -333
  416. package/storybook-static/assets/CircularProgress-DC7ZNWwl.js +0 -28
  417. package/storybook-static/assets/Clear-4kYcKvT3.js +0 -1
  418. package/storybook-static/assets/ClipBoard-DvLBdNHe.js +0 -1
  419. package/storybook-static/assets/ClipBoard.stories-BGUo47r6.js +0 -108
  420. package/storybook-static/assets/Close-CgHeRgmh.js +0 -1
  421. package/storybook-static/assets/Close-Cy8nELYU.js +0 -1
  422. package/storybook-static/assets/Color-AVL7NMMY-BJKvwERm.js +0 -1
  423. package/storybook-static/assets/ContentCopy-BfLTDb10.js +0 -1
  424. package/storybook-static/assets/DatePicker-Clkpr-Ku.js +0 -1
  425. package/storybook-static/assets/DatePicker.stories-EaUCMkh3.js +0 -444
  426. package/storybook-static/assets/DateRangePicker.stories-BMlkj-8K.js +0 -390
  427. package/storybook-static/assets/DateTimePicker.stories-B6gdzKq5.js +0 -555
  428. package/storybook-static/assets/DefaultPropsProvider-BGoQxtDa.js +0 -16
  429. package/storybook-static/assets/Delete-D2SMMmIA.js +0 -1
  430. package/storybook-static/assets/DialogContent-BeCDKgax.js +0 -1
  431. package/storybook-static/assets/Divider-BbCj9wT4.js +0 -1
  432. package/storybook-static/assets/DocsRenderer-PQXLIZUC-BebLK5Y_.js +0 -1243
  433. package/storybook-static/assets/Drawer-DcFwy73r.js +0 -1
  434. package/storybook-static/assets/Drawer.stories-C5AZkJBk.js +0 -173
  435. package/storybook-static/assets/EmptyTable-B-RKtgVs.png +0 -0
  436. package/storybook-static/assets/ErrorOutline-D9gM7ART.js +0 -1
  437. package/storybook-static/assets/Fade-Ll96CvH8.js +0 -1
  438. package/storybook-static/assets/Flyout.stories-Cf7z6MNw.js +0 -163
  439. package/storybook-static/assets/Gallery.stories-DdpWVTF6.js +0 -127
  440. package/storybook-static/assets/Grow-8y4FglGK.js +0 -1
  441. package/storybook-static/assets/Home-BRvJEp2L.js +0 -1
  442. package/storybook-static/assets/Icon.stories-D0mUiW_t.js +0 -78
  443. package/storybook-static/assets/IconButton-9OYSTH58.js +0 -1
  444. package/storybook-static/assets/Input-CjX0t4h-.js +0 -1
  445. package/storybook-static/assets/Input.stories-BRxekliy.js +0 -650
  446. package/storybook-static/assets/InputGroup.stories-DH6gUfmn.js +0 -306
  447. package/storybook-static/assets/KeyboardArrowRight-WO_attK2.js +0 -1
  448. package/storybook-static/assets/KeyboardArrowUp-DsyVef-i.js +0 -1
  449. package/storybook-static/assets/ListItem-D3O0103N.js +0 -1
  450. package/storybook-static/assets/ListItemIcon-hca6xN79.js +0 -1
  451. package/storybook-static/assets/ListItemText-BFLAwLdl.js +0 -1
  452. package/storybook-static/assets/Logout-gj-P3AfU.js +0 -1
  453. package/storybook-static/assets/Menu-ClzfjLc3.js +0 -1
  454. package/storybook-static/assets/MenuButton.stories-B-W_QVDt.js +0 -162
  455. package/storybook-static/assets/MenuItem-iU6tAqJI.js +0 -1
  456. package/storybook-static/assets/Modal-3okp9H2i.js +0 -1
  457. package/storybook-static/assets/Modal.stories-DIWzm4qR.js +0 -468
  458. package/storybook-static/assets/MoreVert-BoIVG4gh.js +0 -1
  459. package/storybook-static/assets/Notifications-DY_A-Sho.js +0 -1
  460. package/storybook-static/assets/PageLoader.stories-DmtO1mlm.js +0 -158
  461. package/storybook-static/assets/Paper-SwQBhqI7.js +0 -1
  462. package/storybook-static/assets/Person-CkQl-mpq.js +0 -1
  463. package/storybook-static/assets/PickersModalDialog-Tjnr_cu5.js +0 -10
  464. package/storybook-static/assets/PickersToolbarButton-Tt185-si.js +0 -1
  465. package/storybook-static/assets/Popper-CnCTYXxy.js +0 -1
  466. package/storybook-static/assets/Portal-Cj8XF9Lf.js +0 -1
  467. package/storybook-static/assets/ScrollTopButton.stories-BflQCwNP.js +0 -90
  468. package/storybook-static/assets/Select-CjcuMAY0.js +0 -4
  469. package/storybook-static/assets/Select-DJh2biEb.js +0 -3
  470. package/storybook-static/assets/Select.stories-DU1Gb3I2.js +0 -1103
  471. package/storybook-static/assets/Settings-BLKc1CnO.js +0 -1
  472. package/storybook-static/assets/Snackbar-BtVeKTw6.js +0 -1
  473. package/storybook-static/assets/Stack-D01OUIXi.js +0 -1
  474. package/storybook-static/assets/Stat.stories-Bn9-iuPT.js +0 -60
  475. package/storybook-static/assets/StatusMessage.stories-hnfX8FeU.js +0 -73
  476. package/storybook-static/assets/Stepper-BtKB5ykn.js +0 -2
  477. package/storybook-static/assets/Stepper.stories-CTEZbgPc.js +0 -165
  478. package/storybook-static/assets/Table.stories-CTn2Ktmn.js +0 -1260
  479. package/storybook-static/assets/TableContainer-CzLNaEU-.js +0 -1
  480. package/storybook-static/assets/TableRow-CS88-1HF.js +0 -2
  481. package/storybook-static/assets/Tabs-DLpDOu_n.js +0 -1
  482. package/storybook-static/assets/Tabs.stories-BFVuFy_5.js +0 -159
  483. package/storybook-static/assets/TextField-22T-xHBm.js +0 -1
  484. package/storybook-static/assets/Timeline.stories-DJU_U2Hv.js +0 -97
  485. package/storybook-static/assets/Tooltip-DbnHUxNj.js +0 -1
  486. package/storybook-static/assets/Tooltip.stories-B7tA3dnV.js +0 -66
  487. package/storybook-static/assets/Typography-BgntX2Ep.js +0 -1
  488. package/storybook-static/assets/Wizard.stories-CVrJLK_D.js +0 -23
  489. package/storybook-static/assets/createSimplePaletteValueFilter-bm0fmN_7.js +0 -1
  490. package/storybook-static/assets/createSvgIcon-D_Gca4vA.js +0 -1
  491. package/storybook-static/assets/debounce-Be36O1Ab.js +0 -1
  492. package/storybook-static/assets/emotion-react.browser.esm--g-C9cX9.js +0 -8
  493. package/storybook-static/assets/extendSxProp-CEpa30hT.js +0 -1
  494. package/storybook-static/assets/formField.sx-DMCmZIAa.js +0 -1
  495. package/storybook-static/assets/getReactElementRef-BQ3ANZdy.js +0 -1
  496. package/storybook-static/assets/iframe-BAJnc_4n.js +0 -1079
  497. package/storybook-static/assets/index-B1tlhOpe.js +0 -240
  498. package/storybook-static/assets/index-BF3FAXTk.js +0 -9
  499. package/storybook-static/assets/index-CIeucmOB.js +0 -2
  500. package/storybook-static/assets/index-CY7j4a7o.js +0 -1
  501. package/storybook-static/assets/index-CxkKctw5.js +0 -1
  502. package/storybook-static/assets/isFocusVisible-B8k4qzLc.js +0 -1
  503. package/storybook-static/assets/isMuiElement-CTZSFcY5.js +0 -1
  504. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +0 -9
  505. package/storybook-static/assets/listItemTextClasses-CC_rwJam.js +0 -1
  506. package/storybook-static/assets/mergeSlotProps-B0UBKBMe.js +0 -1
  507. package/storybook-static/assets/ownerDocument-DW-IO8s5.js +0 -1
  508. package/storybook-static/assets/ownerWindow-HkKU3E4x.js +0 -1
  509. package/storybook-static/assets/preload-helper-PPVm8Dsz.js +0 -1
  510. package/storybook-static/assets/react-18-BUJ64QCV.js +0 -25
  511. package/storybook-static/assets/resolvePreset-CN2aOJJr.js +0 -1
  512. package/storybook-static/assets/useControlled-DsVh1a5j.js +0 -1
  513. package/storybook-static/assets/useForkRef-0ANIrxcF.js +0 -1
  514. package/storybook-static/assets/useId-b4fZxjOL.js +0 -1
  515. package/storybook-static/assets/useMobilePicker-DK-c8xbD.js +0 -1
  516. package/storybook-static/assets/usePreviousProps-WR0rG4aR.js +0 -1
  517. package/storybook-static/assets/useSlot-b6pXgp5_.js +0 -1
  518. package/storybook-static/assets/useSlotProps-C0uMfuBt.js +0 -1
  519. package/storybook-static/assets/useTheme-BmOJK7ra.js +0 -1
  520. package/storybook-static/assets/useThemeProps-DYtxXiUU.js +0 -1
  521. package/storybook-static/assets/useThemeProps-U4yXiZ_5.js +0 -1
  522. package/storybook-static/assets/useTimeout-DNjRaOWc.js +0 -1
  523. package/storybook-static/assets/visuallyHidden-Dan1xhjv.js +0 -1
  524. package/storybook-static/favicon-wrapper.svg +0 -46
  525. package/storybook-static/favicon.svg +0 -1
  526. package/storybook-static/iframe.html +0 -686
  527. package/storybook-static/index.html +0 -160
  528. package/storybook-static/index.json +0 -1
  529. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  530. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  531. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  532. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  533. package/storybook-static/project.json +0 -1
  534. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js +0 -356
  535. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js.LEGAL.txt +0 -40
  536. package/storybook-static/sb-addons/docs-4/manager-bundle.js +0 -151
  537. package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +0 -127
  538. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +0 -971
  539. package/storybook-static/sb-addons/vitest-3/manager-bundle.js +0 -3
  540. package/storybook-static/sb-common-assets/favicon-wrapper.svg +0 -46
  541. package/storybook-static/sb-common-assets/favicon.svg +0 -1
  542. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  543. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  544. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  545. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  546. package/storybook-static/sb-manager/globals-module-info.js +0 -797
  547. package/storybook-static/sb-manager/globals-runtime.js +0 -69679
  548. package/storybook-static/sb-manager/globals.js +0 -34
  549. package/storybook-static/sb-manager/runtime.js +0 -13195
  550. package/storybook-static/vite-inject-mocker-entry.js +0 -18
  551. package/tailwind.config.js +0 -10
  552. package/tsconfig.json +0 -48
  553. package/tsup.config.js +0 -41
  554. package/vite.config.js +0 -132
  555. package/vitest.config.ts +0 -35
  556. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  557. /package/{dist/Button-C17mExpd.cjs.map → Button-C17mExpd.cjs.map} +0 -0
  558. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  559. /package/{dist/Button-UkkP-bNw.js.map → Button-UkkP-bNw.js.map} +0 -0
  560. /package/{dist/README.md → README.md} +0 -0
  561. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs +0 -0
  562. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs.map +0 -0
  563. /package/{dist/components → components}/ActionMenu/ActionMenu.d.ts +0 -0
  564. /package/{dist/components → components}/ActionMenu/ActionMenu.js +0 -0
  565. /package/{dist/components → components}/ActionMenu/ActionMenu.js.map +0 -0
  566. /package/{dist/components → components}/ActionMenu/index.d.ts +0 -0
  567. /package/{dist/components → components}/ActionMenu.d.ts +0 -0
  568. /package/{dist/components → components}/AppBar/AppBar.cjs.map +0 -0
  569. /package/{dist/components → components}/AppBar/AppBar.d.ts +0 -0
  570. /package/{dist/components → components}/AppBar/AppBar.js.map +0 -0
  571. /package/{dist/components → components}/AppBar/AppBar.sx.d.ts +0 -0
  572. /package/{dist/components → components}/AppBar/AppBarBrand.d.ts +0 -0
  573. /package/{dist/components → components}/AppBar/AppBarContext.d.ts +0 -0
  574. /package/{dist/components → components}/AppBar/AppBarMenuToggle.d.ts +0 -0
  575. /package/{dist/components → components}/AppBar/AppBarUserMenu.d.ts +0 -0
  576. /package/{dist/components → components}/AppBar/index.d.ts +0 -0
  577. /package/{dist/components → components}/AppBar.d.ts +0 -0
  578. /package/{dist/components → components}/Autocomplete/Autocomplete.d.ts +0 -0
  579. /package/{dist/components → components}/Autocomplete/Autocomplete.definitions.d.ts +0 -0
  580. /package/{dist/components → components}/Autocomplete/Autocomplete.helpers.d.ts +0 -0
  581. /package/{dist/components → components}/Autocomplete/Autocomplete.sx.d.ts +0 -0
  582. /package/{dist/components → components}/Autocomplete/Autocomplete.types.d.ts +0 -0
  583. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteChips.d.ts +0 -0
  584. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteLoader.d.ts +0 -0
  585. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteOption.d.ts +0 -0
  586. /package/{dist/components → components}/Autocomplete/index.d.ts +0 -0
  587. /package/{dist/components → components}/Autocomplete.d.ts +0 -0
  588. /package/{dist/components → components}/Avatar/Avatar.d.ts +0 -0
  589. /package/{dist/components → components}/Avatar/Avatar.definitions.d.ts +0 -0
  590. /package/{dist/components → components}/Avatar/index.d.ts +0 -0
  591. /package/{dist/components → components}/Avatar.d.ts +0 -0
  592. /package/{dist/components → components}/Button/Button.cjs +0 -0
  593. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  594. /package/{dist/components → components}/Button/Button.d.ts +0 -0
  595. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  596. /package/{dist/components → components}/Button/Button.js +0 -0
  597. /package/{dist/components → components}/Button/Button.js.map +0 -0
  598. /package/{dist/components → components}/Button/index.d.ts +0 -0
  599. /package/{dist/components → components}/Button.d.ts +0 -0
  600. /package/{dist/components → components}/Card/Card.d.ts +0 -0
  601. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  602. /package/{dist/components → components}/Card/Card.sx.d.ts +0 -0
  603. /package/{dist/components → components}/Card/index.d.ts +0 -0
  604. /package/{dist/components → components}/Card.d.ts +0 -0
  605. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  606. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  607. /package/{dist/components → components}/Chip/index.d.ts +0 -0
  608. /package/{dist/components → components}/Chip.d.ts +0 -0
  609. /package/{dist/components → components}/Column.d.ts +0 -0
  610. /package/{dist/components → components}/DatePicker/DatePicker.d.ts +0 -0
  611. /package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +0 -0
  612. /package/{dist/components → components}/DatePicker/DatePicker.helpers.d.ts +0 -0
  613. /package/{dist/components → components}/DatePicker/DatePicker.sx.d.ts +0 -0
  614. /package/{dist/components → components}/DatePicker/DatePicker.types.d.ts +0 -0
  615. /package/{dist/components → components}/DatePicker/index.d.ts +0 -0
  616. /package/{dist/components → components}/DatePicker.d.ts +0 -0
  617. /package/{dist/components → components}/DateRangePicker/DateRangePicker.d.ts +0 -0
  618. /package/{dist/components → components}/DateRangePicker/DateRangePicker.definitions.d.ts +0 -0
  619. /package/{dist/components → components}/DateRangePicker/index.d.ts +0 -0
  620. /package/{dist/components → components}/DateRangePicker.d.ts +0 -0
  621. /package/{dist/components → components}/DateTimePicker/DateTimePicker.d.ts +0 -0
  622. /package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +0 -0
  623. /package/{dist/components → components}/DateTimePicker/DateTimePicker.helpers.d.ts +0 -0
  624. /package/{dist/components → components}/DateTimePicker/DateTimePicker.sx.d.ts +0 -0
  625. /package/{dist/components → components}/DateTimePicker/DateTimePicker.types.d.ts +0 -0
  626. /package/{dist/components → components}/DateTimePicker/index.d.ts +0 -0
  627. /package/{dist/components → components}/DateTimePicker.d.ts +0 -0
  628. /package/{dist/components → components}/Drawer/Drawer.cjs.map +0 -0
  629. /package/{dist/components → components}/Drawer/Drawer.d.ts +0 -0
  630. /package/{dist/components → components}/Drawer/Drawer.js.map +0 -0
  631. /package/{dist/components → components}/Drawer/Drawer.sx.d.ts +0 -0
  632. /package/{dist/components → components}/Drawer/DrawerContext.d.ts +0 -0
  633. /package/{dist/components → components}/Drawer/DrawerItem.d.ts +0 -0
  634. /package/{dist/components → components}/Drawer/index.d.ts +0 -0
  635. /package/{dist/components → components}/Drawer.d.ts +0 -0
  636. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  637. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  638. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  639. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  640. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  641. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  642. /package/{dist/components → components}/Flyout.d.ts +0 -0
  643. /package/{dist/components → components}/Gallery/Gallery.cjs +0 -0
  644. /package/{dist/components → components}/Gallery/Gallery.cjs.map +0 -0
  645. /package/{dist/components → components}/Gallery/Gallery.d.ts +0 -0
  646. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  647. /package/{dist/components → components}/Gallery/Gallery.js +0 -0
  648. /package/{dist/components → components}/Gallery/Gallery.js.map +0 -0
  649. /package/{dist/components → components}/Gallery/GalleryLightbox.d.ts +0 -0
  650. /package/{dist/components → components}/Gallery/GalleryMain.d.ts +0 -0
  651. /package/{dist/components → components}/Gallery/GalleryThumbnails.d.ts +0 -0
  652. /package/{dist/components → components}/Gallery/index.d.ts +0 -0
  653. /package/{dist/components → components}/Gallery.d.ts +0 -0
  654. /package/{dist/components → components}/Icon/Icon.cjs +0 -0
  655. /package/{dist/components → components}/Icon/Icon.cjs.map +0 -0
  656. /package/{dist/components → components}/Icon/Icon.d.ts +0 -0
  657. /package/{dist/components → components}/Icon/Icon.js +0 -0
  658. /package/{dist/components → components}/Icon/Icon.js.map +0 -0
  659. /package/{dist/components → components}/Icon/index.d.ts +0 -0
  660. /package/{dist/components → components}/Icon.d.ts +0 -0
  661. /package/{dist/components → components}/Input/Input.d.ts +0 -0
  662. /package/{dist/components → components}/Input/Input.definitions.d.ts +0 -0
  663. /package/{dist/components → components}/Input/Input.helpers.d.ts +0 -0
  664. /package/{dist/components → components}/Input/Input.sx.d.ts +0 -0
  665. /package/{dist/components → components}/Input/Input.types.d.ts +0 -0
  666. /package/{dist/components → components}/Input/index.d.ts +0 -0
  667. /package/{dist/components → components}/Input.d.ts +0 -0
  668. /package/{dist/components → components}/InputGroup/InputGroup.cjs +0 -0
  669. /package/{dist/components → components}/InputGroup/InputGroup.cjs.map +0 -0
  670. /package/{dist/components → components}/InputGroup/InputGroup.d.ts +0 -0
  671. /package/{dist/components → components}/InputGroup/InputGroup.definitions.d.ts +0 -0
  672. /package/{dist/components → components}/InputGroup/InputGroup.js +0 -0
  673. /package/{dist/components → components}/InputGroup/InputGroup.js.map +0 -0
  674. /package/{dist/components → components}/InputGroup/index.d.ts +0 -0
  675. /package/{dist/components → components}/InputGroup.d.ts +0 -0
  676. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  677. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  678. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  679. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  680. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  681. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  682. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  683. /package/{dist/components → components}/Modal/Modal.d.ts +0 -0
  684. /package/{dist/components → components}/Modal/ModalBody.d.ts +0 -0
  685. /package/{dist/components → components}/Modal/ModalFooter.d.ts +0 -0
  686. /package/{dist/components → components}/Modal/ModalHeader.d.ts +0 -0
  687. /package/{dist/components → components}/PageLoader/PageLoader.cjs +0 -0
  688. /package/{dist/components → components}/PageLoader/PageLoader.cjs.map +0 -0
  689. /package/{dist/components → components}/PageLoader/PageLoader.d.ts +0 -0
  690. /package/{dist/components → components}/PageLoader/PageLoader.js +0 -0
  691. /package/{dist/components → components}/PageLoader/PageLoader.js.map +0 -0
  692. /package/{dist/components → components}/PageLoader/index.d.ts +0 -0
  693. /package/{dist/components → components}/PageLoader.d.ts +0 -0
  694. /package/{dist/components → components}/RadioGroup/RadioGroup.d.ts +0 -0
  695. /package/{dist/components → components}/RadioGroup/RadioGroup.definitions.d.ts +0 -0
  696. /package/{dist/components → components}/RadioGroup/RadioGroup.sx.d.ts +0 -0
  697. /package/{dist/components → components}/RadioGroup/RadioGroup.types.d.ts +0 -0
  698. /package/{dist/components → components}/RadioGroup/index.d.ts +0 -0
  699. /package/{dist/components → components}/RadioGroup.d.ts +0 -0
  700. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs.map +0 -0
  701. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.d.ts +0 -0
  702. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js.map +0 -0
  703. /package/{dist/components → components}/ScrollTopButton/index.d.ts +0 -0
  704. /package/{dist/components → components}/ScrollTopButton/scrollToTop.d.ts +0 -0
  705. /package/{dist/components → components}/ScrollTopButton.d.ts +0 -0
  706. /package/{dist/components → components}/Select/Select.d.ts +0 -0
  707. /package/{dist/components → components}/Select/Select.definitions.d.ts +0 -0
  708. /package/{dist/components → components}/Select/Select.helpers.d.ts +0 -0
  709. /package/{dist/components → components}/Select/Select.sx.d.ts +0 -0
  710. /package/{dist/components → components}/Select/Select.types.d.ts +0 -0
  711. /package/{dist/components → components}/Select/_parts/SelectMenuItem.d.ts +0 -0
  712. /package/{dist/components → components}/Select/_parts/SelectSearchHeader.d.ts +0 -0
  713. /package/{dist/components → components}/Select/_parts/SelectValue.d.ts +0 -0
  714. /package/{dist/components → components}/Select/index.d.ts +0 -0
  715. /package/{dist/components → components}/Select.d.ts +0 -0
  716. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  717. /package/{dist/components → components}/Stat/index.d.ts +0 -0
  718. /package/{dist/components → components}/Stat.d.ts +0 -0
  719. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  720. /package/{dist/components → components}/Stepper/Stepper.d.ts +0 -0
  721. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  722. /package/{dist/components → components}/Stepper/index.d.ts +0 -0
  723. /package/{dist/components → components}/Stepper.d.ts +0 -0
  724. /package/{dist/components → components}/Switch/Switch.d.ts +0 -0
  725. /package/{dist/components → components}/Switch/Switch.definitions.d.ts +0 -0
  726. /package/{dist/components → components}/Switch/Switch.sx.d.ts +0 -0
  727. /package/{dist/components → components}/Switch/Switch.types.d.ts +0 -0
  728. /package/{dist/components → components}/Switch/index.d.ts +0 -0
  729. /package/{dist/components → components}/Switch.d.ts +0 -0
  730. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  731. /package/{dist/components → components}/Table/data.d.ts +0 -0
  732. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  733. /package/{dist/components → components}/Table/index.d.ts +0 -0
  734. /package/{dist/components → components}/Table/types.d.ts +0 -0
  735. /package/{dist/components → components}/Table.d.ts +0 -0
  736. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  737. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  738. /package/{dist/components → components}/Tabs/Tabs.d.ts +0 -0
  739. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  740. /package/{dist/components → components}/Tabs/index.d.ts +0 -0
  741. /package/{dist/components → components}/Tabs.d.ts +0 -0
  742. /package/{dist/components → components}/Timeline/Timeline.cjs +0 -0
  743. /package/{dist/components → components}/Timeline/Timeline.cjs.map +0 -0
  744. /package/{dist/components → components}/Timeline/Timeline.d.ts +0 -0
  745. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  746. /package/{dist/components → components}/Timeline/Timeline.js +0 -0
  747. /package/{dist/components → components}/Timeline/Timeline.js.map +0 -0
  748. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  749. /package/{dist/components → components}/Timeline/index.d.ts +0 -0
  750. /package/{dist/components → components}/Timeline.d.ts +0 -0
  751. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  752. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  753. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  754. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  755. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  756. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  757. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  758. /package/{dist/components → components}/_shared/formField.sx.d.ts +0 -0
  759. /package/{dist/components → components}/_shared/resolvePreset.d.ts +0 -0
  760. /package/{dist/formField.sx-CQ1mbk9M.cjs → formField.sx-CQ1mbk9M.cjs} +0 -0
  761. /package/{dist/formField.sx-CQ1mbk9M.cjs.map → formField.sx-CQ1mbk9M.cjs.map} +0 -0
  762. /package/{dist/formField.sx-DfVbMe0V.js → formField.sx-DfVbMe0V.js} +0 -0
  763. /package/{dist/formField.sx-DfVbMe0V.js.map → formField.sx-DfVbMe0V.js.map} +0 -0
  764. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  765. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  766. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  767. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  768. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  769. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  770. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  771. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  772. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs +0 -0
  773. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs.map +0 -0
  774. /package/{dist/hooks → hooks}/Wizard/Wizard.js +0 -0
  775. /package/{dist/hooks → hooks}/Wizard/Wizard.js.map +0 -0
  776. /package/{dist/hooks → hooks}/Wizard/index.d.ts +0 -0
  777. /package/{dist/hooks → hooks}/Wizard/useWizard.d.ts +0 -0
  778. /package/{dist/hooks → hooks}/Wizard.d.ts +0 -0
  779. /package/{dist/mui.d.ts → mui.d.ts} +0 -0
  780. /package/{dist/styles.css → styles.css} +0 -0
  781. /package/{dist/theme → theme}/componentStyles.d.ts +0 -0
  782. /package/{dist/theme → theme}/tokens.d.ts +0 -0
  783. /package/{dist/useWizard-CWdIxZzX.cjs → useWizard-CWdIxZzX.cjs} +0 -0
  784. /package/{dist/useWizard-CWq--C3o.js → useWizard-CWq--C3o.js} +0 -0
@@ -34,8 +34,8 @@ import { createElement, useState, useRef, useMemo } from "react";
34
34
  import { Chip, Avatar, Box, CircularProgress, Typography, Autocomplete as Autocomplete$1, TextField } from "@mui/material";
35
35
  import { useTheme } from "@mui/material/styles";
36
36
  import { Controller } from "react-hook-form";
37
- import { b as buildFormFieldSx } from "../../formField.sx-DfVbMe0V.js";
38
- import { r as resolvePreset } from "../../resolvePreset-B-IB0ehH.js";
37
+ import { b as buildFormFieldSx } from "./formField.sx-DfVbMe0V.js";
38
+ import { r as resolvePreset } from "./resolvePreset-K6_BfWHD.js";
39
39
  import ClearIcon from "@mui/icons-material/Clear";
40
40
  const buildAutocompleteSx = (borderRadius, labelPosition) => buildFormFieldSx({
41
41
  borderRadius,
@@ -235,21 +235,24 @@ function Autocomplete(props) {
235
235
  loadingText: loadingText != null ? loadingText : /* @__PURE__ */ jsx(AutocompleteLoader, {}),
236
236
  renderInput: (params) => {
237
237
  var _a;
238
- return /* @__PURE__ */ jsx(
239
- TextField,
240
- __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, params), {
241
- label,
242
- size,
243
- variant: "outlined",
244
- placeholder: showPlaceholder ? placeholder : void 0,
245
- error: finalError,
246
- helperText: finalHelperText,
247
- inputRef
248
- }), textFieldProps), {
249
- InputLabelProps: __spreadProps(__spreadValues(__spreadValues({}, params.InputLabelProps), textFieldProps == null ? void 0 : textFieldProps.InputLabelProps), {
250
- shrink: labelPosition === "outside" ? !isEmpty || isFocused : (_a = params.InputLabelProps) == null ? void 0 : _a.shrink
238
+ return (
239
+ // @ts-ignore — Ref<any> type mismatch between @types/react versions in monorepo
240
+ /* @__PURE__ */ jsx(
241
+ TextField,
242
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, params), {
243
+ label,
244
+ size,
245
+ variant: "outlined",
246
+ placeholder: showPlaceholder ? placeholder : void 0,
247
+ error: finalError,
248
+ helperText: finalHelperText,
249
+ inputRef
250
+ }), textFieldProps), {
251
+ InputLabelProps: __spreadProps(__spreadValues(__spreadValues({}, params.InputLabelProps), textFieldProps == null ? void 0 : textFieldProps.InputLabelProps), {
252
+ shrink: labelPosition === "outside" ? !isEmpty || isFocused : (_a = params.InputLabelProps) == null ? void 0 : _a.shrink
253
+ })
251
254
  })
252
- })
255
+ )
253
256
  );
254
257
  }
255
258
  }
@@ -307,8 +310,7 @@ function Autocomplete(props) {
307
310
  }
308
311
  const AutocompleteSelect = Autocomplete;
309
312
  export {
310
- Autocomplete,
311
- AutocompleteSelect,
312
- Autocomplete as default
313
+ Autocomplete as A,
314
+ AutocompleteSelect as a
313
315
  };
314
- //# sourceMappingURL=Autocomplete.js.map
316
+ //# sourceMappingURL=Autocomplete-BA-cGASd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Autocomplete-BA-cGASd.js","sources":["../src/components/Autocomplete/Autocomplete.sx.ts","../src/components/Autocomplete/Autocomplete.helpers.ts","../src/components/Autocomplete/_parts/AutocompleteOption.tsx","../src/components/Autocomplete/_parts/AutocompleteChips.tsx","../src/components/Autocomplete/_parts/AutocompleteLoader.tsx","../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nimport { buildFormFieldSx } from '../_shared/formField.sx';\nimport type { LabelPosition } from './Autocomplete';\n\n/**\n * Builder del sx del Autocomplete. Reutiliza `buildFormFieldSx` y añade\n * los paddings propios del Autocomplete (chips + input interno).\n */\nexport const buildAutocompleteSx = (\n borderRadius: number | string,\n labelPosition: LabelPosition,\n): SxProps<Theme> =>\n buildFormFieldSx({\n borderRadius,\n labelPosition,\n extraOutsideSx: {\n // El input interno del Autocomplete.\n '& .MuiAutocomplete-input': {\n paddingTop: '4px',\n paddingBottom: '4px',\n },\n\n // Contenedor del input (donde viven los chips en modo multiple).\n '& .MuiAutocomplete-inputRoot': {\n paddingTop: '4px',\n paddingBottom: '4px',\n },\n },\n });\n","import type { SxProps, Theme } from '@mui/material/styles';\nimport type { SelectOption } from './Autocomplete';\n\n/** Resuelve un value único a su SelectOption dentro del pool. */\nexport const resolveSingleValue = (\n options: SelectOption[],\n value: SelectOption['value'] | null | undefined,\n): SelectOption | null => options.find((o) => o.value === value) ?? null;\n\n/** Resuelve un array de values a sus SelectOption dentro del pool. */\nexport const resolveMultipleValue = (\n options: SelectOption[],\n value: SelectOption['value'][] | null | undefined,\n): SelectOption[] => {\n if (!Array.isArray(value)) return [];\n return options.filter((o) => value.includes(o.value));\n};\n\n/** Merge de sx base + extra del consumer, respetando el contrato de MUI. */\nexport const mergeSx = (\n base: SxProps<Theme>,\n extra?: SxProps<Theme>,\n): SxProps<Theme> => {\n if (!extra) return base;\n return [base, ...(Array.isArray(extra) ? extra : [extra])] as SxProps<Theme>;\n};\n\n/**\n * Compara dos valores resueltos (single o multiple) por value para decidir\n * si son estructuralmente iguales. Se usa para estabilizar la referencia que\n * se pasa a MUI Autocomplete (MUI compara value por referencia con `!==`,\n * y una nueva referencia — aunque el contenido sea igual — dispara\n * `resetInputValue` y borra el texto mientras el usuario tipea).\n */\nexport const areResolvedValuesEqual = (\n prev: SelectOption | SelectOption[] | null,\n next: SelectOption | SelectOption[] | null,\n multiple: boolean,\n): boolean => {\n if (multiple) {\n if (!Array.isArray(prev) || !Array.isArray(next)) return false;\n if (prev.length !== next.length) return false;\n return prev.every((o, i) => o.value === next[i]?.value);\n }\n return (\n (prev as SelectOption | null)?.value ===\n (next as SelectOption | null)?.value\n );\n};\n\n/** Determina si un valor resuelto está vacío (para placeholder/shrink). */\nexport const isResolvedValueEmpty = (\n resolvedValue: unknown,\n multiple: boolean,\n): boolean => {\n if (multiple) {\n return !Array.isArray(resolvedValue) || resolvedValue.length === 0;\n }\n return !resolvedValue;\n};\n","import React from 'react';\nimport type { SelectOption, RenderOptionItem } from '../Autocomplete';\n\ninterface AutocompleteOptionProps {\n liProps: React.HTMLAttributes<HTMLLIElement> & { key?: React.Key };\n option: SelectOption;\n customRender?: RenderOptionItem;\n}\n\n/**\n * Render por defecto de un <li> del dropdown del Autocomplete.\n * Se expone como componente para testear y extender fácilmente, pero MUI\n * lo llama desde `renderOption={(props, option) => ...}` en el padre.\n *\n * El `key` lo manejamos nosotros (no spreadeamos junto al resto) porque MUI\n * lo inyecta como parte de `propsLi` y React exige que sea prop directo.\n */\nexport const AutocompleteOption: React.FC<AutocompleteOptionProps> = ({\n liProps,\n option,\n customRender,\n}) => {\n const { key: _ignored, ...liRest } = liProps;\n return (\n <li key={option.value} {...liRest}>\n {customRender ? customRender(option) : option.label}\n </li>\n );\n};\n\nexport default AutocompleteOption;\n","import React from 'react';\nimport { Avatar, Chip } from '@mui/material';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nimport type {\n SelectOption,\n RenderChipLabel,\n AutocompleteSize,\n} from '../Autocomplete';\n\ninterface AutocompleteChipsProps {\n value: SelectOption[];\n getTagProps: (args: { index: number }) => Record<string, any>;\n size: AutocompleteSize;\n maxChipsToShow: number;\n renderChipLabel?: RenderChipLabel;\n}\n\n/**\n * Render de los chips del Autocomplete en modo multiple.\n * Trunca después de `maxChipsToShow` con un chip \"+N más\".\n * El `getTagProps({ index })` viene de MUI y contiene el handler de delete,\n * la key, etc. — se spreadea tal cual al Chip.\n */\nexport const AutocompleteChips: React.FC<AutocompleteChipsProps> = ({\n value,\n getTagProps,\n size,\n maxChipsToShow,\n renderChipLabel,\n}) => {\n const displayed = value.slice(0, maxChipsToShow);\n const hidden = value.length - maxChipsToShow;\n\n return (\n <>\n {displayed.map((option, index) => {\n const tagProps = getTagProps({ index });\n return (\n <Chip\n {...tagProps}\n key={option.value}\n size={size}\n label={renderChipLabel ? renderChipLabel(option) : option.label}\n avatar={option.img ? <Avatar src={option.img} /> : undefined}\n deleteIcon={<ClearIcon />}\n />\n );\n })}\n {hidden > 0 && <Chip size={size} label={`+${hidden} más`} />}\n </>\n );\n};\n\nexport default AutocompleteChips;\n","import React from 'react';\nimport { Box, CircularProgress, Typography } from '@mui/material';\n\n/**\n * Loader por defecto para el `loadingText` del Autocomplete.\n * El consumer puede sobrescribirlo pasando `loadingText` al componente padre.\n */\nexport const AutocompleteLoader: React.FC<{ text?: string }> = ({\n text = 'Cargando...',\n}) => (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>\n <CircularProgress size={16} />\n <Typography variant=\"body2\">{text}</Typography>\n </Box>\n);\n\nexport default AutocompleteLoader;\n","import React, {\n useMemo,\n useRef,\n useState,\n type ReactNode,\n type SyntheticEvent,\n} from 'react';\nimport {\n Autocomplete as MuiAutocomplete,\n TextField,\n type TextFieldProps,\n} from '@mui/material';\nimport { useTheme, type SxProps, type Theme } from '@mui/material/styles';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildAutocompleteSx } from './Autocomplete.sx';\nimport {\n areResolvedValuesEqual,\n isResolvedValueEmpty,\n resolveMultipleValue,\n resolveSingleValue,\n} from './Autocomplete.helpers';\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport { AutocompleteOption } from './_parts/AutocompleteOption';\nimport { AutocompleteChips } from './_parts/AutocompleteChips';\nimport { AutocompleteLoader } from './_parts/AutocompleteLoader';\n\n// ── Tipos de dominio ─────────────────────────────────────────────────────\nexport interface SelectOption {\n value: string | number;\n label: string;\n img?: string;\n disabled?: boolean;\n group?: string;\n [key: string]: any;\n}\n\nexport type LabelPosition = 'outside' | 'floating';\nexport type AutocompleteSize = 'small' | 'medium';\n\n// ── Render slots ─────────────────────────────────────────────────────────\nexport type RenderOptionItem = (item: SelectOption) => ReactNode;\nexport type RenderChipLabel = (item: SelectOption) => ReactNode;\n\n// ── Props base ───────────────────────────────────────────────────────────\nexport type BaseAutocompleteProps<\n _TValue extends SelectOption['value'] = SelectOption['value'],\n> = {\n label?: string;\n options: SelectOption[];\n placeholder?: string;\n multiple?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n error?: boolean;\n helperText?: string;\n maxChipsToShow?: number;\n renderOptionItem?: RenderOptionItem;\n renderChipLabel?: RenderChipLabel;\n /** Border radius del input. Default: 10. */\n borderRadius?: number | string;\n /** \"outside\" (default) = label arriba del input; \"floating\" = comportamiento nativo MUI. */\n labelPosition?: LabelPosition;\n /** Tamaño del TextField. Default: 'small'. */\n size?: AutocompleteSize;\n /** Texto cuando no hay coincidencias. */\n noOptionsText?: ReactNode;\n /** Texto cuando está cargando. */\n loadingText?: ReactNode;\n sx?: SxProps<Theme>;\n className?: string;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.Autocomplete`.\n * - `\"default\"` (o ausente) = estilo built-in del paquete.\n * - Cualquier otro string = mergea el preset encima del estilo built-in.\n */\n preset?: string;\n /** Props para el TextField subyacente. */\n textFieldProps?: Partial<TextFieldProps>;\n\n // ── Búsqueda asíncrona / remota ──────────────────────────────────────\n /** Se dispara cada vez que el usuario escribe. Útil para llamadas a servicios\n * (debounce recomendado en el consumer). */\n onInputChange?: (\n event: SyntheticEvent,\n value: string,\n reason: 'input' | 'reset' | 'clear' | 'blur' | 'selectOption' | 'removeOption',\n ) => void;\n /** Valor controlado del texto de búsqueda. */\n inputValue?: string;\n /** Filtro custom. Para búsqueda remota pasar `(x) => x` y confiar sólo en el servicio. */\n filterOptions?: (options: SelectOption[], state: any) => SelectOption[];\n /** Permite valores arbitrarios (no solo de la lista). */\n freeSolo?: boolean;\n open?: boolean;\n onOpen?: (event: SyntheticEvent) => void;\n onClose?: (event: SyntheticEvent, reason: string) => void;\n};\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface ControlledAutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseAutocompleteProps<TValue> {\n value: TValue | TValue[] | null;\n onChange: (val: TValue | TValue[] | null) => void;\n name?: string;\n control?: never;\n validation?: never;\n}\n\nexport interface RHFAutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseAutocompleteProps<TValue> {\n name: string;\n control: Control<any>;\n validation?: RegisterOptions;\n value?: never;\n onChange?: never;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type AutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> = ControlledAutocompleteProps<TValue> | RHFAutocompleteProps<TValue>;\n\nexport function Autocomplete<\n TValue extends SelectOption['value'] = SelectOption['value'],\n>(props: AutocompleteProps<TValue>) {\n const {\n label,\n options,\n placeholder,\n multiple = false,\n disabled = false,\n readOnly = false,\n loading = false,\n error: errorProp = false,\n helperText,\n maxChipsToShow = 3,\n renderOptionItem,\n renderChipLabel,\n borderRadius = 10,\n labelPosition = 'outside',\n size = 'small',\n noOptionsText = 'No hay opciones',\n loadingText,\n sx,\n className,\n preset,\n textFieldProps,\n onInputChange,\n inputValue,\n filterOptions,\n freeSolo,\n open,\n onOpen,\n onClose,\n } = props as BaseAutocompleteProps<TValue>;\n\n // Focus tracking para mostrar placeholder solo cuando el label sube.\n const [isFocused, setIsFocused] = useState(false);\n\n // Cache interno de opciones vistas (indexado por value). Crítico para async\n // multiple: cuando `options` cambian por un nuevo search, los items ya\n // seleccionados no desaparecen de los chips porque los recordamos acá.\n const seenOptionsRef = useRef<Map<SelectOption['value'], SelectOption>>(\n new Map(),\n );\n for (const opt of options) {\n seenOptionsRef.current.set(opt.value, opt);\n }\n\n // Pool de opciones para resolver values (merge de options + vistas).\n const resolvePool = useMemo<SelectOption[]>(() => {\n const merged = new Map(seenOptionsRef.current);\n for (const opt of options) merged.set(opt.value, opt);\n return Array.from(merged.values());\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options]);\n\n // Estabiliza la referencia del resolvedValue que pasamos a MUI Autocomplete.\n // MUI compara value con `!==`: una referencia nueva con mismo contenido\n // dispara resetInputValue() y borra el texto que el usuario está escribiendo.\n const prevResolvedRef = useRef<SelectOption[] | SelectOption | null>(\n multiple ? [] : null,\n );\n\n const stabilizeResolved = (\n newVal: SelectOption[] | SelectOption | null,\n ): any => {\n if (areResolvedValuesEqual(prevResolvedRef.current, newVal, multiple)) {\n return prevResolvedRef.current;\n }\n prevResolvedRef.current = newVal;\n return newVal;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('Autocomplete', preset, theme);\n\n const mergedSx = [\n buildAutocompleteSx(borderRadius, labelPosition),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderAutocomplete = (\n resolvedValue: any,\n handleChange: (event: any, newValue: any) => void,\n onBlur?: () => void,\n inputRef?: React.Ref<any>,\n rhfError?: boolean,\n rhfHelperText?: string,\n ) => {\n const finalError = !!rhfError || !!errorProp;\n const finalHelperText = rhfHelperText || helperText;\n\n const isEmpty = isResolvedValueEmpty(resolvedValue, multiple);\n const showPlaceholder = isEmpty && isFocused && !!placeholder;\n\n return (\n <MuiAutocomplete\n multiple={multiple}\n options={options}\n value={resolvedValue}\n disabled={disabled}\n readOnly={readOnly}\n loading={loading}\n className={className}\n sx={mergedSx}\n freeSolo={freeSolo as any}\n open={open}\n onOpen={onOpen}\n onClose={onClose}\n inputValue={inputValue}\n onInputChange={onInputChange}\n filterOptions={filterOptions as any}\n getOptionLabel={(opt) =>\n typeof opt === 'string' ? opt : (opt?.label ?? '')\n }\n isOptionEqualToValue={(a, b) => a?.value === b?.value}\n getOptionDisabled={(opt) => !!opt?.disabled}\n onChange={handleChange}\n onFocus={() => setIsFocused(true)}\n onBlur={() => {\n setIsFocused(false);\n onBlur?.();\n }}\n renderOption={(liProps, option) => (\n <AutocompleteOption\n liProps={liProps as any}\n option={option}\n customRender={renderOptionItem}\n />\n )}\n renderTags={\n multiple\n ? (value, getTagProps) => (\n <AutocompleteChips\n value={value}\n getTagProps={getTagProps}\n size={size}\n maxChipsToShow={maxChipsToShow}\n renderChipLabel={renderChipLabel}\n />\n )\n : undefined\n }\n noOptionsText={noOptionsText}\n loadingText={loadingText ?? <AutocompleteLoader />}\n renderInput={(params) => (\n // @ts-ignore — Ref<any> type mismatch between @types/react versions in monorepo\n <TextField\n {...params}\n label={label}\n size={size}\n variant=\"outlined\"\n placeholder={showPlaceholder ? placeholder : undefined}\n error={finalError}\n helperText={finalHelperText}\n inputRef={inputRef}\n {...textFieldProps}\n InputLabelProps={{\n ...(params.InputLabelProps as Record<string, any>),\n ...(textFieldProps?.InputLabelProps as Record<string, any> | undefined),\n shrink:\n labelPosition === 'outside'\n ? !isEmpty || isFocused\n : (params.InputLabelProps as any)?.shrink,\n }}\n />\n )}\n />\n );\n };\n\n const handleControlledChange = (_event: any, newValue: any) => {\n const onChange = (props as ControlledAutocompleteProps<TValue>).onChange;\n if (multiple) {\n const values = (newValue ?? []).map((opt: SelectOption) => opt.value as TValue);\n onChange(values);\n } else {\n onChange((newValue?.value ?? null) as TValue | null);\n }\n };\n\n // --- RHF mode ---\n if ('control' in props && props.control) {\n const { name, control, validation } = props as RHFAutocompleteProps<TValue>;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n render={({ field, fieldState: { error: fieldError } }) => {\n const resolvedValue = stabilizeResolved(\n multiple\n ? resolveMultipleValue(resolvePool, field.value)\n : resolveSingleValue(resolvePool, field.value),\n );\n\n const handleChange = (_event: any, newValue: any) => {\n if (multiple) {\n field.onChange(\n (newValue ?? []).map((opt: SelectOption) => opt.value),\n );\n } else {\n field.onChange(newValue?.value ?? null);\n }\n };\n\n return renderAutocomplete(\n resolvedValue,\n handleChange,\n field.onBlur,\n field.ref,\n !!fieldError,\n fieldError?.message,\n );\n }}\n />\n );\n }\n\n // --- Controlled mode ---\n const controlledValue = (props as ControlledAutocompleteProps<TValue>).value;\n const resolvedValue = stabilizeResolved(\n multiple\n ? resolveMultipleValue(resolvePool, controlledValue as SelectOption['value'][])\n : resolveSingleValue(resolvePool, controlledValue as SelectOption['value']),\n );\n\n return renderAutocomplete(resolvedValue, handleControlledChange);\n}\n\n/**\n * @deprecated Usar `Autocomplete` en su lugar. Alias mantenido para retro-compatibilidad.\n */\nexport const AutocompleteSelect = Autocomplete;\n\nexport default Autocomplete;\n"],"names":["resolvedValue","MuiAutocomplete"],"mappings":"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"}
@@ -30,14 +30,13 @@ var __objRest = (source, exclude) => {
30
30
  }
31
31
  return target;
32
32
  };
33
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
34
33
  const jsxRuntime = require("react/jsx-runtime");
35
34
  const React = require("react");
36
35
  const material = require("@mui/material");
37
36
  const styles = require("@mui/material/styles");
38
37
  const reactHookForm = require("react-hook-form");
39
- const formField_sx = require("../../formField.sx-CQ1mbk9M.cjs");
40
- const resolvePreset = require("../../resolvePreset-CT3kU-K2.cjs");
38
+ const formField_sx = require("./formField.sx-CQ1mbk9M.cjs");
39
+ const resolvePreset = require("./resolvePreset-CxTI6_Ln.cjs");
41
40
  const ClearIcon = require("@mui/icons-material/Clear");
42
41
  const buildAutocompleteSx = (borderRadius, labelPosition) => formField_sx.buildFormFieldSx({
43
42
  borderRadius,
@@ -237,21 +236,24 @@ function Autocomplete(props) {
237
236
  loadingText: loadingText != null ? loadingText : /* @__PURE__ */ jsxRuntime.jsx(AutocompleteLoader, {}),
238
237
  renderInput: (params) => {
239
238
  var _a;
240
- return /* @__PURE__ */ jsxRuntime.jsx(
241
- material.TextField,
242
- __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, params), {
243
- label,
244
- size,
245
- variant: "outlined",
246
- placeholder: showPlaceholder ? placeholder : void 0,
247
- error: finalError,
248
- helperText: finalHelperText,
249
- inputRef
250
- }), textFieldProps), {
251
- InputLabelProps: __spreadProps(__spreadValues(__spreadValues({}, params.InputLabelProps), textFieldProps == null ? void 0 : textFieldProps.InputLabelProps), {
252
- shrink: labelPosition === "outside" ? !isEmpty || isFocused : (_a = params.InputLabelProps) == null ? void 0 : _a.shrink
239
+ return (
240
+ // @ts-ignore — Ref<any> type mismatch between @types/react versions in monorepo
241
+ /* @__PURE__ */ jsxRuntime.jsx(
242
+ material.TextField,
243
+ __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, params), {
244
+ label,
245
+ size,
246
+ variant: "outlined",
247
+ placeholder: showPlaceholder ? placeholder : void 0,
248
+ error: finalError,
249
+ helperText: finalHelperText,
250
+ inputRef
251
+ }), textFieldProps), {
252
+ InputLabelProps: __spreadProps(__spreadValues(__spreadValues({}, params.InputLabelProps), textFieldProps == null ? void 0 : textFieldProps.InputLabelProps), {
253
+ shrink: labelPosition === "outside" ? !isEmpty || isFocused : (_a = params.InputLabelProps) == null ? void 0 : _a.shrink
254
+ })
253
255
  })
254
- })
256
+ )
255
257
  );
256
258
  }
257
259
  }
@@ -310,5 +312,4 @@ function Autocomplete(props) {
310
312
  const AutocompleteSelect = Autocomplete;
311
313
  exports.Autocomplete = Autocomplete;
312
314
  exports.AutocompleteSelect = AutocompleteSelect;
313
- exports.default = Autocomplete;
314
- //# sourceMappingURL=Autocomplete.cjs.map
315
+ //# sourceMappingURL=Autocomplete-C2x-lBvZ.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Autocomplete-C2x-lBvZ.cjs","sources":["../src/components/Autocomplete/Autocomplete.sx.ts","../src/components/Autocomplete/Autocomplete.helpers.ts","../src/components/Autocomplete/_parts/AutocompleteOption.tsx","../src/components/Autocomplete/_parts/AutocompleteChips.tsx","../src/components/Autocomplete/_parts/AutocompleteLoader.tsx","../src/components/Autocomplete/Autocomplete.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nimport { buildFormFieldSx } from '../_shared/formField.sx';\nimport type { LabelPosition } from './Autocomplete';\n\n/**\n * Builder del sx del Autocomplete. Reutiliza `buildFormFieldSx` y añade\n * los paddings propios del Autocomplete (chips + input interno).\n */\nexport const buildAutocompleteSx = (\n borderRadius: number | string,\n labelPosition: LabelPosition,\n): SxProps<Theme> =>\n buildFormFieldSx({\n borderRadius,\n labelPosition,\n extraOutsideSx: {\n // El input interno del Autocomplete.\n '& .MuiAutocomplete-input': {\n paddingTop: '4px',\n paddingBottom: '4px',\n },\n\n // Contenedor del input (donde viven los chips en modo multiple).\n '& .MuiAutocomplete-inputRoot': {\n paddingTop: '4px',\n paddingBottom: '4px',\n },\n },\n });\n","import type { SxProps, Theme } from '@mui/material/styles';\nimport type { SelectOption } from './Autocomplete';\n\n/** Resuelve un value único a su SelectOption dentro del pool. */\nexport const resolveSingleValue = (\n options: SelectOption[],\n value: SelectOption['value'] | null | undefined,\n): SelectOption | null => options.find((o) => o.value === value) ?? null;\n\n/** Resuelve un array de values a sus SelectOption dentro del pool. */\nexport const resolveMultipleValue = (\n options: SelectOption[],\n value: SelectOption['value'][] | null | undefined,\n): SelectOption[] => {\n if (!Array.isArray(value)) return [];\n return options.filter((o) => value.includes(o.value));\n};\n\n/** Merge de sx base + extra del consumer, respetando el contrato de MUI. */\nexport const mergeSx = (\n base: SxProps<Theme>,\n extra?: SxProps<Theme>,\n): SxProps<Theme> => {\n if (!extra) return base;\n return [base, ...(Array.isArray(extra) ? extra : [extra])] as SxProps<Theme>;\n};\n\n/**\n * Compara dos valores resueltos (single o multiple) por value para decidir\n * si son estructuralmente iguales. Se usa para estabilizar la referencia que\n * se pasa a MUI Autocomplete (MUI compara value por referencia con `!==`,\n * y una nueva referencia — aunque el contenido sea igual — dispara\n * `resetInputValue` y borra el texto mientras el usuario tipea).\n */\nexport const areResolvedValuesEqual = (\n prev: SelectOption | SelectOption[] | null,\n next: SelectOption | SelectOption[] | null,\n multiple: boolean,\n): boolean => {\n if (multiple) {\n if (!Array.isArray(prev) || !Array.isArray(next)) return false;\n if (prev.length !== next.length) return false;\n return prev.every((o, i) => o.value === next[i]?.value);\n }\n return (\n (prev as SelectOption | null)?.value ===\n (next as SelectOption | null)?.value\n );\n};\n\n/** Determina si un valor resuelto está vacío (para placeholder/shrink). */\nexport const isResolvedValueEmpty = (\n resolvedValue: unknown,\n multiple: boolean,\n): boolean => {\n if (multiple) {\n return !Array.isArray(resolvedValue) || resolvedValue.length === 0;\n }\n return !resolvedValue;\n};\n","import React from 'react';\nimport type { SelectOption, RenderOptionItem } from '../Autocomplete';\n\ninterface AutocompleteOptionProps {\n liProps: React.HTMLAttributes<HTMLLIElement> & { key?: React.Key };\n option: SelectOption;\n customRender?: RenderOptionItem;\n}\n\n/**\n * Render por defecto de un <li> del dropdown del Autocomplete.\n * Se expone como componente para testear y extender fácilmente, pero MUI\n * lo llama desde `renderOption={(props, option) => ...}` en el padre.\n *\n * El `key` lo manejamos nosotros (no spreadeamos junto al resto) porque MUI\n * lo inyecta como parte de `propsLi` y React exige que sea prop directo.\n */\nexport const AutocompleteOption: React.FC<AutocompleteOptionProps> = ({\n liProps,\n option,\n customRender,\n}) => {\n const { key: _ignored, ...liRest } = liProps;\n return (\n <li key={option.value} {...liRest}>\n {customRender ? customRender(option) : option.label}\n </li>\n );\n};\n\nexport default AutocompleteOption;\n","import React from 'react';\nimport { Avatar, Chip } from '@mui/material';\nimport ClearIcon from '@mui/icons-material/Clear';\n\nimport type {\n SelectOption,\n RenderChipLabel,\n AutocompleteSize,\n} from '../Autocomplete';\n\ninterface AutocompleteChipsProps {\n value: SelectOption[];\n getTagProps: (args: { index: number }) => Record<string, any>;\n size: AutocompleteSize;\n maxChipsToShow: number;\n renderChipLabel?: RenderChipLabel;\n}\n\n/**\n * Render de los chips del Autocomplete en modo multiple.\n * Trunca después de `maxChipsToShow` con un chip \"+N más\".\n * El `getTagProps({ index })` viene de MUI y contiene el handler de delete,\n * la key, etc. — se spreadea tal cual al Chip.\n */\nexport const AutocompleteChips: React.FC<AutocompleteChipsProps> = ({\n value,\n getTagProps,\n size,\n maxChipsToShow,\n renderChipLabel,\n}) => {\n const displayed = value.slice(0, maxChipsToShow);\n const hidden = value.length - maxChipsToShow;\n\n return (\n <>\n {displayed.map((option, index) => {\n const tagProps = getTagProps({ index });\n return (\n <Chip\n {...tagProps}\n key={option.value}\n size={size}\n label={renderChipLabel ? renderChipLabel(option) : option.label}\n avatar={option.img ? <Avatar src={option.img} /> : undefined}\n deleteIcon={<ClearIcon />}\n />\n );\n })}\n {hidden > 0 && <Chip size={size} label={`+${hidden} más`} />}\n </>\n );\n};\n\nexport default AutocompleteChips;\n","import React from 'react';\nimport { Box, CircularProgress, Typography } from '@mui/material';\n\n/**\n * Loader por defecto para el `loadingText` del Autocomplete.\n * El consumer puede sobrescribirlo pasando `loadingText` al componente padre.\n */\nexport const AutocompleteLoader: React.FC<{ text?: string }> = ({\n text = 'Cargando...',\n}) => (\n <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>\n <CircularProgress size={16} />\n <Typography variant=\"body2\">{text}</Typography>\n </Box>\n);\n\nexport default AutocompleteLoader;\n","import React, {\n useMemo,\n useRef,\n useState,\n type ReactNode,\n type SyntheticEvent,\n} from 'react';\nimport {\n Autocomplete as MuiAutocomplete,\n TextField,\n type TextFieldProps,\n} from '@mui/material';\nimport { useTheme, type SxProps, type Theme } from '@mui/material/styles';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildAutocompleteSx } from './Autocomplete.sx';\nimport {\n areResolvedValuesEqual,\n isResolvedValueEmpty,\n resolveMultipleValue,\n resolveSingleValue,\n} from './Autocomplete.helpers';\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport { AutocompleteOption } from './_parts/AutocompleteOption';\nimport { AutocompleteChips } from './_parts/AutocompleteChips';\nimport { AutocompleteLoader } from './_parts/AutocompleteLoader';\n\n// ── Tipos de dominio ─────────────────────────────────────────────────────\nexport interface SelectOption {\n value: string | number;\n label: string;\n img?: string;\n disabled?: boolean;\n group?: string;\n [key: string]: any;\n}\n\nexport type LabelPosition = 'outside' | 'floating';\nexport type AutocompleteSize = 'small' | 'medium';\n\n// ── Render slots ─────────────────────────────────────────────────────────\nexport type RenderOptionItem = (item: SelectOption) => ReactNode;\nexport type RenderChipLabel = (item: SelectOption) => ReactNode;\n\n// ── Props base ───────────────────────────────────────────────────────────\nexport type BaseAutocompleteProps<\n _TValue extends SelectOption['value'] = SelectOption['value'],\n> = {\n label?: string;\n options: SelectOption[];\n placeholder?: string;\n multiple?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n loading?: boolean;\n error?: boolean;\n helperText?: string;\n maxChipsToShow?: number;\n renderOptionItem?: RenderOptionItem;\n renderChipLabel?: RenderChipLabel;\n /** Border radius del input. Default: 10. */\n borderRadius?: number | string;\n /** \"outside\" (default) = label arriba del input; \"floating\" = comportamiento nativo MUI. */\n labelPosition?: LabelPosition;\n /** Tamaño del TextField. Default: 'small'. */\n size?: AutocompleteSize;\n /** Texto cuando no hay coincidencias. */\n noOptionsText?: ReactNode;\n /** Texto cuando está cargando. */\n loadingText?: ReactNode;\n sx?: SxProps<Theme>;\n className?: string;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.Autocomplete`.\n * - `\"default\"` (o ausente) = estilo built-in del paquete.\n * - Cualquier otro string = mergea el preset encima del estilo built-in.\n */\n preset?: string;\n /** Props para el TextField subyacente. */\n textFieldProps?: Partial<TextFieldProps>;\n\n // ── Búsqueda asíncrona / remota ──────────────────────────────────────\n /** Se dispara cada vez que el usuario escribe. Útil para llamadas a servicios\n * (debounce recomendado en el consumer). */\n onInputChange?: (\n event: SyntheticEvent,\n value: string,\n reason: 'input' | 'reset' | 'clear' | 'blur' | 'selectOption' | 'removeOption',\n ) => void;\n /** Valor controlado del texto de búsqueda. */\n inputValue?: string;\n /** Filtro custom. Para búsqueda remota pasar `(x) => x` y confiar sólo en el servicio. */\n filterOptions?: (options: SelectOption[], state: any) => SelectOption[];\n /** Permite valores arbitrarios (no solo de la lista). */\n freeSolo?: boolean;\n open?: boolean;\n onOpen?: (event: SyntheticEvent) => void;\n onClose?: (event: SyntheticEvent, reason: string) => void;\n};\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface ControlledAutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseAutocompleteProps<TValue> {\n value: TValue | TValue[] | null;\n onChange: (val: TValue | TValue[] | null) => void;\n name?: string;\n control?: never;\n validation?: never;\n}\n\nexport interface RHFAutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseAutocompleteProps<TValue> {\n name: string;\n control: Control<any>;\n validation?: RegisterOptions;\n value?: never;\n onChange?: never;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type AutocompleteProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> = ControlledAutocompleteProps<TValue> | RHFAutocompleteProps<TValue>;\n\nexport function Autocomplete<\n TValue extends SelectOption['value'] = SelectOption['value'],\n>(props: AutocompleteProps<TValue>) {\n const {\n label,\n options,\n placeholder,\n multiple = false,\n disabled = false,\n readOnly = false,\n loading = false,\n error: errorProp = false,\n helperText,\n maxChipsToShow = 3,\n renderOptionItem,\n renderChipLabel,\n borderRadius = 10,\n labelPosition = 'outside',\n size = 'small',\n noOptionsText = 'No hay opciones',\n loadingText,\n sx,\n className,\n preset,\n textFieldProps,\n onInputChange,\n inputValue,\n filterOptions,\n freeSolo,\n open,\n onOpen,\n onClose,\n } = props as BaseAutocompleteProps<TValue>;\n\n // Focus tracking para mostrar placeholder solo cuando el label sube.\n const [isFocused, setIsFocused] = useState(false);\n\n // Cache interno de opciones vistas (indexado por value). Crítico para async\n // multiple: cuando `options` cambian por un nuevo search, los items ya\n // seleccionados no desaparecen de los chips porque los recordamos acá.\n const seenOptionsRef = useRef<Map<SelectOption['value'], SelectOption>>(\n new Map(),\n );\n for (const opt of options) {\n seenOptionsRef.current.set(opt.value, opt);\n }\n\n // Pool de opciones para resolver values (merge de options + vistas).\n const resolvePool = useMemo<SelectOption[]>(() => {\n const merged = new Map(seenOptionsRef.current);\n for (const opt of options) merged.set(opt.value, opt);\n return Array.from(merged.values());\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options]);\n\n // Estabiliza la referencia del resolvedValue que pasamos a MUI Autocomplete.\n // MUI compara value con `!==`: una referencia nueva con mismo contenido\n // dispara resetInputValue() y borra el texto que el usuario está escribiendo.\n const prevResolvedRef = useRef<SelectOption[] | SelectOption | null>(\n multiple ? [] : null,\n );\n\n const stabilizeResolved = (\n newVal: SelectOption[] | SelectOption | null,\n ): any => {\n if (areResolvedValuesEqual(prevResolvedRef.current, newVal, multiple)) {\n return prevResolvedRef.current;\n }\n prevResolvedRef.current = newVal;\n return newVal;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('Autocomplete', preset, theme);\n\n const mergedSx = [\n buildAutocompleteSx(borderRadius, labelPosition),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderAutocomplete = (\n resolvedValue: any,\n handleChange: (event: any, newValue: any) => void,\n onBlur?: () => void,\n inputRef?: React.Ref<any>,\n rhfError?: boolean,\n rhfHelperText?: string,\n ) => {\n const finalError = !!rhfError || !!errorProp;\n const finalHelperText = rhfHelperText || helperText;\n\n const isEmpty = isResolvedValueEmpty(resolvedValue, multiple);\n const showPlaceholder = isEmpty && isFocused && !!placeholder;\n\n return (\n <MuiAutocomplete\n multiple={multiple}\n options={options}\n value={resolvedValue}\n disabled={disabled}\n readOnly={readOnly}\n loading={loading}\n className={className}\n sx={mergedSx}\n freeSolo={freeSolo as any}\n open={open}\n onOpen={onOpen}\n onClose={onClose}\n inputValue={inputValue}\n onInputChange={onInputChange}\n filterOptions={filterOptions as any}\n getOptionLabel={(opt) =>\n typeof opt === 'string' ? opt : (opt?.label ?? '')\n }\n isOptionEqualToValue={(a, b) => a?.value === b?.value}\n getOptionDisabled={(opt) => !!opt?.disabled}\n onChange={handleChange}\n onFocus={() => setIsFocused(true)}\n onBlur={() => {\n setIsFocused(false);\n onBlur?.();\n }}\n renderOption={(liProps, option) => (\n <AutocompleteOption\n liProps={liProps as any}\n option={option}\n customRender={renderOptionItem}\n />\n )}\n renderTags={\n multiple\n ? (value, getTagProps) => (\n <AutocompleteChips\n value={value}\n getTagProps={getTagProps}\n size={size}\n maxChipsToShow={maxChipsToShow}\n renderChipLabel={renderChipLabel}\n />\n )\n : undefined\n }\n noOptionsText={noOptionsText}\n loadingText={loadingText ?? <AutocompleteLoader />}\n renderInput={(params) => (\n // @ts-ignore — Ref<any> type mismatch between @types/react versions in monorepo\n <TextField\n {...params}\n label={label}\n size={size}\n variant=\"outlined\"\n placeholder={showPlaceholder ? placeholder : undefined}\n error={finalError}\n helperText={finalHelperText}\n inputRef={inputRef}\n {...textFieldProps}\n InputLabelProps={{\n ...(params.InputLabelProps as Record<string, any>),\n ...(textFieldProps?.InputLabelProps as Record<string, any> | undefined),\n shrink:\n labelPosition === 'outside'\n ? !isEmpty || isFocused\n : (params.InputLabelProps as any)?.shrink,\n }}\n />\n )}\n />\n );\n };\n\n const handleControlledChange = (_event: any, newValue: any) => {\n const onChange = (props as ControlledAutocompleteProps<TValue>).onChange;\n if (multiple) {\n const values = (newValue ?? []).map((opt: SelectOption) => opt.value as TValue);\n onChange(values);\n } else {\n onChange((newValue?.value ?? null) as TValue | null);\n }\n };\n\n // --- RHF mode ---\n if ('control' in props && props.control) {\n const { name, control, validation } = props as RHFAutocompleteProps<TValue>;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n render={({ field, fieldState: { error: fieldError } }) => {\n const resolvedValue = stabilizeResolved(\n multiple\n ? resolveMultipleValue(resolvePool, field.value)\n : resolveSingleValue(resolvePool, field.value),\n );\n\n const handleChange = (_event: any, newValue: any) => {\n if (multiple) {\n field.onChange(\n (newValue ?? []).map((opt: SelectOption) => opt.value),\n );\n } else {\n field.onChange(newValue?.value ?? null);\n }\n };\n\n return renderAutocomplete(\n resolvedValue,\n handleChange,\n field.onBlur,\n field.ref,\n !!fieldError,\n fieldError?.message,\n );\n }}\n />\n );\n }\n\n // --- Controlled mode ---\n const controlledValue = (props as ControlledAutocompleteProps<TValue>).value;\n const resolvedValue = stabilizeResolved(\n multiple\n ? resolveMultipleValue(resolvePool, controlledValue as SelectOption['value'][])\n : resolveSingleValue(resolvePool, controlledValue as SelectOption['value']),\n );\n\n return renderAutocomplete(resolvedValue, handleControlledChange);\n}\n\n/**\n * @deprecated Usar `Autocomplete` en su lugar. Alias mantenido para retro-compatibilidad.\n */\nexport const AutocompleteSelect = Autocomplete;\n\nexport default Autocomplete;\n"],"names":["buildFormFieldSx","jsx","jsxs","Fragment","createElement","Chip","Avatar","Box","CircularProgress","Typography","useState","useRef","useMemo","useTheme","resolvePreset","resolvedValue","MuiAutocomplete","TextField","Controller"],"mappings":"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"}
@@ -18,7 +18,6 @@ var __spreadValues = (a, b) => {
18
18
  return a;
19
19
  };
20
20
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
22
21
  const jsxRuntime = require("react/jsx-runtime");
23
22
  const React = require("react");
24
23
  const material = require("@mui/material");
@@ -160,4 +159,4 @@ const Avatar = ({
160
159
  );
161
160
  };
162
161
  exports.Avatar = Avatar;
163
- //# sourceMappingURL=Avatar.cjs.map
162
+ //# sourceMappingURL=Avatar-9L7YMxya.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar-9L7YMxya.cjs","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 const [errorIndex, setErrorIndex] = useState<Set<number>>(new Set());\n\n const handleImageError = (index: number) => {\n setErrorIndex((prev) => {\n const next = new Set(prev);\n next.add(index);\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 && !errorIndex.has(i);\n const showBadgeFallback = !!item.badge;\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 data-testid=\"avatar\"\n alt={item.text || 'User avatar'}\n src={hasImage ? item.imageUrl : undefined}\n imgProps={{\n 'data-testid': 'image',\n onError: () => handleImageError(i),\n } as React.ImgHTMLAttributes<HTMLImageElement>}\n sx={finalSx}\n >\n {!hasImage && showBadgeFallback ? (\n <span data-testid=\"badge\" aria-label={item.text}>\n {item.badge}\n </span>\n ) : !hasImage ? (\n <AccountCircleIcon\n data-testid=\"icon\"\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={i} title={item.text}>\n {avatarEl}\n </Tooltip>\n );\n }\n return <React.Fragment key={i}>{avatarEl}</React.Fragment>;\n };\n\n return (\n <Box\n data-testid=\"avatar-container\"\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 data-testid=\"text\"\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\" data-testid=\"type\" 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":["useState","_a","jsx","MuiAvatar","Tooltip","jsxs","Box","Typography"],"mappings":"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"}
@@ -158,6 +158,6 @@ const Avatar = ({
158
158
  );
159
159
  };
160
160
  export {
161
- Avatar
161
+ Avatar as A
162
162
  };
163
- //# sourceMappingURL=Avatar.js.map
163
+ //# sourceMappingURL=Avatar-BJTr-PBd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Avatar-BJTr-PBd.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 const [errorIndex, setErrorIndex] = useState<Set<number>>(new Set());\n\n const handleImageError = (index: number) => {\n setErrorIndex((prev) => {\n const next = new Set(prev);\n next.add(index);\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 && !errorIndex.has(i);\n const showBadgeFallback = !!item.badge;\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 data-testid=\"avatar\"\n alt={item.text || 'User avatar'}\n src={hasImage ? item.imageUrl : undefined}\n imgProps={{\n 'data-testid': 'image',\n onError: () => handleImageError(i),\n } as React.ImgHTMLAttributes<HTMLImageElement>}\n sx={finalSx}\n >\n {!hasImage && showBadgeFallback ? (\n <span data-testid=\"badge\" aria-label={item.text}>\n {item.badge}\n </span>\n ) : !hasImage ? (\n <AccountCircleIcon\n data-testid=\"icon\"\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={i} title={item.text}>\n {avatarEl}\n </Tooltip>\n );\n }\n return <React.Fragment key={i}>{avatarEl}</React.Fragment>;\n };\n\n return (\n <Box\n data-testid=\"avatar-container\"\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 data-testid=\"text\"\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\" data-testid=\"type\" 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":";;;;;;;;;;;;;;;;;;;;;;;AA6CA,MAAM,UAGF;AAAA,EACF,IAAI,EAAE,IAAI,IAAI,QAAQ,GAAG,MAAM,IAAI,SAAS,EAAA;AAAA,EAC5C,IAAI,EAAE,IAAI,IAAI,QAAQ,GAAG,MAAM,IAAI,SAAS,GAAA;AAAA,EAC5C,IAAI,EAAE,IAAI,IAAI,QAAQ,GAAG,MAAM,IAAI,SAAS,GAAA;AAAA,EAC5C,IAAI,EAAE,IAAI,IAAI,QAAQ,GAAG,MAAM,IAAI,SAAS,GAAA;AAC9C;AAEA,MAAM,cAAc,CAAC,SAAqB;AACxC,MAAI,OAAO,SAAS,UAAU;AAC5B,WAAO;AAAA,MACL,IAAI;AAAA,MACJ,QAAQ,KAAK,IAAI,GAAG,KAAK,MAAM,OAAO,IAAI,CAAC;AAAA,MAC3C,MAAM,KAAK,MAAM,OAAO,GAAG;AAAA,MAC3B,SAAS,KAAK,MAAM,OAAO,IAAI;AAAA,IAAA;AAAA,EAEnC;AACA,SAAO,QAAQ,IAAI;AACrB;AAEA,MAAM,UAAU,CAAC,MAAsB,UAA2C;AAChF,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,UAAU,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAClD,QAAM,WAAW,MAAM,QAAQ,KAAK,IAAI,QAAQ,CAAC,KAAK;AACtD,SAAO,CAAC,GAAG,SAAS,GAAG,QAAQ;AACjC;AAEO,MAAM,SAAgC,CAAC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA,mBAAmB;AAAA,EACnB,OAAO;AAAA,EACP,WAAW;AAAA,EACX,cAAc;AAAA,EACd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;;AACJ,QAAM,CAAC,YAAY,aAAa,IAAI,SAAsB,oBAAI,KAAK;AAEnE,QAAM,mBAAmB,CAAC,UAAkB;AAC1C,kBAAc,CAAC,SAAS;AACtB,YAAM,OAAO,IAAI,IAAI,IAAI;AACzB,WAAK,IAAI,KAAK;AACd,aAAO;AAAA,IACT,CAAC;AAAA,EACH;AAEA,MAAI,CAAC,SAAS,MAAM,WAAW,GAAG;AAChC,WAAO;AAAA,EACT;AAEA,QAAM,IAAI,YAAY,IAAI;AAC1B,QAAM,mBAAmB,4BAAW,EAAE;AACtC,QAAM,eAAe,MAAM,MAAM,GAAG,gBAAgB;AAEpD,QAAM,eAA+B;AAAA,IACnC,OAAO,EAAE;AAAA,IACT,QAAQ,EAAE;AAAA,IACV,UAAU,EAAE;AAAA,IACZ,YAAY;AAAA,IACZ,QAAQ,CAAC,UAAU,GAAG,EAAE,MAAM,YAAY,MAAM,QAAQ,WAAW,KAAK;AAAA,IACxE,WAAW;AAAA,EAAA;AAGb,QAAM,qBAAqB,CAAC,MAAkB,MAAc;;AAC1D,UAAM,WAAW,CAAC,CAAC,KAAK,YAAY,CAAC,WAAW,IAAI,CAAC;AACrD,UAAM,oBAAoB,CAAC,CAAC,KAAK;AAGjC,UAAM,SAAyB;AAAA,MAC7B,UAASA,MAAA,KAAK,oBAAL,OAAAA,MAAwB;AAAA,MACjC,QAAO,UAAK,UAAL,YAAc;AAAA,OAEjB,IAAI,KAAK,EAAE,YAAY,IAAI,gBAAgB,KAAA,IAJlB;AAAA,MAK7B,QAAQ,aAAa,SAAS;AAAA,IAAA;AAGhC,UAAM,UAAU,QAAQ,QAAQ,cAAc,MAAM,GAAG,QAAQ;AAE/D,UAAM,WACJ;AAAA,MAACC;AAAAA,MAAA;AAAA,QACC,eAAY;AAAA,QACZ,KAAK,KAAK,QAAQ;AAAA,QAClB,KAAK,WAAW,KAAK,WAAW;AAAA,QAChC,UAAU;AAAA,UACR,eAAe;AAAA,UACf,SAAS,MAAM,iBAAiB,CAAC;AAAA,QAAA;AAAA,QAEnC,IAAI;AAAA,QAEH,UAAA,CAAC,YAAY,oBACZ,oBAAC,UAAK,eAAY,SAAQ,cAAY,KAAK,MACxC,UAAA,KAAK,OACR,IACE,CAAC,WACH;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,eAAY;AAAA,YACZ,cAAY,KAAK;AAAA,YACjB,IAAI,EAAE,OAAO,QAAQ,QAAQ,OAAA;AAAA,UAAO;AAAA,QAAA,IAEpC;AAAA,MAAA;AAAA,IAAA;AAIR,QAAI,eAAe,KAAK,MAAM;AAC5B,iCACG,SAAA,EAAgB,OAAO,KAAK,MAC1B,sBADW,CAEd;AAAA,IAEJ;AACA,WAAO,oBAACC,eAAM,UAAN,EAAwB,sBAAJ,CAAa;AAAA,EAC3C;AAEA,SACE;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,eAAY;AAAA,MACZ;AAAA,MACA,IAAI;AAAA,QACF;AAAA,UACE,SAAS;AAAA,UACT,YAAY;AAAA,UACZ,YAAY;AAAA,UACZ,OAAO;AAAA,QAAA;AAAA,QAET;AAAA,MAAA;AAAA,MAGF,UAAA;AAAA,QAAA,oBAAC,OAAI,IAAI,EAAE,SAAS,QAAQ,YAAY,YACrC,UAAA,aAAa,IAAI,CAAC,MAAM,MAAM,mBAAmB,MAAM,CAAC,CAAC,GAC5D;AAAA,QAEC,cAAY,WAAM,CAAC,MAAP,mBAAU,SACrB;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,eAAY;AAAA,YACZ,SAAQ;AAAA,YACR,IAAI;AAAA,cACF,IAAI;AAAA,cACJ,UAAU;AAAA,cACV,YAAY;AAAA,cACZ,OAAO;AAAA,YAAA;AAAA,YAGR,UAAA;AAAA,cAAA,QAAQ,MAAM,WAAW,KACxB,qBAAC,KAAA,EAAI,WAAU,QAAO,eAAY,QAAO,IAAI,EAAE,IAAI,OAChD,UAAA;AAAA,gBAAA;AAAA,gBAAK;AAAA,cAAA,GACR;AAAA,cAED,MAAM,CAAC,EAAE;AAAA,cACT,MAAM,SAAS,KAAK,KAAK,MAAM,SAAS,CAAC;AAAA,YAAA;AAAA,UAAA;AAAA,QAAA;AAAA,MAC5C;AAAA,IAAA;AAAA,EAAA;AAIR;"}
@@ -18,10 +18,9 @@ var __spreadValues = (a, b) => {
18
18
  return a;
19
19
  };
20
20
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
22
21
  const jsxRuntime = require("react/jsx-runtime");
23
22
  const material = require("@mui/material");
24
- const resolvePreset = require("../../resolvePreset-CT3kU-K2.cjs");
23
+ const resolvePreset = require("./resolvePreset-CxTI6_Ln.cjs");
25
24
  const paddingMap = {
26
25
  none: 0,
27
26
  dense: 1.5,
@@ -183,5 +182,4 @@ exports.buildCardBodySx = buildCardBodySx;
183
182
  exports.buildCardFooterSx = buildCardFooterSx;
184
183
  exports.buildCardHeaderSx = buildCardHeaderSx;
185
184
  exports.buildCardSx = buildCardSx;
186
- exports.default = Card;
187
- //# sourceMappingURL=Card.cjs.map
185
+ //# sourceMappingURL=Card-DG_crfkK.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card-DG_crfkK.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 (root). La props `sx` del consumer se compone encima\n * junto al preset resuelto (en Card.tsx). Este builder solo se ocupa del\n * variant + 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:\n variant === 'elevated'\n ? theme.shadows[1]\n : '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 // Body padding (cuando no hay header/footer envolventes). Para el caso\n // compuesto los slots manejan su propio padding, dejamos el root en 0.\n p: paddingMap[padding],\n });\n}\n\nexport function buildCardHeaderSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n px: 2.5,\n py: 1.75,\n borderBottom: `1px solid ${theme.palette.divider}`,\n '& .card-header-text': {\n flex: 1,\n minWidth: 0,\n },\n '& .card-header-actions': {\n display: 'flex',\n alignItems: 'center',\n gap: 0.5,\n flexShrink: 0,\n },\n });\n}\n\nexport function buildCardBodySx(padding: CardPadding): SxProps<Theme> {\n return {\n px: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n py: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n };\n}\n\nexport function buildCardFooterSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: 1,\n px: 2.5,\n py: 1.5,\n borderTop: `1px solid ${theme.palette.divider}`,\n backgroundColor: theme.palette.action.hover,\n });\n}\n","import { type ReactNode } from 'react';\nimport { Box, Card as MuiCard, Typography, useTheme } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport {\n buildCardSx,\n buildCardHeaderSx,\n buildCardBodySx,\n buildCardFooterSx,\n type CardVariant,\n type CardPadding,\n} from './Card.sx';\n\nexport interface CardProps {\n /** Contenido principal. */\n children?: ReactNode;\n /**\n * Título del Card. Si se provee, renderiza un header con separador. Puede\n * ser string o cualquier ReactNode para permitir iconos / chips.\n */\n title?: ReactNode;\n /** Texto secundario debajo del título. */\n subtitle?: ReactNode;\n /**\n * Acciones del header (botones, ActionMenu, etc). Se renderizan alineadas\n * a la derecha.\n */\n actions?: ReactNode;\n /**\n * Header totalmente custom. Si se provee, ignora `title`/`subtitle`/`actions`\n * y toma control del slot entero.\n */\n header?: ReactNode;\n /** Footer custom (botones, mensajes, etc). */\n footer?: 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 /**\n * Densidad del padding interno. Solo aplica al body cuando hay header/footer;\n * cuando no hay slots, aplica al root.\n */\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 /** sx custom del slot body. */\n bodySx?: SxProps<Theme>;\n /** sx custom del slot header. */\n headerSx?: SxProps<Theme>;\n /** sx custom del slot footer. */\n footerSx?: SxProps<Theme>;\n onClick?: () => void;\n onBlur?: () => void;\n className?: string;\n 'data-testid'?: string;\n}\n\n/**\n * Card semántico con slots `title` / `subtitle` / `actions` / `footer`.\n * Reemplaza el patrón `<div class=\"card\"><div class=\"card-header\">...</div>...`\n * de Metronic/Bootstrap con composición declarativa.\n *\n * Backward-compat: si solo se pasa `children`, se comporta como el Card\n * original (MUI Card + body padding).\n *\n * ```tsx\n * <Card\n * title=\"Datos del cliente\"\n * subtitle=\"Última actualización: hace 2h\"\n * actions={<ActionMenu items={menuItems} />}\n * footer={<Button>Guardar</Button>}\n * >\n * <CustomerForm />\n * </Card>\n * ```\n */\nexport function Card({\n children,\n title,\n subtitle,\n actions,\n header,\n footer,\n variant,\n padding = 'normal',\n clickable = false,\n preset,\n raised,\n sx,\n bodySx,\n headerSx,\n footerSx,\n onClick,\n onBlur,\n className,\n 'data-testid': dataTestId,\n}: CardProps) {\n const theme = useTheme();\n\n // Back-compat: `raised` legacy => elevated. Si no vienen ni `raised` ni\n // `variant`, default a 'elevated'.\n const resolvedVariant: CardVariant = raised\n ? 'elevated'\n : (variant ?? 'elevated');\n\n const hasHeader = Boolean(header || title || subtitle || actions);\n const hasFooter = Boolean(footer);\n const isCompound = hasHeader || hasFooter;\n\n // Cuando hay slots, el root no lleva padding (lo llevan los slots).\n const rootPadding: CardPadding = isCompound ? 'none' : padding;\n\n const presetSx = resolvePreset('Card', preset, theme);\n\n const rootSx: SxProps<Theme> = [\n buildCardSx({\n variant: resolvedVariant,\n padding: rootPadding,\n clickable: clickable || Boolean(onClick),\n }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderHeader = () => {\n if (header) return <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>{header}</Box>;\n if (!title && !subtitle && !actions) return null;\n return (\n <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>\n <Box className=\"card-header-text\">\n {title && (\n <Typography\n variant=\"subtitle1\"\n component=\"div\"\n sx={{ fontWeight: 600, lineHeight: 1.3 }}\n noWrap\n >\n {title}\n </Typography>\n )}\n {subtitle && (\n <Typography\n variant=\"caption\"\n color=\"text.secondary\"\n component=\"div\"\n noWrap\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n {actions && <Box className=\"card-header-actions\">{actions}</Box>}\n </Box>\n );\n };\n\n return (\n <MuiCard\n sx={rootSx}\n className={className}\n data-testid={dataTestId}\n onClick={onClick}\n onBlur={onBlur}\n elevation={0} // sombra la maneja buildCardSx\n >\n {renderHeader()}\n {isCompound ? (\n <Box sx={[buildCardBodySx(padding), ...(Array.isArray(bodySx) ? bodySx : bodySx ? [bodySx] : [])]}>\n {children}\n </Box>\n ) : (\n children\n )}\n {hasFooter && (\n <Box sx={[buildCardFooterSx(), ...(Array.isArray(footerSx) ? footerSx : footerSx ? [footerSx] : [])]}>\n {footer}\n </Box>\n )}\n </MuiCard>\n );\n}\n\nexport default Card;\n"],"names":["useTheme","resolvePreset","jsx","Box","jsxs","Typography","MuiCard"],"mappings":"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"}
@@ -19,7 +19,7 @@ var __spreadValues = (a, b) => {
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
20
  import { jsxs, jsx } from "react/jsx-runtime";
21
21
  import { useTheme, Card as Card$1, Box, Typography } from "@mui/material";
22
- import { r as resolvePreset } from "../../resolvePreset-B-IB0ehH.js";
22
+ import { r as resolvePreset } from "./resolvePreset-K6_BfWHD.js";
23
23
  const paddingMap = {
24
24
  none: 0,
25
25
  dense: 1.5,
@@ -177,11 +177,10 @@ function Card({
177
177
  );
178
178
  }
179
179
  export {
180
- Card,
181
- buildCardBodySx,
182
- buildCardFooterSx,
183
- buildCardHeaderSx,
184
- buildCardSx,
185
- Card as default
180
+ Card as C,
181
+ buildCardHeaderSx as a,
182
+ buildCardSx as b,
183
+ buildCardBodySx as c,
184
+ buildCardFooterSx as d
186
185
  };
187
- //# sourceMappingURL=Card.js.map
186
+ //# sourceMappingURL=Card-Ug-ttVSh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Card-Ug-ttVSh.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 (root). La props `sx` del consumer se compone encima\n * junto al preset resuelto (en Card.tsx). Este builder solo se ocupa del\n * variant + 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:\n variant === 'elevated'\n ? theme.shadows[1]\n : '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 // Body padding (cuando no hay header/footer envolventes). Para el caso\n // compuesto los slots manejan su propio padding, dejamos el root en 0.\n p: paddingMap[padding],\n });\n}\n\nexport function buildCardHeaderSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n px: 2.5,\n py: 1.75,\n borderBottom: `1px solid ${theme.palette.divider}`,\n '& .card-header-text': {\n flex: 1,\n minWidth: 0,\n },\n '& .card-header-actions': {\n display: 'flex',\n alignItems: 'center',\n gap: 0.5,\n flexShrink: 0,\n },\n });\n}\n\nexport function buildCardBodySx(padding: CardPadding): SxProps<Theme> {\n return {\n px: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n py: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n };\n}\n\nexport function buildCardFooterSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: 1,\n px: 2.5,\n py: 1.5,\n borderTop: `1px solid ${theme.palette.divider}`,\n backgroundColor: theme.palette.action.hover,\n });\n}\n","import { type ReactNode } from 'react';\nimport { Box, Card as MuiCard, Typography, useTheme } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport {\n buildCardSx,\n buildCardHeaderSx,\n buildCardBodySx,\n buildCardFooterSx,\n type CardVariant,\n type CardPadding,\n} from './Card.sx';\n\nexport interface CardProps {\n /** Contenido principal. */\n children?: ReactNode;\n /**\n * Título del Card. Si se provee, renderiza un header con separador. Puede\n * ser string o cualquier ReactNode para permitir iconos / chips.\n */\n title?: ReactNode;\n /** Texto secundario debajo del título. */\n subtitle?: ReactNode;\n /**\n * Acciones del header (botones, ActionMenu, etc). Se renderizan alineadas\n * a la derecha.\n */\n actions?: ReactNode;\n /**\n * Header totalmente custom. Si se provee, ignora `title`/`subtitle`/`actions`\n * y toma control del slot entero.\n */\n header?: ReactNode;\n /** Footer custom (botones, mensajes, etc). */\n footer?: 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 /**\n * Densidad del padding interno. Solo aplica al body cuando hay header/footer;\n * cuando no hay slots, aplica al root.\n */\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 /** sx custom del slot body. */\n bodySx?: SxProps<Theme>;\n /** sx custom del slot header. */\n headerSx?: SxProps<Theme>;\n /** sx custom del slot footer. */\n footerSx?: SxProps<Theme>;\n onClick?: () => void;\n onBlur?: () => void;\n className?: string;\n 'data-testid'?: string;\n}\n\n/**\n * Card semántico con slots `title` / `subtitle` / `actions` / `footer`.\n * Reemplaza el patrón `<div class=\"card\"><div class=\"card-header\">...</div>...`\n * de Metronic/Bootstrap con composición declarativa.\n *\n * Backward-compat: si solo se pasa `children`, se comporta como el Card\n * original (MUI Card + body padding).\n *\n * ```tsx\n * <Card\n * title=\"Datos del cliente\"\n * subtitle=\"Última actualización: hace 2h\"\n * actions={<ActionMenu items={menuItems} />}\n * footer={<Button>Guardar</Button>}\n * >\n * <CustomerForm />\n * </Card>\n * ```\n */\nexport function Card({\n children,\n title,\n subtitle,\n actions,\n header,\n footer,\n variant,\n padding = 'normal',\n clickable = false,\n preset,\n raised,\n sx,\n bodySx,\n headerSx,\n footerSx,\n onClick,\n onBlur,\n className,\n 'data-testid': dataTestId,\n}: CardProps) {\n const theme = useTheme();\n\n // Back-compat: `raised` legacy => elevated. Si no vienen ni `raised` ni\n // `variant`, default a 'elevated'.\n const resolvedVariant: CardVariant = raised\n ? 'elevated'\n : (variant ?? 'elevated');\n\n const hasHeader = Boolean(header || title || subtitle || actions);\n const hasFooter = Boolean(footer);\n const isCompound = hasHeader || hasFooter;\n\n // Cuando hay slots, el root no lleva padding (lo llevan los slots).\n const rootPadding: CardPadding = isCompound ? 'none' : padding;\n\n const presetSx = resolvePreset('Card', preset, theme);\n\n const rootSx: SxProps<Theme> = [\n buildCardSx({\n variant: resolvedVariant,\n padding: rootPadding,\n clickable: clickable || Boolean(onClick),\n }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderHeader = () => {\n if (header) return <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>{header}</Box>;\n if (!title && !subtitle && !actions) return null;\n return (\n <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>\n <Box className=\"card-header-text\">\n {title && (\n <Typography\n variant=\"subtitle1\"\n component=\"div\"\n sx={{ fontWeight: 600, lineHeight: 1.3 }}\n noWrap\n >\n {title}\n </Typography>\n )}\n {subtitle && (\n <Typography\n variant=\"caption\"\n color=\"text.secondary\"\n component=\"div\"\n noWrap\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n {actions && <Box className=\"card-header-actions\">{actions}</Box>}\n </Box>\n );\n };\n\n return (\n <MuiCard\n sx={rootSx}\n className={className}\n data-testid={dataTestId}\n onClick={onClick}\n onBlur={onBlur}\n elevation={0} // sombra la maneja buildCardSx\n >\n {renderHeader()}\n {isCompound ? (\n <Box sx={[buildCardBodySx(padding), ...(Array.isArray(bodySx) ? bodySx : bodySx ? [bodySx] : [])]}>\n {children}\n </Box>\n ) : (\n children\n )}\n {hasFooter && (\n <Box sx={[buildCardFooterSx(), ...(Array.isArray(footerSx) ? footerSx : footerSx ? [footerSx] : [])]}>\n {footer}\n </Box>\n )}\n </MuiCard>\n );\n}\n\nexport default Card;\n"],"names":["MuiCard"],"mappings":"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"}
@@ -69,6 +69,6 @@ const Chip = (_a) => {
69
69
  );
70
70
  };
71
71
  export {
72
- Chip
72
+ Chip as C
73
73
  };
74
- //# sourceMappingURL=Chip.js.map
74
+ //# sourceMappingURL=Chip-OPYQ1uQ_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip-OPYQ1uQ_.js","sources":["../src/components/Chip/Chip.tsx"],"sourcesContent":["import React from 'react';\nimport { Chip as MuiChip, ChipProps as MuiChipProps } from '@mui/material';\n\n// Define las props para el componente Chip personalizado\n// Omitimos algunas props de MuiChipProps que redefiniremos para mayor claridad\nexport interface ChipProps extends Omit<MuiChipProps, 'onClick' | 'onDelete' | 'avatar' | 'icon' | 'label' | 'variant' | 'color' | 'size'> {\n // Contenido principal del chip\n label: React.ReactNode;\n // Handler para el evento click del chip\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n // Handler para el evento delete del chip (muestra un botón de borrar)\n onDelete?: (event: React.MouseEvent<HTMLDivElement>) => void;\n // Elemento Avatar a mostrar al inicio del chip\n avatar?: React.ReactElement;\n // Icono a mostrar al inicio del chip (alternativa a avatar)\n icon?: React.ReactElement;\n // Si el chip está deshabilitado\n disabled?: boolean;\n // Variante visual del chip\n variant?: 'filled' | 'outlined';\n // Color del chip\n color?: 'default' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';\n // Tamaño del chip\n size?: 'small' | 'medium';\n}\n\n/**\n * Componente Chip personalizado de Material UI.\n * Proporciona una interfaz simplificada para el componente Chip de Material UI,\n * permitiendo una fácil personalización de etiquetas, avatares, iconos y acciones.\n */\nexport const Chip: React.FC<ChipProps> = ({\n label,\n onClick,\n onDelete,\n avatar,\n icon,\n disabled = false,\n variant = 'filled', // Default variant\n color = 'default', // Default color\n size = 'medium', // Default size\n ...rest // Permite pasar otras props de MuiChipProps (ej. sx, className)\n}) => {\n return (\n <MuiChip\n label={label}\n onClick={onClick}\n onDelete={onDelete}\n avatar={avatar}\n icon={icon}\n disabled={disabled}\n variant={variant}\n color={color}\n size={size}\n clickable={!!onClick} // Habilita el estilo clickable si se proporciona onClick\n {...rest}\n />\n );\n};\n\nexport default Chip;\n"],"names":["MuiChip"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BO,MAAM,OAA4B,CAAC,OAWpC;AAXoC,eACxC;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,UAAU;AAAA,IACV,eAAQ;AAAA,IACR,aAAO;AAAA,MATiC,IAUrC,iBAVqC,IAUrC;AAAA,IATH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IACA;AAAA;AAAA,IACA;AAAA;AAGA,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,CAAC,CAAC;AAAA,OACT;AAAA,EAAA;AAGV;"}
@@ -27,7 +27,6 @@ var __objRest = (source, exclude) => {
27
27
  }
28
28
  return target;
29
29
  };
30
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
31
30
  const jsxRuntime = require("react/jsx-runtime");
32
31
  const material = require("@mui/material");
33
32
  const Chip = (_a) => {
@@ -71,4 +70,4 @@ const Chip = (_a) => {
71
70
  );
72
71
  };
73
72
  exports.Chip = Chip;
74
- //# sourceMappingURL=Chip.cjs.map
73
+ //# sourceMappingURL=Chip-qoJLDiva.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip-qoJLDiva.cjs","sources":["../src/components/Chip/Chip.tsx"],"sourcesContent":["import React from 'react';\nimport { Chip as MuiChip, ChipProps as MuiChipProps } from '@mui/material';\n\n// Define las props para el componente Chip personalizado\n// Omitimos algunas props de MuiChipProps que redefiniremos para mayor claridad\nexport interface ChipProps extends Omit<MuiChipProps, 'onClick' | 'onDelete' | 'avatar' | 'icon' | 'label' | 'variant' | 'color' | 'size'> {\n // Contenido principal del chip\n label: React.ReactNode;\n // Handler para el evento click del chip\n onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;\n // Handler para el evento delete del chip (muestra un botón de borrar)\n onDelete?: (event: React.MouseEvent<HTMLDivElement>) => void;\n // Elemento Avatar a mostrar al inicio del chip\n avatar?: React.ReactElement;\n // Icono a mostrar al inicio del chip (alternativa a avatar)\n icon?: React.ReactElement;\n // Si el chip está deshabilitado\n disabled?: boolean;\n // Variante visual del chip\n variant?: 'filled' | 'outlined';\n // Color del chip\n color?: 'default' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';\n // Tamaño del chip\n size?: 'small' | 'medium';\n}\n\n/**\n * Componente Chip personalizado de Material UI.\n * Proporciona una interfaz simplificada para el componente Chip de Material UI,\n * permitiendo una fácil personalización de etiquetas, avatares, iconos y acciones.\n */\nexport const Chip: React.FC<ChipProps> = ({\n label,\n onClick,\n onDelete,\n avatar,\n icon,\n disabled = false,\n variant = 'filled', // Default variant\n color = 'default', // Default color\n size = 'medium', // Default size\n ...rest // Permite pasar otras props de MuiChipProps (ej. sx, className)\n}) => {\n return (\n <MuiChip\n label={label}\n onClick={onClick}\n onDelete={onDelete}\n avatar={avatar}\n icon={icon}\n disabled={disabled}\n variant={variant}\n color={color}\n size={size}\n clickable={!!onClick} // Habilita el estilo clickable si se proporciona onClick\n {...rest}\n />\n );\n};\n\nexport default Chip;\n"],"names":["jsx","MuiChip"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BO,MAAM,OAA4B,CAAC,OAWpC;AAXoC,eACxC;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,WAAW;AAAA,IACX,UAAU;AAAA,IACV,eAAQ;AAAA,IACR,aAAO;AAAA,MATiC,IAUrC,iBAVqC,IAUrC;AAAA,IATH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,IACA;AAAA;AAAA,IACA;AAAA;AAGA,SACEA,2BAAAA;AAAAA,IAACC,SAAAA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,CAAC,CAAC;AAAA,OACT;AAAA,EAAA;AAGV;;"}
@@ -37,8 +37,8 @@ import { LocalizationProvider } from "@mui/x-date-pickers/LocalizationProvider";
37
37
  import { DatePicker as DatePicker$1 } from "@mui/x-date-pickers/DatePicker";
38
38
  import { Controller } from "react-hook-form";
39
39
  import require$$0 from "dayjs";
40
- import { b as buildFormFieldSx, F as FIELD_INPUT_PADDING_Y } from "../../formField.sx-DfVbMe0V.js";
41
- import { r as resolvePreset } from "../../resolvePreset-B-IB0ehH.js";
40
+ import { b as buildFormFieldSx, F as FIELD_INPUT_PADDING_Y } from "./formField.sx-DfVbMe0V.js";
41
+ import { r as resolvePreset } from "./resolvePreset-K6_BfWHD.js";
42
42
  var enGb$1 = { exports: {} };
43
43
  var enGb = enGb$1.exports;
44
44
  var hasRequiredEnGb;
@@ -197,7 +197,6 @@ const DatePicker = (props) => {
197
197
  return renderPicker(selectedDate, onDateChange);
198
198
  };
199
199
  export {
200
- DatePicker,
201
- DatePicker as default
200
+ DatePicker as D
202
201
  };
203
- //# sourceMappingURL=DatePicker.js.map
202
+ //# sourceMappingURL=DatePicker-8f_9bwhS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatePicker-8f_9bwhS.js","sources":["../node_modules/dayjs/locale/en-gb.js","../src/components/DatePicker/DatePicker.sx.ts","../src/components/DatePicker/DatePicker.helpers.ts","../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["!function(e,a){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=a(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],a):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_en_gb=a(e.dayjs)}(this,(function(e){\"use strict\";function a(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=a(e),_={name:\"en-gb\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),weekdaysShort:\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\"),weekdaysMin:\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),monthsShort:\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\"),weekStart:1,yearStart:4,relativeTime:{future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd, D MMMM YYYY HH:mm\"},ordinal:function(e){var a=[\"th\",\"st\",\"nd\",\"rd\"],t=e%100;return\"[\"+e+(a[(t-20)%10]||a[t]||a[0])+\"]\"}};return t.default.locale(_,null,!0),_}));","import type { SxProps, Theme } from '@mui/material';\n\nimport { buildFormFieldSx } from '../_shared/formField.sx';\nimport { FIELD_INPUT_PADDING_Y } from '../../theme/tokens';\nimport type { LabelPosition } from './DatePicker';\n\n/**\n * Builder de sx para el DatePicker. Reutiliza `buildFormFieldSx` con\n * `includePickersApi: true` para cubrir tanto la API clásica (MuiInputBase /\n * MuiOutlinedInput) como la nueva (MuiPickersInputBase / MuiPickersOutlinedInput)\n * del DatePicker de MUI X v8.\n */\nexport const buildDatePickerSx = (\n borderRadius: number | string,\n labelPosition: LabelPosition,\n): SxProps<Theme> =>\n buildFormFieldSx({\n borderRadius,\n labelPosition,\n includePickersApi: true,\n extraOutsideSx: {\n '& .MuiInputBase-input': {\n paddingTop: FIELD_INPUT_PADDING_Y,\n paddingBottom: FIELD_INPUT_PADDING_Y,\n },\n\n // Secciones editables del PickersTextField (DD/MM/YYYY en API nueva).\n '& .MuiPickersInputBase-sectionsContainer': {\n paddingTop: FIELD_INPUT_PADDING_Y,\n paddingBottom: FIELD_INPUT_PADDING_Y,\n },\n },\n });\n","import type { DateValidationError } from '@mui/x-date-pickers/models';\n\n/**\n * Traduce el código de error del DatePicker de MUI X a un mensaje en español.\n * Se usa internamente para poblar `helperText` cuando hay error de validación\n * y el consumer no pasó un mensaje propio.\n */\nexport const getDateValidationMessage = (\n error: DateValidationError | null,\n): string => {\n switch (error) {\n case 'minDate':\n case 'maxDate':\n return 'Fecha fuera del rango permitido';\n case 'invalidDate':\n return 'Formato de fecha inválido';\n case 'disableFuture':\n return 'No se permiten fechas futuras';\n case 'disablePast':\n return 'No se permiten fechas pasadas';\n default:\n return '';\n }\n};\n","import React, { useMemo } from 'react';\nimport type { SxProps, Theme } from '@mui/material';\nimport { useTheme } from '@mui/material/styles';\nimport { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\nimport {\n DatePicker as MuiDatePicker,\n type DatePickerProps as MuiDatePickerProps,\n} from '@mui/x-date-pickers/DatePicker';\nimport { DateValidationError } from '@mui/x-date-pickers/models';\nimport { Dayjs } from 'dayjs';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\nimport 'dayjs/locale/en-gb';\n\nimport { buildDatePickerSx } from './DatePicker.sx';\nimport { getDateValidationMessage } from './DatePicker.helpers';\nimport { resolvePreset } from '../_shared/resolvePreset';\n\n// ── Tipos de dominio ─────────────────────────────────────────────────────\nexport type LabelPosition = 'outside' | 'floating';\nexport type DatePickerSize = 'small' | 'medium';\n\n// ── Props base ───────────────────────────────────────────────────────────\nexport interface BaseDatePickerProps\n extends Omit<MuiDatePickerProps, 'value' | 'onChange' | 'slotProps'> {\n label?: string;\n minDate?: Dayjs;\n maxDate?: Dayjs;\n disabled?: boolean;\n readOnly?: boolean;\n /** Border radius del input. Default: 10 */\n borderRadius?: number | string;\n /** \"outside\" = label arriba del campo (default). \"floating\" = label clásico MUI dentro del borde */\n labelPosition?: LabelPosition;\n /** Tamaño del TextField renderizado. Default: 'small' */\n size?: DatePickerSize;\n /** helperText pasado al TextField (se sobrescribe por el error de validación si hay). */\n helperText?: string;\n /** Error external override. */\n error?: boolean;\n /** sx que se mergea al TextField interno del picker. */\n sx?: SxProps<Theme>;\n className?: string;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.DatePicker`.\n * - `\"default\"` (o ausente) = estilo built-in del paquete.\n * - Cualquier otro string = mergea el preset encima del estilo built-in.\n */\n preset?: string;\n /** Locale para el adaptador dayjs. Default: 'en-gb'. */\n adapterLocale?: string;\n /** Passthrough a slotProps.textField. */\n textFieldProps?: Record<string, any>;\n /** Passthrough completo a slotProps del MuiDatePicker. */\n slotProps?: MuiDatePickerProps['slotProps'];\n}\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface RHFDatePickerProps extends BaseDatePickerProps {\n name: string;\n control: Control<any>;\n validation?: RegisterOptions;\n selectedDate?: never;\n onDateChange?: never;\n}\n\nexport interface ControlledDatePickerProps extends BaseDatePickerProps {\n name?: string;\n control?: never;\n validation?: never;\n selectedDate: Dayjs | null;\n onDateChange: (date: Dayjs | null) => void;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type DatePickerProps = RHFDatePickerProps | ControlledDatePickerProps;\n\nexport const DatePicker: React.FC<DatePickerProps> = (props) => {\n const {\n label,\n minDate,\n maxDate,\n disabled,\n readOnly,\n borderRadius = 10,\n labelPosition = 'outside',\n size = 'small',\n helperText,\n error: errorProp,\n sx,\n className,\n preset,\n adapterLocale = 'en-gb',\n textFieldProps,\n slotProps: slotPropsProp,\n ...rest\n } = props as ControlledDatePickerProps & {\n control?: Control<any>;\n validation?: RegisterOptions;\n };\n\n const [validationError, setValidationError] = React.useState<DateValidationError | null>(null);\n\n const validationErrorMessage = useMemo(\n () => getDateValidationMessage(validationError),\n [validationError],\n );\n\n const theme = useTheme();\n const presetSx = resolvePreset('DatePicker', preset, theme);\n\n const mergedSx = [\n buildDatePickerSx(borderRadius, labelPosition),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : [sx]),\n ];\n\n const renderPicker = (\n value: Dayjs | null,\n onChange: (date: Dayjs | null) => void,\n onBlur?: () => void,\n inputRef?: React.Ref<any>,\n rhfError?: boolean,\n rhfHelperText?: string,\n ) => {\n const finalError = rhfError || !!validationErrorMessage || !!errorProp;\n const finalHelperText = rhfHelperText || validationErrorMessage || helperText;\n\n return (\n <LocalizationProvider dateAdapter={AdapterDayjs} adapterLocale={adapterLocale}>\n <MuiDatePicker\n label={label}\n value={value}\n onChange={onChange}\n minDate={minDate}\n maxDate={maxDate}\n onError={setValidationError}\n disabled={disabled}\n readOnly={readOnly}\n className={className}\n sx={mergedSx}\n slotProps={{\n ...slotPropsProp,\n textField: {\n fullWidth: true,\n size,\n variant: 'outlined',\n onBlur,\n inputRef,\n error: !!finalError,\n helperText: finalHelperText,\n ...(slotPropsProp?.textField as Record<string, any> | undefined),\n ...textFieldProps,\n } as any,\n }}\n {...(rest as any)}\n />\n </LocalizationProvider>\n );\n };\n\n // --- RHF mode ---\n if ('control' in props && props.control) {\n const { name, control, validation } = props as RHFDatePickerProps;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n render={({ field, fieldState: { error: fieldError } }) =>\n renderPicker(\n field.value ?? null,\n field.onChange,\n field.onBlur,\n field.ref,\n !!fieldError,\n fieldError?.message,\n )\n }\n />\n );\n }\n\n // --- Controlado ---\n const { selectedDate, onDateChange } = props as ControlledDatePickerProps;\n return renderPicker(selectedDate, onDateChange);\n};\n\nexport default DatePicker;\n"],"names":["this","e","a","t","React","MuiDatePicker","_a"],"mappings":"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","x_google_ignoreList":[0]}
@@ -30,7 +30,6 @@ var __objRest = (source, exclude) => {
30
30
  }
31
31
  return target;
32
32
  };
33
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
34
33
  const jsxRuntime = require("react/jsx-runtime");
35
34
  const React = require("react");
36
35
  const styles = require("@mui/material/styles");
@@ -39,8 +38,8 @@ const LocalizationProvider = require("@mui/x-date-pickers/LocalizationProvider")
39
38
  const DatePicker$1 = require("@mui/x-date-pickers/DatePicker");
40
39
  const reactHookForm = require("react-hook-form");
41
40
  const require$$0 = require("dayjs");
42
- const formField_sx = require("../../formField.sx-CQ1mbk9M.cjs");
43
- const resolvePreset = require("../../resolvePreset-CT3kU-K2.cjs");
41
+ const formField_sx = require("./formField.sx-CQ1mbk9M.cjs");
42
+ const resolvePreset = require("./resolvePreset-CxTI6_Ln.cjs");
44
43
  var enGb$1 = { exports: {} };
45
44
  var enGb = enGb$1.exports;
46
45
  var hasRequiredEnGb;
@@ -199,5 +198,4 @@ const DatePicker = (props) => {
199
198
  return renderPicker(selectedDate, onDateChange);
200
199
  };
201
200
  exports.DatePicker = DatePicker;
202
- exports.default = DatePicker;
203
- //# sourceMappingURL=DatePicker.cjs.map
201
+ //# sourceMappingURL=DatePicker-DLSfkgGA.cjs.map