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

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 (720) hide show
  1. package/{dist/Select-D5OrjVj3.js → Select-Dycmh9vt.js} +6 -3
  2. package/Select-Dycmh9vt.js.map +1 -0
  3. package/{dist/Select-Dyvc4bVo.cjs → Select-kqR48jZU.cjs} +5 -2
  4. package/Select-kqR48jZU.cjs.map +1 -0
  5. package/{dist/components → components}/Select/Select.cjs +1 -1
  6. package/{dist/components → components}/Select/Select.d.ts +2 -0
  7. package/{dist/components → components}/Select/Select.js +1 -1
  8. package/{dist/index.cjs → index.cjs} +1 -1
  9. package/{dist/index.js → index.js} +1 -1
  10. package/local/affiliations/affiliations.dev.soyfri.com-key.pem +28 -0
  11. package/local/affiliations/affiliations.dev.soyfri.com.pem +27 -0
  12. package/local/aficiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
  13. package/local/aficiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
  14. package/local/afiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
  15. package/local/afiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
  16. package/local/root/rootCA-key.pem +40 -0
  17. package/local/root/rootCA.pem +30 -0
  18. package/local/soporte/supportweb.dev.soyfri.com-key.pem +28 -0
  19. package/local/soporte/supportweb.dev.soyfri.com.pem +27 -0
  20. package/local/support/supportweb.dev.soyfri.com-key.pem +28 -0
  21. package/local/support/supportweb.dev.soyfri.com.pem +27 -0
  22. package/package.json +167 -57
  23. package/.dockerignore +0 -8
  24. package/.github/workflows/publish.yml +0 -107
  25. package/.prettierrc +0 -3
  26. package/.storybook/main.ts +0 -19
  27. package/.storybook/preview.ts +0 -14
  28. package/.storybook/vitest.setup.ts +0 -9
  29. package/Dockerfile +0 -37
  30. package/Readme.md +0 -243
  31. package/build.js +0 -117
  32. package/chromatic.config.json +0 -5
  33. package/cleanDirectories.js +0 -40
  34. package/dist/Select-D5OrjVj3.js.map +0 -1
  35. package/dist/Select-Dyvc4bVo.cjs.map +0 -1
  36. package/dist/package.json +0 -190
  37. package/rollup.config.cjs +0 -87
  38. package/scripts/gen-dist-pkg.mjs +0 -15
  39. package/shared-library-comercios-MUI.code-workspace +0 -10
  40. package/src/components/ActionMenu/ActionMenu.stories.tsx +0 -427
  41. package/src/components/ActionMenu/ActionMenu.tsx +0 -153
  42. package/src/components/ActionMenu/index.ts +0 -2
  43. package/src/components/AppBar/AppBar.stories.tsx +0 -316
  44. package/src/components/AppBar/AppBar.sx.ts +0 -32
  45. package/src/components/AppBar/AppBar.tsx +0 -119
  46. package/src/components/AppBar/AppBarContext.ts +0 -25
  47. package/src/components/AppBar/AppBarMenuToggle.tsx +0 -90
  48. package/src/components/AppBar/index.ts +0 -12
  49. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -477
  50. package/src/components/Autocomplete/Autocomplete.helpers.ts +0 -80
  51. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -784
  52. package/src/components/Autocomplete/Autocomplete.sx.ts +0 -30
  53. package/src/components/Autocomplete/Autocomplete.tsx +0 -393
  54. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +0 -55
  55. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +0 -17
  56. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +0 -29
  57. package/src/components/Autocomplete/index.ts +0 -12
  58. package/src/components/Avatar/Avatar.definitions.ts +0 -162
  59. package/src/components/Avatar/Avatar.stories.tsx +0 -258
  60. package/src/components/Avatar/Avatar.tsx +0 -206
  61. package/src/components/Avatar/index.ts +0 -2
  62. package/src/components/Button/Button.definition.ts +0 -97
  63. package/src/components/Button/Button.stories.tsx +0 -285
  64. package/src/components/Button/Button.tsx +0 -66
  65. package/src/components/Button/index.ts +0 -2
  66. package/src/components/Card/Card.definition.ts +0 -5
  67. package/src/components/Card/Card.stories.tsx +0 -102
  68. package/src/components/Card/Card.sx.ts +0 -58
  69. package/src/components/Card/Card.tsx +0 -85
  70. package/src/components/Card/index.ts +0 -4
  71. package/src/components/Checkbox/Checkbox.stories.tsx +0 -212
  72. package/src/components/Checkbox/Checkbox.sx.ts +0 -67
  73. package/src/components/Checkbox/Checkbox.tsx +0 -208
  74. package/src/components/Checkbox/index.ts +0 -10
  75. package/src/components/Chip/Chip.definitions.ts +0 -167
  76. package/src/components/Chip/Chip.stories.tsx +0 -265
  77. package/src/components/Chip/Chip.tsx +0 -61
  78. package/src/components/Chip/index.ts +0 -2
  79. package/src/components/Column/Column.tsx +0 -29
  80. package/src/components/Column/index.ts +0 -2
  81. package/src/components/DatePicker/DatePicker.definitions.ts +0 -228
  82. package/src/components/DatePicker/DatePicker.helpers.ts +0 -24
  83. package/src/components/DatePicker/DatePicker.stories.tsx +0 -309
  84. package/src/components/DatePicker/DatePicker.sx.ts +0 -33
  85. package/src/components/DatePicker/DatePicker.tsx +0 -133
  86. package/src/components/DatePicker/index.ts +0 -7
  87. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -317
  88. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +0 -45
  89. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -415
  90. package/src/components/DateTimePicker/DateTimePicker.sx.ts +0 -30
  91. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -240
  92. package/src/components/DateTimePicker/index.ts +0 -9
  93. package/src/components/Drawer/Drawer.stories.tsx +0 -438
  94. package/src/components/Drawer/Drawer.sx.ts +0 -106
  95. package/src/components/Drawer/Drawer.tsx +0 -224
  96. package/src/components/Drawer/DrawerContext.ts +0 -26
  97. package/src/components/Drawer/DrawerItem.tsx +0 -120
  98. package/src/components/Drawer/index.ts +0 -10
  99. package/src/components/Flyout/Flyout.stories.tsx +0 -282
  100. package/src/components/Flyout/Flyout.tsx +0 -122
  101. package/src/components/Flyout/index.ts +0 -1
  102. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  103. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  104. package/src/components/Gallery/Gallery.tsx +0 -158
  105. package/src/components/Gallery/GalleryLightbox.tsx +0 -186
  106. package/src/components/Gallery/GalleryMain.tsx +0 -87
  107. package/src/components/Gallery/GalleryThumbnails.tsx +0 -122
  108. package/src/components/Gallery/index.ts +0 -2
  109. package/src/components/Icon/Icon.stories.tsx +0 -121
  110. package/src/components/Icon/Icon.tsx +0 -163
  111. package/src/components/Icon/index.ts +0 -2
  112. package/src/components/Input/Input.definitions.ts +0 -348
  113. package/src/components/Input/Input.helpers.ts +0 -50
  114. package/src/components/Input/Input.stories.tsx +0 -528
  115. package/src/components/Input/Input.sx.ts +0 -42
  116. package/src/components/Input/Input.tsx +0 -162
  117. package/src/components/Input/index.ts +0 -10
  118. package/src/components/InputGroup/InputGroup.definitions.ts +0 -158
  119. package/src/components/InputGroup/InputGroup.stories.tsx +0 -267
  120. package/src/components/InputGroup/InputGroup.tsx +0 -180
  121. package/src/components/InputGroup/index.ts +0 -2
  122. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  123. package/src/components/MenuButton/MenuButton.tsx +0 -100
  124. package/src/components/MenuButton/index.ts +0 -1
  125. package/src/components/Modal/Modal.stories.tsx +0 -721
  126. package/src/components/Modal/Modal.tsx +0 -407
  127. package/src/components/Modal/ModalBody.tsx +0 -23
  128. package/src/components/Modal/ModalFooter.tsx +0 -83
  129. package/src/components/Modal/ModalHeader.tsx +0 -33
  130. package/src/components/Modal/index.ts +0 -11
  131. package/src/components/RadioGroup/RadioGroup.definitions.ts +0 -177
  132. package/src/components/RadioGroup/RadioGroup.stories.tsx +0 -231
  133. package/src/components/RadioGroup/RadioGroup.sx.ts +0 -75
  134. package/src/components/RadioGroup/RadioGroup.tsx +0 -207
  135. package/src/components/RadioGroup/index.ts +0 -10
  136. package/src/components/Select/Select.helpers.ts +0 -31
  137. package/src/components/Select/Select.stories.tsx +0 -393
  138. package/src/components/Select/Select.sx.ts +0 -14
  139. package/src/components/Select/Select.tsx +0 -327
  140. package/src/components/Select/_parts/SelectMenuItem.tsx +0 -40
  141. package/src/components/Select/_parts/SelectValue.tsx +0 -95
  142. package/src/components/Select/index.ts +0 -12
  143. package/src/components/Stat/Stat.stories.tsx +0 -85
  144. package/src/components/Stat/Stat.tsx +0 -117
  145. package/src/components/Stat/index.ts +0 -2
  146. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -159
  147. package/src/components/StatusMessage/StatusMessage.tsx +0 -143
  148. package/src/components/StatusMessage/index.ts +0 -3
  149. package/src/components/Stepper/Step.tsx +0 -21
  150. package/src/components/Stepper/Stepper.definition.ts +0 -75
  151. package/src/components/Stepper/Stepper.stories.tsx +0 -194
  152. package/src/components/Stepper/Stepper.tsx +0 -194
  153. package/src/components/Stepper/StepperContext.tsx +0 -176
  154. package/src/components/Stepper/StepperProvider.stories.tsx +0 -286
  155. package/src/components/Stepper/_hooks/useHorizontalScroll.ts +0 -56
  156. package/src/components/Stepper/_parts/StepperScrollArrow.tsx +0 -50
  157. package/src/components/Stepper/index.ts +0 -15
  158. package/src/components/Switch/Switch.definitions.ts +0 -134
  159. package/src/components/Switch/Switch.stories.tsx +0 -213
  160. package/src/components/Switch/Switch.sx.ts +0 -81
  161. package/src/components/Switch/Switch.tsx +0 -188
  162. package/src/components/Switch/Switch.types.ts +0 -10
  163. package/src/components/Switch/index.ts +0 -9
  164. package/src/components/Table/EmptyTable.png +0 -0
  165. package/src/components/Table/Table.definition.ts +0 -580
  166. package/src/components/Table/Table.stories.tsx +0 -853
  167. package/src/components/Table/Table.tsx +0 -494
  168. package/src/components/Table/data.ts +0 -134
  169. package/src/components/Table/exportsUtils.ts +0 -195
  170. package/src/components/Table/index.ts +0 -3
  171. package/src/components/Table/types.ts +0 -34
  172. package/src/components/Tabs/Tab.definition.ts +0 -53
  173. package/src/components/Tabs/Tab.tsx +0 -19
  174. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  175. package/src/components/Tabs/Tabs.tsx +0 -163
  176. package/src/components/Tabs/_tabUtils.tsx +0 -4
  177. package/src/components/Tabs/index.ts +0 -5
  178. package/src/components/Timeline/Timeline.definition.ts +0 -43
  179. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  180. package/src/components/Timeline/Timeline.tsx +0 -44
  181. package/src/components/Timeline/TimelineItem.tsx +0 -31
  182. package/src/components/Timeline/index.ts +0 -5
  183. package/src/components/Tooltip/Tooltip.stories.tsx +0 -129
  184. package/src/components/Tooltip/Tooltip.tsx +0 -58
  185. package/src/components/Tooltip/index.ts +0 -1
  186. package/src/components/_shared/formField.sx.ts +0 -118
  187. package/src/components/_shared/mergeSx.ts +0 -16
  188. package/src/components/_shared/resolvePreset.ts +0 -38
  189. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  190. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  191. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  192. package/src/hooks/ClipBoard/index.ts +0 -1
  193. package/src/index.ts +0 -51
  194. package/src/mui.ts +0 -57
  195. package/src/styles.css +0 -3
  196. package/src/theme/componentStyles.ts +0 -50
  197. package/src/theme/tokens.ts +0 -43
  198. package/src/utils/index.ts +0 -2
  199. package/src/utils/scrollToTop.ts +0 -36
  200. package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
  201. package/storybook-static/assets/AccountCircle-BDZFsbTw.js +0 -1
  202. package/storybook-static/assets/ActionMenu-EynP8yU1.js +0 -19
  203. package/storybook-static/assets/ActionMenu.stories-DqSqRGix.js +0 -185
  204. package/storybook-static/assets/Alert-3zvTPc0p.js +0 -1
  205. package/storybook-static/assets/AppBar.stories-DcX3M5th.js +0 -172
  206. package/storybook-static/assets/Autocomplete.stories-CXJm8FOT.js +0 -788
  207. package/storybook-static/assets/Avatar-NbFfkZws.js +0 -1
  208. package/storybook-static/assets/Avatar.stories-CwOYCzqU.js +0 -390
  209. package/storybook-static/assets/Box-BnhEcfFm.js +0 -1
  210. package/storybook-static/assets/Button-D9h7OggD.js +0 -1
  211. package/storybook-static/assets/Button-DBpqmVB_.js +0 -1
  212. package/storybook-static/assets/Button.stories-F20dmnjq.js +0 -320
  213. package/storybook-static/assets/ButtonBase-qyaMEhe4.js +0 -74
  214. package/storybook-static/assets/Card.stories-B3NpAhO0.js +0 -154
  215. package/storybook-static/assets/CheckCircleOutline-CEj5mDsl.js +0 -1
  216. package/storybook-static/assets/Chip-C3vKPpzR.js +0 -1
  217. package/storybook-static/assets/Chip.stories-sxcfHVo9.js +0 -333
  218. package/storybook-static/assets/CircularProgress-DC7ZNWwl.js +0 -28
  219. package/storybook-static/assets/Clear-4kYcKvT3.js +0 -1
  220. package/storybook-static/assets/ClipBoard-DvLBdNHe.js +0 -1
  221. package/storybook-static/assets/ClipBoard.stories-BGUo47r6.js +0 -108
  222. package/storybook-static/assets/Close-CgHeRgmh.js +0 -1
  223. package/storybook-static/assets/Close-Cy8nELYU.js +0 -1
  224. package/storybook-static/assets/Color-AVL7NMMY-BJKvwERm.js +0 -1
  225. package/storybook-static/assets/ContentCopy-BfLTDb10.js +0 -1
  226. package/storybook-static/assets/DatePicker-Clkpr-Ku.js +0 -1
  227. package/storybook-static/assets/DatePicker.stories-EaUCMkh3.js +0 -444
  228. package/storybook-static/assets/DateRangePicker.stories-BMlkj-8K.js +0 -390
  229. package/storybook-static/assets/DateTimePicker.stories-B6gdzKq5.js +0 -555
  230. package/storybook-static/assets/DefaultPropsProvider-BGoQxtDa.js +0 -16
  231. package/storybook-static/assets/Delete-D2SMMmIA.js +0 -1
  232. package/storybook-static/assets/DialogContent-BeCDKgax.js +0 -1
  233. package/storybook-static/assets/Divider-BbCj9wT4.js +0 -1
  234. package/storybook-static/assets/DocsRenderer-PQXLIZUC-BebLK5Y_.js +0 -1243
  235. package/storybook-static/assets/Drawer-DcFwy73r.js +0 -1
  236. package/storybook-static/assets/Drawer.stories-C5AZkJBk.js +0 -173
  237. package/storybook-static/assets/EmptyTable-B-RKtgVs.png +0 -0
  238. package/storybook-static/assets/ErrorOutline-D9gM7ART.js +0 -1
  239. package/storybook-static/assets/Fade-Ll96CvH8.js +0 -1
  240. package/storybook-static/assets/Flyout.stories-Cf7z6MNw.js +0 -163
  241. package/storybook-static/assets/Gallery.stories-DdpWVTF6.js +0 -127
  242. package/storybook-static/assets/Grow-8y4FglGK.js +0 -1
  243. package/storybook-static/assets/Home-BRvJEp2L.js +0 -1
  244. package/storybook-static/assets/Icon.stories-D0mUiW_t.js +0 -78
  245. package/storybook-static/assets/IconButton-9OYSTH58.js +0 -1
  246. package/storybook-static/assets/Input-CjX0t4h-.js +0 -1
  247. package/storybook-static/assets/Input.stories-BRxekliy.js +0 -650
  248. package/storybook-static/assets/InputGroup.stories-DH6gUfmn.js +0 -306
  249. package/storybook-static/assets/KeyboardArrowRight-WO_attK2.js +0 -1
  250. package/storybook-static/assets/KeyboardArrowUp-DsyVef-i.js +0 -1
  251. package/storybook-static/assets/ListItem-D3O0103N.js +0 -1
  252. package/storybook-static/assets/ListItemIcon-hca6xN79.js +0 -1
  253. package/storybook-static/assets/ListItemText-BFLAwLdl.js +0 -1
  254. package/storybook-static/assets/Logout-gj-P3AfU.js +0 -1
  255. package/storybook-static/assets/Menu-ClzfjLc3.js +0 -1
  256. package/storybook-static/assets/MenuButton.stories-B-W_QVDt.js +0 -162
  257. package/storybook-static/assets/MenuItem-iU6tAqJI.js +0 -1
  258. package/storybook-static/assets/Modal-3okp9H2i.js +0 -1
  259. package/storybook-static/assets/Modal.stories-DIWzm4qR.js +0 -468
  260. package/storybook-static/assets/MoreVert-BoIVG4gh.js +0 -1
  261. package/storybook-static/assets/Notifications-DY_A-Sho.js +0 -1
  262. package/storybook-static/assets/PageLoader.stories-DmtO1mlm.js +0 -158
  263. package/storybook-static/assets/Paper-SwQBhqI7.js +0 -1
  264. package/storybook-static/assets/Person-CkQl-mpq.js +0 -1
  265. package/storybook-static/assets/PickersModalDialog-Tjnr_cu5.js +0 -10
  266. package/storybook-static/assets/PickersToolbarButton-Tt185-si.js +0 -1
  267. package/storybook-static/assets/Popper-CnCTYXxy.js +0 -1
  268. package/storybook-static/assets/Portal-Cj8XF9Lf.js +0 -1
  269. package/storybook-static/assets/ScrollTopButton.stories-BflQCwNP.js +0 -90
  270. package/storybook-static/assets/Select-CjcuMAY0.js +0 -4
  271. package/storybook-static/assets/Select-DJh2biEb.js +0 -3
  272. package/storybook-static/assets/Select.stories-DU1Gb3I2.js +0 -1103
  273. package/storybook-static/assets/Settings-BLKc1CnO.js +0 -1
  274. package/storybook-static/assets/Snackbar-BtVeKTw6.js +0 -1
  275. package/storybook-static/assets/Stack-D01OUIXi.js +0 -1
  276. package/storybook-static/assets/Stat.stories-Bn9-iuPT.js +0 -60
  277. package/storybook-static/assets/StatusMessage.stories-hnfX8FeU.js +0 -73
  278. package/storybook-static/assets/Stepper-BtKB5ykn.js +0 -2
  279. package/storybook-static/assets/Stepper.stories-CTEZbgPc.js +0 -165
  280. package/storybook-static/assets/Table.stories-CTn2Ktmn.js +0 -1260
  281. package/storybook-static/assets/TableContainer-CzLNaEU-.js +0 -1
  282. package/storybook-static/assets/TableRow-CS88-1HF.js +0 -2
  283. package/storybook-static/assets/Tabs-DLpDOu_n.js +0 -1
  284. package/storybook-static/assets/Tabs.stories-BFVuFy_5.js +0 -159
  285. package/storybook-static/assets/TextField-22T-xHBm.js +0 -1
  286. package/storybook-static/assets/Timeline.stories-DJU_U2Hv.js +0 -97
  287. package/storybook-static/assets/Tooltip-DbnHUxNj.js +0 -1
  288. package/storybook-static/assets/Tooltip.stories-B7tA3dnV.js +0 -66
  289. package/storybook-static/assets/Typography-BgntX2Ep.js +0 -1
  290. package/storybook-static/assets/Wizard.stories-CVrJLK_D.js +0 -23
  291. package/storybook-static/assets/createSimplePaletteValueFilter-bm0fmN_7.js +0 -1
  292. package/storybook-static/assets/createSvgIcon-D_Gca4vA.js +0 -1
  293. package/storybook-static/assets/debounce-Be36O1Ab.js +0 -1
  294. package/storybook-static/assets/emotion-react.browser.esm--g-C9cX9.js +0 -8
  295. package/storybook-static/assets/extendSxProp-CEpa30hT.js +0 -1
  296. package/storybook-static/assets/formField.sx-DMCmZIAa.js +0 -1
  297. package/storybook-static/assets/getReactElementRef-BQ3ANZdy.js +0 -1
  298. package/storybook-static/assets/iframe-BAJnc_4n.js +0 -1079
  299. package/storybook-static/assets/index-B1tlhOpe.js +0 -240
  300. package/storybook-static/assets/index-BF3FAXTk.js +0 -9
  301. package/storybook-static/assets/index-CIeucmOB.js +0 -2
  302. package/storybook-static/assets/index-CY7j4a7o.js +0 -1
  303. package/storybook-static/assets/index-CxkKctw5.js +0 -1
  304. package/storybook-static/assets/isFocusVisible-B8k4qzLc.js +0 -1
  305. package/storybook-static/assets/isMuiElement-CTZSFcY5.js +0 -1
  306. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +0 -9
  307. package/storybook-static/assets/listItemTextClasses-CC_rwJam.js +0 -1
  308. package/storybook-static/assets/mergeSlotProps-B0UBKBMe.js +0 -1
  309. package/storybook-static/assets/ownerDocument-DW-IO8s5.js +0 -1
  310. package/storybook-static/assets/ownerWindow-HkKU3E4x.js +0 -1
  311. package/storybook-static/assets/preload-helper-PPVm8Dsz.js +0 -1
  312. package/storybook-static/assets/react-18-BUJ64QCV.js +0 -25
  313. package/storybook-static/assets/resolvePreset-CN2aOJJr.js +0 -1
  314. package/storybook-static/assets/useControlled-DsVh1a5j.js +0 -1
  315. package/storybook-static/assets/useForkRef-0ANIrxcF.js +0 -1
  316. package/storybook-static/assets/useId-b4fZxjOL.js +0 -1
  317. package/storybook-static/assets/useMobilePicker-DK-c8xbD.js +0 -1
  318. package/storybook-static/assets/usePreviousProps-WR0rG4aR.js +0 -1
  319. package/storybook-static/assets/useSlot-b6pXgp5_.js +0 -1
  320. package/storybook-static/assets/useSlotProps-C0uMfuBt.js +0 -1
  321. package/storybook-static/assets/useTheme-BmOJK7ra.js +0 -1
  322. package/storybook-static/assets/useThemeProps-DYtxXiUU.js +0 -1
  323. package/storybook-static/assets/useThemeProps-U4yXiZ_5.js +0 -1
  324. package/storybook-static/assets/useTimeout-DNjRaOWc.js +0 -1
  325. package/storybook-static/assets/visuallyHidden-Dan1xhjv.js +0 -1
  326. package/storybook-static/favicon-wrapper.svg +0 -46
  327. package/storybook-static/favicon.svg +0 -1
  328. package/storybook-static/iframe.html +0 -686
  329. package/storybook-static/index.html +0 -160
  330. package/storybook-static/index.json +0 -1
  331. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  332. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  333. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  334. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  335. package/storybook-static/project.json +0 -1
  336. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js +0 -356
  337. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js.LEGAL.txt +0 -40
  338. package/storybook-static/sb-addons/docs-4/manager-bundle.js +0 -151
  339. package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +0 -127
  340. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +0 -971
  341. package/storybook-static/sb-addons/vitest-3/manager-bundle.js +0 -3
  342. package/storybook-static/sb-common-assets/favicon-wrapper.svg +0 -46
  343. package/storybook-static/sb-common-assets/favicon.svg +0 -1
  344. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  345. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  346. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  347. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  348. package/storybook-static/sb-manager/globals-module-info.js +0 -797
  349. package/storybook-static/sb-manager/globals-runtime.js +0 -69679
  350. package/storybook-static/sb-manager/globals.js +0 -34
  351. package/storybook-static/sb-manager/runtime.js +0 -13195
  352. package/storybook-static/vite-inject-mocker-entry.js +0 -18
  353. package/tailwind.config.js +0 -10
  354. package/tsconfig.json +0 -48
  355. package/tsup.config.js +0 -41
  356. package/vite.config.js +0 -132
  357. package/vitest.config.ts +0 -35
  358. /package/{dist/Autocomplete-C_lW1VER.js → Autocomplete-C_lW1VER.js} +0 -0
  359. /package/{dist/Autocomplete-C_lW1VER.js.map → Autocomplete-C_lW1VER.js.map} +0 -0
  360. /package/{dist/Autocomplete-CejWztBY.cjs → Autocomplete-CejWztBY.cjs} +0 -0
  361. /package/{dist/Autocomplete-CejWztBY.cjs.map → Autocomplete-CejWztBY.cjs.map} +0 -0
  362. /package/{dist/Avatar-CgT7955R.js → Avatar-CgT7955R.js} +0 -0
  363. /package/{dist/Avatar-CgT7955R.js.map → Avatar-CgT7955R.js.map} +0 -0
  364. /package/{dist/Avatar-CuSrK8Wn.cjs → Avatar-CuSrK8Wn.cjs} +0 -0
  365. /package/{dist/Avatar-CuSrK8Wn.cjs.map → Avatar-CuSrK8Wn.cjs.map} +0 -0
  366. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  367. /package/{dist/Button-C17mExpd.cjs.map → Button-C17mExpd.cjs.map} +0 -0
  368. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  369. /package/{dist/Button-UkkP-bNw.js.map → Button-UkkP-bNw.js.map} +0 -0
  370. /package/{dist/Card-B1wtavyl.js → Card-B1wtavyl.js} +0 -0
  371. /package/{dist/Card-B1wtavyl.js.map → Card-B1wtavyl.js.map} +0 -0
  372. /package/{dist/Card-DfdU610V.cjs → Card-DfdU610V.cjs} +0 -0
  373. /package/{dist/Card-DfdU610V.cjs.map → Card-DfdU610V.cjs.map} +0 -0
  374. /package/{dist/Checkbox-BCqMFWt4.cjs → Checkbox-BCqMFWt4.cjs} +0 -0
  375. /package/{dist/Checkbox-BCqMFWt4.cjs.map → Checkbox-BCqMFWt4.cjs.map} +0 -0
  376. /package/{dist/Checkbox-gB5YKkVo.js → Checkbox-gB5YKkVo.js} +0 -0
  377. /package/{dist/Checkbox-gB5YKkVo.js.map → Checkbox-gB5YKkVo.js.map} +0 -0
  378. /package/{dist/Chip-OPYQ1uQ_.js → Chip-OPYQ1uQ_.js} +0 -0
  379. /package/{dist/Chip-OPYQ1uQ_.js.map → Chip-OPYQ1uQ_.js.map} +0 -0
  380. /package/{dist/Chip-qoJLDiva.cjs → Chip-qoJLDiva.cjs} +0 -0
  381. /package/{dist/Chip-qoJLDiva.cjs.map → Chip-qoJLDiva.cjs.map} +0 -0
  382. /package/{dist/DatePicker-_IGWc3I5.js → DatePicker-_IGWc3I5.js} +0 -0
  383. /package/{dist/DatePicker-_IGWc3I5.js.map → DatePicker-_IGWc3I5.js.map} +0 -0
  384. /package/{dist/DatePicker-t7uDTZMl.cjs → DatePicker-t7uDTZMl.cjs} +0 -0
  385. /package/{dist/DatePicker-t7uDTZMl.cjs.map → DatePicker-t7uDTZMl.cjs.map} +0 -0
  386. /package/{dist/DateTimePicker-BxQyjTCY.cjs → DateTimePicker-BxQyjTCY.cjs} +0 -0
  387. /package/{dist/DateTimePicker-BxQyjTCY.cjs.map → DateTimePicker-BxQyjTCY.cjs.map} +0 -0
  388. /package/{dist/DateTimePicker-CrmWav_j.js → DateTimePicker-CrmWav_j.js} +0 -0
  389. /package/{dist/DateTimePicker-CrmWav_j.js.map → DateTimePicker-CrmWav_j.js.map} +0 -0
  390. /package/{dist/Input-CScC87J5.cjs → Input-CScC87J5.cjs} +0 -0
  391. /package/{dist/Input-CScC87J5.cjs.map → Input-CScC87J5.cjs.map} +0 -0
  392. /package/{dist/Input-DP_fKl38.js → Input-DP_fKl38.js} +0 -0
  393. /package/{dist/Input-DP_fKl38.js.map → Input-DP_fKl38.js.map} +0 -0
  394. /package/{dist/Modal-BN5s-Tfk.cjs → Modal-BN5s-Tfk.cjs} +0 -0
  395. /package/{dist/Modal-BN5s-Tfk.cjs.map → Modal-BN5s-Tfk.cjs.map} +0 -0
  396. /package/{dist/Modal-BRZMPwDj.js → Modal-BRZMPwDj.js} +0 -0
  397. /package/{dist/Modal-BRZMPwDj.js.map → Modal-BRZMPwDj.js.map} +0 -0
  398. /package/{dist/README.md → README.md} +0 -0
  399. /package/{dist/RadioGroup-Dd0rHXSX.cjs → RadioGroup-Dd0rHXSX.cjs} +0 -0
  400. /package/{dist/RadioGroup-Dd0rHXSX.cjs.map → RadioGroup-Dd0rHXSX.cjs.map} +0 -0
  401. /package/{dist/RadioGroup-bO-ahP9T.js → RadioGroup-bO-ahP9T.js} +0 -0
  402. /package/{dist/RadioGroup-bO-ahP9T.js.map → RadioGroup-bO-ahP9T.js.map} +0 -0
  403. /package/{dist/Stat-BUcFCGrz.cjs → Stat-BUcFCGrz.cjs} +0 -0
  404. /package/{dist/Stat-BUcFCGrz.cjs.map → Stat-BUcFCGrz.cjs.map} +0 -0
  405. /package/{dist/Stat-C06A_izS.js → Stat-C06A_izS.js} +0 -0
  406. /package/{dist/Stat-C06A_izS.js.map → Stat-C06A_izS.js.map} +0 -0
  407. /package/{dist/StatusMessage-B3nXpuRl.cjs → StatusMessage-B3nXpuRl.cjs} +0 -0
  408. /package/{dist/StatusMessage-B3nXpuRl.cjs.map → StatusMessage-B3nXpuRl.cjs.map} +0 -0
  409. /package/{dist/StatusMessage-D0WgSBx7.js → StatusMessage-D0WgSBx7.js} +0 -0
  410. /package/{dist/StatusMessage-D0WgSBx7.js.map → StatusMessage-D0WgSBx7.js.map} +0 -0
  411. /package/{dist/Step-BArsou1V.js → Step-BArsou1V.js} +0 -0
  412. /package/{dist/Step-BArsou1V.js.map → Step-BArsou1V.js.map} +0 -0
  413. /package/{dist/Step-Nd7SJbRZ.cjs → Step-Nd7SJbRZ.cjs} +0 -0
  414. /package/{dist/Step-Nd7SJbRZ.cjs.map → Step-Nd7SJbRZ.cjs.map} +0 -0
  415. /package/{dist/Switch-CQFOopYy.cjs → Switch-CQFOopYy.cjs} +0 -0
  416. /package/{dist/Switch-CQFOopYy.cjs.map → Switch-CQFOopYy.cjs.map} +0 -0
  417. /package/{dist/Switch-D72dpkH2.js → Switch-D72dpkH2.js} +0 -0
  418. /package/{dist/Switch-D72dpkH2.js.map → Switch-D72dpkH2.js.map} +0 -0
  419. /package/{dist/Tab-BbP8jBcK.cjs → Tab-BbP8jBcK.cjs} +0 -0
  420. /package/{dist/Tab-BbP8jBcK.cjs.map → Tab-BbP8jBcK.cjs.map} +0 -0
  421. /package/{dist/Tab-BxSxKJsP.js → Tab-BxSxKJsP.js} +0 -0
  422. /package/{dist/Tab-BxSxKJsP.js.map → Tab-BxSxKJsP.js.map} +0 -0
  423. /package/{dist/Table-C2LbW0B1.js → Table-C2LbW0B1.js} +0 -0
  424. /package/{dist/Table-C2LbW0B1.js.map → Table-C2LbW0B1.js.map} +0 -0
  425. /package/{dist/Table-C4OM6rrC.cjs → Table-C4OM6rrC.cjs} +0 -0
  426. /package/{dist/Table-C4OM6rrC.cjs.map → Table-C4OM6rrC.cjs.map} +0 -0
  427. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs +0 -0
  428. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs.map +0 -0
  429. /package/{dist/components → components}/ActionMenu/ActionMenu.d.ts +0 -0
  430. /package/{dist/components → components}/ActionMenu/ActionMenu.js +0 -0
  431. /package/{dist/components → components}/ActionMenu/ActionMenu.js.map +0 -0
  432. /package/{dist/components → components}/ActionMenu/index.d.ts +0 -0
  433. /package/{dist/components → components}/ActionMenu.d.ts +0 -0
  434. /package/{dist/components → components}/AppBar/AppBar.cjs +0 -0
  435. /package/{dist/components → components}/AppBar/AppBar.cjs.map +0 -0
  436. /package/{dist/components → components}/AppBar/AppBar.d.ts +0 -0
  437. /package/{dist/components → components}/AppBar/AppBar.js +0 -0
  438. /package/{dist/components → components}/AppBar/AppBar.js.map +0 -0
  439. /package/{dist/components → components}/AppBar/AppBar.sx.d.ts +0 -0
  440. /package/{dist/components → components}/AppBar/AppBarContext.d.ts +0 -0
  441. /package/{dist/components → components}/AppBar/AppBarMenuToggle.d.ts +0 -0
  442. /package/{dist/components → components}/AppBar/index.d.ts +0 -0
  443. /package/{dist/components → components}/AppBar.d.ts +0 -0
  444. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs +0 -0
  445. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs.map +0 -0
  446. /package/{dist/components → components}/Autocomplete/Autocomplete.d.ts +0 -0
  447. /package/{dist/components → components}/Autocomplete/Autocomplete.definitions.d.ts +0 -0
  448. /package/{dist/components → components}/Autocomplete/Autocomplete.helpers.d.ts +0 -0
  449. /package/{dist/components → components}/Autocomplete/Autocomplete.js +0 -0
  450. /package/{dist/components → components}/Autocomplete/Autocomplete.js.map +0 -0
  451. /package/{dist/components → components}/Autocomplete/Autocomplete.sx.d.ts +0 -0
  452. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteChips.d.ts +0 -0
  453. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteLoader.d.ts +0 -0
  454. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteOption.d.ts +0 -0
  455. /package/{dist/components → components}/Autocomplete/index.d.ts +0 -0
  456. /package/{dist/components → components}/Autocomplete.d.ts +0 -0
  457. /package/{dist/components → components}/Avatar/Avatar.cjs +0 -0
  458. /package/{dist/components → components}/Avatar/Avatar.cjs.map +0 -0
  459. /package/{dist/components → components}/Avatar/Avatar.d.ts +0 -0
  460. /package/{dist/components → components}/Avatar/Avatar.definitions.d.ts +0 -0
  461. /package/{dist/components → components}/Avatar/Avatar.js +0 -0
  462. /package/{dist/components → components}/Avatar/Avatar.js.map +0 -0
  463. /package/{dist/components → components}/Avatar/index.d.ts +0 -0
  464. /package/{dist/components → components}/Avatar.d.ts +0 -0
  465. /package/{dist/components → components}/Button/Button.cjs +0 -0
  466. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  467. /package/{dist/components → components}/Button/Button.d.ts +0 -0
  468. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  469. /package/{dist/components → components}/Button/Button.js +0 -0
  470. /package/{dist/components → components}/Button/Button.js.map +0 -0
  471. /package/{dist/components → components}/Button/index.d.ts +0 -0
  472. /package/{dist/components → components}/Button.d.ts +0 -0
  473. /package/{dist/components → components}/Card/Card.cjs +0 -0
  474. /package/{dist/components → components}/Card/Card.cjs.map +0 -0
  475. /package/{dist/components → components}/Card/Card.d.ts +0 -0
  476. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  477. /package/{dist/components → components}/Card/Card.js +0 -0
  478. /package/{dist/components → components}/Card/Card.js.map +0 -0
  479. /package/{dist/components → components}/Card/Card.sx.d.ts +0 -0
  480. /package/{dist/components → components}/Card/index.d.ts +0 -0
  481. /package/{dist/components → components}/Card.d.ts +0 -0
  482. /package/{dist/components → components}/Checkbox/Checkbox.cjs +0 -0
  483. /package/{dist/components → components}/Checkbox/Checkbox.cjs.map +0 -0
  484. /package/{dist/components → components}/Checkbox/Checkbox.d.ts +0 -0
  485. /package/{dist/components → components}/Checkbox/Checkbox.js +0 -0
  486. /package/{dist/components → components}/Checkbox/Checkbox.js.map +0 -0
  487. /package/{dist/components → components}/Checkbox/Checkbox.sx.d.ts +0 -0
  488. /package/{dist/components → components}/Checkbox/index.d.ts +0 -0
  489. /package/{dist/components → components}/Checkbox.d.ts +0 -0
  490. /package/{dist/components → components}/Chip/Chip.cjs +0 -0
  491. /package/{dist/components → components}/Chip/Chip.cjs.map +0 -0
  492. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  493. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  494. /package/{dist/components → components}/Chip/Chip.js +0 -0
  495. /package/{dist/components → components}/Chip/Chip.js.map +0 -0
  496. /package/{dist/components → components}/Chip/index.d.ts +0 -0
  497. /package/{dist/components → components}/Chip.d.ts +0 -0
  498. /package/{dist/components → components}/Column/Column.cjs +0 -0
  499. /package/{dist/components → components}/Column/Column.cjs.map +0 -0
  500. /package/{dist/components → components}/Column/Column.d.ts +0 -0
  501. /package/{dist/components → components}/Column/Column.js +0 -0
  502. /package/{dist/components → components}/Column/Column.js.map +0 -0
  503. /package/{dist/components → components}/Column/index.d.ts +0 -0
  504. /package/{dist/components → components}/Column.d.ts +0 -0
  505. /package/{dist/components → components}/DatePicker/DatePicker.cjs +0 -0
  506. /package/{dist/components → components}/DatePicker/DatePicker.cjs.map +0 -0
  507. /package/{dist/components → components}/DatePicker/DatePicker.d.ts +0 -0
  508. /package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +0 -0
  509. /package/{dist/components → components}/DatePicker/DatePicker.helpers.d.ts +0 -0
  510. /package/{dist/components → components}/DatePicker/DatePicker.js +0 -0
  511. /package/{dist/components → components}/DatePicker/DatePicker.js.map +0 -0
  512. /package/{dist/components → components}/DatePicker/DatePicker.sx.d.ts +0 -0
  513. /package/{dist/components → components}/DatePicker/index.d.ts +0 -0
  514. /package/{dist/components → components}/DatePicker.d.ts +0 -0
  515. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs +0 -0
  516. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs.map +0 -0
  517. /package/{dist/components → components}/DateTimePicker/DateTimePicker.d.ts +0 -0
  518. /package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +0 -0
  519. /package/{dist/components → components}/DateTimePicker/DateTimePicker.helpers.d.ts +0 -0
  520. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js +0 -0
  521. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js.map +0 -0
  522. /package/{dist/components → components}/DateTimePicker/DateTimePicker.sx.d.ts +0 -0
  523. /package/{dist/components → components}/DateTimePicker/index.d.ts +0 -0
  524. /package/{dist/components → components}/DateTimePicker.d.ts +0 -0
  525. /package/{dist/components → components}/Drawer/Drawer.cjs +0 -0
  526. /package/{dist/components → components}/Drawer/Drawer.cjs.map +0 -0
  527. /package/{dist/components → components}/Drawer/Drawer.d.ts +0 -0
  528. /package/{dist/components → components}/Drawer/Drawer.js +0 -0
  529. /package/{dist/components → components}/Drawer/Drawer.js.map +0 -0
  530. /package/{dist/components → components}/Drawer/Drawer.sx.d.ts +0 -0
  531. /package/{dist/components → components}/Drawer/DrawerContext.d.ts +0 -0
  532. /package/{dist/components → components}/Drawer/DrawerItem.d.ts +0 -0
  533. /package/{dist/components → components}/Drawer/index.d.ts +0 -0
  534. /package/{dist/components → components}/Drawer.d.ts +0 -0
  535. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  536. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  537. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  538. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  539. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  540. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  541. /package/{dist/components → components}/Flyout.d.ts +0 -0
  542. /package/{dist/components → components}/Gallery/Gallery.cjs +0 -0
  543. /package/{dist/components → components}/Gallery/Gallery.cjs.map +0 -0
  544. /package/{dist/components → components}/Gallery/Gallery.d.ts +0 -0
  545. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  546. /package/{dist/components → components}/Gallery/Gallery.js +0 -0
  547. /package/{dist/components → components}/Gallery/Gallery.js.map +0 -0
  548. /package/{dist/components → components}/Gallery/GalleryLightbox.d.ts +0 -0
  549. /package/{dist/components → components}/Gallery/GalleryMain.d.ts +0 -0
  550. /package/{dist/components → components}/Gallery/GalleryThumbnails.d.ts +0 -0
  551. /package/{dist/components → components}/Gallery/index.d.ts +0 -0
  552. /package/{dist/components → components}/Gallery.d.ts +0 -0
  553. /package/{dist/components → components}/Icon/Icon.cjs +0 -0
  554. /package/{dist/components → components}/Icon/Icon.cjs.map +0 -0
  555. /package/{dist/components → components}/Icon/Icon.d.ts +0 -0
  556. /package/{dist/components → components}/Icon/Icon.js +0 -0
  557. /package/{dist/components → components}/Icon/Icon.js.map +0 -0
  558. /package/{dist/components → components}/Icon/index.d.ts +0 -0
  559. /package/{dist/components → components}/Icon.d.ts +0 -0
  560. /package/{dist/components → components}/Input/Input.cjs +0 -0
  561. /package/{dist/components → components}/Input/Input.cjs.map +0 -0
  562. /package/{dist/components → components}/Input/Input.d.ts +0 -0
  563. /package/{dist/components → components}/Input/Input.definitions.d.ts +0 -0
  564. /package/{dist/components → components}/Input/Input.helpers.d.ts +0 -0
  565. /package/{dist/components → components}/Input/Input.js +0 -0
  566. /package/{dist/components → components}/Input/Input.js.map +0 -0
  567. /package/{dist/components → components}/Input/Input.sx.d.ts +0 -0
  568. /package/{dist/components → components}/Input/index.d.ts +0 -0
  569. /package/{dist/components → components}/Input.d.ts +0 -0
  570. /package/{dist/components → components}/InputGroup/InputGroup.cjs +0 -0
  571. /package/{dist/components → components}/InputGroup/InputGroup.cjs.map +0 -0
  572. /package/{dist/components → components}/InputGroup/InputGroup.d.ts +0 -0
  573. /package/{dist/components → components}/InputGroup/InputGroup.definitions.d.ts +0 -0
  574. /package/{dist/components → components}/InputGroup/InputGroup.js +0 -0
  575. /package/{dist/components → components}/InputGroup/InputGroup.js.map +0 -0
  576. /package/{dist/components → components}/InputGroup/index.d.ts +0 -0
  577. /package/{dist/components → components}/InputGroup.d.ts +0 -0
  578. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  579. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  580. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  581. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  582. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  583. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  584. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  585. /package/{dist/components → components}/Modal/Modal.cjs +0 -0
  586. /package/{dist/components → components}/Modal/Modal.cjs.map +0 -0
  587. /package/{dist/components → components}/Modal/Modal.d.ts +0 -0
  588. /package/{dist/components → components}/Modal/Modal.js +0 -0
  589. /package/{dist/components → components}/Modal/Modal.js.map +0 -0
  590. /package/{dist/components → components}/Modal/ModalBody.d.ts +0 -0
  591. /package/{dist/components → components}/Modal/ModalFooter.d.ts +0 -0
  592. /package/{dist/components → components}/Modal/ModalHeader.d.ts +0 -0
  593. /package/{dist/components → components}/Modal/index.d.ts +0 -0
  594. /package/{dist/components → components}/Modal.d.ts +0 -0
  595. /package/{dist/components → components}/RadioGroup/RadioGroup.cjs +0 -0
  596. /package/{dist/components → components}/RadioGroup/RadioGroup.cjs.map +0 -0
  597. /package/{dist/components → components}/RadioGroup/RadioGroup.d.ts +0 -0
  598. /package/{dist/components → components}/RadioGroup/RadioGroup.definitions.d.ts +0 -0
  599. /package/{dist/components → components}/RadioGroup/RadioGroup.js +0 -0
  600. /package/{dist/components → components}/RadioGroup/RadioGroup.js.map +0 -0
  601. /package/{dist/components → components}/RadioGroup/RadioGroup.sx.d.ts +0 -0
  602. /package/{dist/components → components}/RadioGroup/index.d.ts +0 -0
  603. /package/{dist/components → components}/RadioGroup.d.ts +0 -0
  604. /package/{dist/components → components}/Select/Select.cjs.map +0 -0
  605. /package/{dist/components → components}/Select/Select.helpers.d.ts +0 -0
  606. /package/{dist/components → components}/Select/Select.js.map +0 -0
  607. /package/{dist/components → components}/Select/Select.sx.d.ts +0 -0
  608. /package/{dist/components → components}/Select/_parts/SelectMenuItem.d.ts +0 -0
  609. /package/{dist/components → components}/Select/_parts/SelectValue.d.ts +0 -0
  610. /package/{dist/components → components}/Select/index.d.ts +0 -0
  611. /package/{dist/components → components}/Select.d.ts +0 -0
  612. /package/{dist/components → components}/Stat/Stat.cjs +0 -0
  613. /package/{dist/components → components}/Stat/Stat.cjs.map +0 -0
  614. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  615. /package/{dist/components → components}/Stat/Stat.js +0 -0
  616. /package/{dist/components → components}/Stat/Stat.js.map +0 -0
  617. /package/{dist/components → components}/Stat/index.d.ts +0 -0
  618. /package/{dist/components → components}/Stat.d.ts +0 -0
  619. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs +0 -0
  620. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs.map +0 -0
  621. /package/{dist/components → components}/StatusMessage/StatusMessage.d.ts +0 -0
  622. /package/{dist/components → components}/StatusMessage/StatusMessage.js +0 -0
  623. /package/{dist/components → components}/StatusMessage/StatusMessage.js.map +0 -0
  624. /package/{dist/components → components}/StatusMessage/index.d.ts +0 -0
  625. /package/{dist/components → components}/StatusMessage.d.ts +0 -0
  626. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  627. /package/{dist/components → components}/Stepper/Stepper.cjs +0 -0
  628. /package/{dist/components → components}/Stepper/Stepper.cjs.map +0 -0
  629. /package/{dist/components → components}/Stepper/Stepper.d.ts +0 -0
  630. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  631. /package/{dist/components → components}/Stepper/Stepper.js +0 -0
  632. /package/{dist/components → components}/Stepper/Stepper.js.map +0 -0
  633. /package/{dist/components → components}/Stepper/StepperContext.d.ts +0 -0
  634. /package/{dist/components → components}/Stepper/_hooks/useHorizontalScroll.d.ts +0 -0
  635. /package/{dist/components → components}/Stepper/_parts/StepperScrollArrow.d.ts +0 -0
  636. /package/{dist/components → components}/Stepper/index.d.ts +0 -0
  637. /package/{dist/components → components}/Stepper.d.ts +0 -0
  638. /package/{dist/components → components}/Switch/Switch.cjs +0 -0
  639. /package/{dist/components → components}/Switch/Switch.cjs.map +0 -0
  640. /package/{dist/components → components}/Switch/Switch.d.ts +0 -0
  641. /package/{dist/components → components}/Switch/Switch.definitions.d.ts +0 -0
  642. /package/{dist/components → components}/Switch/Switch.js +0 -0
  643. /package/{dist/components → components}/Switch/Switch.js.map +0 -0
  644. /package/{dist/components → components}/Switch/Switch.sx.d.ts +0 -0
  645. /package/{dist/components → components}/Switch/Switch.types.d.ts +0 -0
  646. /package/{dist/components → components}/Switch/index.d.ts +0 -0
  647. /package/{dist/components → components}/Switch.d.ts +0 -0
  648. /package/{dist/components → components}/Table/Table.cjs +0 -0
  649. /package/{dist/components → components}/Table/Table.cjs.map +0 -0
  650. /package/{dist/components → components}/Table/Table.d.ts +0 -0
  651. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  652. /package/{dist/components → components}/Table/Table.js +0 -0
  653. /package/{dist/components → components}/Table/Table.js.map +0 -0
  654. /package/{dist/components → components}/Table/data.d.ts +0 -0
  655. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  656. /package/{dist/components → components}/Table/index.d.ts +0 -0
  657. /package/{dist/components → components}/Table/types.d.ts +0 -0
  658. /package/{dist/components → components}/Table.d.ts +0 -0
  659. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  660. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  661. /package/{dist/components → components}/Tabs/Tabs.cjs +0 -0
  662. /package/{dist/components → components}/Tabs/Tabs.cjs.map +0 -0
  663. /package/{dist/components → components}/Tabs/Tabs.d.ts +0 -0
  664. /package/{dist/components → components}/Tabs/Tabs.js +0 -0
  665. /package/{dist/components → components}/Tabs/Tabs.js.map +0 -0
  666. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  667. /package/{dist/components → components}/Tabs/index.d.ts +0 -0
  668. /package/{dist/components → components}/Tabs.d.ts +0 -0
  669. /package/{dist/components → components}/Timeline/Timeline.cjs +0 -0
  670. /package/{dist/components → components}/Timeline/Timeline.cjs.map +0 -0
  671. /package/{dist/components → components}/Timeline/Timeline.d.ts +0 -0
  672. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  673. /package/{dist/components → components}/Timeline/Timeline.js +0 -0
  674. /package/{dist/components → components}/Timeline/Timeline.js.map +0 -0
  675. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  676. /package/{dist/components → components}/Timeline/index.d.ts +0 -0
  677. /package/{dist/components → components}/Timeline.d.ts +0 -0
  678. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  679. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  680. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  681. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  682. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  683. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  684. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  685. /package/{dist/components → components}/_shared/formField.sx.d.ts +0 -0
  686. /package/{dist/components → components}/_shared/mergeSx.d.ts +0 -0
  687. /package/{dist/components → components}/_shared/resolvePreset.d.ts +0 -0
  688. /package/{dist/formField.sx-8_QRnKxv.js → formField.sx-8_QRnKxv.js} +0 -0
  689. /package/{dist/formField.sx-8_QRnKxv.js.map → formField.sx-8_QRnKxv.js.map} +0 -0
  690. /package/{dist/formField.sx-BAX7KwMR.cjs → formField.sx-BAX7KwMR.cjs} +0 -0
  691. /package/{dist/formField.sx-BAX7KwMR.cjs.map → formField.sx-BAX7KwMR.cjs.map} +0 -0
  692. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  693. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  694. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  695. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  696. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  697. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  698. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  699. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  700. /package/{dist/index.cjs.map → index.cjs.map} +0 -0
  701. /package/{dist/index.css → index.css} +0 -0
  702. /package/{dist/index.d.ts → index.d.ts} +0 -0
  703. /package/{dist/index.js.map → index.js.map} +0 -0
  704. /package/{dist/mergeSx-BXoNZjB_.js → mergeSx-BXoNZjB_.js} +0 -0
  705. /package/{dist/mergeSx-BXoNZjB_.js.map → mergeSx-BXoNZjB_.js.map} +0 -0
  706. /package/{dist/mergeSx-Dbccoo_H.cjs → mergeSx-Dbccoo_H.cjs} +0 -0
  707. /package/{dist/mergeSx-Dbccoo_H.cjs.map → mergeSx-Dbccoo_H.cjs.map} +0 -0
  708. /package/{dist/mui.d.ts → mui.d.ts} +0 -0
  709. /package/{dist/resolvePreset-CxTI6_Ln.cjs → resolvePreset-CxTI6_Ln.cjs} +0 -0
  710. /package/{dist/resolvePreset-CxTI6_Ln.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +0 -0
  711. /package/{dist/resolvePreset-K6_BfWHD.js → resolvePreset-K6_BfWHD.js} +0 -0
  712. /package/{dist/resolvePreset-K6_BfWHD.js.map → resolvePreset-K6_BfWHD.js.map} +0 -0
  713. /package/{dist/theme → theme}/componentStyles.d.ts +0 -0
  714. /package/{dist/theme → theme}/tokens.d.ts +0 -0
  715. /package/{dist/tokens-BRrcP_p_.js → tokens-BRrcP_p_.js} +0 -0
  716. /package/{dist/tokens-BRrcP_p_.js.map → tokens-BRrcP_p_.js.map} +0 -0
  717. /package/{dist/tokens-jaWWNk39.cjs → tokens-jaWWNk39.cjs} +0 -0
  718. /package/{dist/tokens-jaWWNk39.cjs.map → tokens-jaWWNk39.cjs.map} +0 -0
  719. /package/{dist/utils → utils}/index.d.ts +0 -0
  720. /package/{dist/utils → utils}/scrollToTop.d.ts +0 -0
package/Readme.md DELETED
@@ -1,243 +0,0 @@
1
- # @soyfri/shared-library
2
-
3
- Una librería de componentes React reutilizables construida con Material-UI, TypeScript y Tailwind CSS, diseñada para proporcionar componentes UI consistentes y bien documentados.
4
-
5
- ## 📋 Tabla de Contenidos
6
-
7
- - [Características](#características)
8
- - [Instalación](#instalación)
9
- - [Uso](#uso)
10
- - [Componentes Disponibles](#componentes-disponibles)
11
- - [Desarrollo](#desarrollo)
12
- - [Scripts Disponibles](#scripts-disponibles)
13
- - [Storybook](#storybook)
14
- - [Testing](#testing)
15
- - [Tecnologías](#tecnologías)
16
- - [Estructura del Proyecto](#estructura-del-proyecto)
17
-
18
- ## ✨ Características
19
-
20
- - 🎨 **Componentes tipados**: Todos los componentes están construidos con TypeScript para mayor seguridad de tipos
21
- - 📚 **Documentación con Storybook**: Cada componente incluye historias interactivas y documentación
22
- - 🎯 **Material-UI**: Basado en Material-UI para un diseño consistente y accesible
23
- - 🌈 **Tailwind CSS**: Integración con Tailwind para estilos utilitarios
24
- - 🧪 **Testing**: Configurado con Vitest y Playwright para testing de componentes
25
- - 📦 **Build optimizado**: Configuración con Rollup para generar builds ESM y CommonJS
26
-
27
- ## 📦 Instalación
28
-
29
- ```bash
30
- npm install @soyfri/shared-library
31
- ```
32
-
33
- ## 🚀 Uso
34
-
35
- ```tsx
36
- import { Button, Table, Select } from '@soyfri/shared-library';
37
- import '@soyfri/shared-library/dist/styles.css';
38
-
39
- function App() {
40
- return (
41
- <div>
42
- <Button variant="contained" color="primary">
43
- Mi Botón
44
- </Button>
45
- </div>
46
- );
47
- }
48
- ```
49
-
50
- ## 🧩 Componentes Disponibles
51
-
52
- ### Button
53
- Componente de botón personalizable basado en Material-UI con soporte para iconos, diferentes tamaños y estados.
54
-
55
- **Características:**
56
- - Variantes: `text`, `outlined`, `contained`
57
- - Tamaños: `small`, `medium`, `large`
58
- - Soporte para iconos de inicio y fin
59
- - Estados de carga
60
- - Completamente tipado
61
-
62
- ### Table
63
- Componente de tabla flexible con paginación interna y externa, ordenamiento y renderizado personalizado de columnas.
64
-
65
- **Características:**
66
- - Paginación interna automática
67
- - Paginación externa controlada
68
- - Columnas personalizables con renderizado custom
69
- - Soporte para componentes complejos en celdas
70
- - Completamente tipado con generics
71
-
72
- ### Select
73
- Componente select avanzado con soporte para selección múltiple, filtros, agrupación y renderizado personalizado.
74
-
75
- **Características:**
76
- - Selección simple y múltiple
77
- - Filtrado de opciones
78
- - Agrupación de opciones
79
- - Renderizado personalizado con avatars
80
- - Placeholder configurable
81
-
82
- ### Avatar
83
- Componente para mostrar avatares de usuarios con soporte para imágenes y texto.
84
-
85
- ### Icon
86
- Wrapper para iconos de Material-UI con propiedades consistentes.
87
-
88
- ### Stat
89
- Componente para mostrar estadísticas con diferentes plantillas de visualización.
90
-
91
- **Características:**
92
- - Plantilla simple
93
- - Plantilla con chip
94
- - Plantilla con lista de chips
95
- - Colores personalizables
96
-
97
- ### Column
98
- Componente auxiliar para definir columnas en el componente Table.
99
-
100
- ## 🛠️ Desarrollo
101
-
102
- ### Prerrequisitos
103
-
104
- - Node.js (versión 18 o superior)
105
- - npm o yarn
106
-
107
- ### Configuración del entorno de desarrollo
108
-
109
- 1. Clona el repositorio:
110
- ```bash
111
- git clone <repository-url>
112
- cd shared-library
113
- ```
114
-
115
- 2. Instala las dependencias:
116
- ```bash
117
- npm install
118
- ```
119
-
120
- 3. Inicia el entorno de desarrollo:
121
- ```bash
122
- npm run dev
123
- ```
124
-
125
- ## 📜 Scripts Disponibles
126
-
127
- - `npm run build` - Construye la librería para producción
128
- - `npm run dev` - Inicia el modo de desarrollo con watch
129
- - `npm run build:css` - Construye los estilos CSS
130
- - `npm run watch:css` - Observa cambios en los estilos CSS
131
- - `npm run clean` - Limpia la carpeta dist
132
- - `npm run prepare` - Limpia y construye la librería
133
- - `npm run storybook` - Inicia Storybook en modo desarrollo
134
- - `npm run build-storybook` - Construye Storybook para producción
135
- - `npm run dist` - Ejecuta el script de distribución personalizado
136
-
137
- ## 📚 Storybook
138
-
139
- La librería incluye Storybook para documentación interactiva y desarrollo de componentes.
140
-
141
- ### Iniciar Storybook
142
-
143
- ```bash
144
- npm run storybook
145
- ```
146
-
147
- Esto abrirá Storybook en `http://localhost:6006` donde podrás:
148
-
149
- - Ver todos los componentes disponibles
150
- - Interactuar con las propiedades de cada componente
151
- - Ver ejemplos de uso
152
- - Acceder a la documentación detallada
153
-
154
- ### Construir Storybook
155
-
156
- ```bash
157
- npm run build-storybook
158
- ```
159
-
160
- ## 🧪 Testing
161
-
162
- La librería está configurada con Vitest y Playwright para testing de componentes.
163
-
164
- ### Configuración de Testing
165
-
166
- - **Vitest**: Para unit tests y testing de componentes
167
- - **Playwright**: Para testing de browser
168
- - **Storybook Test Addon**: Para testing de historias de Storybook
169
-
170
- ## 🔧 Tecnologías
171
-
172
- ### Dependencias Principales
173
-
174
- - **React 19.1.0**: Librería de UI
175
- - **Material-UI 7.1.0**: Sistema de diseño y componentes
176
- - **TypeScript 5.8.3**: Tipado estático
177
- - **Tailwind CSS 4.1.7**: Framework de CSS utilitario
178
-
179
- ### Herramientas de Desarrollo
180
-
181
- - **Storybook 9.0.8**: Documentación y desarrollo de componentes
182
- - **Rollup**: Bundler para la construcción de la librería
183
- - **Vitest**: Framework de testing
184
- - **Playwright**: Testing de browser
185
- - **Prettier**: Formateo de código
186
-
187
- ## 📁 Estructura del Proyecto
188
-
189
- ```
190
- shared-library/
191
- ├── .storybook/ # Configuración de Storybook
192
- ├── src/
193
- │ ├── components/ # Componentes de la librería
194
- │ │ ├── Avatar/
195
- │ │ ├── Button/
196
- │ │ ├── Column/
197
- │ │ ├── Icon/
198
- │ │ ├── Select/
199
- │ │ ├── Stat/
200
- │ │ └── Table/
201
- │ ├── index.ts # Punto de entrada principal
202
- │ └── styles.css # Estilos globales
203
- ├── dist/ # Archivos construidos
204
- ├── package.json
205
- ├── tsconfig.json
206
- ├── tailwind.config.js
207
- ├── rollup.config.cjs
208
- └── vitest.config.ts
209
- ```
210
-
211
- ### Estructura de Componentes
212
-
213
- Cada componente sigue una estructura consistente:
214
-
215
- ```
216
- ComponentName/
217
- ├── ComponentName.tsx # Implementación del componente
218
- ├── ComponentName.stories.tsx # Historias de Storybook
219
- ├── ComponentName.definition.ts # Definiciones de código (opcional)
220
- ├── index.ts # Exportaciones
221
- └── types.ts # Tipos específicos (opcional)
222
- ```
223
-
224
- ## 🤝 Contribución
225
-
226
- Para contribuir al proyecto:
227
-
228
- 1. Fork el repositorio
229
- 2. Crea una rama para tu feature (`git checkout -b feature/nueva-funcionalidad`)
230
- 3. Commit tus cambios (`git commit -am 'Agrega nueva funcionalidad'`)
231
- 4. Push a la rama (`git push origin feature/nueva-funcionalidad`)
232
- 5. Crea un Pull Request
233
-
234
- ## 📄 Licencia
235
-
236
- ISC License
237
-
238
- ---
239
-
240
- **Versión actual:** 1.0.1
241
-
242
- Para más información y ejemplos detallados, consulta la documentación en Storybook ejecutando `npm run storybook`.
243
-
package/build.js DELETED
@@ -1,117 +0,0 @@
1
- import { readFileSync, existsSync, mkdirSync, writeFileSync, copyFileSync } from 'fs';
2
- import { join, basename } from 'path';
3
- import { sync } from 'glob';
4
-
5
- const projectRoot = process.cwd();
6
- const srcComponentsDir = join(projectRoot, 'src', 'components');
7
- const srcHooksDir = join(projectRoot, 'src', 'hooks');
8
- const distDir = join(projectRoot, 'dist');
9
- const distComponentsDir = join(distDir, 'components');
10
- const distHooksDir = join(distDir, 'hooks');
11
- const originalPackageJsonPath = join(projectRoot, 'package.json');
12
- const distPackageJsonPath = join(distDir, 'package.json');
13
- const readmePath = join(projectRoot, 'README.md');
14
-
15
- // Leer el package.json original
16
- const originalPackageJson = JSON.parse(readFileSync(originalPackageJsonPath, 'utf8'));
17
-
18
- // Inicializar el nuevo objeto exports
19
- let newExports = {
20
- ".": {
21
- "import": "./index.js",
22
- "require": "./index.cjs",
23
- "types": "./index.d.ts"
24
- },
25
- "./package.json": "./package.json"
26
- };
27
-
28
- // Función para procesar directorios de forma condicional y crear entradas en exports
29
- const processDirectories = (sourceDir, distDir, exportPrefix) => {
30
- if (!existsSync(sourceDir)) {
31
- console.log(`Directorio no encontrado: ${sourceDir}. Saltando.`);
32
- return;
33
- }
34
-
35
- if (!existsSync(distDir)) {
36
- mkdirSync(distDir, { recursive: true });
37
- }
38
-
39
- const componentDirs = sync(`${sourceDir}/*/`);
40
-
41
- console.log(`Buscando módulos en: ${sourceDir}`);
42
-
43
- componentDirs.forEach(componentDirPath => {
44
- const componentName = basename(componentDirPath);
45
-
46
- // Verificar si el nombre de la carpeta tiene la inicial en mayúscula
47
- if (!/^[A-Z]/.test(componentName)) {
48
- console.log(` - Saltando '${componentName}' porque su carpeta no empieza con mayúscula.`);
49
- return; // Saltar este componente
50
- }
51
-
52
- console.log(` - Módulo encontrado: ${componentName}`);
53
-
54
- // Crear carpeta en dist
55
- const distModuleFolder = join(distDir, componentName);
56
- if (!existsSync(distModuleFolder)) {
57
- mkdirSync(distModuleFolder, { recursive: true });
58
- }
59
-
60
- // Agregar entrada al objeto exports
61
- const exportPath = `./${exportPrefix}/${componentName}`;
62
- newExports[exportPath] = {
63
- "import": `./${exportPrefix}/${componentName}/${componentName}.js`,
64
- "require": `./${exportPrefix}/${componentName}/${componentName}.cjs`,
65
- "types": `./${exportPrefix}/${componentName}/index.d.ts`
66
- };
67
- });
68
- };
69
-
70
- // Procesar componentes
71
- processDirectories(srcComponentsDir, distComponentsDir, 'components');
72
-
73
- // Procesar hooks
74
- processDirectories(srcHooksDir, distHooksDir, 'hooks');
75
-
76
- // Add CSS export before sealing newExports
77
- newExports['./styles.css'] = './styles.css';
78
-
79
- // Crear una copia del package.json original para dist
80
- const distPackageJson = { ...originalPackageJson };
81
- distPackageJson.exports = newExports;
82
- distPackageJson.sideEffects = ['*.css'];
83
-
84
- // Corregir rutas — el package.json vive en dist/, no en la raíz
85
- distPackageJson.main = './index.cjs';
86
- distPackageJson.module = './index.js';
87
- distPackageJson.types = './index.d.ts';
88
-
89
- // Eliminar propiedades innecesarias
90
- delete distPackageJson.scripts;
91
- delete distPackageJson.devDependencies;
92
- delete distPackageJson.dependencies;
93
- delete distPackageJson.private;
94
- delete distPackageJson.overrides;
95
- // "type": "module" en dist/ causes Vite to serve as native ESM, bypassing dedup
96
- // and resolving React from shared-library/node_modules instead of the host.
97
- // The exports "import"/"require" conditions already handle ESM/CJS distinction.
98
- delete distPackageJson.type;
99
-
100
- // Asegurarse de que el directorio 'dist' exista
101
- if (!existsSync(distDir)) {
102
- mkdirSync(distDir, { recursive: true });
103
- }
104
-
105
- // Copiar README.md a la carpeta dist
106
- if (existsSync(readmePath)) {
107
- copyFileSync(readmePath, join(distDir, 'README.md'));
108
- console.log('Copiando README.md a la carpeta dist.');
109
- } else {
110
- console.log('No se encontró README.md en la raíz del proyecto. Saltando.');
111
- }
112
-
113
- // Escribir el nuevo package.json en dist/
114
- writeFileSync(distPackageJsonPath, JSON.stringify(distPackageJson, null, 2), 'utf8');
115
-
116
- console.log(`\n'package.json' generado exitosamente en: ${distPackageJsonPath}`);
117
- console.log('Contenido de la propiedad "exports":', JSON.stringify(newExports, null, 2));
@@ -1,5 +0,0 @@
1
- {
2
- "onlyChanged": true,
3
- "projectId": "Project:6836406d3794ebfc4012fb25",
4
- "zip": true
5
- }
@@ -1,40 +0,0 @@
1
- import { promises as fs } from 'fs';
2
- import { join } from 'path';
3
-
4
- // Define the folders to be cleaned (sub-folders will be deleted)
5
- const foldersToClean = ['components', 'hooks'];
6
- const srcPath = join(process.cwd(), 'src');
7
-
8
- const deleteLowercaseFolders = async () => {
9
- console.log('Iniciando el proceso de eliminación de carpetas...');
10
-
11
- for (const parentFolder of foldersToClean) {
12
- const parentPath = join(srcPath, parentFolder);
13
-
14
- if (!await fs.stat(parentPath).catch(() => false)) {
15
- console.log(`Directorio padre no encontrado: ${parentPath}. Saltando.`);
16
- continue;
17
- }
18
-
19
- try {
20
- // Leer el contenido del directorio padre y obtener información de los archivos
21
- const entries = await fs.readdir(parentPath, { withFileTypes: true });
22
-
23
- for (const entry of entries) {
24
- // Check if the entry is a directory and its name starts with a lowercase letter.
25
- if (entry.isDirectory() && /^[a-z]/.test(entry.name)) {
26
- const folderPath = join(parentPath, entry.name);
27
- await fs.rm(folderPath, { recursive: true, force: true });
28
- console.log(`- Carpeta eliminada: ${folderPath}`);
29
- }
30
- }
31
- } catch (error) {
32
- console.error(`Error al procesar el directorio ${parentPath}:`, error);
33
- }
34
- }
35
-
36
- console.log('Proceso de limpieza completado.');
37
- };
38
-
39
- // Execute the main function
40
- deleteLowercaseFolders();
@@ -1 +0,0 @@
1
- {"version":3,"file":"Select-D5OrjVj3.js","sources":["../src/components/Select/Select.sx.ts","../src/components/Select/Select.helpers.ts","../src/components/Select/_parts/SelectMenuItem.tsx","../src/components/Select/Select.tsx"],"sourcesContent":["import type { SelectProps as MuiSelectProps } from '@mui/material';\n\nimport { buildFormFieldSx } from '../_shared/formField.sx';\nimport type { LabelPosition } from './Select';\n\n/**\n * Builder de sx para el Select. Usa el builder compartido\n * `buildFormFieldSx`. El Select no necesita overrides específicos.\n */\nexport const buildSelectSx = (\n borderRadius: number | string,\n labelPosition: LabelPosition,\n): MuiSelectProps['sx'] =>\n buildFormFieldSx({ borderRadius, labelPosition }) as MuiSelectProps['sx'];\n","import type { SelectOption } from './Select';\n\n/**\n * Agrupa opciones por la propiedad `group`. Las opciones sin group caen\n * bajo la key especial `__default`. Devuelve un Record para iterar en orden\n * de inserción con Object.entries.\n */\nexport const groupOptions = (\n options: SelectOption[],\n): Record<string, SelectOption[]> => {\n const groups: Record<string, SelectOption[]> = {};\n options.forEach((opt) => {\n const group = opt.group || '__default';\n if (!groups[group]) groups[group] = [];\n groups[group].push(opt);\n });\n return groups;\n};\n\n/**\n * Normaliza el valor single al shape que espera MUI Select: string vacío si\n * el valor es `null`/`undefined`.\n */\nexport const normalizeSelectValue = <T>(value: T | null | undefined): T | '' =>\n (value ?? '') as T | '';\n\n/** `true` si el valor está vacío (para shrink del label + placeholder). */\nexport const isSelectValueEmpty = (normalizedValue: unknown): boolean =>\n normalizedValue === '' ||\n normalizedValue === null ||\n normalizedValue === undefined;\n","import React from 'react';\nimport { ListItemIcon, MenuItem } from '@mui/material';\nimport CheckIcon from '@mui/icons-material/Check';\n\nimport type { SelectOption, RenderOptionItem } from '../Select';\n\ninterface RenderSelectMenuItemArgs {\n option: SelectOption;\n selected: boolean;\n customRender?: RenderOptionItem | null;\n}\n\n/**\n * Render helper (no componente) que devuelve un <MenuItem> listo para\n * colocarse como hijo directo del <MuiSelect>. Se implementa como función\n * y no como componente porque MUI Select inspecciona `props.value` de sus\n * children para resolver la selección, y envolverlo en un componente extra\n * rompe esa detección.\n *\n * Incluye el icono de check a la izquierda cuando `selected` es true. Si el\n * consumer pasó un `<Option>{(opt) => ...}</Option>`, usa ese render para el\n * contenido principal; de lo contrario muestra `option.label`.\n */\nexport const renderSelectMenuItem = ({\n option,\n selected,\n customRender,\n}: RenderSelectMenuItemArgs): React.ReactElement => (\n <MenuItem\n key={String(option.value)}\n value={option.value}\n disabled={option.disabled}\n selected={selected}\n >\n <ListItemIcon sx={{ minWidth: 32 }}>\n {selected && <CheckIcon color=\"success\" fontSize=\"small\" />}\n </ListItemIcon>\n {customRender ? customRender(option) : option.label}\n </MenuItem>\n);\n","import {\n Children,\n isValidElement,\n useMemo,\n useState,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport {\n FormControl,\n FormHelperText,\n InputLabel,\n ListSubheader,\n OutlinedInput,\n Select as MuiSelect,\n Typography,\n type SelectChangeEvent,\n type SelectProps as MuiSelectProps,\n} from '@mui/material';\nimport { useTheme } from '@mui/material/styles';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildSelectSx } from './Select.sx';\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport {\n groupOptions,\n isSelectValueEmpty,\n normalizeSelectValue,\n} from './Select.helpers';\nimport { renderSelectMenuItem } from './_parts/SelectMenuItem';\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 SelectSize = 'small' | 'medium';\n\n// ── Render slots ─────────────────────────────────────────────────────────\nexport type RenderOptionItem = (item: SelectOption) => ReactNode;\n\n// ── Sub-componente declarativo <Option> ──────────────────────────────────\nexport interface OptionProps {\n children: RenderOptionItem;\n}\n\n// ── Props base ───────────────────────────────────────────────────────────\nexport interface BaseSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> {\n label?: string;\n options?: SelectOption[];\n defaultValue?: TValue;\n size?: SelectSize;\n placeholder?: string;\n children?: ReactElement<{ children: RenderOptionItem }>;\n maxHeight?: number | string;\n maxWidth?: number | string;\n disabled?: boolean;\n error?: boolean;\n helperText?: string;\n /** Border radius del input (px o string CSS). Default: 10 */\n borderRadius?: number | string;\n /**\n * Posición del label.\n * - \"outside\" (default): label arriba del input, sin animación.\n * - \"floating\": label clásico de MUI (flota dentro del notched outline).\n */\n labelPosition?: LabelPosition;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.Select`.\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?: MuiSelectProps['sx'];\n className?: string;\n}\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface RHFSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseSelectProps<TValue> {\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 tiene generics propios (como `TValue` acá), TS se\n // confunde narroweando el discriminated union y `Control<any>` no logra\n // absorber `Control<MyForm>` en la comparación estructural profunda.\n // El `any` plano elimina ese ruido. RHF adentro sigue teniendo sus tipos\n // fuertes — solo degradamos la superficie del prop del Select.\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 (ej. reset de municipio al cambiar\n * departamento). NO reemplaza al handler de RHF.\n */\n onValueChange?: (value: TValue) => void;\n value?: never;\n onChange?: never;\n}\n\nexport interface StandardSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseSelectProps<TValue> {\n name?: string;\n control?: never;\n validation?: never;\n value: TValue;\n onChange: (val: TValue) => void;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type SelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> = RHFSelectProps<TValue> | StandardSelectProps<TValue>;\n\n// ── Sub-componente declarativo <Option> ──────────────────────────────────\nexport function Option(_props: OptionProps) {\n return null;\n}\nOption.displayName = 'Option';\n\n// ── Componente ───────────────────────────────────────────────────────────\nexport function Select<\n TValue extends SelectOption['value'] = SelectOption['value'],\n>(props: SelectProps<TValue>) {\n const {\n label,\n options = [],\n defaultValue,\n size = 'small',\n placeholder,\n children,\n maxHeight = 300,\n maxWidth,\n disabled = false,\n error = false,\n helperText,\n borderRadius = 10,\n labelPosition = 'outside',\n preset,\n sx,\n className,\n // Separamos estos aunque no se usen directamente acá — evita que lleguen\n // al DOM del MuiSelect via `{...rest}` y generen warnings de React.\n name: _nameIgnored,\n control: _controlIgnored,\n validation: _validationIgnored,\n value: _valueIgnored,\n onChange: _onChangeIgnored,\n ...rest\n } = props as StandardSelectProps<TValue> & {\n name?: string;\n control?: Control<any>;\n validation?: RegisterOptions;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('Select', preset, theme);\n\n const isRHFMode = 'control' in props && (props as RHFSelectProps<TValue>).control !== undefined;\n\n // Custom render opcional vía <Option>{item => ...}</Option>\n const customRender: RenderOptionItem | null = useMemo(() => {\n if (Children.count(children) === 1) {\n const child = Children.only(children);\n if (isValidElement(child) && (child.type as any)?.displayName === 'Option') {\n return (child.props as OptionProps).children;\n }\n }\n return null;\n }, [children]);\n\n // Focus/open tracking para el comportamiento del label \"outside\".\n const [isOpen, setIsOpen] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n const groupedOptions = useMemo(() => groupOptions(options), [options]);\n\n // Items del menú (grupos + opciones). Un solo memoizado — sin search/async.\n const buildMenuItems = (currentValue: TValue | '') => {\n const items: ReactNode[] = [];\n Object.entries(groupedOptions).forEach(([group, opts]) => {\n if (group !== '__default') {\n items.push(\n <ListSubheader key={group} disableSticky>\n {group}\n </ListSubheader>,\n );\n }\n opts.forEach((opt) => {\n const selected = currentValue === opt.value;\n items.push(\n renderSelectMenuItem({\n option: opt,\n selected,\n customRender,\n }),\n );\n });\n });\n return items;\n };\n\n const mergedSx = [\n ...(presetSx ? [presetSx] : [buildSelectSx(borderRadius, labelPosition)]),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n // Render base (común a RHF y controlled)\n const renderSelect = (\n selectValue: TValue | null | undefined,\n selectOnChange: (event: SelectChangeEvent<TValue>) => void,\n onBlur?: (event: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => void,\n inputRef?: React.Ref<HTMLInputElement>,\n rhfError?: boolean,\n rhfHelperText?: string,\n ) => {\n const finalError = !!rhfError || !!error;\n const finalHelperText = rhfHelperText ?? helperText;\n\n const inputElement =\n labelPosition === 'floating' ? (\n <OutlinedInput label={label} />\n ) : (\n <OutlinedInput />\n );\n\n const normalizedValue = normalizeSelectValue(selectValue);\n const isEmpty = isSelectValueEmpty(normalizedValue);\n\n // Shrink cuando hay valor, foco, o dropdown abierto.\n const shouldShrink = !isEmpty || isFocused || isOpen;\n // Placeholder solo cuando el label ya subió.\n const shouldDisplayPlaceholder =\n isEmpty && (isFocused || isOpen) && !!placeholder;\n\n return (\n <FormControl\n fullWidth\n size={size}\n error={finalError}\n disabled={disabled}\n className={className}\n sx={mergedSx}\n >\n {label && <InputLabel shrink={shouldShrink}>{label}</InputLabel>}\n <MuiSelect<TValue>\n value={normalizedValue as TValue}\n onChange={selectOnChange}\n onBlur={(e) => {\n setIsFocused(false);\n onBlur?.(e);\n }}\n onFocus={() => setIsFocused(true)}\n onOpen={() => setIsOpen(true)}\n onClose={() => setIsOpen(false)}\n renderValue={(selected) => {\n if (isSelectValueEmpty(selected)) {\n return (\n <Typography sx={{ color: 'text.disabled' }}>\n {placeholder ?? ''}\n </Typography>\n );\n }\n const item = options.find((opt) => opt.value === selected);\n return item?.label ?? String(selected);\n }}\n displayEmpty={shouldDisplayPlaceholder}\n input={inputElement}\n disabled={disabled}\n MenuProps={{\n PaperProps: {\n style: { maxHeight, maxWidth },\n },\n }}\n inputRef={inputRef}\n {...(rest as any)}\n >\n {buildMenuItems(normalizedValue as TValue | '')}\n </MuiSelect>\n {finalHelperText && <FormHelperText>{finalHelperText}</FormHelperText>}\n </FormControl>\n );\n };\n\n // ── RHF mode ──────────────────────────────────────────────────────────\n if (isRHFMode) {\n const { name, control, validation, onValueChange } = props as RHFSelectProps<TValue>;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n defaultValue={defaultValue}\n render={({ field, fieldState: { error: fieldError } }) =>\n renderSelect(\n field.value ?? null,\n (e) => {\n const next = e.target.value as TValue;\n field.onChange(next);\n onValueChange?.(next);\n },\n field.onBlur,\n field.ref,\n !!fieldError,\n fieldError?.message,\n )\n }\n />\n );\n }\n\n // ── Controlled mode ───────────────────────────────────────────────────\n const { value, onChange } = props as StandardSelectProps<TValue>;\n return renderSelect(value, (e) => onChange(e.target.value as TValue));\n}\n\nexport default Select;\n"],"names":["_a","MuiSelect"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASO,MAAM,gBAAgB,CAC3B,cACA,kBAEA,iBAAiB,EAAE,cAAc,eAAe;ACN3C,MAAM,eAAe,CAC1B,YACmC;AACnC,QAAM,SAAyC,CAAA;AAC/C,UAAQ,QAAQ,CAAC,QAAQ;AACvB,UAAM,QAAQ,IAAI,SAAS;AAC3B,QAAI,CAAC,OAAO,KAAK,EAAG,QAAO,KAAK,IAAI,CAAA;AACpC,WAAO,KAAK,EAAE,KAAK,GAAG;AAAA,EACxB,CAAC;AACD,SAAO;AACT;AAMO,MAAM,uBAAuB,CAAI,UACrC,wBAAS;AAGL,MAAM,qBAAqB,CAAC,oBACjC,oBAAoB,MACpB,oBAAoB,QACpB,oBAAoB;ACPf,MAAM,uBAAuB,CAAC;AAAA,EACnC;AAAA,EACA;AAAA,EACA;AACF,MACE;AAAA,EAAC;AAAA,EAAA;AAAA,IAEC,OAAO,OAAO;AAAA,IACd,UAAU,OAAO;AAAA,IACjB;AAAA,IAEA,UAAA;AAAA,MAAA,oBAAC,cAAA,EAAa,IAAI,EAAE,UAAU,GAAA,GAC3B,UAAA,YAAY,oBAAC,WAAA,EAAU,OAAM,WAAU,UAAS,SAAQ,GAC3D;AAAA,MACC,eAAe,aAAa,MAAM,IAAI,OAAO;AAAA,IAAA;AAAA,EAAA;AAAA,EARzC,OAAO,OAAO,KAAK;AAS1B;ACuFK,SAAS,OAAO,QAAqB;AAC1C,SAAO;AACT;AACA,OAAO,cAAc;AAGd,SAAS,OAEd,OAA4B;AAC5B,QAyBI,YAxBF;AAAA;AAAA,IACA,UAAU,CAAA;AAAA,IACV;AAAA,IACA,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA,IACA,WAAW;AAAA,IACX,QAAQ;AAAA,IACR;AAAA,IACA,eAAe;AAAA,IACf,gBAAgB;AAAA,IAChB;AAAA,IACA;AAAA,IACA;AAAA,IAGA,MAAM;AAAA,IACN,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,OAAO;AAAA,IACP,UAAU;AAAA,MAER,IADC,iBACD,IADC;AAAA,IAvBH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAAA,IAGA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAQF,QAAM,QAAQ,SAAA;AACd,QAAM,WAAW,cAAc,UAAU,QAAQ,KAAK;AAEtD,QAAM,YAAY,aAAa,SAAU,MAAiC,YAAY;AAGtF,QAAM,eAAwC,QAAQ,MAAM;;AAC1D,QAAI,SAAS,MAAM,QAAQ,MAAM,GAAG;AAClC,YAAM,QAAQ,SAAS,KAAK,QAAQ;AACpC,UAAI,eAAe,KAAK,OAAMA,MAAA,MAAM,SAAN,gBAAAA,IAAoB,iBAAgB,UAAU;AAC1E,eAAQ,MAAM,MAAsB;AAAA,MACtC;AAAA,IACF;AACA,WAAO;AAAA,EACT,GAAG,CAAC,QAAQ,CAAC;AAGb,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAC1C,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,KAAK;AAEhD,QAAM,iBAAiB,QAAQ,MAAM,aAAa,OAAO,GAAG,CAAC,OAAO,CAAC;AAGrE,QAAM,iBAAiB,CAAC,iBAA8B;AACpD,UAAM,QAAqB,CAAA;AAC3B,WAAO,QAAQ,cAAc,EAAE,QAAQ,CAAC,CAAC,OAAO,IAAI,MAAM;AACxD,UAAI,UAAU,aAAa;AACzB,cAAM;AAAA,UACJ,oBAAC,eAAA,EAA0B,eAAa,MACrC,mBADiB,KAEpB;AAAA,QAAA;AAAA,MAEJ;AACA,WAAK,QAAQ,CAAC,QAAQ;AACpB,cAAM,WAAW,iBAAiB,IAAI;AACtC,cAAM;AAAA,UACJ,qBAAqB;AAAA,YACnB,QAAQ;AAAA,YACR;AAAA,YACA;AAAA,UAAA,CACD;AAAA,QAAA;AAAA,MAEL,CAAC;AAAA,IACH,CAAC;AACD,WAAO;AAAA,EACT;AAEA,QAAM,WAAW;AAAA,IACf,GAAI,WAAW,CAAC,QAAQ,IAAI,CAAC,cAAc,cAAc,aAAa,CAAC;AAAA,IACvE,GAAI,MAAM,QAAQ,EAAE,IAAI,KAAK,KAAK,CAAC,EAAE,IAAI,CAAA;AAAA,EAAC;AAI5C,QAAM,eAAe,CACnB,aACA,gBACA,QACA,UACA,UACA,kBACG;AACH,UAAM,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC;AACnC,UAAM,kBAAkB,wCAAiB;AAEzC,UAAM,eACJ,kBAAkB,aAChB,oBAAC,iBAAc,OAAc,wBAE5B,eAAA,CAAA,CAAc;AAGnB,UAAM,kBAAkB,qBAAqB,WAAW;AACxD,UAAM,UAAU,mBAAmB,eAAe;AAGlD,UAAM,eAAe,CAAC,WAAW,aAAa;AAE9C,UAAM,2BACJ,YAAY,aAAa,WAAW,CAAC,CAAC;AAExC,WACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAS;AAAA,QACT;AAAA,QACA,OAAO;AAAA,QACP;AAAA,QACA;AAAA,QACA,IAAI;AAAA,QAEH,UAAA;AAAA,UAAA,SAAS,oBAAC,YAAA,EAAW,QAAQ,cAAe,UAAA,OAAM;AAAA,UACnD;AAAA,YAACC;AAAAA,YAAA;AAAA,cACC,OAAO;AAAA,cACP,UAAU;AAAA,cACV,QAAQ,CAAC,MAAM;AACb,6BAAa,KAAK;AAClB,iDAAS;AAAA,cACX;AAAA,cACA,SAAS,MAAM,aAAa,IAAI;AAAA,cAChC,QAAQ,MAAM,UAAU,IAAI;AAAA,cAC5B,SAAS,MAAM,UAAU,KAAK;AAAA,cAC9B,aAAa,CAAC,aAAa;;AACzB,oBAAI,mBAAmB,QAAQ,GAAG;AAChC,yBACE,oBAAC,cAAW,IAAI,EAAE,OAAO,gBAAA,GACtB,8CAAe,IAClB;AAAA,gBAEJ;AACA,sBAAM,OAAO,QAAQ,KAAK,CAAC,QAAQ,IAAI,UAAU,QAAQ;AACzD,wBAAOD,MAAA,6BAAM,UAAN,OAAAA,MAAe,OAAO,QAAQ;AAAA,cACvC;AAAA,cACA,cAAc;AAAA,cACd,OAAO;AAAA,cACP;AAAA,cACA,WAAW;AAAA,gBACT,YAAY;AAAA,kBACV,OAAO,EAAE,WAAW,SAAA;AAAA,gBAAS;AAAA,cAC/B;AAAA,cAEF;AAAA,eACK,OA9BN;AAAA,cAgCE,yBAAe,eAA8B;AAAA,YAAA;AAAA,UAAA;AAAA,UAE/C,mBAAmB,oBAAC,gBAAA,EAAgB,UAAA,gBAAA,CAAgB;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAG3D;AAGA,MAAI,WAAW;AACb,UAAM,EAAE,MAAM,SAAS,YAAY,kBAAkB;AACrD,WACE;AAAA,MAAC;AAAA,MAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,OAAO;AAAA,QACP;AAAA,QACA,QAAQ,CAAC,EAAE,OAAO,YAAY,EAAE,OAAO,WAAA,EAAW;;AAChD;AAAA,aACEA,MAAA,MAAM,UAAN,OAAAA,MAAe;AAAA,YACf,CAAC,MAAM;AACL,oBAAM,OAAO,EAAE,OAAO;AACtB,oBAAM,SAAS,IAAI;AACnB,6DAAgB;AAAA,YAClB;AAAA,YACA,MAAM;AAAA,YACN,MAAM;AAAA,YACN,CAAC,CAAC;AAAA,YACF,yCAAY;AAAA,UAAA;AAAA;AAAA,MACd;AAAA,IAAA;AAAA,EAIR;AAGA,QAAM,EAAE,OAAO,SAAA,IAAa;AAC5B,SAAO,aAAa,OAAO,CAAC,MAAM,SAAS,EAAE,OAAO,KAAe,CAAC;AACtE;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Select-Dyvc4bVo.cjs","sources":["../src/components/Select/Select.sx.ts","../src/components/Select/Select.helpers.ts","../src/components/Select/_parts/SelectMenuItem.tsx","../src/components/Select/Select.tsx"],"sourcesContent":["import type { SelectProps as MuiSelectProps } from '@mui/material';\n\nimport { buildFormFieldSx } from '../_shared/formField.sx';\nimport type { LabelPosition } from './Select';\n\n/**\n * Builder de sx para el Select. Usa el builder compartido\n * `buildFormFieldSx`. El Select no necesita overrides específicos.\n */\nexport const buildSelectSx = (\n borderRadius: number | string,\n labelPosition: LabelPosition,\n): MuiSelectProps['sx'] =>\n buildFormFieldSx({ borderRadius, labelPosition }) as MuiSelectProps['sx'];\n","import type { SelectOption } from './Select';\n\n/**\n * Agrupa opciones por la propiedad `group`. Las opciones sin group caen\n * bajo la key especial `__default`. Devuelve un Record para iterar en orden\n * de inserción con Object.entries.\n */\nexport const groupOptions = (\n options: SelectOption[],\n): Record<string, SelectOption[]> => {\n const groups: Record<string, SelectOption[]> = {};\n options.forEach((opt) => {\n const group = opt.group || '__default';\n if (!groups[group]) groups[group] = [];\n groups[group].push(opt);\n });\n return groups;\n};\n\n/**\n * Normaliza el valor single al shape que espera MUI Select: string vacío si\n * el valor es `null`/`undefined`.\n */\nexport const normalizeSelectValue = <T>(value: T | null | undefined): T | '' =>\n (value ?? '') as T | '';\n\n/** `true` si el valor está vacío (para shrink del label + placeholder). */\nexport const isSelectValueEmpty = (normalizedValue: unknown): boolean =>\n normalizedValue === '' ||\n normalizedValue === null ||\n normalizedValue === undefined;\n","import React from 'react';\nimport { ListItemIcon, MenuItem } from '@mui/material';\nimport CheckIcon from '@mui/icons-material/Check';\n\nimport type { SelectOption, RenderOptionItem } from '../Select';\n\ninterface RenderSelectMenuItemArgs {\n option: SelectOption;\n selected: boolean;\n customRender?: RenderOptionItem | null;\n}\n\n/**\n * Render helper (no componente) que devuelve un <MenuItem> listo para\n * colocarse como hijo directo del <MuiSelect>. Se implementa como función\n * y no como componente porque MUI Select inspecciona `props.value` de sus\n * children para resolver la selección, y envolverlo en un componente extra\n * rompe esa detección.\n *\n * Incluye el icono de check a la izquierda cuando `selected` es true. Si el\n * consumer pasó un `<Option>{(opt) => ...}</Option>`, usa ese render para el\n * contenido principal; de lo contrario muestra `option.label`.\n */\nexport const renderSelectMenuItem = ({\n option,\n selected,\n customRender,\n}: RenderSelectMenuItemArgs): React.ReactElement => (\n <MenuItem\n key={String(option.value)}\n value={option.value}\n disabled={option.disabled}\n selected={selected}\n >\n <ListItemIcon sx={{ minWidth: 32 }}>\n {selected && <CheckIcon color=\"success\" fontSize=\"small\" />}\n </ListItemIcon>\n {customRender ? customRender(option) : option.label}\n </MenuItem>\n);\n","import {\n Children,\n isValidElement,\n useMemo,\n useState,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport {\n FormControl,\n FormHelperText,\n InputLabel,\n ListSubheader,\n OutlinedInput,\n Select as MuiSelect,\n Typography,\n type SelectChangeEvent,\n type SelectProps as MuiSelectProps,\n} from '@mui/material';\nimport { useTheme } from '@mui/material/styles';\nimport { Controller, type Control, type RegisterOptions } from 'react-hook-form';\n\nimport { buildSelectSx } from './Select.sx';\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport {\n groupOptions,\n isSelectValueEmpty,\n normalizeSelectValue,\n} from './Select.helpers';\nimport { renderSelectMenuItem } from './_parts/SelectMenuItem';\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 SelectSize = 'small' | 'medium';\n\n// ── Render slots ─────────────────────────────────────────────────────────\nexport type RenderOptionItem = (item: SelectOption) => ReactNode;\n\n// ── Sub-componente declarativo <Option> ──────────────────────────────────\nexport interface OptionProps {\n children: RenderOptionItem;\n}\n\n// ── Props base ───────────────────────────────────────────────────────────\nexport interface BaseSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> {\n label?: string;\n options?: SelectOption[];\n defaultValue?: TValue;\n size?: SelectSize;\n placeholder?: string;\n children?: ReactElement<{ children: RenderOptionItem }>;\n maxHeight?: number | string;\n maxWidth?: number | string;\n disabled?: boolean;\n error?: boolean;\n helperText?: string;\n /** Border radius del input (px o string CSS). Default: 10 */\n borderRadius?: number | string;\n /**\n * Posición del label.\n * - \"outside\" (default): label arriba del input, sin animación.\n * - \"floating\": label clásico de MUI (flota dentro del notched outline).\n */\n labelPosition?: LabelPosition;\n /**\n * Nombre del preset de estilo registrado en `theme.styles.Select`.\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?: MuiSelectProps['sx'];\n className?: string;\n}\n\n// ── Variantes discriminadas (RHF vs controlado) ──────────────────────────\nexport interface RHFSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseSelectProps<TValue> {\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 tiene generics propios (como `TValue` acá), TS se\n // confunde narroweando el discriminated union y `Control<any>` no logra\n // absorber `Control<MyForm>` en la comparación estructural profunda.\n // El `any` plano elimina ese ruido. RHF adentro sigue teniendo sus tipos\n // fuertes — solo degradamos la superficie del prop del Select.\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 (ej. reset de municipio al cambiar\n * departamento). NO reemplaza al handler de RHF.\n */\n onValueChange?: (value: TValue) => void;\n value?: never;\n onChange?: never;\n}\n\nexport interface StandardSelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> extends BaseSelectProps<TValue> {\n name?: string;\n control?: never;\n validation?: never;\n value: TValue;\n onChange: (val: TValue) => void;\n}\n\n// ── API pública final ────────────────────────────────────────────────────\nexport type SelectProps<\n TValue extends SelectOption['value'] = SelectOption['value'],\n> = RHFSelectProps<TValue> | StandardSelectProps<TValue>;\n\n// ── Sub-componente declarativo <Option> ──────────────────────────────────\nexport function Option(_props: OptionProps) {\n return null;\n}\nOption.displayName = 'Option';\n\n// ── Componente ───────────────────────────────────────────────────────────\nexport function Select<\n TValue extends SelectOption['value'] = SelectOption['value'],\n>(props: SelectProps<TValue>) {\n const {\n label,\n options = [],\n defaultValue,\n size = 'small',\n placeholder,\n children,\n maxHeight = 300,\n maxWidth,\n disabled = false,\n error = false,\n helperText,\n borderRadius = 10,\n labelPosition = 'outside',\n preset,\n sx,\n className,\n // Separamos estos aunque no se usen directamente acá — evita que lleguen\n // al DOM del MuiSelect via `{...rest}` y generen warnings de React.\n name: _nameIgnored,\n control: _controlIgnored,\n validation: _validationIgnored,\n value: _valueIgnored,\n onChange: _onChangeIgnored,\n ...rest\n } = props as StandardSelectProps<TValue> & {\n name?: string;\n control?: Control<any>;\n validation?: RegisterOptions;\n };\n\n const theme = useTheme();\n const presetSx = resolvePreset('Select', preset, theme);\n\n const isRHFMode = 'control' in props && (props as RHFSelectProps<TValue>).control !== undefined;\n\n // Custom render opcional vía <Option>{item => ...}</Option>\n const customRender: RenderOptionItem | null = useMemo(() => {\n if (Children.count(children) === 1) {\n const child = Children.only(children);\n if (isValidElement(child) && (child.type as any)?.displayName === 'Option') {\n return (child.props as OptionProps).children;\n }\n }\n return null;\n }, [children]);\n\n // Focus/open tracking para el comportamiento del label \"outside\".\n const [isOpen, setIsOpen] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n const groupedOptions = useMemo(() => groupOptions(options), [options]);\n\n // Items del menú (grupos + opciones). Un solo memoizado — sin search/async.\n const buildMenuItems = (currentValue: TValue | '') => {\n const items: ReactNode[] = [];\n Object.entries(groupedOptions).forEach(([group, opts]) => {\n if (group !== '__default') {\n items.push(\n <ListSubheader key={group} disableSticky>\n {group}\n </ListSubheader>,\n );\n }\n opts.forEach((opt) => {\n const selected = currentValue === opt.value;\n items.push(\n renderSelectMenuItem({\n option: opt,\n selected,\n customRender,\n }),\n );\n });\n });\n return items;\n };\n\n const mergedSx = [\n ...(presetSx ? [presetSx] : [buildSelectSx(borderRadius, labelPosition)]),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n // Render base (común a RHF y controlled)\n const renderSelect = (\n selectValue: TValue | null | undefined,\n selectOnChange: (event: SelectChangeEvent<TValue>) => void,\n onBlur?: (event: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => void,\n inputRef?: React.Ref<HTMLInputElement>,\n rhfError?: boolean,\n rhfHelperText?: string,\n ) => {\n const finalError = !!rhfError || !!error;\n const finalHelperText = rhfHelperText ?? helperText;\n\n const inputElement =\n labelPosition === 'floating' ? (\n <OutlinedInput label={label} />\n ) : (\n <OutlinedInput />\n );\n\n const normalizedValue = normalizeSelectValue(selectValue);\n const isEmpty = isSelectValueEmpty(normalizedValue);\n\n // Shrink cuando hay valor, foco, o dropdown abierto.\n const shouldShrink = !isEmpty || isFocused || isOpen;\n // Placeholder solo cuando el label ya subió.\n const shouldDisplayPlaceholder =\n isEmpty && (isFocused || isOpen) && !!placeholder;\n\n return (\n <FormControl\n fullWidth\n size={size}\n error={finalError}\n disabled={disabled}\n className={className}\n sx={mergedSx}\n >\n {label && <InputLabel shrink={shouldShrink}>{label}</InputLabel>}\n <MuiSelect<TValue>\n value={normalizedValue as TValue}\n onChange={selectOnChange}\n onBlur={(e) => {\n setIsFocused(false);\n onBlur?.(e);\n }}\n onFocus={() => setIsFocused(true)}\n onOpen={() => setIsOpen(true)}\n onClose={() => setIsOpen(false)}\n renderValue={(selected) => {\n if (isSelectValueEmpty(selected)) {\n return (\n <Typography sx={{ color: 'text.disabled' }}>\n {placeholder ?? ''}\n </Typography>\n );\n }\n const item = options.find((opt) => opt.value === selected);\n return item?.label ?? String(selected);\n }}\n displayEmpty={shouldDisplayPlaceholder}\n input={inputElement}\n disabled={disabled}\n MenuProps={{\n PaperProps: {\n style: { maxHeight, maxWidth },\n },\n }}\n inputRef={inputRef}\n {...(rest as any)}\n >\n {buildMenuItems(normalizedValue as TValue | '')}\n </MuiSelect>\n {finalHelperText && <FormHelperText>{finalHelperText}</FormHelperText>}\n </FormControl>\n );\n };\n\n // ── RHF mode ──────────────────────────────────────────────────────────\n if (isRHFMode) {\n const { name, control, validation, onValueChange } = props as RHFSelectProps<TValue>;\n return (\n <Controller\n name={name}\n control={control}\n rules={validation}\n defaultValue={defaultValue}\n render={({ field, fieldState: { error: fieldError } }) =>\n renderSelect(\n field.value ?? null,\n (e) => {\n const next = e.target.value as TValue;\n field.onChange(next);\n onValueChange?.(next);\n },\n field.onBlur,\n field.ref,\n !!fieldError,\n fieldError?.message,\n )\n }\n />\n );\n }\n\n // ── Controlled mode ───────────────────────────────────────────────────\n const { value, onChange } = props as StandardSelectProps<TValue>;\n return renderSelect(value, (e) => onChange(e.target.value as TValue));\n}\n\nexport default Select;\n"],"names":["buildFormFieldSx","jsxs","MenuItem","jsx","ListItemIcon","useTheme","resolvePreset","useMemo","Children","isValidElement","_a","useState","ListSubheader","OutlinedInput","FormControl","InputLabel","MuiSelect","Typography","FormHelperText","Controller"],"mappings":"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"}