@soyfri/shared-library 2.0.0-beta.4 → 2.0.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/package.json +164 -43
  2. package/.dockerignore +0 -8
  3. package/.github/workflows/publish.yml +0 -107
  4. package/.prettierrc +0 -3
  5. package/.storybook/main.ts +0 -19
  6. package/.storybook/preview.ts +0 -14
  7. package/.storybook/vitest.setup.ts +0 -9
  8. package/Dockerfile +0 -37
  9. package/Readme.md +0 -243
  10. package/build.js +0 -102
  11. package/chromatic.config.json +0 -5
  12. package/cleanDirectories.js +0 -40
  13. package/dist/package.json +0 -197
  14. package/rollup.config.cjs +0 -87
  15. package/src/components/ActionMenu/ActionMenu.stories.tsx +0 -230
  16. package/src/components/ActionMenu/ActionMenu.tsx +0 -174
  17. package/src/components/ActionMenu/index.ts +0 -2
  18. package/src/components/AppBar/AppBar.stories.tsx +0 -272
  19. package/src/components/AppBar/AppBar.sx.ts +0 -32
  20. package/src/components/AppBar/AppBar.tsx +0 -123
  21. package/src/components/AppBar/AppBarBrand.tsx +0 -120
  22. package/src/components/AppBar/AppBarContext.ts +0 -25
  23. package/src/components/AppBar/AppBarMenuToggle.tsx +0 -90
  24. package/src/components/AppBar/AppBarUserMenu.tsx +0 -217
  25. package/src/components/AppBar/index.ts +0 -25
  26. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -477
  27. package/src/components/Autocomplete/Autocomplete.helpers.ts +0 -60
  28. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -748
  29. package/src/components/Autocomplete/Autocomplete.sx.ts +0 -30
  30. package/src/components/Autocomplete/Autocomplete.tsx +0 -361
  31. package/src/components/Autocomplete/Autocomplete.types.ts +0 -13
  32. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +0 -55
  33. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +0 -17
  34. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +0 -31
  35. package/src/components/Autocomplete/index.ts +0 -12
  36. package/src/components/Avatar/Avatar.definitions.ts +0 -162
  37. package/src/components/Avatar/Avatar.stories.tsx +0 -258
  38. package/src/components/Avatar/Avatar.tsx +0 -206
  39. package/src/components/Avatar/index.ts +0 -1
  40. package/src/components/Button/Button.definition.ts +0 -97
  41. package/src/components/Button/Button.stories.tsx +0 -285
  42. package/src/components/Button/Button.tsx +0 -67
  43. package/src/components/Button/index.ts +0 -1
  44. package/src/components/Card/Card.definition.ts +0 -5
  45. package/src/components/Card/Card.stories.tsx +0 -221
  46. package/src/components/Card/Card.sx.ts +0 -104
  47. package/src/components/Card/Card.tsx +0 -200
  48. package/src/components/Card/index.ts +0 -9
  49. package/src/components/Chip/Chip.definitions.ts +0 -167
  50. package/src/components/Chip/Chip.stories.tsx +0 -265
  51. package/src/components/Chip/Chip.tsx +0 -61
  52. package/src/components/Chip/index.ts +0 -1
  53. package/src/components/Column/Column.tsx +0 -29
  54. package/src/components/Column/index.ts +0 -1
  55. package/src/components/DatePicker/DatePicker.definitions.ts +0 -228
  56. package/src/components/DatePicker/DatePicker.helpers.ts +0 -24
  57. package/src/components/DatePicker/DatePicker.stories.tsx +0 -309
  58. package/src/components/DatePicker/DatePicker.sx.ts +0 -33
  59. package/src/components/DatePicker/DatePicker.tsx +0 -189
  60. package/src/components/DatePicker/DatePicker.types.ts +0 -10
  61. package/src/components/DatePicker/index.ts +0 -9
  62. package/src/components/DateRangePicker/DateRangePicker.definitions.ts +0 -191
  63. package/src/components/DateRangePicker/DateRangePicker.stories.tsx +0 -252
  64. package/src/components/DateRangePicker/DateRangePicker.tsx +0 -56
  65. package/src/components/DateRangePicker/index.ts +0 -1
  66. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -256
  67. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +0 -38
  68. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -418
  69. package/src/components/DateTimePicker/DateTimePicker.sx.ts +0 -30
  70. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -225
  71. package/src/components/DateTimePicker/DateTimePicker.types.ts +0 -10
  72. package/src/components/DateTimePicker/index.ts +0 -9
  73. package/src/components/Drawer/Drawer.stories.tsx +0 -270
  74. package/src/components/Drawer/Drawer.sx.ts +0 -106
  75. package/src/components/Drawer/Drawer.tsx +0 -214
  76. package/src/components/Drawer/DrawerContext.ts +0 -26
  77. package/src/components/Drawer/DrawerItem.tsx +0 -110
  78. package/src/components/Drawer/index.ts +0 -10
  79. package/src/components/Flyout/Flyout.stories.tsx +0 -282
  80. package/src/components/Flyout/Flyout.tsx +0 -122
  81. package/src/components/Flyout/index.ts +0 -1
  82. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  83. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  84. package/src/components/Gallery/Gallery.tsx +0 -118
  85. package/src/components/Gallery/GalleryLightbox.tsx +0 -170
  86. package/src/components/Gallery/GalleryMain.tsx +0 -84
  87. package/src/components/Gallery/GalleryThumbnails.tsx +0 -106
  88. package/src/components/Gallery/index.ts +0 -1
  89. package/src/components/Icon/Icon.stories.tsx +0 -121
  90. package/src/components/Icon/Icon.tsx +0 -175
  91. package/src/components/Icon/index.ts +0 -2
  92. package/src/components/Input/Input.definitions.ts +0 -324
  93. package/src/components/Input/Input.helpers.ts +0 -49
  94. package/src/components/Input/Input.stories.tsx +0 -499
  95. package/src/components/Input/Input.sx.ts +0 -42
  96. package/src/components/Input/Input.tsx +0 -141
  97. package/src/components/Input/Input.types.ts +0 -10
  98. package/src/components/Input/index.ts +0 -9
  99. package/src/components/InputGroup/InputGroup.definitions.ts +0 -158
  100. package/src/components/InputGroup/InputGroup.stories.tsx +0 -267
  101. package/src/components/InputGroup/InputGroup.tsx +0 -179
  102. package/src/components/InputGroup/index.ts +0 -1
  103. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  104. package/src/components/MenuButton/MenuButton.tsx +0 -100
  105. package/src/components/MenuButton/index.ts +0 -1
  106. package/src/components/Modal/Modal.stories.tsx +0 -721
  107. package/src/components/Modal/Modal.tsx +0 -355
  108. package/src/components/Modal/ModalBody.tsx +0 -16
  109. package/src/components/Modal/ModalFooter.tsx +0 -71
  110. package/src/components/Modal/ModalHeader.tsx +0 -18
  111. package/src/components/Modal/index.ts +0 -6
  112. package/src/components/PageLoader/PageLoader.stories.tsx +0 -217
  113. package/src/components/PageLoader/PageLoader.tsx +0 -96
  114. package/src/components/PageLoader/index.ts +0 -2
  115. package/src/components/ScrollTopButton/ScrollTopButton.stories.tsx +0 -158
  116. package/src/components/ScrollTopButton/ScrollTopButton.tsx +0 -135
  117. package/src/components/ScrollTopButton/index.ts +0 -8
  118. package/src/components/ScrollTopButton/scrollToTop.ts +0 -37
  119. package/src/components/Select/Select.definitions.ts +0 -602
  120. package/src/components/Select/Select.helpers.ts +0 -71
  121. package/src/components/Select/Select.stories.tsx +0 -687
  122. package/src/components/Select/Select.sx.ts +0 -14
  123. package/src/components/Select/Select.tsx +0 -429
  124. package/src/components/Select/Select.types.ts +0 -15
  125. package/src/components/Select/_parts/SelectMenuItem.tsx +0 -40
  126. package/src/components/Select/_parts/SelectSearchHeader.tsx +0 -51
  127. package/src/components/Select/_parts/SelectValue.tsx +0 -96
  128. package/src/components/Select/index.ts +0 -14
  129. package/src/components/Stat/Stat.stories.tsx +0 -85
  130. package/src/components/Stat/Stat.tsx +0 -117
  131. package/src/components/Stat/index.ts +0 -2
  132. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -130
  133. package/src/components/StatusMessage/StatusMessage.tsx +0 -162
  134. package/src/components/StatusMessage/index.ts +0 -2
  135. package/src/components/Stepper/Step.tsx +0 -21
  136. package/src/components/Stepper/Stepper.definition.ts +0 -75
  137. package/src/components/Stepper/Stepper.stories.tsx +0 -122
  138. package/src/components/Stepper/Stepper.tsx +0 -75
  139. package/src/components/Stepper/index.ts +0 -2
  140. package/src/components/Table/EmptyTable.png +0 -0
  141. package/src/components/Table/Table.definition.ts +0 -580
  142. package/src/components/Table/Table.stories.tsx +0 -853
  143. package/src/components/Table/Table.tsx +0 -495
  144. package/src/components/Table/data.ts +0 -134
  145. package/src/components/Table/exportsUtils.ts +0 -195
  146. package/src/components/Table/index.ts +0 -3
  147. package/src/components/Table/types.ts +0 -34
  148. package/src/components/Tabs/Tab.definition.ts +0 -53
  149. package/src/components/Tabs/Tab.tsx +0 -19
  150. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  151. package/src/components/Tabs/Tabs.tsx +0 -99
  152. package/src/components/Tabs/_tabUtils.tsx +0 -4
  153. package/src/components/Tabs/index.ts +0 -2
  154. package/src/components/Timeline/Timeline.definition.ts +0 -43
  155. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  156. package/src/components/Timeline/Timeline.tsx +0 -49
  157. package/src/components/Timeline/TimelineItem.tsx +0 -31
  158. package/src/components/Timeline/index.ts +0 -2
  159. package/src/components/Tooltip/Tooltip.stories.tsx +0 -129
  160. package/src/components/Tooltip/Tooltip.tsx +0 -58
  161. package/src/components/Tooltip/index.ts +0 -1
  162. package/src/components/_shared/formField.sx.ts +0 -118
  163. package/src/components/_shared/resolvePreset.ts +0 -35
  164. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  165. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  166. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  167. package/src/hooks/ClipBoard/index.ts +0 -1
  168. package/src/hooks/Wizard/Wizard.stories.tsx +0 -301
  169. package/src/hooks/Wizard/WizardContext.tsx +0 -166
  170. package/src/hooks/Wizard/index.ts +0 -6
  171. package/src/hooks/Wizard/useWizard.ts +0 -13
  172. package/src/index.ts +0 -17
  173. package/src/mui.ts +0 -54
  174. package/src/styles.css +0 -3
  175. package/src/theme/componentStyles.ts +0 -47
  176. package/src/theme/tokens.ts +0 -43
  177. package/tailwind.config.js +0 -10
  178. package/tsconfig.json +0 -48
  179. package/tsup.config.js +0 -41
  180. package/vite.config.js +0 -132
  181. package/vitest.config.ts +0 -35
  182. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  183. /package/{dist/Button-C17mExpd.cjs.map → Button-C17mExpd.cjs.map} +0 -0
  184. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  185. /package/{dist/Button-UkkP-bNw.js.map → Button-UkkP-bNw.js.map} +0 -0
  186. /package/{dist/README.md → README.md} +0 -0
  187. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs +0 -0
  188. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs.map +0 -0
  189. /package/{dist/components → components}/ActionMenu/ActionMenu.d.ts +0 -0
  190. /package/{dist/components → components}/ActionMenu/ActionMenu.js +0 -0
  191. /package/{dist/components → components}/ActionMenu/ActionMenu.js.map +0 -0
  192. /package/{dist/components → components}/ActionMenu/index.d.ts +0 -0
  193. /package/{dist/components → components}/ActionMenu.d.ts +0 -0
  194. /package/{dist/components → components}/AppBar/AppBar.cjs +0 -0
  195. /package/{dist/components → components}/AppBar/AppBar.cjs.map +0 -0
  196. /package/{dist/components → components}/AppBar/AppBar.d.ts +0 -0
  197. /package/{dist/components → components}/AppBar/AppBar.js +0 -0
  198. /package/{dist/components → components}/AppBar/AppBar.js.map +0 -0
  199. /package/{dist/components → components}/AppBar/AppBar.sx.d.ts +0 -0
  200. /package/{dist/components → components}/AppBar/AppBarBrand.d.ts +0 -0
  201. /package/{dist/components → components}/AppBar/AppBarContext.d.ts +0 -0
  202. /package/{dist/components → components}/AppBar/AppBarMenuToggle.d.ts +0 -0
  203. /package/{dist/components → components}/AppBar/AppBarUserMenu.d.ts +0 -0
  204. /package/{dist/components → components}/AppBar/index.d.ts +0 -0
  205. /package/{dist/components → components}/AppBar.d.ts +0 -0
  206. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs +0 -0
  207. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs.map +0 -0
  208. /package/{dist/components → components}/Autocomplete/Autocomplete.d.ts +0 -0
  209. /package/{dist/components → components}/Autocomplete/Autocomplete.definitions.d.ts +0 -0
  210. /package/{dist/components → components}/Autocomplete/Autocomplete.helpers.d.ts +0 -0
  211. /package/{dist/components → components}/Autocomplete/Autocomplete.js +0 -0
  212. /package/{dist/components → components}/Autocomplete/Autocomplete.js.map +0 -0
  213. /package/{dist/components → components}/Autocomplete/Autocomplete.sx.d.ts +0 -0
  214. /package/{dist/components → components}/Autocomplete/Autocomplete.types.d.ts +0 -0
  215. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteChips.d.ts +0 -0
  216. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteLoader.d.ts +0 -0
  217. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteOption.d.ts +0 -0
  218. /package/{dist/components → components}/Autocomplete/index.d.ts +0 -0
  219. /package/{dist/components → components}/Autocomplete.d.ts +0 -0
  220. /package/{dist/components → components}/Avatar/Avatar.cjs +0 -0
  221. /package/{dist/components → components}/Avatar/Avatar.cjs.map +0 -0
  222. /package/{dist/components → components}/Avatar/Avatar.d.ts +0 -0
  223. /package/{dist/components → components}/Avatar/Avatar.definitions.d.ts +0 -0
  224. /package/{dist/components → components}/Avatar/Avatar.js +0 -0
  225. /package/{dist/components → components}/Avatar/Avatar.js.map +0 -0
  226. /package/{dist/components → components}/Avatar/index.d.ts +0 -0
  227. /package/{dist/components → components}/Avatar.d.ts +0 -0
  228. /package/{dist/components → components}/Button/Button.cjs +0 -0
  229. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  230. /package/{dist/components → components}/Button/Button.d.ts +0 -0
  231. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  232. /package/{dist/components → components}/Button/Button.js +0 -0
  233. /package/{dist/components → components}/Button/Button.js.map +0 -0
  234. /package/{dist/components → components}/Button/index.d.ts +0 -0
  235. /package/{dist/components → components}/Button.d.ts +0 -0
  236. /package/{dist/components → components}/Card/Card.cjs +0 -0
  237. /package/{dist/components → components}/Card/Card.cjs.map +0 -0
  238. /package/{dist/components → components}/Card/Card.d.ts +0 -0
  239. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  240. /package/{dist/components → components}/Card/Card.js +0 -0
  241. /package/{dist/components → components}/Card/Card.js.map +0 -0
  242. /package/{dist/components → components}/Card/Card.sx.d.ts +0 -0
  243. /package/{dist/components → components}/Card/index.d.ts +0 -0
  244. /package/{dist/components → components}/Card.d.ts +0 -0
  245. /package/{dist/components → components}/Chip/Chip.cjs +0 -0
  246. /package/{dist/components → components}/Chip/Chip.cjs.map +0 -0
  247. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  248. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  249. /package/{dist/components → components}/Chip/Chip.js +0 -0
  250. /package/{dist/components → components}/Chip/Chip.js.map +0 -0
  251. /package/{dist/components → components}/Chip/index.d.ts +0 -0
  252. /package/{dist/components → components}/Chip.d.ts +0 -0
  253. /package/{dist/components → components}/Column/Column.cjs +0 -0
  254. /package/{dist/components → components}/Column/Column.cjs.map +0 -0
  255. /package/{dist/components → components}/Column/Column.d.ts +0 -0
  256. /package/{dist/components → components}/Column/Column.js +0 -0
  257. /package/{dist/components → components}/Column/Column.js.map +0 -0
  258. /package/{dist/components → components}/Column/index.d.ts +0 -0
  259. /package/{dist/components → components}/Column.d.ts +0 -0
  260. /package/{dist/components → components}/DatePicker/DatePicker.cjs +0 -0
  261. /package/{dist/components → components}/DatePicker/DatePicker.cjs.map +0 -0
  262. /package/{dist/components → components}/DatePicker/DatePicker.d.ts +0 -0
  263. /package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +0 -0
  264. /package/{dist/components → components}/DatePicker/DatePicker.helpers.d.ts +0 -0
  265. /package/{dist/components → components}/DatePicker/DatePicker.js +0 -0
  266. /package/{dist/components → components}/DatePicker/DatePicker.js.map +0 -0
  267. /package/{dist/components → components}/DatePicker/DatePicker.sx.d.ts +0 -0
  268. /package/{dist/components → components}/DatePicker/DatePicker.types.d.ts +0 -0
  269. /package/{dist/components → components}/DatePicker/index.d.ts +0 -0
  270. /package/{dist/components → components}/DatePicker.d.ts +0 -0
  271. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs +0 -0
  272. /package/{dist/components → components}/DateRangePicker/DateRangePicker.cjs.map +0 -0
  273. /package/{dist/components → components}/DateRangePicker/DateRangePicker.d.ts +0 -0
  274. /package/{dist/components → components}/DateRangePicker/DateRangePicker.definitions.d.ts +0 -0
  275. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js +0 -0
  276. /package/{dist/components → components}/DateRangePicker/DateRangePicker.js.map +0 -0
  277. /package/{dist/components → components}/DateRangePicker/index.d.ts +0 -0
  278. /package/{dist/components → components}/DateRangePicker.d.ts +0 -0
  279. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs +0 -0
  280. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs.map +0 -0
  281. /package/{dist/components → components}/DateTimePicker/DateTimePicker.d.ts +0 -0
  282. /package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +0 -0
  283. /package/{dist/components → components}/DateTimePicker/DateTimePicker.helpers.d.ts +0 -0
  284. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js +0 -0
  285. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js.map +0 -0
  286. /package/{dist/components → components}/DateTimePicker/DateTimePicker.sx.d.ts +0 -0
  287. /package/{dist/components → components}/DateTimePicker/DateTimePicker.types.d.ts +0 -0
  288. /package/{dist/components → components}/DateTimePicker/index.d.ts +0 -0
  289. /package/{dist/components → components}/DateTimePicker.d.ts +0 -0
  290. /package/{dist/components → components}/Drawer/Drawer.cjs +0 -0
  291. /package/{dist/components → components}/Drawer/Drawer.cjs.map +0 -0
  292. /package/{dist/components → components}/Drawer/Drawer.d.ts +0 -0
  293. /package/{dist/components → components}/Drawer/Drawer.js +0 -0
  294. /package/{dist/components → components}/Drawer/Drawer.js.map +0 -0
  295. /package/{dist/components → components}/Drawer/Drawer.sx.d.ts +0 -0
  296. /package/{dist/components → components}/Drawer/DrawerContext.d.ts +0 -0
  297. /package/{dist/components → components}/Drawer/DrawerItem.d.ts +0 -0
  298. /package/{dist/components → components}/Drawer/index.d.ts +0 -0
  299. /package/{dist/components → components}/Drawer.d.ts +0 -0
  300. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  301. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  302. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  303. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  304. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  305. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  306. /package/{dist/components → components}/Flyout.d.ts +0 -0
  307. /package/{dist/components → components}/Gallery/Gallery.cjs +0 -0
  308. /package/{dist/components → components}/Gallery/Gallery.cjs.map +0 -0
  309. /package/{dist/components → components}/Gallery/Gallery.d.ts +0 -0
  310. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  311. /package/{dist/components → components}/Gallery/Gallery.js +0 -0
  312. /package/{dist/components → components}/Gallery/Gallery.js.map +0 -0
  313. /package/{dist/components → components}/Gallery/GalleryLightbox.d.ts +0 -0
  314. /package/{dist/components → components}/Gallery/GalleryMain.d.ts +0 -0
  315. /package/{dist/components → components}/Gallery/GalleryThumbnails.d.ts +0 -0
  316. /package/{dist/components → components}/Gallery/index.d.ts +0 -0
  317. /package/{dist/components → components}/Gallery.d.ts +0 -0
  318. /package/{dist/components → components}/Icon/Icon.cjs +0 -0
  319. /package/{dist/components → components}/Icon/Icon.cjs.map +0 -0
  320. /package/{dist/components → components}/Icon/Icon.d.ts +0 -0
  321. /package/{dist/components → components}/Icon/Icon.js +0 -0
  322. /package/{dist/components → components}/Icon/Icon.js.map +0 -0
  323. /package/{dist/components → components}/Icon/index.d.ts +0 -0
  324. /package/{dist/components → components}/Icon.d.ts +0 -0
  325. /package/{dist/components → components}/Input/Input.cjs +0 -0
  326. /package/{dist/components → components}/Input/Input.cjs.map +0 -0
  327. /package/{dist/components → components}/Input/Input.d.ts +0 -0
  328. /package/{dist/components → components}/Input/Input.definitions.d.ts +0 -0
  329. /package/{dist/components → components}/Input/Input.helpers.d.ts +0 -0
  330. /package/{dist/components → components}/Input/Input.js +0 -0
  331. /package/{dist/components → components}/Input/Input.js.map +0 -0
  332. /package/{dist/components → components}/Input/Input.sx.d.ts +0 -0
  333. /package/{dist/components → components}/Input/Input.types.d.ts +0 -0
  334. /package/{dist/components → components}/Input/index.d.ts +0 -0
  335. /package/{dist/components → components}/Input.d.ts +0 -0
  336. /package/{dist/components → components}/InputGroup/InputGroup.cjs +0 -0
  337. /package/{dist/components → components}/InputGroup/InputGroup.cjs.map +0 -0
  338. /package/{dist/components → components}/InputGroup/InputGroup.d.ts +0 -0
  339. /package/{dist/components → components}/InputGroup/InputGroup.definitions.d.ts +0 -0
  340. /package/{dist/components → components}/InputGroup/InputGroup.js +0 -0
  341. /package/{dist/components → components}/InputGroup/InputGroup.js.map +0 -0
  342. /package/{dist/components → components}/InputGroup/index.d.ts +0 -0
  343. /package/{dist/components → components}/InputGroup.d.ts +0 -0
  344. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  345. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  346. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  347. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  348. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  349. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  350. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  351. /package/{dist/components → components}/Modal/Modal.cjs +0 -0
  352. /package/{dist/components → components}/Modal/Modal.cjs.map +0 -0
  353. /package/{dist/components → components}/Modal/Modal.d.ts +0 -0
  354. /package/{dist/components → components}/Modal/Modal.js +0 -0
  355. /package/{dist/components → components}/Modal/Modal.js.map +0 -0
  356. /package/{dist/components → components}/Modal/ModalBody.d.ts +0 -0
  357. /package/{dist/components → components}/Modal/ModalFooter.d.ts +0 -0
  358. /package/{dist/components → components}/Modal/ModalHeader.d.ts +0 -0
  359. /package/{dist/components → components}/Modal/index.d.ts +0 -0
  360. /package/{dist/components → components}/Modal.d.ts +0 -0
  361. /package/{dist/components → components}/PageLoader/PageLoader.cjs +0 -0
  362. /package/{dist/components → components}/PageLoader/PageLoader.cjs.map +0 -0
  363. /package/{dist/components → components}/PageLoader/PageLoader.d.ts +0 -0
  364. /package/{dist/components → components}/PageLoader/PageLoader.js +0 -0
  365. /package/{dist/components → components}/PageLoader/PageLoader.js.map +0 -0
  366. /package/{dist/components → components}/PageLoader/index.d.ts +0 -0
  367. /package/{dist/components → components}/PageLoader.d.ts +0 -0
  368. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs +0 -0
  369. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.cjs.map +0 -0
  370. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.d.ts +0 -0
  371. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js +0 -0
  372. /package/{dist/components → components}/ScrollTopButton/ScrollTopButton.js.map +0 -0
  373. /package/{dist/components → components}/ScrollTopButton/index.d.ts +0 -0
  374. /package/{dist/components → components}/ScrollTopButton/scrollToTop.d.ts +0 -0
  375. /package/{dist/components → components}/ScrollTopButton.d.ts +0 -0
  376. /package/{dist/components → components}/Select/Select.cjs +0 -0
  377. /package/{dist/components → components}/Select/Select.cjs.map +0 -0
  378. /package/{dist/components → components}/Select/Select.d.ts +0 -0
  379. /package/{dist/components → components}/Select/Select.definitions.d.ts +0 -0
  380. /package/{dist/components → components}/Select/Select.helpers.d.ts +0 -0
  381. /package/{dist/components → components}/Select/Select.js +0 -0
  382. /package/{dist/components → components}/Select/Select.js.map +0 -0
  383. /package/{dist/components → components}/Select/Select.sx.d.ts +0 -0
  384. /package/{dist/components → components}/Select/Select.types.d.ts +0 -0
  385. /package/{dist/components → components}/Select/_parts/SelectMenuItem.d.ts +0 -0
  386. /package/{dist/components → components}/Select/_parts/SelectSearchHeader.d.ts +0 -0
  387. /package/{dist/components → components}/Select/_parts/SelectValue.d.ts +0 -0
  388. /package/{dist/components → components}/Select/index.d.ts +0 -0
  389. /package/{dist/components → components}/Select.d.ts +0 -0
  390. /package/{dist/components → components}/Stat/Stat.cjs +0 -0
  391. /package/{dist/components → components}/Stat/Stat.cjs.map +0 -0
  392. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  393. /package/{dist/components → components}/Stat/Stat.js +0 -0
  394. /package/{dist/components → components}/Stat/Stat.js.map +0 -0
  395. /package/{dist/components → components}/Stat/index.d.ts +0 -0
  396. /package/{dist/components → components}/Stat.d.ts +0 -0
  397. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs +0 -0
  398. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs.map +0 -0
  399. /package/{dist/components → components}/StatusMessage/StatusMessage.d.ts +0 -0
  400. /package/{dist/components → components}/StatusMessage/StatusMessage.js +0 -0
  401. /package/{dist/components → components}/StatusMessage/StatusMessage.js.map +0 -0
  402. /package/{dist/components → components}/StatusMessage/index.d.ts +0 -0
  403. /package/{dist/components → components}/StatusMessage.d.ts +0 -0
  404. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  405. /package/{dist/components → components}/Stepper/Stepper.cjs +0 -0
  406. /package/{dist/components → components}/Stepper/Stepper.cjs.map +0 -0
  407. /package/{dist/components → components}/Stepper/Stepper.d.ts +0 -0
  408. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  409. /package/{dist/components → components}/Stepper/Stepper.js +0 -0
  410. /package/{dist/components → components}/Stepper/Stepper.js.map +0 -0
  411. /package/{dist/components → components}/Stepper/index.d.ts +0 -0
  412. /package/{dist/components → components}/Stepper.d.ts +0 -0
  413. /package/{dist/components → components}/Table/Table.cjs +0 -0
  414. /package/{dist/components → components}/Table/Table.cjs.map +0 -0
  415. /package/{dist/components → components}/Table/Table.d.ts +0 -0
  416. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  417. /package/{dist/components → components}/Table/Table.js +0 -0
  418. /package/{dist/components → components}/Table/Table.js.map +0 -0
  419. /package/{dist/components → components}/Table/data.d.ts +0 -0
  420. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  421. /package/{dist/components → components}/Table/index.d.ts +0 -0
  422. /package/{dist/components → components}/Table/types.d.ts +0 -0
  423. /package/{dist/components → components}/Table.d.ts +0 -0
  424. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  425. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  426. /package/{dist/components → components}/Tabs/Tabs.cjs +0 -0
  427. /package/{dist/components → components}/Tabs/Tabs.cjs.map +0 -0
  428. /package/{dist/components → components}/Tabs/Tabs.d.ts +0 -0
  429. /package/{dist/components → components}/Tabs/Tabs.js +0 -0
  430. /package/{dist/components → components}/Tabs/Tabs.js.map +0 -0
  431. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  432. /package/{dist/components → components}/Tabs/index.d.ts +0 -0
  433. /package/{dist/components → components}/Tabs.d.ts +0 -0
  434. /package/{dist/components → components}/Timeline/Timeline.cjs +0 -0
  435. /package/{dist/components → components}/Timeline/Timeline.cjs.map +0 -0
  436. /package/{dist/components → components}/Timeline/Timeline.d.ts +0 -0
  437. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  438. /package/{dist/components → components}/Timeline/Timeline.js +0 -0
  439. /package/{dist/components → components}/Timeline/Timeline.js.map +0 -0
  440. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  441. /package/{dist/components → components}/Timeline/index.d.ts +0 -0
  442. /package/{dist/components → components}/Timeline.d.ts +0 -0
  443. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  444. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  445. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  446. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  447. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  448. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  449. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  450. /package/{dist/components → components}/_shared/formField.sx.d.ts +0 -0
  451. /package/{dist/components → components}/_shared/resolvePreset.d.ts +0 -0
  452. /package/{dist/formField.sx-CQ1mbk9M.cjs → formField.sx-CQ1mbk9M.cjs} +0 -0
  453. /package/{dist/formField.sx-CQ1mbk9M.cjs.map → formField.sx-CQ1mbk9M.cjs.map} +0 -0
  454. /package/{dist/formField.sx-DfVbMe0V.js → formField.sx-DfVbMe0V.js} +0 -0
  455. /package/{dist/formField.sx-DfVbMe0V.js.map → formField.sx-DfVbMe0V.js.map} +0 -0
  456. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  457. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  458. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  459. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  460. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  461. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  462. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  463. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  464. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs +0 -0
  465. /package/{dist/hooks → hooks}/Wizard/Wizard.cjs.map +0 -0
  466. /package/{dist/hooks → hooks}/Wizard/Wizard.js +0 -0
  467. /package/{dist/hooks → hooks}/Wizard/Wizard.js.map +0 -0
  468. /package/{dist/hooks → hooks}/Wizard/WizardContext.d.ts +0 -0
  469. /package/{dist/hooks → hooks}/Wizard/index.d.ts +0 -0
  470. /package/{dist/hooks → hooks}/Wizard/useWizard.d.ts +0 -0
  471. /package/{dist/hooks → hooks}/Wizard.d.ts +0 -0
  472. /package/{dist/index.cjs → index.cjs} +0 -0
  473. /package/{dist/index.cjs.map → index.cjs.map} +0 -0
  474. /package/{dist/index.d.ts → index.d.ts} +0 -0
  475. /package/{dist/index.js → index.js} +0 -0
  476. /package/{dist/index.js.map → index.js.map} +0 -0
  477. /package/{dist/mui.d.ts → mui.d.ts} +0 -0
  478. /package/{dist/resolvePreset-B-IB0ehH.js → resolvePreset-B-IB0ehH.js} +0 -0
  479. /package/{dist/resolvePreset-B-IB0ehH.js.map → resolvePreset-B-IB0ehH.js.map} +0 -0
  480. /package/{dist/resolvePreset-CT3kU-K2.cjs → resolvePreset-CT3kU-K2.cjs} +0 -0
  481. /package/{dist/resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CT3kU-K2.cjs.map} +0 -0
  482. /package/{dist/styles.css → styles.css} +0 -0
  483. /package/{dist/theme → theme}/componentStyles.d.ts +0 -0
  484. /package/{dist/theme → theme}/tokens.d.ts +0 -0
  485. /package/{dist/useWizard-CWdIxZzX.cjs → useWizard-CWdIxZzX.cjs} +0 -0
  486. /package/{dist/useWizard-CWdIxZzX.cjs.map → useWizard-CWdIxZzX.cjs.map} +0 -0
  487. /package/{dist/useWizard-CWq--C3o.js → useWizard-CWq--C3o.js} +0 -0
  488. /package/{dist/useWizard-CWq--C3o.js.map → useWizard-CWq--C3o.js.map} +0 -0
