@soyfri/shared-library 2.0.0-beta.2 → 2.0.0-beta.20

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 (657) hide show
  1. package/.dockerignore +8 -0
  2. package/.github/workflows/publish.yml +107 -0
  3. package/.prettierrc +3 -0
  4. package/.storybook/main.ts +19 -0
  5. package/.storybook/preview.ts +14 -0
  6. package/.storybook/vitest.setup.ts +9 -0
  7. package/Dockerfile +37 -0
  8. package/build.js +117 -0
  9. package/chromatic.config.json +5 -0
  10. package/cleanDirectories.js +40 -0
  11. package/dist/Autocomplete-C_lW1VER.js +337 -0
  12. package/dist/Autocomplete-C_lW1VER.js.map +1 -0
  13. package/dist/Autocomplete-CejWztBY.cjs +336 -0
  14. package/dist/Autocomplete-CejWztBY.cjs.map +1 -0
  15. package/dist/Avatar-CgT7955R.js +162 -0
  16. package/dist/Avatar-CgT7955R.js.map +1 -0
  17. package/dist/Avatar-CuSrK8Wn.cjs +161 -0
  18. package/dist/Avatar-CuSrK8Wn.cjs.map +1 -0
  19. package/dist/Button-C17mExpd.cjs.map +1 -1
  20. package/dist/Button-UkkP-bNw.js.map +1 -1
  21. package/dist/Card-B1wtavyl.js +98 -0
  22. package/dist/Card-B1wtavyl.js.map +1 -0
  23. package/dist/Card-DfdU610V.cjs +97 -0
  24. package/dist/Card-DfdU610V.cjs.map +1 -0
  25. package/dist/Checkbox-BCqMFWt4.cjs +187 -0
  26. package/dist/Checkbox-BCqMFWt4.cjs.map +1 -0
  27. package/dist/Checkbox-gB5YKkVo.js +188 -0
  28. package/dist/Checkbox-gB5YKkVo.js.map +1 -0
  29. package/dist/{components/DateRangePicker/DateRangePicker.js → Chip-OPYQ1uQ_.js} +33 -35
  30. package/dist/Chip-OPYQ1uQ_.js.map +1 -0
  31. package/dist/{components/DateRangePicker/DateRangePicker.cjs → Chip-qoJLDiva.cjs} +33 -36
  32. package/dist/Chip-qoJLDiva.cjs.map +1 -0
  33. package/dist/DatePicker-_IGWc3I5.js +178 -0
  34. package/dist/DatePicker-_IGWc3I5.js.map +1 -0
  35. package/dist/DatePicker-t7uDTZMl.cjs +177 -0
  36. package/dist/DatePicker-t7uDTZMl.cjs.map +1 -0
  37. package/dist/DateTimePicker-BxQyjTCY.cjs +229 -0
  38. package/dist/DateTimePicker-BxQyjTCY.cjs.map +1 -0
  39. package/dist/DateTimePicker-CrmWav_j.js +230 -0
  40. package/dist/DateTimePicker-CrmWav_j.js.map +1 -0
  41. package/dist/Input-CScC87J5.cjs +185 -0
  42. package/dist/Input-CScC87J5.cjs.map +1 -0
  43. package/dist/Input-DP_fKl38.js +186 -0
  44. package/dist/Input-DP_fKl38.js.map +1 -0
  45. package/dist/Modal-BN5s-Tfk.cjs +347 -0
  46. package/dist/Modal-BN5s-Tfk.cjs.map +1 -0
  47. package/dist/Modal-BRZMPwDj.js +348 -0
  48. package/dist/Modal-BRZMPwDj.js.map +1 -0
  49. package/dist/README.md +243 -0
  50. package/dist/RadioGroup-Dd0rHXSX.cjs +202 -0
  51. package/dist/RadioGroup-Dd0rHXSX.cjs.map +1 -0
  52. package/dist/RadioGroup-bO-ahP9T.js +203 -0
  53. package/dist/RadioGroup-bO-ahP9T.js.map +1 -0
  54. package/dist/Select-D5OrjVj3.js +253 -0
  55. package/dist/Select-D5OrjVj3.js.map +1 -0
  56. package/dist/Select-Dyvc4bVo.cjs +252 -0
  57. package/dist/Select-Dyvc4bVo.cjs.map +1 -0
  58. package/dist/Stat-BUcFCGrz.cjs +83 -0
  59. package/dist/Stat-BUcFCGrz.cjs.map +1 -0
  60. package/dist/Stat-C06A_izS.js +84 -0
  61. package/dist/Stat-C06A_izS.js.map +1 -0
  62. package/dist/StatusMessage-B3nXpuRl.cjs +88 -0
  63. package/dist/StatusMessage-B3nXpuRl.cjs.map +1 -0
  64. package/dist/StatusMessage-D0WgSBx7.js +89 -0
  65. package/dist/StatusMessage-D0WgSBx7.js.map +1 -0
  66. package/dist/Step-BArsou1V.js +301 -0
  67. package/dist/Step-BArsou1V.js.map +1 -0
  68. package/dist/Step-Nd7SJbRZ.cjs +300 -0
  69. package/dist/Step-Nd7SJbRZ.cjs.map +1 -0
  70. package/dist/Switch-CQFOopYy.cjs +182 -0
  71. package/dist/Switch-CQFOopYy.cjs.map +1 -0
  72. package/dist/Switch-D72dpkH2.js +183 -0
  73. package/dist/Switch-D72dpkH2.js.map +1 -0
  74. package/dist/Tab-BbP8jBcK.cjs +110 -0
  75. package/dist/Tab-BbP8jBcK.cjs.map +1 -0
  76. package/dist/Tab-BxSxKJsP.js +111 -0
  77. package/dist/Tab-BxSxKJsP.js.map +1 -0
  78. package/dist/Table-C2LbW0B1.js +531 -0
  79. package/dist/Table-C2LbW0B1.js.map +1 -0
  80. package/dist/Table-C4OM6rrC.cjs +530 -0
  81. package/dist/Table-C4OM6rrC.cjs.map +1 -0
  82. package/dist/components/ActionMenu/ActionMenu.cjs +52 -52
  83. package/dist/components/ActionMenu/ActionMenu.cjs.map +1 -1
  84. package/dist/components/ActionMenu/ActionMenu.d.ts +20 -36
  85. package/dist/components/ActionMenu/ActionMenu.js +55 -55
  86. package/dist/components/ActionMenu/ActionMenu.js.map +1 -1
  87. package/dist/components/ActionMenu/index.d.ts +2 -2
  88. package/dist/components/AppBar/AppBar.cjs +3 -220
  89. package/dist/components/AppBar/AppBar.cjs.map +1 -1
  90. package/dist/components/AppBar/AppBar.d.ts +6 -6
  91. package/dist/components/AppBar/AppBar.js +6 -223
  92. package/dist/components/AppBar/AppBar.js.map +1 -1
  93. package/dist/components/AppBar/index.d.ts +0 -6
  94. package/dist/components/Autocomplete/Autocomplete.cjs +4 -311
  95. package/dist/components/Autocomplete/Autocomplete.cjs.map +1 -1
  96. package/dist/components/Autocomplete/Autocomplete.d.ts +8 -6
  97. package/dist/components/Autocomplete/Autocomplete.helpers.d.ts +8 -4
  98. package/dist/components/Autocomplete/Autocomplete.js +4 -311
  99. package/dist/components/Autocomplete/Autocomplete.js.map +1 -1
  100. package/dist/components/Autocomplete/_parts/AutocompleteOption.d.ts +5 -8
  101. package/dist/components/Autocomplete/index.d.ts +1 -1
  102. package/dist/components/Avatar/Avatar.cjs +2 -160
  103. package/dist/components/Avatar/Avatar.cjs.map +1 -1
  104. package/dist/components/Avatar/Avatar.js +2 -160
  105. package/dist/components/Avatar/Avatar.js.map +1 -1
  106. package/dist/components/Avatar/index.d.ts +1 -0
  107. package/dist/components/Button/Button.d.ts +5 -5
  108. package/dist/components/Button/index.d.ts +1 -0
  109. package/dist/components/Card/Card.cjs +4 -184
  110. package/dist/components/Card/Card.cjs.map +1 -1
  111. package/dist/components/Card/Card.d.ts +3 -50
  112. package/dist/components/Card/Card.js +4 -184
  113. package/dist/components/Card/Card.js.map +1 -1
  114. package/dist/components/Card/Card.sx.d.ts +3 -6
  115. package/dist/components/Card/index.d.ts +1 -1
  116. package/dist/components/Checkbox/Checkbox.cjs +6 -0
  117. package/dist/components/Checkbox/Checkbox.cjs.map +1 -0
  118. package/dist/components/Checkbox/Checkbox.d.ts +55 -0
  119. package/dist/components/Checkbox/Checkbox.js +6 -0
  120. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  121. package/dist/components/Checkbox/Checkbox.sx.d.ts +13 -0
  122. package/dist/components/Checkbox/index.d.ts +2 -0
  123. package/dist/components/Checkbox.d.ts +6 -0
  124. package/dist/components/Chip/Chip.cjs +4 -72
  125. package/dist/components/Chip/Chip.cjs.map +1 -1
  126. package/dist/components/Chip/Chip.js +3 -71
  127. package/dist/components/Chip/Chip.js.map +1 -1
  128. package/dist/components/Chip/index.d.ts +2 -1
  129. package/dist/components/Chip.d.ts +4 -0
  130. package/dist/components/Column/Column.cjs +1 -1
  131. package/dist/components/Column/Column.cjs.map +1 -1
  132. package/dist/components/Column/Column.d.ts +1 -1
  133. package/dist/components/Column/Column.js +1 -1
  134. package/dist/components/Column/Column.js.map +1 -1
  135. package/dist/components/Column/index.d.ts +1 -0
  136. package/dist/components/DatePicker/DatePicker.cjs +3 -200
  137. package/dist/components/DatePicker/DatePicker.cjs.map +1 -1
  138. package/dist/components/DatePicker/DatePicker.d.ts +1 -13
  139. package/dist/components/DatePicker/DatePicker.js +3 -200
  140. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  141. package/dist/components/DatePicker/index.d.ts +1 -1
  142. package/dist/components/DateTimePicker/DateTimePicker.cjs +3 -219
  143. package/dist/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  144. package/dist/components/DateTimePicker/DateTimePicker.d.ts +10 -6
  145. package/dist/components/DateTimePicker/DateTimePicker.definitions.d.ts +2 -0
  146. package/dist/components/DateTimePicker/DateTimePicker.helpers.d.ts +4 -2
  147. package/dist/components/DateTimePicker/DateTimePicker.js +3 -219
  148. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
  149. package/dist/components/DateTimePicker/index.d.ts +1 -1
  150. package/dist/components/Drawer/Drawer.cjs +25 -24
  151. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  152. package/dist/components/Drawer/Drawer.d.ts +8 -1
  153. package/dist/components/Drawer/Drawer.js +26 -25
  154. package/dist/components/Drawer/Drawer.js.map +1 -1
  155. package/dist/components/Drawer/DrawerItem.d.ts +6 -1
  156. package/dist/components/Gallery/Gallery.cjs +154 -79
  157. package/dist/components/Gallery/Gallery.cjs.map +1 -1
  158. package/dist/components/Gallery/Gallery.d.ts +25 -9
  159. package/dist/components/Gallery/Gallery.js +154 -79
  160. package/dist/components/Gallery/Gallery.js.map +1 -1
  161. package/dist/components/Gallery/GalleryLightbox.d.ts +6 -10
  162. package/dist/components/Gallery/GalleryMain.d.ts +3 -7
  163. package/dist/components/Gallery/GalleryThumbnails.d.ts +7 -11
  164. package/dist/components/Gallery/index.d.ts +2 -1
  165. package/dist/components/Gallery.d.ts +4 -0
  166. package/dist/components/Icon/Icon.cjs +6 -8
  167. package/dist/components/Icon/Icon.cjs.map +1 -1
  168. package/dist/components/Icon/Icon.d.ts +11 -17
  169. package/dist/components/Icon/Icon.js +7 -9
  170. package/dist/components/Icon/Icon.js.map +1 -1
  171. package/dist/components/Icon/index.d.ts +2 -1
  172. package/dist/components/Icon.d.ts +4 -0
  173. package/dist/components/Input/Input.cjs +3 -172
  174. package/dist/components/Input/Input.cjs.map +1 -1
  175. package/dist/components/Input/Input.d.ts +9 -2
  176. package/dist/components/Input/Input.definitions.d.ts +1 -0
  177. package/dist/components/Input/Input.helpers.d.ts +3 -3
  178. package/dist/components/Input/Input.js +3 -172
  179. package/dist/components/Input/Input.js.map +1 -1
  180. package/dist/components/Input/index.d.ts +1 -1
  181. package/dist/components/InputGroup/InputGroup.cjs +23 -22
  182. package/dist/components/InputGroup/InputGroup.cjs.map +1 -1
  183. package/dist/components/InputGroup/InputGroup.d.ts +4 -4
  184. package/dist/components/InputGroup/InputGroup.js +22 -21
  185. package/dist/components/InputGroup/InputGroup.js.map +1 -1
  186. package/dist/components/InputGroup/index.d.ts +2 -1
  187. package/dist/components/InputGroup.d.ts +4 -0
  188. package/dist/components/Modal/Modal.cjs +7 -317
  189. package/dist/components/Modal/Modal.cjs.map +1 -1
  190. package/dist/components/Modal/Modal.d.ts +20 -5
  191. package/dist/components/Modal/Modal.js +6 -316
  192. package/dist/components/Modal/Modal.js.map +1 -1
  193. package/dist/components/Modal/ModalBody.d.ts +6 -1
  194. package/dist/components/Modal/ModalFooter.d.ts +4 -4
  195. package/dist/components/Modal/ModalHeader.d.ts +6 -1
  196. package/dist/components/Modal/index.d.ts +4 -1
  197. package/dist/components/Modal.d.ts +4 -0
  198. package/dist/components/RadioGroup/RadioGroup.cjs +6 -0
  199. package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -0
  200. package/dist/components/RadioGroup/RadioGroup.d.ts +59 -0
  201. package/dist/components/RadioGroup/RadioGroup.definitions.d.ts +6 -0
  202. package/dist/components/RadioGroup/RadioGroup.js +6 -0
  203. package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
  204. package/dist/components/RadioGroup/RadioGroup.sx.d.ts +20 -0
  205. package/dist/components/RadioGroup/index.d.ts +2 -0
  206. package/dist/components/RadioGroup.d.ts +6 -0
  207. package/dist/components/Select/Select.cjs +4 -445
  208. package/dist/components/Select/Select.cjs.map +1 -1
  209. package/dist/components/Select/Select.d.ts +13 -18
  210. package/dist/components/Select/Select.helpers.d.ts +5 -19
  211. package/dist/components/Select/Select.js +4 -445
  212. package/dist/components/Select/Select.js.map +1 -1
  213. package/dist/components/Select/index.d.ts +1 -1
  214. package/dist/components/Stat/Stat.cjs +4 -83
  215. package/dist/components/Stat/Stat.cjs.map +1 -1
  216. package/dist/components/Stat/Stat.js +3 -82
  217. package/dist/components/Stat/Stat.js.map +1 -1
  218. package/dist/components/Stat/index.d.ts +2 -1
  219. package/dist/components/Stat.d.ts +4 -0
  220. package/dist/components/StatusMessage/StatusMessage.cjs +4 -77
  221. package/dist/components/StatusMessage/StatusMessage.cjs.map +1 -1
  222. package/dist/components/StatusMessage/StatusMessage.d.ts +20 -36
  223. package/dist/components/StatusMessage/StatusMessage.js +3 -76
  224. package/dist/components/StatusMessage/StatusMessage.js.map +1 -1
  225. package/dist/components/StatusMessage/index.d.ts +2 -1
  226. package/dist/components/StatusMessage.d.ts +4 -0
  227. package/dist/components/Stepper/Stepper.cjs +8 -47
  228. package/dist/components/Stepper/Stepper.cjs.map +1 -1
  229. package/dist/components/Stepper/Stepper.d.ts +9 -8
  230. package/dist/components/Stepper/Stepper.js +7 -46
  231. package/dist/components/Stepper/Stepper.js.map +1 -1
  232. package/dist/{hooks/Wizard/WizardContext.d.ts → components/Stepper/StepperContext.d.ts} +29 -23
  233. package/dist/components/Stepper/_hooks/useHorizontalScroll.d.ts +19 -0
  234. package/dist/components/Stepper/_parts/StepperScrollArrow.d.ts +19 -0
  235. package/dist/components/Stepper/index.d.ts +6 -2
  236. package/dist/components/Stepper.d.ts +4 -0
  237. package/dist/components/Switch/Switch.cjs +6 -0
  238. package/dist/components/Switch/Switch.cjs.map +1 -0
  239. package/dist/components/Switch/Switch.d.ts +48 -0
  240. package/dist/components/Switch/Switch.definitions.d.ts +7 -0
  241. package/dist/components/Switch/Switch.js +6 -0
  242. package/dist/components/Switch/Switch.js.map +1 -0
  243. package/dist/components/Switch/Switch.sx.d.ts +22 -0
  244. package/dist/components/Switch/Switch.types.d.ts +1 -0
  245. package/dist/components/Switch/index.d.ts +2 -0
  246. package/dist/components/Switch.d.ts +6 -0
  247. package/dist/components/Table/Table.cjs +2 -528
  248. package/dist/components/Table/Table.cjs.map +1 -1
  249. package/dist/components/Table/Table.d.ts +1 -1
  250. package/dist/components/Table/Table.js +2 -528
  251. package/dist/components/Table/Table.js.map +1 -1
  252. package/dist/components/Tabs/Tabs.cjs +5 -94
  253. package/dist/components/Tabs/Tabs.cjs.map +1 -1
  254. package/dist/components/Tabs/Tabs.d.ts +21 -16
  255. package/dist/components/Tabs/Tabs.js +4 -93
  256. package/dist/components/Tabs/Tabs.js.map +1 -1
  257. package/dist/components/Tabs/index.d.ts +4 -2
  258. package/dist/components/Tabs.d.ts +4 -0
  259. package/dist/components/Timeline/Timeline.cjs +3 -2
  260. package/dist/components/Timeline/Timeline.cjs.map +1 -1
  261. package/dist/components/Timeline/Timeline.d.ts +4 -8
  262. package/dist/components/Timeline/Timeline.js +3 -2
  263. package/dist/components/Timeline/Timeline.js.map +1 -1
  264. package/dist/components/Timeline/index.d.ts +4 -2
  265. package/dist/components/Timeline.d.ts +4 -0
  266. package/dist/components/_shared/mergeSx.d.ts +7 -0
  267. package/dist/{formField.sx-DfVbMe0V.js → formField.sx-8_QRnKxv.js} +2 -11
  268. package/dist/formField.sx-8_QRnKxv.js.map +1 -0
  269. package/dist/{formField.sx-CQ1mbk9M.cjs → formField.sx-BAX7KwMR.cjs} +10 -19
  270. package/dist/formField.sx-BAX7KwMR.cjs.map +1 -0
  271. package/dist/index.cjs +92 -2
  272. package/dist/index.cjs.map +1 -1
  273. package/dist/index.d.ts +32 -0
  274. package/dist/index.js +66 -3
  275. package/dist/index.js.map +1 -1
  276. package/dist/mergeSx-BXoNZjB_.js +10 -0
  277. package/dist/mergeSx-BXoNZjB_.js.map +1 -0
  278. package/dist/mergeSx-Dbccoo_H.cjs +9 -0
  279. package/dist/mergeSx-Dbccoo_H.cjs.map +1 -0
  280. package/dist/mui.d.ts +3 -1
  281. package/dist/package.json +190 -0
  282. package/dist/{resolvePreset-CT3kU-K2.cjs → resolvePreset-CxTI6_Ln.cjs} +3 -3
  283. package/dist/{resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +1 -1
  284. package/dist/{resolvePreset-B-IB0ehH.js → resolvePreset-K6_BfWHD.js} +3 -3
  285. package/dist/{resolvePreset-B-IB0ehH.js.map → resolvePreset-K6_BfWHD.js.map} +1 -1
  286. package/dist/theme/componentStyles.d.ts +1 -1
  287. package/dist/tokens-BRrcP_p_.js +21 -0
  288. package/dist/tokens-BRrcP_p_.js.map +1 -0
  289. package/dist/tokens-jaWWNk39.cjs +20 -0
  290. package/dist/tokens-jaWWNk39.cjs.map +1 -0
  291. package/dist/utils/index.d.ts +2 -0
  292. package/dist/{components/ScrollTopButton → utils}/scrollToTop.d.ts +6 -7
  293. package/package.json +25 -48
  294. package/rollup.config.cjs +87 -0
  295. package/scripts/gen-dist-pkg.mjs +15 -0
  296. package/shared-library-comercios-MUI.code-workspace +10 -0
  297. package/src/components/ActionMenu/ActionMenu.stories.tsx +427 -0
  298. package/src/components/ActionMenu/ActionMenu.tsx +153 -0
  299. package/src/components/ActionMenu/index.ts +2 -0
  300. package/src/components/AppBar/AppBar.stories.tsx +316 -0
  301. package/src/components/AppBar/AppBar.sx.ts +32 -0
  302. package/src/components/AppBar/AppBar.tsx +119 -0
  303. package/src/components/AppBar/AppBarContext.ts +25 -0
  304. package/src/components/AppBar/AppBarMenuToggle.tsx +90 -0
  305. package/src/components/AppBar/index.ts +12 -0
  306. package/src/components/Autocomplete/Autocomplete.definitions.ts +477 -0
  307. package/src/components/Autocomplete/Autocomplete.helpers.ts +80 -0
  308. package/src/components/Autocomplete/Autocomplete.stories.tsx +784 -0
  309. package/src/components/Autocomplete/Autocomplete.sx.ts +30 -0
  310. package/src/components/Autocomplete/Autocomplete.tsx +393 -0
  311. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +55 -0
  312. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +17 -0
  313. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +29 -0
  314. package/src/components/Autocomplete/index.ts +12 -0
  315. package/src/components/Avatar/Avatar.definitions.ts +162 -0
  316. package/src/components/Avatar/Avatar.stories.tsx +258 -0
  317. package/src/components/Avatar/Avatar.tsx +206 -0
  318. package/src/components/Avatar/index.ts +2 -0
  319. package/src/components/Button/Button.definition.ts +97 -0
  320. package/src/components/Button/Button.stories.tsx +285 -0
  321. package/src/components/Button/Button.tsx +66 -0
  322. package/src/components/Button/index.ts +2 -0
  323. package/src/components/Card/Card.definition.ts +5 -0
  324. package/src/components/Card/Card.stories.tsx +102 -0
  325. package/src/components/Card/Card.sx.ts +58 -0
  326. package/src/components/Card/Card.tsx +85 -0
  327. package/src/components/Card/index.ts +4 -0
  328. package/src/components/Checkbox/Checkbox.stories.tsx +212 -0
  329. package/src/components/Checkbox/Checkbox.sx.ts +67 -0
  330. package/src/components/Checkbox/Checkbox.tsx +208 -0
  331. package/src/components/Checkbox/index.ts +10 -0
  332. package/src/components/Chip/Chip.definitions.ts +167 -0
  333. package/src/components/Chip/Chip.stories.tsx +265 -0
  334. package/src/components/Chip/Chip.tsx +61 -0
  335. package/src/components/Chip/index.ts +2 -0
  336. package/src/components/Column/Column.tsx +29 -0
  337. package/src/components/Column/index.ts +2 -0
  338. package/src/components/DatePicker/DatePicker.definitions.ts +228 -0
  339. package/src/components/DatePicker/DatePicker.helpers.ts +24 -0
  340. package/src/components/DatePicker/DatePicker.stories.tsx +309 -0
  341. package/src/components/DatePicker/DatePicker.sx.ts +33 -0
  342. package/src/components/DatePicker/DatePicker.tsx +133 -0
  343. package/src/components/DatePicker/index.ts +7 -0
  344. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +317 -0
  345. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +45 -0
  346. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +415 -0
  347. package/src/components/DateTimePicker/DateTimePicker.sx.ts +30 -0
  348. package/src/components/DateTimePicker/DateTimePicker.tsx +240 -0
  349. package/src/components/DateTimePicker/index.ts +9 -0
  350. package/src/components/Drawer/Drawer.stories.tsx +438 -0
  351. package/src/components/Drawer/Drawer.sx.ts +106 -0
  352. package/src/components/Drawer/Drawer.tsx +224 -0
  353. package/src/components/Drawer/DrawerContext.ts +26 -0
  354. package/src/components/Drawer/DrawerItem.tsx +120 -0
  355. package/src/components/Drawer/index.ts +10 -0
  356. package/src/components/Flyout/Flyout.stories.tsx +282 -0
  357. package/src/components/Flyout/Flyout.tsx +122 -0
  358. package/src/components/Flyout/index.ts +1 -0
  359. package/src/components/Gallery/Gallery.definition.tsx +37 -0
  360. package/src/components/Gallery/Gallery.stories.tsx +82 -0
  361. package/src/components/Gallery/Gallery.tsx +158 -0
  362. package/src/components/Gallery/GalleryLightbox.tsx +186 -0
  363. package/src/components/Gallery/GalleryMain.tsx +87 -0
  364. package/src/components/Gallery/GalleryThumbnails.tsx +122 -0
  365. package/src/components/Gallery/index.ts +2 -0
  366. package/src/components/Icon/Icon.stories.tsx +121 -0
  367. package/src/components/Icon/Icon.tsx +163 -0
  368. package/src/components/Icon/index.ts +2 -0
  369. package/src/components/Input/Input.definitions.ts +348 -0
  370. package/src/components/Input/Input.helpers.ts +50 -0
  371. package/src/components/Input/Input.stories.tsx +528 -0
  372. package/src/components/Input/Input.sx.ts +42 -0
  373. package/src/components/Input/Input.tsx +162 -0
  374. package/src/components/Input/index.ts +10 -0
  375. package/src/components/InputGroup/InputGroup.definitions.ts +158 -0
  376. package/src/components/InputGroup/InputGroup.stories.tsx +267 -0
  377. package/src/components/InputGroup/InputGroup.tsx +180 -0
  378. package/src/components/InputGroup/index.ts +2 -0
  379. package/src/components/MenuButton/MenuButton.stories.tsx +197 -0
  380. package/src/components/MenuButton/MenuButton.tsx +100 -0
  381. package/src/components/MenuButton/index.ts +1 -0
  382. package/src/components/Modal/Modal.stories.tsx +721 -0
  383. package/src/components/Modal/Modal.tsx +407 -0
  384. package/src/components/Modal/ModalBody.tsx +23 -0
  385. package/src/components/Modal/ModalFooter.tsx +83 -0
  386. package/src/components/Modal/ModalHeader.tsx +33 -0
  387. package/src/components/Modal/index.ts +11 -0
  388. package/src/components/RadioGroup/RadioGroup.definitions.ts +177 -0
  389. package/src/components/RadioGroup/RadioGroup.stories.tsx +231 -0
  390. package/src/components/RadioGroup/RadioGroup.sx.ts +75 -0
  391. package/src/components/RadioGroup/RadioGroup.tsx +207 -0
  392. package/src/components/RadioGroup/index.ts +10 -0
  393. package/src/components/Select/Select.helpers.ts +31 -0
  394. package/src/components/Select/Select.stories.tsx +393 -0
  395. package/src/components/Select/Select.sx.ts +14 -0
  396. package/src/components/Select/Select.tsx +327 -0
  397. package/src/components/Select/_parts/SelectMenuItem.tsx +40 -0
  398. package/src/components/Select/_parts/SelectValue.tsx +95 -0
  399. package/src/components/Select/index.ts +12 -0
  400. package/src/components/Stat/Stat.stories.tsx +85 -0
  401. package/src/components/Stat/Stat.tsx +117 -0
  402. package/src/components/Stat/index.ts +2 -0
  403. package/src/components/StatusMessage/StatusMessage.stories.tsx +159 -0
  404. package/src/components/StatusMessage/StatusMessage.tsx +143 -0
  405. package/src/components/StatusMessage/index.ts +3 -0
  406. package/src/components/Stepper/Step.tsx +21 -0
  407. package/src/components/Stepper/Stepper.definition.ts +75 -0
  408. package/src/components/Stepper/Stepper.stories.tsx +194 -0
  409. package/src/components/Stepper/Stepper.tsx +194 -0
  410. package/src/components/Stepper/StepperContext.tsx +176 -0
  411. package/src/components/Stepper/StepperProvider.stories.tsx +286 -0
  412. package/src/components/Stepper/_hooks/useHorizontalScroll.ts +56 -0
  413. package/src/components/Stepper/_parts/StepperScrollArrow.tsx +50 -0
  414. package/src/components/Stepper/index.ts +15 -0
  415. package/src/components/Switch/Switch.definitions.ts +134 -0
  416. package/src/components/Switch/Switch.stories.tsx +213 -0
  417. package/src/components/Switch/Switch.sx.ts +81 -0
  418. package/src/components/Switch/Switch.tsx +188 -0
  419. package/src/components/Switch/Switch.types.ts +10 -0
  420. package/src/components/Switch/index.ts +9 -0
  421. package/src/components/Table/EmptyTable.png +0 -0
  422. package/src/components/Table/Table.definition.ts +580 -0
  423. package/src/components/Table/Table.stories.tsx +853 -0
  424. package/src/components/Table/Table.tsx +494 -0
  425. package/src/components/Table/data.ts +134 -0
  426. package/src/components/Table/exportsUtils.ts +195 -0
  427. package/src/components/Table/index.ts +3 -0
  428. package/src/components/Table/types.ts +34 -0
  429. package/src/components/Tabs/Tab.definition.ts +53 -0
  430. package/src/components/Tabs/Tab.tsx +19 -0
  431. package/src/components/Tabs/Tabs.stories.tsx +118 -0
  432. package/src/components/Tabs/Tabs.tsx +163 -0
  433. package/src/components/Tabs/_tabUtils.tsx +4 -0
  434. package/src/components/Tabs/index.ts +5 -0
  435. package/src/components/Timeline/Timeline.definition.ts +43 -0
  436. package/src/components/Timeline/Timeline.stories.tsx +108 -0
  437. package/src/components/Timeline/Timeline.tsx +44 -0
  438. package/src/components/Timeline/TimelineItem.tsx +31 -0
  439. package/src/components/Timeline/index.ts +5 -0
  440. package/src/components/Tooltip/Tooltip.stories.tsx +129 -0
  441. package/src/components/Tooltip/Tooltip.tsx +58 -0
  442. package/src/components/Tooltip/index.ts +1 -0
  443. package/src/components/_shared/formField.sx.ts +118 -0
  444. package/src/components/_shared/mergeSx.ts +16 -0
  445. package/src/components/_shared/resolvePreset.ts +38 -0
  446. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +168 -0
  447. package/src/hooks/ClipBoard/ClipBoard.tsx +131 -0
  448. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +111 -0
  449. package/src/hooks/ClipBoard/index.ts +1 -0
  450. package/src/index.ts +51 -0
  451. package/src/mui.ts +57 -0
  452. package/src/styles.css +3 -0
  453. package/src/theme/componentStyles.ts +50 -0
  454. package/src/theme/tokens.ts +43 -0
  455. package/src/utils/index.ts +2 -0
  456. package/src/utils/scrollToTop.ts +36 -0
  457. package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
  458. package/storybook-static/assets/AccountCircle-BDZFsbTw.js +1 -0
  459. package/storybook-static/assets/ActionMenu-EynP8yU1.js +19 -0
  460. package/storybook-static/assets/ActionMenu.stories-DqSqRGix.js +185 -0
  461. package/storybook-static/assets/Alert-3zvTPc0p.js +1 -0
  462. package/storybook-static/assets/AppBar.stories-DcX3M5th.js +172 -0
  463. package/storybook-static/assets/Autocomplete.stories-CXJm8FOT.js +788 -0
  464. package/storybook-static/assets/Avatar-NbFfkZws.js +1 -0
  465. package/storybook-static/assets/Avatar.stories-CwOYCzqU.js +390 -0
  466. package/storybook-static/assets/Box-BnhEcfFm.js +1 -0
  467. package/storybook-static/assets/Button-D9h7OggD.js +1 -0
  468. package/storybook-static/assets/Button-DBpqmVB_.js +1 -0
  469. package/storybook-static/assets/Button.stories-F20dmnjq.js +320 -0
  470. package/storybook-static/assets/ButtonBase-qyaMEhe4.js +74 -0
  471. package/storybook-static/assets/Card.stories-B3NpAhO0.js +154 -0
  472. package/storybook-static/assets/CheckCircleOutline-CEj5mDsl.js +1 -0
  473. package/storybook-static/assets/Chip-C3vKPpzR.js +1 -0
  474. package/storybook-static/assets/Chip.stories-sxcfHVo9.js +333 -0
  475. package/storybook-static/assets/CircularProgress-DC7ZNWwl.js +28 -0
  476. package/storybook-static/assets/Clear-4kYcKvT3.js +1 -0
  477. package/storybook-static/assets/ClipBoard-DvLBdNHe.js +1 -0
  478. package/storybook-static/assets/ClipBoard.stories-BGUo47r6.js +108 -0
  479. package/storybook-static/assets/Close-CgHeRgmh.js +1 -0
  480. package/storybook-static/assets/Close-Cy8nELYU.js +1 -0
  481. package/storybook-static/assets/Color-AVL7NMMY-BJKvwERm.js +1 -0
  482. package/storybook-static/assets/ContentCopy-BfLTDb10.js +1 -0
  483. package/storybook-static/assets/DatePicker-Clkpr-Ku.js +1 -0
  484. package/storybook-static/assets/DatePicker.stories-EaUCMkh3.js +444 -0
  485. package/storybook-static/assets/DateRangePicker.stories-BMlkj-8K.js +390 -0
  486. package/storybook-static/assets/DateTimePicker.stories-B6gdzKq5.js +555 -0
  487. package/storybook-static/assets/DefaultPropsProvider-BGoQxtDa.js +16 -0
  488. package/storybook-static/assets/Delete-D2SMMmIA.js +1 -0
  489. package/storybook-static/assets/DialogContent-BeCDKgax.js +1 -0
  490. package/storybook-static/assets/Divider-BbCj9wT4.js +1 -0
  491. package/storybook-static/assets/DocsRenderer-PQXLIZUC-BebLK5Y_.js +1243 -0
  492. package/storybook-static/assets/Drawer-DcFwy73r.js +1 -0
  493. package/storybook-static/assets/Drawer.stories-C5AZkJBk.js +173 -0
  494. package/storybook-static/assets/EmptyTable-B-RKtgVs.png +0 -0
  495. package/storybook-static/assets/ErrorOutline-D9gM7ART.js +1 -0
  496. package/storybook-static/assets/Fade-Ll96CvH8.js +1 -0
  497. package/storybook-static/assets/Flyout.stories-Cf7z6MNw.js +163 -0
  498. package/storybook-static/assets/Gallery.stories-DdpWVTF6.js +127 -0
  499. package/storybook-static/assets/Grow-8y4FglGK.js +1 -0
  500. package/storybook-static/assets/Home-BRvJEp2L.js +1 -0
  501. package/storybook-static/assets/Icon.stories-D0mUiW_t.js +78 -0
  502. package/storybook-static/assets/IconButton-9OYSTH58.js +1 -0
  503. package/storybook-static/assets/Input-CjX0t4h-.js +1 -0
  504. package/storybook-static/assets/Input.stories-BRxekliy.js +650 -0
  505. package/storybook-static/assets/InputGroup.stories-DH6gUfmn.js +306 -0
  506. package/storybook-static/assets/KeyboardArrowRight-WO_attK2.js +1 -0
  507. package/storybook-static/assets/KeyboardArrowUp-DsyVef-i.js +1 -0
  508. package/storybook-static/assets/ListItem-D3O0103N.js +1 -0
  509. package/storybook-static/assets/ListItemIcon-hca6xN79.js +1 -0
  510. package/storybook-static/assets/ListItemText-BFLAwLdl.js +1 -0
  511. package/storybook-static/assets/Logout-gj-P3AfU.js +1 -0
  512. package/storybook-static/assets/Menu-ClzfjLc3.js +1 -0
  513. package/storybook-static/assets/MenuButton.stories-B-W_QVDt.js +162 -0
  514. package/storybook-static/assets/MenuItem-iU6tAqJI.js +1 -0
  515. package/storybook-static/assets/Modal-3okp9H2i.js +1 -0
  516. package/storybook-static/assets/Modal.stories-DIWzm4qR.js +468 -0
  517. package/storybook-static/assets/MoreVert-BoIVG4gh.js +1 -0
  518. package/storybook-static/assets/Notifications-DY_A-Sho.js +1 -0
  519. package/storybook-static/assets/PageLoader.stories-DmtO1mlm.js +158 -0
  520. package/storybook-static/assets/Paper-SwQBhqI7.js +1 -0
  521. package/storybook-static/assets/Person-CkQl-mpq.js +1 -0
  522. package/storybook-static/assets/PickersModalDialog-Tjnr_cu5.js +10 -0
  523. package/storybook-static/assets/PickersToolbarButton-Tt185-si.js +1 -0
  524. package/storybook-static/assets/Popper-CnCTYXxy.js +1 -0
  525. package/storybook-static/assets/Portal-Cj8XF9Lf.js +1 -0
  526. package/storybook-static/assets/ScrollTopButton.stories-BflQCwNP.js +90 -0
  527. package/storybook-static/assets/Select-CjcuMAY0.js +4 -0
  528. package/storybook-static/assets/Select-DJh2biEb.js +3 -0
  529. package/storybook-static/assets/Select.stories-DU1Gb3I2.js +1103 -0
  530. package/storybook-static/assets/Settings-BLKc1CnO.js +1 -0
  531. package/storybook-static/assets/Snackbar-BtVeKTw6.js +1 -0
  532. package/storybook-static/assets/Stack-D01OUIXi.js +1 -0
  533. package/storybook-static/assets/Stat.stories-Bn9-iuPT.js +60 -0
  534. package/storybook-static/assets/StatusMessage.stories-hnfX8FeU.js +73 -0
  535. package/storybook-static/assets/Stepper-BtKB5ykn.js +2 -0
  536. package/storybook-static/assets/Stepper.stories-CTEZbgPc.js +165 -0
  537. package/storybook-static/assets/Table.stories-CTn2Ktmn.js +1260 -0
  538. package/storybook-static/assets/TableContainer-CzLNaEU-.js +1 -0
  539. package/storybook-static/assets/TableRow-CS88-1HF.js +2 -0
  540. package/storybook-static/assets/Tabs-DLpDOu_n.js +1 -0
  541. package/storybook-static/assets/Tabs.stories-BFVuFy_5.js +159 -0
  542. package/storybook-static/assets/TextField-22T-xHBm.js +1 -0
  543. package/storybook-static/assets/Timeline.stories-DJU_U2Hv.js +97 -0
  544. package/storybook-static/assets/Tooltip-DbnHUxNj.js +1 -0
  545. package/storybook-static/assets/Tooltip.stories-B7tA3dnV.js +66 -0
  546. package/storybook-static/assets/Typography-BgntX2Ep.js +1 -0
  547. package/storybook-static/assets/Wizard.stories-CVrJLK_D.js +23 -0
  548. package/storybook-static/assets/createSimplePaletteValueFilter-bm0fmN_7.js +1 -0
  549. package/storybook-static/assets/createSvgIcon-D_Gca4vA.js +1 -0
  550. package/storybook-static/assets/debounce-Be36O1Ab.js +1 -0
  551. package/storybook-static/assets/emotion-react.browser.esm--g-C9cX9.js +8 -0
  552. package/storybook-static/assets/extendSxProp-CEpa30hT.js +1 -0
  553. package/storybook-static/assets/formField.sx-DMCmZIAa.js +1 -0
  554. package/storybook-static/assets/getReactElementRef-BQ3ANZdy.js +1 -0
  555. package/storybook-static/assets/iframe-BAJnc_4n.js +1079 -0
  556. package/storybook-static/assets/index-B1tlhOpe.js +240 -0
  557. package/storybook-static/assets/index-BF3FAXTk.js +9 -0
  558. package/storybook-static/assets/index-CIeucmOB.js +2 -0
  559. package/storybook-static/assets/index-CY7j4a7o.js +1 -0
  560. package/storybook-static/assets/index-CxkKctw5.js +1 -0
  561. package/storybook-static/assets/isFocusVisible-B8k4qzLc.js +1 -0
  562. package/storybook-static/assets/isMuiElement-CTZSFcY5.js +1 -0
  563. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +9 -0
  564. package/storybook-static/assets/listItemTextClasses-CC_rwJam.js +1 -0
  565. package/storybook-static/assets/mergeSlotProps-B0UBKBMe.js +1 -0
  566. package/storybook-static/assets/ownerDocument-DW-IO8s5.js +1 -0
  567. package/storybook-static/assets/ownerWindow-HkKU3E4x.js +1 -0
  568. package/storybook-static/assets/preload-helper-PPVm8Dsz.js +1 -0
  569. package/storybook-static/assets/react-18-BUJ64QCV.js +25 -0
  570. package/storybook-static/assets/resolvePreset-CN2aOJJr.js +1 -0
  571. package/storybook-static/assets/useControlled-DsVh1a5j.js +1 -0
  572. package/storybook-static/assets/useForkRef-0ANIrxcF.js +1 -0
  573. package/storybook-static/assets/useId-b4fZxjOL.js +1 -0
  574. package/storybook-static/assets/useMobilePicker-DK-c8xbD.js +1 -0
  575. package/storybook-static/assets/usePreviousProps-WR0rG4aR.js +1 -0
  576. package/storybook-static/assets/useSlot-b6pXgp5_.js +1 -0
  577. package/storybook-static/assets/useSlotProps-C0uMfuBt.js +1 -0
  578. package/storybook-static/assets/useTheme-BmOJK7ra.js +1 -0
  579. package/storybook-static/assets/useThemeProps-DYtxXiUU.js +1 -0
  580. package/storybook-static/assets/useThemeProps-U4yXiZ_5.js +1 -0
  581. package/storybook-static/assets/useTimeout-DNjRaOWc.js +1 -0
  582. package/storybook-static/assets/visuallyHidden-Dan1xhjv.js +1 -0
  583. package/storybook-static/favicon-wrapper.svg +46 -0
  584. package/storybook-static/favicon.svg +1 -0
  585. package/storybook-static/iframe.html +686 -0
  586. package/storybook-static/index.html +160 -0
  587. package/storybook-static/index.json +1 -0
  588. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  589. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  590. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  591. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  592. package/storybook-static/project.json +1 -0
  593. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js +356 -0
  594. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js.LEGAL.txt +40 -0
  595. package/storybook-static/sb-addons/docs-4/manager-bundle.js +151 -0
  596. package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +127 -0
  597. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +971 -0
  598. package/storybook-static/sb-addons/vitest-3/manager-bundle.js +3 -0
  599. package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  600. package/storybook-static/sb-common-assets/favicon.svg +1 -0
  601. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  602. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  603. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  604. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  605. package/storybook-static/sb-manager/globals-module-info.js +797 -0
  606. package/storybook-static/sb-manager/globals-runtime.js +69679 -0
  607. package/storybook-static/sb-manager/globals.js +34 -0
  608. package/storybook-static/sb-manager/runtime.js +13195 -0
  609. package/storybook-static/vite-inject-mocker-entry.js +18 -0
  610. package/tailwind.config.js +10 -0
  611. package/tsconfig.json +48 -0
  612. package/tsup.config.js +41 -0
  613. package/vite.config.js +132 -0
  614. package/vitest.config.ts +35 -0
  615. package/dist/components/AppBar/AppBarBrand.d.ts +0 -31
  616. package/dist/components/AppBar/AppBarUserMenu.d.ts +0 -65
  617. package/dist/components/Autocomplete/Autocomplete.types.d.ts +0 -1
  618. package/dist/components/DatePicker/DatePicker.types.d.ts +0 -1
  619. package/dist/components/DateRangePicker/DateRangePicker.cjs.map +0 -1
  620. package/dist/components/DateRangePicker/DateRangePicker.d.ts +0 -15
  621. package/dist/components/DateRangePicker/DateRangePicker.definitions.d.ts +0 -6
  622. package/dist/components/DateRangePicker/DateRangePicker.js.map +0 -1
  623. package/dist/components/DateRangePicker/index.d.ts +0 -1
  624. package/dist/components/DateRangePicker.d.ts +0 -2
  625. package/dist/components/DateTimePicker/DateTimePicker.types.d.ts +0 -1
  626. package/dist/components/Input/Input.types.d.ts +0 -1
  627. package/dist/components/PageLoader/PageLoader.cjs +0 -61
  628. package/dist/components/PageLoader/PageLoader.cjs.map +0 -1
  629. package/dist/components/PageLoader/PageLoader.d.ts +0 -38
  630. package/dist/components/PageLoader/PageLoader.js +0 -61
  631. package/dist/components/PageLoader/PageLoader.js.map +0 -1
  632. package/dist/components/PageLoader/index.d.ts +0 -2
  633. package/dist/components/PageLoader.d.ts +0 -6
  634. package/dist/components/ScrollTopButton/ScrollTopButton.cjs +0 -79
  635. package/dist/components/ScrollTopButton/ScrollTopButton.cjs.map +0 -1
  636. package/dist/components/ScrollTopButton/ScrollTopButton.d.ts +0 -48
  637. package/dist/components/ScrollTopButton/ScrollTopButton.js +0 -79
  638. package/dist/components/ScrollTopButton/ScrollTopButton.js.map +0 -1
  639. package/dist/components/ScrollTopButton/index.d.ts +0 -4
  640. package/dist/components/ScrollTopButton.d.ts +0 -6
  641. package/dist/components/Select/Select.definitions.d.ts +0 -17
  642. package/dist/components/Select/Select.types.d.ts +0 -1
  643. package/dist/components/Select/_parts/SelectSearchHeader.d.ts +0 -15
  644. package/dist/formField.sx-CQ1mbk9M.cjs.map +0 -1
  645. package/dist/formField.sx-DfVbMe0V.js.map +0 -1
  646. package/dist/hooks/Wizard/Wizard.cjs +0 -7
  647. package/dist/hooks/Wizard/Wizard.cjs.map +0 -1
  648. package/dist/hooks/Wizard/Wizard.js +0 -7
  649. package/dist/hooks/Wizard/Wizard.js.map +0 -1
  650. package/dist/hooks/Wizard/index.d.ts +0 -3
  651. package/dist/hooks/Wizard/useWizard.d.ts +0 -9
  652. package/dist/hooks/Wizard.d.ts +0 -2
  653. package/dist/useWizard-CWdIxZzX.cjs +0 -94
  654. package/dist/useWizard-CWdIxZzX.cjs.map +0 -1
  655. package/dist/useWizard-CWq--C3o.js +0 -95
  656. package/dist/useWizard-CWq--C3o.js.map +0 -1
  657. /package/dist/{styles.css → index.css} +0 -0
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ var __objRest = (source, exclude) => {
22
+ var target = {};
23
+ for (var prop in source)
24
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
25
+ target[prop] = source[prop];
26
+ if (source != null && __getOwnPropSymbols)
27
+ for (var prop of __getOwnPropSymbols(source)) {
28
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
29
+ target[prop] = source[prop];
30
+ }
31
+ return target;
32
+ };
33
+ const jsxRuntime = require("react/jsx-runtime");
34
+ const styles = require("@mui/material/styles");
35
+ const material = require("@mui/material");
36
+ const reactHookForm = require("react-hook-form");
37
+ const resolvePreset = require("./resolvePreset-CxTI6_Ln.cjs");
38
+ const toRadius = (borderRadius) => typeof borderRadius === "number" ? `${borderRadius}px` : borderRadius;
39
+ const FOCUS_TRANSITION = "border-color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms, box-shadow 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms";
40
+ const buildRadioGroupSx = ({
41
+ bordered,
42
+ borderRadius,
43
+ error
44
+ }) => {
45
+ const radius = toRadius(borderRadius);
46
+ if (!bordered) {
47
+ return {
48
+ "& .MuiFormHelperText-root": { marginLeft: 0 }
49
+ };
50
+ }
51
+ return (theme) => ({
52
+ "& .MuiRadioGroup-root": __spreadProps(__spreadValues({
53
+ paddingTop: 1.25,
54
+ paddingBottom: 1.25,
55
+ paddingX: 1.5,
56
+ border: `1px solid ${error ? theme.palette.error.main : theme.palette.divider}`,
57
+ borderRadius: radius,
58
+ transition: FOCUS_TRANSITION
59
+ }, error && {
60
+ boxShadow: `0 0 0 1px ${theme.palette.error.main}`
61
+ }), {
62
+ // Focus del usuario sobre cualquier radio interno.
63
+ "&:focus-within": {
64
+ borderColor: error ? theme.palette.error.main : theme.palette.primary.main,
65
+ boxShadow: `0 0 0 1px ${error ? theme.palette.error.main : theme.palette.primary.main}`
66
+ }
67
+ }),
68
+ "& .MuiFormHelperText-root": {
69
+ marginLeft: 0
70
+ },
71
+ "& .MuiFormLabel-root": {
72
+ marginBottom: 0.5
73
+ }
74
+ });
75
+ };
76
+ const RadioGroup = (props) => {
77
+ const _a = props, {
78
+ options,
79
+ label,
80
+ row = true,
81
+ size = "small",
82
+ disabled = false,
83
+ error = false,
84
+ helperText,
85
+ bordered = true,
86
+ borderRadius = 10,
87
+ defaultValue,
88
+ preset,
89
+ sx
90
+ } = _a, rest = __objRest(_a, [
91
+ "options",
92
+ "label",
93
+ "row",
94
+ "size",
95
+ "disabled",
96
+ "error",
97
+ "helperText",
98
+ "bordered",
99
+ "borderRadius",
100
+ "defaultValue",
101
+ "preset",
102
+ "sx"
103
+ ]);
104
+ const theme = styles.useTheme();
105
+ const presetSx = resolvePreset.resolvePreset("RadioGroup", preset, theme);
106
+ const buildSx = (effectiveError) => [
107
+ buildRadioGroupSx({ bordered, borderRadius, error: effectiveError }),
108
+ ...presetSx ? [presetSx] : [],
109
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
110
+ ];
111
+ const renderOptions = (fieldName) => options.map((opt) => {
112
+ var _a2;
113
+ const inputId = (_a2 = opt.id) != null ? _a2 : `${fieldName != null ? fieldName : "radio"}-${opt.value}`;
114
+ return /* @__PURE__ */ jsxRuntime.jsx(
115
+ material.FormControlLabel,
116
+ {
117
+ value: opt.value,
118
+ control: /* @__PURE__ */ jsxRuntime.jsx(
119
+ material.Radio,
120
+ {
121
+ id: inputId,
122
+ size,
123
+ disabled: disabled || opt.disabled
124
+ }
125
+ ),
126
+ label: opt.label,
127
+ disabled: disabled || opt.disabled
128
+ },
129
+ inputId
130
+ );
131
+ });
132
+ if ("control" in props && props.control) {
133
+ const { name: name2, control, validation, onValueChange } = props;
134
+ return /* @__PURE__ */ jsxRuntime.jsx(
135
+ reactHookForm.Controller,
136
+ {
137
+ name: name2,
138
+ control,
139
+ rules: validation,
140
+ defaultValue,
141
+ render: ({ field, fieldState: { error: fieldError } }) => {
142
+ var _a2, _b;
143
+ const finalError = !!fieldError || error;
144
+ const finalHelperText = (_a2 = fieldError == null ? void 0 : fieldError.message) != null ? _a2 : helperText;
145
+ return /* @__PURE__ */ jsxRuntime.jsxs(
146
+ material.FormControl,
147
+ {
148
+ error: finalError,
149
+ disabled,
150
+ sx: buildSx(finalError),
151
+ fullWidth: true,
152
+ children: [
153
+ label && /* @__PURE__ */ jsxRuntime.jsx(material.FormLabel, { children: label }),
154
+ /* @__PURE__ */ jsxRuntime.jsx(
155
+ material.RadioGroup,
156
+ __spreadProps(__spreadValues({}, rest), {
157
+ row,
158
+ name: field.name,
159
+ value: (_b = field.value) != null ? _b : "",
160
+ onBlur: field.onBlur,
161
+ onChange: (_e, value2) => {
162
+ field.onChange(value2);
163
+ onValueChange == null ? void 0 : onValueChange(value2);
164
+ },
165
+ children: renderOptions(field.name)
166
+ })
167
+ ),
168
+ finalHelperText && /* @__PURE__ */ jsxRuntime.jsx(material.FormHelperText, { children: finalHelperText })
169
+ ]
170
+ }
171
+ );
172
+ }
173
+ }
174
+ );
175
+ }
176
+ const { value, onChange, name } = props;
177
+ return /* @__PURE__ */ jsxRuntime.jsxs(
178
+ material.FormControl,
179
+ {
180
+ error,
181
+ disabled,
182
+ sx: buildSx(error),
183
+ fullWidth: true,
184
+ children: [
185
+ label && /* @__PURE__ */ jsxRuntime.jsx(material.FormLabel, { children: label }),
186
+ /* @__PURE__ */ jsxRuntime.jsx(
187
+ material.RadioGroup,
188
+ __spreadProps(__spreadValues({}, rest), {
189
+ row,
190
+ name,
191
+ value: value != null ? value : "",
192
+ onChange: (_e, next) => onChange(next),
193
+ children: renderOptions(name)
194
+ })
195
+ ),
196
+ helperText && /* @__PURE__ */ jsxRuntime.jsx(material.FormHelperText, { children: helperText })
197
+ ]
198
+ }
199
+ );
200
+ };
201
+ exports.RadioGroup = RadioGroup;
202
+ //# sourceMappingURL=RadioGroup-Dd0rHXSX.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioGroup-Dd0rHXSX.cjs","sources":["../src/components/RadioGroup/RadioGroup.sx.ts","../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nexport interface BuildRadioGroupSxOptions {\n bordered: boolean;\n borderRadius: number | string;\n error: boolean;\n}\n\nconst toRadius = (borderRadius: number | string) =>\n typeof borderRadius === 'number' ? `${borderRadius}px` : borderRadius;\n\n/**\n * Transición compartida (matchea el InputGroup).\n */\nconst FOCUS_TRANSITION =\n 'border-color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms, ' +\n 'box-shadow 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms';\n\n/**\n * Builder de sx para RadioGroup. Reproduce el estilo del antiguo\n * `FormRadioGroup` legacy: contenedor con borde + padding vertical.\n *\n * Cuando `bordered=true`, el contenedor gana:\n * - `:focus-within` → borde + shadow primario (mismo patrón que `InputGroup`).\n * - `error=true` → borde + shadow de error (palette.error.main).\n *\n * El shadow es de 1px, así que no hay shift de layout — sólo se intensifica\n * visualmente el borde sin empujar nada alrededor.\n *\n * Si `bordered=false`, devuelve un sx mínimo (sólo helper text reset).\n */\nexport const buildRadioGroupSx = ({\n bordered,\n borderRadius,\n error,\n}: BuildRadioGroupSxOptions): SxProps<Theme> => {\n const radius = toRadius(borderRadius);\n\n if (!bordered) {\n return {\n '& .MuiFormHelperText-root': { marginLeft: 0 },\n };\n }\n\n return (theme) => ({\n '& .MuiRadioGroup-root': {\n paddingTop: 1.25,\n paddingBottom: 1.25,\n paddingX: 1.5,\n border: `1px solid ${\n error ? theme.palette.error.main : theme.palette.divider\n }`,\n borderRadius: radius,\n transition: FOCUS_TRANSITION,\n ...(error && {\n boxShadow: `0 0 0 1px ${theme.palette.error.main}`,\n }),\n // Focus del usuario sobre cualquier radio interno.\n '&:focus-within': {\n borderColor: error\n ? theme.palette.error.main\n : theme.palette.primary.main,\n boxShadow: `0 0 0 1px ${\n error ? theme.palette.error.main : theme.palette.primary.main\n }`,\n },\n },\n '& .MuiFormHelperText-root': {\n marginLeft: 0,\n },\n '& .MuiFormLabel-root': {\n marginBottom: 0.5,\n },\n });\n};\n","import type { FC } from 'react';\nimport { useTheme } from '@mui/material/styles';\nimport {\n FormControl,\n FormControlLabel,\n FormHelperText,\n FormLabel,\n Radio,\n RadioGroup as MuiRadioGroup,\n type RadioGroupProps as MuiRadioGroupProps,\n type SxProps,\n type Theme,\n} from '@mui/material';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildRadioGroupSx } from './RadioGroup.sx';\nimport { resolvePreset } from '../_shared/resolvePreset';\n\n// ── Tipos de dominio ─────────────────────────────────────────────────────\nexport interface RadioOption {\n /** Valor que se emite cuando se selecciona la opción. */\n value: string;\n /** Texto mostrado al lado del radio. */\n label: string;\n /** Deshabilitar opción individualmente. */\n disabled?: boolean;\n /** ID custom del input (default: prefijo + value). */\n id?: string;\n}\n\nexport type RadioGroupSize = 'small' | 'medium';\n\n// ── Props base (todo lo común entre RHF y controlado) ────────────────────\nexport interface BaseRadioGroupProps\n extends Omit<MuiRadioGroupProps, 'value' | 'onChange' | 'defaultValue'> {\n options: RadioOption[];\n /** Label superior del grupo. */\n label?: string;\n /** Distribución horizontal (default: true — replica el comportamiento legacy). */\n row?: boolean;\n size?: RadioGroupSize;\n disabled?: boolean;\n error?: boolean;\n helperText?: string;\n /** Renderiza un contenedor con borde estilo \"form field\". Default: true. */\n bordered?: boolean;\n /** Border radius del contenedor (cuando bordered). Default: 10. */\n borderRadius?: number | string;\n defaultValue?: string;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.RadioGroup`.\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 sx?: SxProps<Theme>;\n}\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface RHFRadioGroupProps extends BaseRadioGroupProps {\n name: string;\n // `any` plano (no `Control<any>`): RHF tipa `Control<T>` con generics en\n // posiciones tanto contravariantes como covariantes (ej. `_subjects.state`).\n // Cuando el componente o su uso involucra generics adicionales, TS se\n // confunde narroweando el discriminated union y `Control<any>` no logra\n // absorber `Control<MyForm>` en la comparación estructural profunda. El\n // `any` plano elimina ese ruido. RHF adentro sigue teniendo sus tipos\n // fuertes — solo degradamos la superficie del prop del componente.\n control: any;\n validation?: RegisterOptions;\n /**\n * Side-effect que corre después de que RHF actualiza el form state.\n * Útil para cascadas entre campos. NO reemplaza al handler de RHF.\n */\n onValueChange?: (value: string) => void;\n value?: never;\n onChange?: never;\n}\n\nexport interface ControlledRadioGroupProps extends BaseRadioGroupProps {\n name?: string;\n control?: never;\n validation?: never;\n value: string;\n onChange: (value: string) => void;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type RadioGroupProps = RHFRadioGroupProps | ControlledRadioGroupProps;\n\nexport const RadioGroup: FC<RadioGroupProps> = (props) => {\n const {\n options,\n label,\n row = true,\n size = 'small',\n disabled = false,\n error = false,\n helperText,\n bordered = true,\n borderRadius = 10,\n defaultValue,\n preset,\n sx,\n ...rest\n } = props as ControlledRadioGroupProps & {\n control?: Control<any>;\n validation?: RegisterOptions;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('RadioGroup', preset, theme);\n\n // Construye el sx con el estado de error efectivo; se llama por rama\n // (RHF usa el error del Controller, controlado usa el prop `error`).\n const buildSx = (effectiveError: boolean) => [\n buildRadioGroupSx({ bordered, borderRadius, error: effectiveError }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderOptions = (fieldName?: string) =>\n options.map((opt) => {\n const inputId = opt.id ?? `${fieldName ?? 'radio'}-${opt.value}`;\n return (\n <FormControlLabel\n key={inputId}\n value={opt.value}\n control={\n <Radio\n id={inputId}\n size={size}\n disabled={disabled || opt.disabled}\n />\n }\n label={opt.label}\n disabled={disabled || opt.disabled}\n />\n );\n });\n\n // ── RHF mode ──────────────────────────────────────────────────────────\n if ('control' in props && props.control) {\n const { name, control, validation, onValueChange } = props as RHFRadioGroupProps;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n defaultValue={defaultValue}\n render={({ field, fieldState: { error: fieldError } }) => {\n const finalError = !!fieldError || error;\n const finalHelperText = fieldError?.message ?? helperText;\n return (\n <FormControl\n error={finalError}\n disabled={disabled}\n sx={buildSx(finalError)}\n fullWidth\n >\n {label && <FormLabel>{label}</FormLabel>}\n <MuiRadioGroup\n {...rest}\n row={row}\n name={field.name}\n value={field.value ?? ''}\n onBlur={field.onBlur}\n onChange={(_e, value) => {\n field.onChange(value);\n onValueChange?.(value);\n }}\n >\n {renderOptions(field.name)}\n </MuiRadioGroup>\n {finalHelperText && <FormHelperText>{finalHelperText}</FormHelperText>}\n </FormControl>\n );\n }}\n />\n );\n }\n\n // ── Controlled mode ───────────────────────────────────────────────────\n const { value, onChange, name } = props as ControlledRadioGroupProps;\n return (\n <FormControl\n error={error}\n disabled={disabled}\n sx={buildSx(error)}\n fullWidth\n >\n {label && <FormLabel>{label}</FormLabel>}\n <MuiRadioGroup\n {...rest}\n row={row}\n name={name}\n value={value ?? ''}\n onChange={(_e, next) => onChange(next)}\n >\n {renderOptions(name)}\n </MuiRadioGroup>\n {helperText && <FormHelperText>{helperText}</FormHelperText>}\n </FormControl>\n );\n};\n\nexport default RadioGroup;\n"],"names":["useTheme","resolvePreset","_a","jsx","FormControlLabel","Radio","name","Controller","jsxs","FormControl","FormLabel","MuiRadioGroup","value","FormHelperText"],"mappings":"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"}
@@ -0,0 +1,203 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import { jsx, jsxs } from "react/jsx-runtime";
33
+ import { useTheme } from "@mui/material/styles";
34
+ import { FormControl, FormLabel, RadioGroup as RadioGroup$1, FormHelperText, FormControlLabel, Radio } from "@mui/material";
35
+ import { Controller } from "react-hook-form";
36
+ import { r as resolvePreset } from "./resolvePreset-K6_BfWHD.js";
37
+ const toRadius = (borderRadius) => typeof borderRadius === "number" ? `${borderRadius}px` : borderRadius;
38
+ const FOCUS_TRANSITION = "border-color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms, box-shadow 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms";
39
+ const buildRadioGroupSx = ({
40
+ bordered,
41
+ borderRadius,
42
+ error
43
+ }) => {
44
+ const radius = toRadius(borderRadius);
45
+ if (!bordered) {
46
+ return {
47
+ "& .MuiFormHelperText-root": { marginLeft: 0 }
48
+ };
49
+ }
50
+ return (theme) => ({
51
+ "& .MuiRadioGroup-root": __spreadProps(__spreadValues({
52
+ paddingTop: 1.25,
53
+ paddingBottom: 1.25,
54
+ paddingX: 1.5,
55
+ border: `1px solid ${error ? theme.palette.error.main : theme.palette.divider}`,
56
+ borderRadius: radius,
57
+ transition: FOCUS_TRANSITION
58
+ }, error && {
59
+ boxShadow: `0 0 0 1px ${theme.palette.error.main}`
60
+ }), {
61
+ // Focus del usuario sobre cualquier radio interno.
62
+ "&:focus-within": {
63
+ borderColor: error ? theme.palette.error.main : theme.palette.primary.main,
64
+ boxShadow: `0 0 0 1px ${error ? theme.palette.error.main : theme.palette.primary.main}`
65
+ }
66
+ }),
67
+ "& .MuiFormHelperText-root": {
68
+ marginLeft: 0
69
+ },
70
+ "& .MuiFormLabel-root": {
71
+ marginBottom: 0.5
72
+ }
73
+ });
74
+ };
75
+ const RadioGroup = (props) => {
76
+ const _a = props, {
77
+ options,
78
+ label,
79
+ row = true,
80
+ size = "small",
81
+ disabled = false,
82
+ error = false,
83
+ helperText,
84
+ bordered = true,
85
+ borderRadius = 10,
86
+ defaultValue,
87
+ preset,
88
+ sx
89
+ } = _a, rest = __objRest(_a, [
90
+ "options",
91
+ "label",
92
+ "row",
93
+ "size",
94
+ "disabled",
95
+ "error",
96
+ "helperText",
97
+ "bordered",
98
+ "borderRadius",
99
+ "defaultValue",
100
+ "preset",
101
+ "sx"
102
+ ]);
103
+ const theme = useTheme();
104
+ const presetSx = resolvePreset("RadioGroup", preset, theme);
105
+ const buildSx = (effectiveError) => [
106
+ buildRadioGroupSx({ bordered, borderRadius, error: effectiveError }),
107
+ ...presetSx ? [presetSx] : [],
108
+ ...Array.isArray(sx) ? sx : sx ? [sx] : []
109
+ ];
110
+ const renderOptions = (fieldName) => options.map((opt) => {
111
+ var _a2;
112
+ const inputId = (_a2 = opt.id) != null ? _a2 : `${fieldName != null ? fieldName : "radio"}-${opt.value}`;
113
+ return /* @__PURE__ */ jsx(
114
+ FormControlLabel,
115
+ {
116
+ value: opt.value,
117
+ control: /* @__PURE__ */ jsx(
118
+ Radio,
119
+ {
120
+ id: inputId,
121
+ size,
122
+ disabled: disabled || opt.disabled
123
+ }
124
+ ),
125
+ label: opt.label,
126
+ disabled: disabled || opt.disabled
127
+ },
128
+ inputId
129
+ );
130
+ });
131
+ if ("control" in props && props.control) {
132
+ const { name: name2, control, validation, onValueChange } = props;
133
+ return /* @__PURE__ */ jsx(
134
+ Controller,
135
+ {
136
+ name: name2,
137
+ control,
138
+ rules: validation,
139
+ defaultValue,
140
+ render: ({ field, fieldState: { error: fieldError } }) => {
141
+ var _a2, _b;
142
+ const finalError = !!fieldError || error;
143
+ const finalHelperText = (_a2 = fieldError == null ? void 0 : fieldError.message) != null ? _a2 : helperText;
144
+ return /* @__PURE__ */ jsxs(
145
+ FormControl,
146
+ {
147
+ error: finalError,
148
+ disabled,
149
+ sx: buildSx(finalError),
150
+ fullWidth: true,
151
+ children: [
152
+ label && /* @__PURE__ */ jsx(FormLabel, { children: label }),
153
+ /* @__PURE__ */ jsx(
154
+ RadioGroup$1,
155
+ __spreadProps(__spreadValues({}, rest), {
156
+ row,
157
+ name: field.name,
158
+ value: (_b = field.value) != null ? _b : "",
159
+ onBlur: field.onBlur,
160
+ onChange: (_e, value2) => {
161
+ field.onChange(value2);
162
+ onValueChange == null ? void 0 : onValueChange(value2);
163
+ },
164
+ children: renderOptions(field.name)
165
+ })
166
+ ),
167
+ finalHelperText && /* @__PURE__ */ jsx(FormHelperText, { children: finalHelperText })
168
+ ]
169
+ }
170
+ );
171
+ }
172
+ }
173
+ );
174
+ }
175
+ const { value, onChange, name } = props;
176
+ return /* @__PURE__ */ jsxs(
177
+ FormControl,
178
+ {
179
+ error,
180
+ disabled,
181
+ sx: buildSx(error),
182
+ fullWidth: true,
183
+ children: [
184
+ label && /* @__PURE__ */ jsx(FormLabel, { children: label }),
185
+ /* @__PURE__ */ jsx(
186
+ RadioGroup$1,
187
+ __spreadProps(__spreadValues({}, rest), {
188
+ row,
189
+ name,
190
+ value: value != null ? value : "",
191
+ onChange: (_e, next) => onChange(next),
192
+ children: renderOptions(name)
193
+ })
194
+ ),
195
+ helperText && /* @__PURE__ */ jsx(FormHelperText, { children: helperText })
196
+ ]
197
+ }
198
+ );
199
+ };
200
+ export {
201
+ RadioGroup as R
202
+ };
203
+ //# sourceMappingURL=RadioGroup-bO-ahP9T.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioGroup-bO-ahP9T.js","sources":["../src/components/RadioGroup/RadioGroup.sx.ts","../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nexport interface BuildRadioGroupSxOptions {\n bordered: boolean;\n borderRadius: number | string;\n error: boolean;\n}\n\nconst toRadius = (borderRadius: number | string) =>\n typeof borderRadius === 'number' ? `${borderRadius}px` : borderRadius;\n\n/**\n * Transición compartida (matchea el InputGroup).\n */\nconst FOCUS_TRANSITION =\n 'border-color 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms, ' +\n 'box-shadow 200ms cubic-bezier(0.0, 0, 0.2, 1) 0ms';\n\n/**\n * Builder de sx para RadioGroup. Reproduce el estilo del antiguo\n * `FormRadioGroup` legacy: contenedor con borde + padding vertical.\n *\n * Cuando `bordered=true`, el contenedor gana:\n * - `:focus-within` → borde + shadow primario (mismo patrón que `InputGroup`).\n * - `error=true` → borde + shadow de error (palette.error.main).\n *\n * El shadow es de 1px, así que no hay shift de layout — sólo se intensifica\n * visualmente el borde sin empujar nada alrededor.\n *\n * Si `bordered=false`, devuelve un sx mínimo (sólo helper text reset).\n */\nexport const buildRadioGroupSx = ({\n bordered,\n borderRadius,\n error,\n}: BuildRadioGroupSxOptions): SxProps<Theme> => {\n const radius = toRadius(borderRadius);\n\n if (!bordered) {\n return {\n '& .MuiFormHelperText-root': { marginLeft: 0 },\n };\n }\n\n return (theme) => ({\n '& .MuiRadioGroup-root': {\n paddingTop: 1.25,\n paddingBottom: 1.25,\n paddingX: 1.5,\n border: `1px solid ${\n error ? theme.palette.error.main : theme.palette.divider\n }`,\n borderRadius: radius,\n transition: FOCUS_TRANSITION,\n ...(error && {\n boxShadow: `0 0 0 1px ${theme.palette.error.main}`,\n }),\n // Focus del usuario sobre cualquier radio interno.\n '&:focus-within': {\n borderColor: error\n ? theme.palette.error.main\n : theme.palette.primary.main,\n boxShadow: `0 0 0 1px ${\n error ? theme.palette.error.main : theme.palette.primary.main\n }`,\n },\n },\n '& .MuiFormHelperText-root': {\n marginLeft: 0,\n },\n '& .MuiFormLabel-root': {\n marginBottom: 0.5,\n },\n });\n};\n","import type { FC } from 'react';\nimport { useTheme } from '@mui/material/styles';\nimport {\n FormControl,\n FormControlLabel,\n FormHelperText,\n FormLabel,\n Radio,\n RadioGroup as MuiRadioGroup,\n type RadioGroupProps as MuiRadioGroupProps,\n type SxProps,\n type Theme,\n} from '@mui/material';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildRadioGroupSx } from './RadioGroup.sx';\nimport { resolvePreset } from '../_shared/resolvePreset';\n\n// ── Tipos de dominio ─────────────────────────────────────────────────────\nexport interface RadioOption {\n /** Valor que se emite cuando se selecciona la opción. */\n value: string;\n /** Texto mostrado al lado del radio. */\n label: string;\n /** Deshabilitar opción individualmente. */\n disabled?: boolean;\n /** ID custom del input (default: prefijo + value). */\n id?: string;\n}\n\nexport type RadioGroupSize = 'small' | 'medium';\n\n// ── Props base (todo lo común entre RHF y controlado) ────────────────────\nexport interface BaseRadioGroupProps\n extends Omit<MuiRadioGroupProps, 'value' | 'onChange' | 'defaultValue'> {\n options: RadioOption[];\n /** Label superior del grupo. */\n label?: string;\n /** Distribución horizontal (default: true — replica el comportamiento legacy). */\n row?: boolean;\n size?: RadioGroupSize;\n disabled?: boolean;\n error?: boolean;\n helperText?: string;\n /** Renderiza un contenedor con borde estilo \"form field\". Default: true. */\n bordered?: boolean;\n /** Border radius del contenedor (cuando bordered). Default: 10. */\n borderRadius?: number | string;\n defaultValue?: string;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.RadioGroup`.\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 sx?: SxProps<Theme>;\n}\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface RHFRadioGroupProps extends BaseRadioGroupProps {\n name: string;\n // `any` plano (no `Control<any>`): RHF tipa `Control<T>` con generics en\n // posiciones tanto contravariantes como covariantes (ej. `_subjects.state`).\n // Cuando el componente o su uso involucra generics adicionales, TS se\n // confunde narroweando el discriminated union y `Control<any>` no logra\n // absorber `Control<MyForm>` en la comparación estructural profunda. El\n // `any` plano elimina ese ruido. RHF adentro sigue teniendo sus tipos\n // fuertes — solo degradamos la superficie del prop del componente.\n control: any;\n validation?: RegisterOptions;\n /**\n * Side-effect que corre después de que RHF actualiza el form state.\n * Útil para cascadas entre campos. NO reemplaza al handler de RHF.\n */\n onValueChange?: (value: string) => void;\n value?: never;\n onChange?: never;\n}\n\nexport interface ControlledRadioGroupProps extends BaseRadioGroupProps {\n name?: string;\n control?: never;\n validation?: never;\n value: string;\n onChange: (value: string) => void;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type RadioGroupProps = RHFRadioGroupProps | ControlledRadioGroupProps;\n\nexport const RadioGroup: FC<RadioGroupProps> = (props) => {\n const {\n options,\n label,\n row = true,\n size = 'small',\n disabled = false,\n error = false,\n helperText,\n bordered = true,\n borderRadius = 10,\n defaultValue,\n preset,\n sx,\n ...rest\n } = props as ControlledRadioGroupProps & {\n control?: Control<any>;\n validation?: RegisterOptions;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('RadioGroup', preset, theme);\n\n // Construye el sx con el estado de error efectivo; se llama por rama\n // (RHF usa el error del Controller, controlado usa el prop `error`).\n const buildSx = (effectiveError: boolean) => [\n buildRadioGroupSx({ bordered, borderRadius, error: effectiveError }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderOptions = (fieldName?: string) =>\n options.map((opt) => {\n const inputId = opt.id ?? `${fieldName ?? 'radio'}-${opt.value}`;\n return (\n <FormControlLabel\n key={inputId}\n value={opt.value}\n control={\n <Radio\n id={inputId}\n size={size}\n disabled={disabled || opt.disabled}\n />\n }\n label={opt.label}\n disabled={disabled || opt.disabled}\n />\n );\n });\n\n // ── RHF mode ──────────────────────────────────────────────────────────\n if ('control' in props && props.control) {\n const { name, control, validation, onValueChange } = props as RHFRadioGroupProps;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n defaultValue={defaultValue}\n render={({ field, fieldState: { error: fieldError } }) => {\n const finalError = !!fieldError || error;\n const finalHelperText = fieldError?.message ?? helperText;\n return (\n <FormControl\n error={finalError}\n disabled={disabled}\n sx={buildSx(finalError)}\n fullWidth\n >\n {label && <FormLabel>{label}</FormLabel>}\n <MuiRadioGroup\n {...rest}\n row={row}\n name={field.name}\n value={field.value ?? ''}\n onBlur={field.onBlur}\n onChange={(_e, value) => {\n field.onChange(value);\n onValueChange?.(value);\n }}\n >\n {renderOptions(field.name)}\n </MuiRadioGroup>\n {finalHelperText && <FormHelperText>{finalHelperText}</FormHelperText>}\n </FormControl>\n );\n }}\n />\n );\n }\n\n // ── Controlled mode ───────────────────────────────────────────────────\n const { value, onChange, name } = props as ControlledRadioGroupProps;\n return (\n <FormControl\n error={error}\n disabled={disabled}\n sx={buildSx(error)}\n fullWidth\n >\n {label && <FormLabel>{label}</FormLabel>}\n <MuiRadioGroup\n {...rest}\n row={row}\n name={name}\n value={value ?? ''}\n onChange={(_e, next) => onChange(next)}\n >\n {renderOptions(name)}\n </MuiRadioGroup>\n {helperText && <FormHelperText>{helperText}</FormHelperText>}\n </FormControl>\n );\n};\n\nexport default RadioGroup;\n"],"names":["_a","name","MuiRadioGroup","value"],"mappings":"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"}