@@ -1,499 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import React, { useState } from 'react';
3
- import {
4
- Box,
5
- Typography,
6
- } from '@mui/material';
7
-
8
- // Importa el componente Input (asumiendo que está en el mismo directorio o ruta definida)
9
- import { Input } from './Input';
10
-
11
- // Importa las definiciones de las historias
12
- import {
13
- BasicTextInputDefinition,
14
- NumberInputDefinition,
15
- EmailInputDefinition,
16
- PasswordInputDefinition,
17
- InputWithPlaceholderDefinition,
18
- InputWithErrorDefinition,
19
- DisabledInputDefinition,
20
- ReadOnlyInputDefinition,
21
- InputVariantsDefinition,
22
- InputSizesDefinition,
23
- FullWidthInputDefinition,
24
- LabelPositionFloatingDefinition,
25
- CustomBorderRadiusDefinition,
26
- CustomStylingDefinition,
27
- } from './Input.definitions';
28
-
29
- // =============================================================================
30
- // Definición de las meta-propiedades para Storybook
31
- // =============================================================================
32
- const meta: Meta<typeof Input> = {
33
- title: 'Components/Input',
34
- component: Input,
35
- tags: ['autodocs'],
36
- parameters: {
37
- layout: 'centered',
38
- docs: {
39
- description: {
40
- component: 'Un componente `Input` personalizado basado en `TextField` de Material UI, que soporta varios tipos de entrada HTML y propiedades de `TextField`.',
41
- },
42
- },
43
- },
44
- argTypes: {
45
- label: { control: 'text', description: 'Etiqueta flotante para el campo de entrada.' },
46
- value: { control: 'text', description: 'El valor actual del campo de entrada.', type: { name: 'string', required: true } },
47
- onChange: { action: 'valueChanged', description: 'Callback que se dispara cuando el valor del campo de entrada cambia.' },
48
- type: {
49
- control: 'select',
50
- options: ['text', 'number', 'email', 'password', 'tel', 'url', 'search', 'date', 'datetime-local', 'month', 'week', 'time', 'color'],
51
- description: 'El tipo HTML del campo de entrada (controla el teclado en móviles, etc.).',
52
- defaultValue: 'text',
53
- },
54
- placeholder: { control: 'text', description: 'Texto de marcador de posición cuando el campo está vacío.' },
55
- disabled: { control: 'boolean', description: 'Si es verdadero, el campo de entrada estará deshabilitado.' },
56
- // readOnly: { control: 'boolean', description: 'Si es verdadero, el campo de entrada estará en modo de solo lectura.' },
57
- error: { control: 'boolean', description: 'Si es verdadero, el campo de entrada estará en estado de error.' },
58
- helperText: { control: 'text', description: 'Texto auxiliar que se muestra debajo del campo de entrada.' },
59
- variant: {
60
- control: 'radio',
61
- options: ['outlined', 'filled', 'standard'],
62
- description: 'La variante de diseño del campo de entrada.',
63
- defaultValue: 'outlined',
64
- },
65
- size: {
66
- control: 'radio',
67
- options: ['small', 'medium'],
68
- description: 'El tamaño del campo de entrada.',
69
- defaultValue: 'small',
70
- },
71
- labelPosition: {
72
- control: 'radio',
73
- options: ['outside', 'floating'],
74
- description: '"outside" (default): label arriba del input. "floating": label clásico de MUI dentro del notched outline.',
75
- defaultValue: 'outside',
76
- },
77
- borderRadius: {
78
- control: { type: 'number' },
79
- description: 'Border radius del input en px (o string CSS). Default: 10.',
80
- defaultValue: 10,
81
- },
82
- fullWidth: { control: 'boolean', description: 'Si es verdadero, el campo de entrada ocupará todo el ancho disponible.', defaultValue: false },
83
- },
84
- };
85
-
86
- export default meta;
87
- type Story = StoryObj<typeof Input>;
88
-
89
- // =============================================================================
90
- // Historias
91
- // =============================================================================
92
-
93
- export const BasicTextInput: Story = {
94
- render: () => {
95
- const [value, setValue] = useState('Texto de ejemplo');
96
- return (
97
- <Box sx={{ width: 300 }}>
98
- <Input
99
- label="Nombre"
100
- value={value}
101
- onChange={(value) => setValue(value.toString())}
102
- />
103
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
104
- </Box>
105
- );
106
- },
107
- parameters: {
108
- docs: {
109
- description: {
110
- story: "Un campo de entrada de texto básico con una etiqueta."
111
- },
112
- source: { code: BasicTextInputDefinition.trim() }
113
- }
114
- }
115
- };
116
-
117
- export const NumberInput: Story = {
118
- render: () => {
119
- const [value, setValue] = useState(123);
120
- return (
121
- <Box sx={{ width: 300 }}>
122
- <Input
123
- label="Cantidad"
124
- type="number"
125
- value={value.toString()}
126
- onChange={(value) => setValue(Number(value))}
127
- />
128
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
129
- </Box>
130
- );
131
- },
132
- parameters: {
133
- docs: {
134
- description: {
135
- story: "Un campo de entrada numérico. Permite solo números y controla el teclado numérico en dispositivos móviles."
136
- },
137
- source: { code: NumberInputDefinition.trim() }
138
- }
139
- }
140
- };
141
-
142
- export const EmailInput: Story = {
143
- render: () => {
144
- const [value, setValue] = useState('ejemplo@dominio.com');
145
- return (
146
- <Box sx={{ width: 300 }}>
147
- <Input
148
- label="Correo Electrónico"
149
- type="email"
150
- value={value.toString()}
151
- onChange={(value) => setValue(value.toString())}
152
- />
153
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
154
- </Box>
155
- );
156
- },
157
- parameters: {
158
- docs: {
159
- description: {
160
- story: "Un campo de entrada para correo electrónico. Proporciona validación básica del navegador y sugiere correos electrónicos."
161
- },
162
- source: { code: EmailInputDefinition.trim() }
163
- }
164
- }
165
- };
166
-
167
- export const PasswordInput: Story = {
168
- render: () => {
169
- const [value, setValue] = useState('micontraseña');
170
- return (
171
- <Box sx={{ width: 300 }}>
172
- <Input
173
- label="Contraseña"
174
- type="password"
175
- value={value.toString()}
176
- onChange={(value) => setValue(value.toString())}
177
- />
178
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
179
- </Box>
180
- );
181
- },
182
- parameters: {
183
- docs: {
184
- description: {
185
- story: "Un campo de entrada de contraseña. Oculta los caracteres a medida que se escriben."
186
- },
187
- source: { code: PasswordInputDefinition.trim() }
188
- }
189
- }
190
- };
191
-
192
- export const InputWithPlaceholder: Story = {
193
- render: () => {
194
- const [value, setValue] = useState('');
195
- return (
196
- <Box sx={{ width: 300 }}>
197
- <Input
198
- label="Búsqueda"
199
- placeholder="Escribe tu término de búsqueda..."
200
- value={value.toString()}
201
- onChange={(value) => setValue(value.toString())}
202
- />
203
- <Typography sx={{ mt: 2 }}>Valor actual: {value || 'Vacío'}</Typography>
204
- </Box>
205
- );
206
- },
207
- parameters: {
208
- docs: {
209
- description: {
210
- story: "Un campo de entrada con un texto de marcador de posición visible cuando el campo está vacío."
211
- },
212
- source: { code: InputWithPlaceholderDefinition.trim() }
213
- }
214
- }
215
- };
216
-
217
- export const InputWithError: Story = {
218
- render: () => {
219
- const [value, setValue] = useState('invalido');
220
- // Lógica simple de error para la demostración
221
- const hasError = value.length < 5 && value.length > 0;
222
- return (
223
- <Box sx={{ width: 300 }}>
224
- <Input
225
- label="Nombre de usuario"
226
- value={value.toString()}
227
- onChange={(value) => setValue(value.toString())}
228
- error={hasError}
229
- helperText={hasError ? 'Mínimo 5 caracteres' : ''}
230
- />
231
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
232
- </Box>
233
- );
234
- },
235
- parameters: {
236
- docs: {
237
- description: {
238
- story: "Un campo de entrada que muestra un estado de error y un texto de ayuda cuando la validación falla."
239
- },
240
- source: { code: InputWithErrorDefinition.trim() }
241
- }
242
- }
243
- };
244
-
245
- export const DisabledInput: Story = {
246
- render: () => {
247
- const [value, setValue] = useState('Campo deshabilitado');
248
- return (
249
- <Box sx={{ width: 300 }}>
250
- <Input
251
- label="Estado"
252
- value={value.toString()}
253
- onChange={(value) => setValue(value.toString())}
254
- disabled
255
- />
256
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
257
- </Box>
258
- );
259
- },
260
- parameters: {
261
- docs: {
262
- story: "Un campo de entrada deshabilitado, lo que impide la interacción del usuario."
263
- },
264
- source: { code: DisabledInputDefinition.trim() }
265
- }
266
- };
267
-
268
- export const ReadOnlyInput: Story = {
269
- render: () => {
270
- const [value, setValue] = useState('Valor de solo lectura');
271
- return (
272
- <Box sx={{ width: 300 }}>
273
- <Input
274
- label="Información"
275
- value={value.toString()}
276
- onChange={(value) => setValue(value.toString())}
277
- readOnly
278
- />
279
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
280
- </Box>
281
- );
282
- },
283
- parameters: {
284
- docs: {
285
- story: "Un campo de entrada de solo lectura, el usuario puede ver el valor pero no modificarlo."
286
- },
287
- source: { code: ReadOnlyInputDefinition.trim() }
288
- }
289
- };
290
-
291
- export const InputVariants: Story = {
292
- render: () => {
293
- const [valueOutlined, setValueOutlined] = useState('Outlined');
294
- const [valueFilled, setValueFilled] = useState('Filled');
295
- const [valueStandard, setValueStandard] = useState('Standard');
296
- return (
297
- <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, width: 300 }}>
298
- <Input
299
- label="Esquema Outlined"
300
- value={valueOutlined.toString()}
301
- onChange={(value) => setValueOutlined(value.toString())}
302
- variant="outlined"
303
- />
304
- <Input
305
- label="Esquema Filled"
306
- value={valueFilled.toString()}
307
- onChange={(value) => setValueFilled(value.toString())}
308
- variant="filled"
309
- />
310
- <Input
311
- label="Esquema Standard"
312
- value={valueStandard.toString()}
313
- onChange={(value) => setValueStandard(value.toString())}
314
- variant="standard"
315
- />
316
- </Box>
317
- );
318
- },
319
- parameters: {
320
- docs: {
321
- story: "Demuestra las diferentes variantes de diseño: `outlined`, `filled` y `standard`."
322
- },
323
- source: { code: InputVariantsDefinition.trim() }
324
- }
325
- };
326
-
327
- export const InputSizes: Story = {
328
- render: () => {
329
- const [valueMedium, setValueMedium] = useState('Tamaño Mediano');
330
- const [valueSmall, setValueSmall] = useState('Tamaño Pequeño');
331
- return (
332
- <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, width: 300 }}>
333
- <Input
334
- label="Input Mediano"
335
- value={valueMedium.toString()}
336
- onChange={(value) => setValueMedium(value.toString())}
337
- size="medium"
338
- />
339
- <Input
340
- label="Input Pequeño"
341
- value={valueSmall.toString()}
342
- onChange={(value) => setValueSmall(value.toString())}
343
- size="small"
344
- />
345
- </Box>
346
- );
347
- },
348
- parameters: {
349
- docs: {
350
- story: "Demuestra los diferentes tamaños del campo de entrada: `medium` (por defecto) y `small`."
351
- },
352
- source: { code: InputSizesDefinition.trim() }
353
- }
354
- };
355
-
356
- export const FullWidthInput: Story = {
357
- render: () => {
358
- const [value, setValue] = useState('Ocupa todo el ancho');
359
- return (
360
- <Box sx={{ width: '100%' }}>
361
- <Input
362
- label="Input de Ancho Completo"
363
- value={value.toString()}
364
- onChange={(value) => setValue(value.toString())}
365
- fullWidth
366
- />
367
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
368
- </Box>
369
- );
370
- },
371
- parameters: {
372
- docs: {
373
- story: "Un campo de entrada que ocupa todo el ancho disponible de su contenedor."
374
- },
375
- source: { code: FullWidthInputDefinition.trim() }
376
- }
377
- };
378
-
379
- export const StandardVariant: Story = {
380
- render: () => {
381
- const [value, setValue] = useState('Ocupa todo el ancho');
382
- return (
383
- <Box sx={{ width: '100%' }}>
384
- <Input
385
-
386
- value={value.toString()}
387
- variant='standard'
388
- onChange={(value) => setValue(value.toString())}
389
- fullWidth
390
- />
391
- <Typography sx={{ mt: 2 }}>Valor actual: {value}</Typography>
392
- </Box>
393
- );
394
- },
395
- parameters: {
396
- docs: {
397
- story: "Un campo de entrada que ocupa todo el ancho disponible de su contenedor."
398
- },
399
-
400
- }
401
- };
402
-
403
- export const LabelPositionFloating: Story = {
404
- render: () => {
405
- const [valueOutside, setValueOutside] = useState('Outside (default)');
406
- const [valueFloating, setValueFloating] = useState('Floating');
407
- return (
408
- <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, width: 300 }}>
409
- <Input
410
- label="Label outside"
411
- value={valueOutside.toString()}
412
- onChange={(value) => setValueOutside(value.toString())}
413
- labelPosition="outside"
414
- />
415
- <Input
416
- label="Label floating (MUI clásico)"
417
- value={valueFloating.toString()}
418
- onChange={(value) => setValueFloating(value.toString())}
419
- labelPosition="floating"
420
- />
421
- </Box>
422
- );
423
- },
424
- parameters: {
425
- docs: {
426
- description: {
427
- story: "Compara `labelPosition='outside'` (default, label arriba del input) vs `labelPosition='floating'` (label flotante clásico de MUI dentro del notched outline)."
428
- },
429
- source: { code: LabelPositionFloatingDefinition.trim() }
430
- }
431
- }
432
- };
433
-
434
- export const CustomBorderRadius: Story = {
435
- render: () => {
436
- const [v0, setV0] = useState('Sin radius');
437
- const [v4, setV4] = useState('Radius 4px');
438
- const [v10, setV10] = useState('Radius 10px (default)');
439
- const [v24, setV24] = useState('Radius 24px (pill)');
440
- return (
441
- <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, width: 300 }}>
442
- <Input label="borderRadius={0}" value={v0} onChange={(v) => setV0(v.toString())} borderRadius={0} />
443
- <Input label="borderRadius={4}" value={v4} onChange={(v) => setV4(v.toString())} borderRadius={4} />
444
- <Input label="borderRadius={10} (default)" value={v10} onChange={(v) => setV10(v.toString())} />
445
- <Input label="borderRadius={24}" value={v24} onChange={(v) => setV24(v.toString())} borderRadius={24} />
446
- </Box>
447
- );
448
- },
449
- parameters: {
450
- docs: {
451
- description: {
452
- story: "El prop `borderRadius` acepta un número (px) o un string CSS. Override directo del default `10`."
453
- },
454
- source: { code: CustomBorderRadiusDefinition.trim() }
455
- }
456
- }
457
- };
458
-
459
- export const CustomStyling: Story = {
460
- render: () => {
461
- const [bg, setBg] = useState('Fondo gris claro');
462
- const [color, setColor] = useState('Borde rojo');
463
- const [combined, setCombined] = useState('Custom completo');
464
- return (
465
- <Box sx={{ display: 'flex', flexDirection: 'column', gap: 3, width: 300 }}>
466
- <Input
467
- label="Override de background"
468
- value={bg}
469
- onChange={(v) => setBg(v.toString())}
470
- sx={{ '& .MuiOutlinedInput-root': { bgcolor: '#f5f5f5' } }}
471
- />
472
- <Input
473
- label="Override de borderColor"
474
- value={color}
475
- onChange={(v) => setColor(v.toString())}
476
- sx={{ '& .MuiOutlinedInput-notchedOutline': { borderColor: 'red' } }}
477
- />
478
- <Input
479
- label="Combinado: bg + borderColor + label color"
480
- value={combined}
481
- onChange={(v) => setCombined(v.toString())}
482
- sx={{
483
- '& .MuiInputLabel-root': { color: 'primary.main' },
484
- '& .MuiOutlinedInput-root': { bgcolor: '#fff7e6' },
485
- '& .MuiOutlinedInput-notchedOutline': { borderColor: 'warning.main', borderWidth: 2 },
486
- }}
487
- />
488
- </Box>
489
- );
490
- },
491
- parameters: {
492
- docs: {
493
- description: {
494
- story: "Demuestra que el prop `sx` se mergea al final y siempre gana sobre los defaults internos. Antes esto no funcionaba por culpa del `styled()` interno."
495
- },
496
- source: { code: CustomStylingDefinition.trim() }
497
- }
498
- }
499
- };
@@ -1,42 +0,0 @@
1
- import type { TextFieldProps } from '@mui/material';
2
-
3
- import { buildFormFieldSx } from '../_shared/formField.sx';
4
- import { FIELD_INPUT_PADDING_Y } from '../../theme/tokens';
5
- import type { LabelPosition } from './Input';
6
-
7
- /**
8
- * Builder de sx para el Input. Usa el builder compartido
9
- * `buildFormFieldSx` y añade overrides específicos de TextField
10
- * (padding del input base, filled, standard).
11
- */
12
- export const buildInputSx = (
13
- borderRadius: number | string,
14
- labelPosition: LabelPosition,
15
- ): TextFieldProps['sx'] => {
16
- const radius = typeof borderRadius === 'number' ? `${borderRadius}px` : borderRadius;
17
-
18
- return buildFormFieldSx({
19
- borderRadius,
20
- labelPosition,
21
- extraOutsideSx: {
22
- '& .MuiInputBase-input': {
23
- paddingTop: FIELD_INPUT_PADDING_Y,
24
- paddingBottom: FIELD_INPUT_PADDING_Y,
25
- },
26
-
27
- // Filled: quitar el padding-top reservado para el label flotante dentro.
28
- '& .MuiFilledInput-root': {
29
- paddingTop: 0,
30
- borderRadius: `${radius} ${radius} 0 0`,
31
- },
32
- '& .MuiFilledInput-input': {
33
- paddingTop: FIELD_INPUT_PADDING_Y,
34
- },
35
-
36
- // Standard: quitar el margin-top reservado para el label flotante.
37
- '& .MuiInput-root': {
38
- marginTop: 0,
39
- },
40
- },
41
- });
42
- };
@@ -1,141 +0,0 @@
1
- import { TextField, type TextFieldProps } from '@mui/material';
2
- import { useTheme } from '@mui/material/styles';
3
- import { Controller, type Control, type RegisterOptions } from 'react-hook-form';
4
-
5
- import { parseValue, buildSlotProps } from './Input.helpers';
6
- import { buildInputSx } from './Input.sx';
7
- import { resolvePreset } from '../_shared/resolvePreset';
8
-
9
- // ── Tipos de dominio ─────────────────────────────────────────────────────
10
- export type InputType =
11
- | 'text' | 'number' | 'email' | 'password' | 'tel'
12
- | 'url' | 'search' | 'date' | 'datetime-local'
13
- | 'month' | 'week' | 'time' | 'color';
14
-
15
- export type LabelPosition = 'outside' | 'floating';
16
-
17
- // ── Props base (todo lo común entre RHF y controlado) ────────────────────
18
- export interface BaseInputProps
19
- extends Omit<TextFieldProps, 'value' | 'onChange' | 'type'> {
20
- type?: InputType;
21
- min?: number;
22
- max?: number;
23
- /** Border radius del input. Default: 10 */
24
- borderRadius?: number | string;
25
- /** "outside" = label arriba del campo (default). "floating" = label clásico MUI dentro del borde */
26
- labelPosition?: LabelPosition;
27
- readOnly?: boolean;
28
- /**
29
- * Nombre del preset de estilo registrado en `theme.styles.Input`.
30
- * - `"default"` (o ausente) = estilo built-in del paquete.
31
- * - Cualquier otro string = mergea el preset encima del estilo built-in.
32
- */
33
- preset?: string;
34
- }
35
-
36
- // ── Variantes discriminadas (RHF vs controlado) ──────────────────────────
37
- export interface RHFInputProps extends BaseInputProps {
38
- name: string;
39
- control: Control<any>;
40
- validation?: RegisterOptions;
41
- value?: never;
42
- onChange?: never;
43
- }
44
-
45
- export interface ControlledInputProps extends BaseInputProps {
46
- name?: string;
47
- control?: never;
48
- validation?: never;
49
- value: string | number;
50
- onChange: (value: string | number) => void;
51
- }
52
-
53
- // ── API pública final ────────────────────────────────────────────────────
54
- export type InputProps = RHFInputProps | ControlledInputProps;
55
-
56
- export const Input: React.FC<InputProps> = (props) => {
57
- const {
58
- type = 'text',
59
- variant = 'outlined',
60
- size = 'small',
61
- borderRadius = 10,
62
- labelPosition = 'outside',
63
- preset,
64
- min,
65
- max,
66
- readOnly,
67
- inputProps,
68
- slotProps,
69
- sx,
70
- ...rest
71
- } = props as ControlledInputProps & {
72
- control?: Control<any>;
73
- validation?: RegisterOptions;
74
- readOnly?: boolean;
75
- preset?: string;
76
- };
77
-
78
- const theme = useTheme();
79
- const presetSx = resolvePreset('Input', preset, theme);
80
-
81
- const finalSlotProps = buildSlotProps(
82
- type,
83
- min,
84
- max,
85
- slotProps,
86
- inputProps,
87
- labelPosition,
88
- readOnly,
89
- );
90
- const mergedSx = [
91
- buildInputSx(borderRadius, labelPosition),
92
- ...(presetSx ? [presetSx] : []),
93
- ...(Array.isArray(sx) ? sx : [sx]),
94
- ];
95
-
96
- if ('control' in props && props.control) {
97
- const { name, control, validation } = props as RHFInputProps;
98
- return (
99
- <Controller
100
- name={name}
101
- control={control}
102
- rules={validation}
103
- render={({ field, fieldState: { error } }) => (
104
- <TextField
105
- fullWidth
106
- {...rest}
107
- name={field.name}
108
- value={field.value ?? ''}
109
- onChange={(e) => field.onChange(parseValue(e.target.value, type))}
110
- onBlur={field.onBlur}
111
- inputRef={field.ref}
112
- type={type}
113
- variant={variant}
114
- size={size}
115
- slotProps={finalSlotProps}
116
- sx={mergedSx}
117
- error={!!error || rest.error}
118
- helperText={error?.message ?? rest.helperText}
119
- />
120
- )}
121
- />
122
- );
123
- }
124
-
125
- const { value, onChange } = props as ControlledInputProps;
126
- return (
127
- <TextField
128
- fullWidth
129
- {...rest}
130
- value={value ?? ''}
131
- onChange={(e) => onChange(parseValue(e.target.value, type))}
132
- type={type}
133
- variant={variant}
134
- size={size}
135
- slotProps={finalSlotProps}
136
- sx={mergedSx}
137
- />
138
- );
139
- };
140
-
141
- export default Input;
@@ -1,10 +0,0 @@
1
- // Re-export barrel para compatibilidad con imports antiguos.
2
- // Los tipos ahora viven dentro de Input.tsx.
3
- export type {
4
- InputType,
5
- LabelPosition,
6
- BaseInputProps,
7
- RHFInputProps,
8
- ControlledInputProps,
9
- InputProps,
10
- } from './Input';
@@ -1,9 +0,0 @@
1
- export { Input, default } from './Input';
2
- export type {
3
- InputProps,
4
- BaseInputProps,
5
- RHFInputProps,
6
- ControlledInputProps,
7
- InputType,
8
- LabelPosition,
9
- } from './Input.types';