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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (657) hide show
  1. package/.dockerignore +8 -0
  2. package/.github/workflows/publish.yml +107 -0
  3. package/.prettierrc +3 -0
  4. package/.storybook/main.ts +19 -0
  5. package/.storybook/preview.ts +14 -0
  6. package/.storybook/vitest.setup.ts +9 -0
  7. package/Dockerfile +37 -0
  8. package/build.js +117 -0
  9. package/chromatic.config.json +5 -0
  10. package/cleanDirectories.js +40 -0
  11. package/dist/Autocomplete-C_lW1VER.js +337 -0
  12. package/dist/Autocomplete-C_lW1VER.js.map +1 -0
  13. package/dist/Autocomplete-CejWztBY.cjs +336 -0
  14. package/dist/Autocomplete-CejWztBY.cjs.map +1 -0
  15. package/dist/Avatar-CgT7955R.js +162 -0
  16. package/dist/Avatar-CgT7955R.js.map +1 -0
  17. package/dist/Avatar-CuSrK8Wn.cjs +161 -0
  18. package/dist/Avatar-CuSrK8Wn.cjs.map +1 -0
  19. package/dist/Button-C17mExpd.cjs.map +1 -1
  20. package/dist/Button-UkkP-bNw.js.map +1 -1
  21. package/dist/Card-B1wtavyl.js +98 -0
  22. package/dist/Card-B1wtavyl.js.map +1 -0
  23. package/dist/Card-DfdU610V.cjs +97 -0
  24. package/dist/Card-DfdU610V.cjs.map +1 -0
  25. package/dist/Checkbox-BCqMFWt4.cjs +187 -0
  26. package/dist/Checkbox-BCqMFWt4.cjs.map +1 -0
  27. package/dist/Checkbox-gB5YKkVo.js +188 -0
  28. package/dist/Checkbox-gB5YKkVo.js.map +1 -0
  29. package/dist/{components/DateRangePicker/DateRangePicker.js → Chip-OPYQ1uQ_.js} +33 -35
  30. package/dist/Chip-OPYQ1uQ_.js.map +1 -0
  31. package/dist/{components/DateRangePicker/DateRangePicker.cjs → Chip-qoJLDiva.cjs} +33 -36
  32. package/dist/Chip-qoJLDiva.cjs.map +1 -0
  33. package/dist/DatePicker-_IGWc3I5.js +178 -0
  34. package/dist/DatePicker-_IGWc3I5.js.map +1 -0
  35. package/dist/DatePicker-t7uDTZMl.cjs +177 -0
  36. package/dist/DatePicker-t7uDTZMl.cjs.map +1 -0
  37. package/dist/DateTimePicker-BxQyjTCY.cjs +229 -0
  38. package/dist/DateTimePicker-BxQyjTCY.cjs.map +1 -0
  39. package/dist/DateTimePicker-CrmWav_j.js +230 -0
  40. package/dist/DateTimePicker-CrmWav_j.js.map +1 -0
  41. package/dist/Input-CScC87J5.cjs +185 -0
  42. package/dist/Input-CScC87J5.cjs.map +1 -0
  43. package/dist/Input-DP_fKl38.js +186 -0
  44. package/dist/Input-DP_fKl38.js.map +1 -0
  45. package/dist/Modal-BN5s-Tfk.cjs +347 -0
  46. package/dist/Modal-BN5s-Tfk.cjs.map +1 -0
  47. package/dist/Modal-BRZMPwDj.js +348 -0
  48. package/dist/Modal-BRZMPwDj.js.map +1 -0
  49. package/dist/README.md +243 -0
  50. package/dist/RadioGroup-Dd0rHXSX.cjs +202 -0
  51. package/dist/RadioGroup-Dd0rHXSX.cjs.map +1 -0
  52. package/dist/RadioGroup-bO-ahP9T.js +203 -0
  53. package/dist/RadioGroup-bO-ahP9T.js.map +1 -0
  54. package/dist/Select-Dycmh9vt.js +256 -0
  55. package/dist/Select-Dycmh9vt.js.map +1 -0
  56. package/dist/Select-kqR48jZU.cjs +255 -0
  57. package/dist/Select-kqR48jZU.cjs.map +1 -0
  58. package/dist/Stat-BUcFCGrz.cjs +83 -0
  59. package/dist/Stat-BUcFCGrz.cjs.map +1 -0
  60. package/dist/Stat-C06A_izS.js +84 -0
  61. package/dist/Stat-C06A_izS.js.map +1 -0
  62. package/dist/StatusMessage-B3nXpuRl.cjs +88 -0
  63. package/dist/StatusMessage-B3nXpuRl.cjs.map +1 -0
  64. package/dist/StatusMessage-D0WgSBx7.js +89 -0
  65. package/dist/StatusMessage-D0WgSBx7.js.map +1 -0
  66. package/dist/Step-BArsou1V.js +301 -0
  67. package/dist/Step-BArsou1V.js.map +1 -0
  68. package/dist/Step-Nd7SJbRZ.cjs +300 -0
  69. package/dist/Step-Nd7SJbRZ.cjs.map +1 -0
  70. package/dist/Switch-CQFOopYy.cjs +182 -0
  71. package/dist/Switch-CQFOopYy.cjs.map +1 -0
  72. package/dist/Switch-D72dpkH2.js +183 -0
  73. package/dist/Switch-D72dpkH2.js.map +1 -0
  74. package/dist/Tab-BbP8jBcK.cjs +110 -0
  75. package/dist/Tab-BbP8jBcK.cjs.map +1 -0
  76. package/dist/Tab-BxSxKJsP.js +111 -0
  77. package/dist/Tab-BxSxKJsP.js.map +1 -0
  78. package/dist/Table-C2LbW0B1.js +531 -0
  79. package/dist/Table-C2LbW0B1.js.map +1 -0
  80. package/dist/Table-C4OM6rrC.cjs +530 -0
  81. package/dist/Table-C4OM6rrC.cjs.map +1 -0
  82. package/dist/components/ActionMenu/ActionMenu.cjs +52 -52
  83. package/dist/components/ActionMenu/ActionMenu.cjs.map +1 -1
  84. package/dist/components/ActionMenu/ActionMenu.d.ts +20 -36
  85. package/dist/components/ActionMenu/ActionMenu.js +55 -55
  86. package/dist/components/ActionMenu/ActionMenu.js.map +1 -1
  87. package/dist/components/ActionMenu/index.d.ts +2 -2
  88. package/dist/components/AppBar/AppBar.cjs +3 -220
  89. package/dist/components/AppBar/AppBar.cjs.map +1 -1
  90. package/dist/components/AppBar/AppBar.d.ts +6 -6
  91. package/dist/components/AppBar/AppBar.js +6 -223
  92. package/dist/components/AppBar/AppBar.js.map +1 -1
  93. package/dist/components/AppBar/index.d.ts +0 -6
  94. package/dist/components/Autocomplete/Autocomplete.cjs +4 -311
  95. package/dist/components/Autocomplete/Autocomplete.cjs.map +1 -1
  96. package/dist/components/Autocomplete/Autocomplete.d.ts +8 -6
  97. package/dist/components/Autocomplete/Autocomplete.helpers.d.ts +8 -4
  98. package/dist/components/Autocomplete/Autocomplete.js +4 -311
  99. package/dist/components/Autocomplete/Autocomplete.js.map +1 -1
  100. package/dist/components/Autocomplete/_parts/AutocompleteOption.d.ts +5 -8
  101. package/dist/components/Autocomplete/index.d.ts +1 -1
  102. package/dist/components/Avatar/Avatar.cjs +2 -160
  103. package/dist/components/Avatar/Avatar.cjs.map +1 -1
  104. package/dist/components/Avatar/Avatar.js +2 -160
  105. package/dist/components/Avatar/Avatar.js.map +1 -1
  106. package/dist/components/Avatar/index.d.ts +1 -0
  107. package/dist/components/Button/Button.d.ts +5 -5
  108. package/dist/components/Button/index.d.ts +1 -0
  109. package/dist/components/Card/Card.cjs +4 -184
  110. package/dist/components/Card/Card.cjs.map +1 -1
  111. package/dist/components/Card/Card.d.ts +3 -50
  112. package/dist/components/Card/Card.js +4 -184
  113. package/dist/components/Card/Card.js.map +1 -1
  114. package/dist/components/Card/Card.sx.d.ts +3 -6
  115. package/dist/components/Card/index.d.ts +1 -1
  116. package/dist/components/Checkbox/Checkbox.cjs +6 -0
  117. package/dist/components/Checkbox/Checkbox.cjs.map +1 -0
  118. package/dist/components/Checkbox/Checkbox.d.ts +55 -0
  119. package/dist/components/Checkbox/Checkbox.js +6 -0
  120. package/dist/components/Checkbox/Checkbox.js.map +1 -0
  121. package/dist/components/Checkbox/Checkbox.sx.d.ts +13 -0
  122. package/dist/components/Checkbox/index.d.ts +2 -0
  123. package/dist/components/Checkbox.d.ts +6 -0
  124. package/dist/components/Chip/Chip.cjs +4 -72
  125. package/dist/components/Chip/Chip.cjs.map +1 -1
  126. package/dist/components/Chip/Chip.js +3 -71
  127. package/dist/components/Chip/Chip.js.map +1 -1
  128. package/dist/components/Chip/index.d.ts +2 -1
  129. package/dist/components/Chip.d.ts +4 -0
  130. package/dist/components/Column/Column.cjs +1 -1
  131. package/dist/components/Column/Column.cjs.map +1 -1
  132. package/dist/components/Column/Column.d.ts +1 -1
  133. package/dist/components/Column/Column.js +1 -1
  134. package/dist/components/Column/Column.js.map +1 -1
  135. package/dist/components/Column/index.d.ts +1 -0
  136. package/dist/components/DatePicker/DatePicker.cjs +3 -200
  137. package/dist/components/DatePicker/DatePicker.cjs.map +1 -1
  138. package/dist/components/DatePicker/DatePicker.d.ts +1 -13
  139. package/dist/components/DatePicker/DatePicker.js +3 -200
  140. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  141. package/dist/components/DatePicker/index.d.ts +1 -1
  142. package/dist/components/DateTimePicker/DateTimePicker.cjs +3 -219
  143. package/dist/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
  144. package/dist/components/DateTimePicker/DateTimePicker.d.ts +10 -6
  145. package/dist/components/DateTimePicker/DateTimePicker.definitions.d.ts +2 -0
  146. package/dist/components/DateTimePicker/DateTimePicker.helpers.d.ts +4 -2
  147. package/dist/components/DateTimePicker/DateTimePicker.js +3 -219
  148. package/dist/components/DateTimePicker/DateTimePicker.js.map +1 -1
  149. package/dist/components/DateTimePicker/index.d.ts +1 -1
  150. package/dist/components/Drawer/Drawer.cjs +25 -24
  151. package/dist/components/Drawer/Drawer.cjs.map +1 -1
  152. package/dist/components/Drawer/Drawer.d.ts +8 -1
  153. package/dist/components/Drawer/Drawer.js +26 -25
  154. package/dist/components/Drawer/Drawer.js.map +1 -1
  155. package/dist/components/Drawer/DrawerItem.d.ts +6 -1
  156. package/dist/components/Gallery/Gallery.cjs +154 -79
  157. package/dist/components/Gallery/Gallery.cjs.map +1 -1
  158. package/dist/components/Gallery/Gallery.d.ts +25 -9
  159. package/dist/components/Gallery/Gallery.js +154 -79
  160. package/dist/components/Gallery/Gallery.js.map +1 -1
  161. package/dist/components/Gallery/GalleryLightbox.d.ts +6 -10
  162. package/dist/components/Gallery/GalleryMain.d.ts +3 -7
  163. package/dist/components/Gallery/GalleryThumbnails.d.ts +7 -11
  164. package/dist/components/Gallery/index.d.ts +2 -1
  165. package/dist/components/Gallery.d.ts +4 -0
  166. package/dist/components/Icon/Icon.cjs +6 -8
  167. package/dist/components/Icon/Icon.cjs.map +1 -1
  168. package/dist/components/Icon/Icon.d.ts +11 -17
  169. package/dist/components/Icon/Icon.js +7 -9
  170. package/dist/components/Icon/Icon.js.map +1 -1
  171. package/dist/components/Icon/index.d.ts +2 -1
  172. package/dist/components/Icon.d.ts +4 -0
  173. package/dist/components/Input/Input.cjs +3 -172
  174. package/dist/components/Input/Input.cjs.map +1 -1
  175. package/dist/components/Input/Input.d.ts +9 -2
  176. package/dist/components/Input/Input.definitions.d.ts +1 -0
  177. package/dist/components/Input/Input.helpers.d.ts +3 -3
  178. package/dist/components/Input/Input.js +3 -172
  179. package/dist/components/Input/Input.js.map +1 -1
  180. package/dist/components/Input/index.d.ts +1 -1
  181. package/dist/components/InputGroup/InputGroup.cjs +23 -22
  182. package/dist/components/InputGroup/InputGroup.cjs.map +1 -1
  183. package/dist/components/InputGroup/InputGroup.d.ts +4 -4
  184. package/dist/components/InputGroup/InputGroup.js +22 -21
  185. package/dist/components/InputGroup/InputGroup.js.map +1 -1
  186. package/dist/components/InputGroup/index.d.ts +2 -1
  187. package/dist/components/InputGroup.d.ts +4 -0
  188. package/dist/components/Modal/Modal.cjs +7 -317
  189. package/dist/components/Modal/Modal.cjs.map +1 -1
  190. package/dist/components/Modal/Modal.d.ts +20 -5
  191. package/dist/components/Modal/Modal.js +6 -316
  192. package/dist/components/Modal/Modal.js.map +1 -1
  193. package/dist/components/Modal/ModalBody.d.ts +6 -1
  194. package/dist/components/Modal/ModalFooter.d.ts +4 -4
  195. package/dist/components/Modal/ModalHeader.d.ts +6 -1
  196. package/dist/components/Modal/index.d.ts +4 -1
  197. package/dist/components/Modal.d.ts +4 -0
  198. package/dist/components/RadioGroup/RadioGroup.cjs +6 -0
  199. package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -0
  200. package/dist/components/RadioGroup/RadioGroup.d.ts +59 -0
  201. package/dist/components/RadioGroup/RadioGroup.definitions.d.ts +6 -0
  202. package/dist/components/RadioGroup/RadioGroup.js +6 -0
  203. package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
  204. package/dist/components/RadioGroup/RadioGroup.sx.d.ts +20 -0
  205. package/dist/components/RadioGroup/index.d.ts +2 -0
  206. package/dist/components/RadioGroup.d.ts +6 -0
  207. package/dist/components/Select/Select.cjs +4 -445
  208. package/dist/components/Select/Select.cjs.map +1 -1
  209. package/dist/components/Select/Select.d.ts +15 -18
  210. package/dist/components/Select/Select.helpers.d.ts +5 -19
  211. package/dist/components/Select/Select.js +4 -445
  212. package/dist/components/Select/Select.js.map +1 -1
  213. package/dist/components/Select/index.d.ts +1 -1
  214. package/dist/components/Stat/Stat.cjs +4 -83
  215. package/dist/components/Stat/Stat.cjs.map +1 -1
  216. package/dist/components/Stat/Stat.js +3 -82
  217. package/dist/components/Stat/Stat.js.map +1 -1
  218. package/dist/components/Stat/index.d.ts +2 -1
  219. package/dist/components/Stat.d.ts +4 -0
  220. package/dist/components/StatusMessage/StatusMessage.cjs +4 -77
  221. package/dist/components/StatusMessage/StatusMessage.cjs.map +1 -1
  222. package/dist/components/StatusMessage/StatusMessage.d.ts +20 -36
  223. package/dist/components/StatusMessage/StatusMessage.js +3 -76
  224. package/dist/components/StatusMessage/StatusMessage.js.map +1 -1
  225. package/dist/components/StatusMessage/index.d.ts +2 -1
  226. package/dist/components/StatusMessage.d.ts +4 -0
  227. package/dist/components/Stepper/Stepper.cjs +8 -47
  228. package/dist/components/Stepper/Stepper.cjs.map +1 -1
  229. package/dist/components/Stepper/Stepper.d.ts +9 -8
  230. package/dist/components/Stepper/Stepper.js +7 -46
  231. package/dist/components/Stepper/Stepper.js.map +1 -1
  232. package/dist/{hooks/Wizard/WizardContext.d.ts → components/Stepper/StepperContext.d.ts} +29 -23
  233. package/dist/components/Stepper/_hooks/useHorizontalScroll.d.ts +19 -0
  234. package/dist/components/Stepper/_parts/StepperScrollArrow.d.ts +19 -0
  235. package/dist/components/Stepper/index.d.ts +6 -2
  236. package/dist/components/Stepper.d.ts +4 -0
  237. package/dist/components/Switch/Switch.cjs +6 -0
  238. package/dist/components/Switch/Switch.cjs.map +1 -0
  239. package/dist/components/Switch/Switch.d.ts +48 -0
  240. package/dist/components/Switch/Switch.definitions.d.ts +7 -0
  241. package/dist/components/Switch/Switch.js +6 -0
  242. package/dist/components/Switch/Switch.js.map +1 -0
  243. package/dist/components/Switch/Switch.sx.d.ts +22 -0
  244. package/dist/components/Switch/Switch.types.d.ts +1 -0
  245. package/dist/components/Switch/index.d.ts +2 -0
  246. package/dist/components/Switch.d.ts +6 -0
  247. package/dist/components/Table/Table.cjs +2 -528
  248. package/dist/components/Table/Table.cjs.map +1 -1
  249. package/dist/components/Table/Table.d.ts +1 -1
  250. package/dist/components/Table/Table.js +2 -528
  251. package/dist/components/Table/Table.js.map +1 -1
  252. package/dist/components/Tabs/Tabs.cjs +5 -94
  253. package/dist/components/Tabs/Tabs.cjs.map +1 -1
  254. package/dist/components/Tabs/Tabs.d.ts +21 -16
  255. package/dist/components/Tabs/Tabs.js +4 -93
  256. package/dist/components/Tabs/Tabs.js.map +1 -1
  257. package/dist/components/Tabs/index.d.ts +4 -2
  258. package/dist/components/Tabs.d.ts +4 -0
  259. package/dist/components/Timeline/Timeline.cjs +3 -2
  260. package/dist/components/Timeline/Timeline.cjs.map +1 -1
  261. package/dist/components/Timeline/Timeline.d.ts +4 -8
  262. package/dist/components/Timeline/Timeline.js +3 -2
  263. package/dist/components/Timeline/Timeline.js.map +1 -1
  264. package/dist/components/Timeline/index.d.ts +4 -2
  265. package/dist/components/Timeline.d.ts +4 -0
  266. package/dist/components/_shared/mergeSx.d.ts +7 -0
  267. package/dist/{formField.sx-DfVbMe0V.js → formField.sx-8_QRnKxv.js} +2 -11
  268. package/dist/formField.sx-8_QRnKxv.js.map +1 -0
  269. package/dist/{formField.sx-CQ1mbk9M.cjs → formField.sx-BAX7KwMR.cjs} +10 -19
  270. package/dist/formField.sx-BAX7KwMR.cjs.map +1 -0
  271. package/dist/index.cjs +92 -2
  272. package/dist/index.cjs.map +1 -1
  273. package/dist/index.d.ts +32 -0
  274. package/dist/index.js +66 -3
  275. package/dist/index.js.map +1 -1
  276. package/dist/mergeSx-BXoNZjB_.js +10 -0
  277. package/dist/mergeSx-BXoNZjB_.js.map +1 -0
  278. package/dist/mergeSx-Dbccoo_H.cjs +9 -0
  279. package/dist/mergeSx-Dbccoo_H.cjs.map +1 -0
  280. package/dist/mui.d.ts +3 -1
  281. package/dist/package.json +190 -0
  282. package/dist/{resolvePreset-CT3kU-K2.cjs → resolvePreset-CxTI6_Ln.cjs} +3 -3
  283. package/dist/{resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +1 -1
  284. package/dist/{resolvePreset-B-IB0ehH.js → resolvePreset-K6_BfWHD.js} +3 -3
  285. package/dist/{resolvePreset-B-IB0ehH.js.map → resolvePreset-K6_BfWHD.js.map} +1 -1
  286. package/dist/theme/componentStyles.d.ts +1 -1
  287. package/dist/tokens-BRrcP_p_.js +21 -0
  288. package/dist/tokens-BRrcP_p_.js.map +1 -0
  289. package/dist/tokens-jaWWNk39.cjs +20 -0
  290. package/dist/tokens-jaWWNk39.cjs.map +1 -0
  291. package/dist/utils/index.d.ts +2 -0
  292. package/dist/{components/ScrollTopButton → utils}/scrollToTop.d.ts +6 -7
  293. package/package.json +25 -48
  294. package/rollup.config.cjs +87 -0
  295. package/scripts/gen-dist-pkg.mjs +15 -0
  296. package/shared-library-comercios-MUI.code-workspace +10 -0
  297. package/src/components/ActionMenu/ActionMenu.stories.tsx +427 -0
  298. package/src/components/ActionMenu/ActionMenu.tsx +153 -0
  299. package/src/components/ActionMenu/index.ts +2 -0
  300. package/src/components/AppBar/AppBar.stories.tsx +316 -0
  301. package/src/components/AppBar/AppBar.sx.ts +32 -0
  302. package/src/components/AppBar/AppBar.tsx +119 -0
  303. package/src/components/AppBar/AppBarContext.ts +25 -0
  304. package/src/components/AppBar/AppBarMenuToggle.tsx +90 -0
  305. package/src/components/AppBar/index.ts +12 -0
  306. package/src/components/Autocomplete/Autocomplete.definitions.ts +477 -0
  307. package/src/components/Autocomplete/Autocomplete.helpers.ts +80 -0
  308. package/src/components/Autocomplete/Autocomplete.stories.tsx +784 -0
  309. package/src/components/Autocomplete/Autocomplete.sx.ts +30 -0
  310. package/src/components/Autocomplete/Autocomplete.tsx +393 -0
  311. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +55 -0
  312. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +17 -0
  313. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +29 -0
  314. package/src/components/Autocomplete/index.ts +12 -0
  315. package/src/components/Avatar/Avatar.definitions.ts +162 -0
  316. package/src/components/Avatar/Avatar.stories.tsx +258 -0
  317. package/src/components/Avatar/Avatar.tsx +206 -0
  318. package/src/components/Avatar/index.ts +2 -0
  319. package/src/components/Button/Button.definition.ts +97 -0
  320. package/src/components/Button/Button.stories.tsx +285 -0
  321. package/src/components/Button/Button.tsx +66 -0
  322. package/src/components/Button/index.ts +2 -0
  323. package/src/components/Card/Card.definition.ts +5 -0
  324. package/src/components/Card/Card.stories.tsx +102 -0
  325. package/src/components/Card/Card.sx.ts +58 -0
  326. package/src/components/Card/Card.tsx +85 -0
  327. package/src/components/Card/index.ts +4 -0
  328. package/src/components/Checkbox/Checkbox.stories.tsx +212 -0
  329. package/src/components/Checkbox/Checkbox.sx.ts +67 -0
  330. package/src/components/Checkbox/Checkbox.tsx +208 -0
  331. package/src/components/Checkbox/index.ts +10 -0
  332. package/src/components/Chip/Chip.definitions.ts +167 -0
  333. package/src/components/Chip/Chip.stories.tsx +265 -0
  334. package/src/components/Chip/Chip.tsx +61 -0
  335. package/src/components/Chip/index.ts +2 -0
  336. package/src/components/Column/Column.tsx +29 -0
  337. package/src/components/Column/index.ts +2 -0
  338. package/src/components/DatePicker/DatePicker.definitions.ts +228 -0
  339. package/src/components/DatePicker/DatePicker.helpers.ts +24 -0
  340. package/src/components/DatePicker/DatePicker.stories.tsx +309 -0
  341. package/src/components/DatePicker/DatePicker.sx.ts +33 -0
  342. package/src/components/DatePicker/DatePicker.tsx +133 -0
  343. package/src/components/DatePicker/index.ts +7 -0
  344. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +317 -0
  345. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +45 -0
  346. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +415 -0
  347. package/src/components/DateTimePicker/DateTimePicker.sx.ts +30 -0
  348. package/src/components/DateTimePicker/DateTimePicker.tsx +240 -0
  349. package/src/components/DateTimePicker/index.ts +9 -0
  350. package/src/components/Drawer/Drawer.stories.tsx +438 -0
  351. package/src/components/Drawer/Drawer.sx.ts +106 -0
  352. package/src/components/Drawer/Drawer.tsx +224 -0
  353. package/src/components/Drawer/DrawerContext.ts +26 -0
  354. package/src/components/Drawer/DrawerItem.tsx +120 -0
  355. package/src/components/Drawer/index.ts +10 -0
  356. package/src/components/Flyout/Flyout.stories.tsx +282 -0
  357. package/src/components/Flyout/Flyout.tsx +122 -0
  358. package/src/components/Flyout/index.ts +1 -0
  359. package/src/components/Gallery/Gallery.definition.tsx +37 -0
  360. package/src/components/Gallery/Gallery.stories.tsx +82 -0
  361. package/src/components/Gallery/Gallery.tsx +158 -0
  362. package/src/components/Gallery/GalleryLightbox.tsx +186 -0
  363. package/src/components/Gallery/GalleryMain.tsx +87 -0
  364. package/src/components/Gallery/GalleryThumbnails.tsx +122 -0
  365. package/src/components/Gallery/index.ts +2 -0
  366. package/src/components/Icon/Icon.stories.tsx +121 -0
  367. package/src/components/Icon/Icon.tsx +163 -0
  368. package/src/components/Icon/index.ts +2 -0
  369. package/src/components/Input/Input.definitions.ts +348 -0
  370. package/src/components/Input/Input.helpers.ts +50 -0
  371. package/src/components/Input/Input.stories.tsx +528 -0
  372. package/src/components/Input/Input.sx.ts +42 -0
  373. package/src/components/Input/Input.tsx +162 -0
  374. package/src/components/Input/index.ts +10 -0
  375. package/src/components/InputGroup/InputGroup.definitions.ts +158 -0
  376. package/src/components/InputGroup/InputGroup.stories.tsx +267 -0
  377. package/src/components/InputGroup/InputGroup.tsx +180 -0
  378. package/src/components/InputGroup/index.ts +2 -0
  379. package/src/components/MenuButton/MenuButton.stories.tsx +197 -0
  380. package/src/components/MenuButton/MenuButton.tsx +100 -0
  381. package/src/components/MenuButton/index.ts +1 -0
  382. package/src/components/Modal/Modal.stories.tsx +721 -0
  383. package/src/components/Modal/Modal.tsx +407 -0
  384. package/src/components/Modal/ModalBody.tsx +23 -0
  385. package/src/components/Modal/ModalFooter.tsx +83 -0
  386. package/src/components/Modal/ModalHeader.tsx +33 -0
  387. package/src/components/Modal/index.ts +11 -0
  388. package/src/components/RadioGroup/RadioGroup.definitions.ts +177 -0
  389. package/src/components/RadioGroup/RadioGroup.stories.tsx +231 -0
  390. package/src/components/RadioGroup/RadioGroup.sx.ts +75 -0
  391. package/src/components/RadioGroup/RadioGroup.tsx +207 -0
  392. package/src/components/RadioGroup/index.ts +10 -0
  393. package/src/components/Select/Select.helpers.ts +31 -0
  394. package/src/components/Select/Select.stories.tsx +393 -0
  395. package/src/components/Select/Select.sx.ts +14 -0
  396. package/src/components/Select/Select.tsx +332 -0
  397. package/src/components/Select/_parts/SelectMenuItem.tsx +40 -0
  398. package/src/components/Select/_parts/SelectValue.tsx +95 -0
  399. package/src/components/Select/index.ts +12 -0
  400. package/src/components/Stat/Stat.stories.tsx +85 -0
  401. package/src/components/Stat/Stat.tsx +117 -0
  402. package/src/components/Stat/index.ts +2 -0
  403. package/src/components/StatusMessage/StatusMessage.stories.tsx +159 -0
  404. package/src/components/StatusMessage/StatusMessage.tsx +143 -0
  405. package/src/components/StatusMessage/index.ts +3 -0
  406. package/src/components/Stepper/Step.tsx +21 -0
  407. package/src/components/Stepper/Stepper.definition.ts +75 -0
  408. package/src/components/Stepper/Stepper.stories.tsx +194 -0
  409. package/src/components/Stepper/Stepper.tsx +194 -0
  410. package/src/components/Stepper/StepperContext.tsx +176 -0
  411. package/src/components/Stepper/StepperProvider.stories.tsx +286 -0
  412. package/src/components/Stepper/_hooks/useHorizontalScroll.ts +56 -0
  413. package/src/components/Stepper/_parts/StepperScrollArrow.tsx +50 -0
  414. package/src/components/Stepper/index.ts +15 -0
  415. package/src/components/Switch/Switch.definitions.ts +134 -0
  416. package/src/components/Switch/Switch.stories.tsx +213 -0
  417. package/src/components/Switch/Switch.sx.ts +81 -0
  418. package/src/components/Switch/Switch.tsx +188 -0
  419. package/src/components/Switch/Switch.types.ts +10 -0
  420. package/src/components/Switch/index.ts +9 -0
  421. package/src/components/Table/EmptyTable.png +0 -0
  422. package/src/components/Table/Table.definition.ts +580 -0
  423. package/src/components/Table/Table.stories.tsx +853 -0
  424. package/src/components/Table/Table.tsx +494 -0
  425. package/src/components/Table/data.ts +134 -0
  426. package/src/components/Table/exportsUtils.ts +195 -0
  427. package/src/components/Table/index.ts +3 -0
  428. package/src/components/Table/types.ts +34 -0
  429. package/src/components/Tabs/Tab.definition.ts +53 -0
  430. package/src/components/Tabs/Tab.tsx +19 -0
  431. package/src/components/Tabs/Tabs.stories.tsx +118 -0
  432. package/src/components/Tabs/Tabs.tsx +163 -0
  433. package/src/components/Tabs/_tabUtils.tsx +4 -0
  434. package/src/components/Tabs/index.ts +5 -0
  435. package/src/components/Timeline/Timeline.definition.ts +43 -0
  436. package/src/components/Timeline/Timeline.stories.tsx +108 -0
  437. package/src/components/Timeline/Timeline.tsx +44 -0
  438. package/src/components/Timeline/TimelineItem.tsx +31 -0
  439. package/src/components/Timeline/index.ts +5 -0
  440. package/src/components/Tooltip/Tooltip.stories.tsx +129 -0
  441. package/src/components/Tooltip/Tooltip.tsx +58 -0
  442. package/src/components/Tooltip/index.ts +1 -0
  443. package/src/components/_shared/formField.sx.ts +118 -0
  444. package/src/components/_shared/mergeSx.ts +16 -0
  445. package/src/components/_shared/resolvePreset.ts +38 -0
  446. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +168 -0
  447. package/src/hooks/ClipBoard/ClipBoard.tsx +131 -0
  448. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +111 -0
  449. package/src/hooks/ClipBoard/index.ts +1 -0
  450. package/src/index.ts +51 -0
  451. package/src/mui.ts +57 -0
  452. package/src/styles.css +3 -0
  453. package/src/theme/componentStyles.ts +50 -0
  454. package/src/theme/tokens.ts +43 -0
  455. package/src/utils/index.ts +2 -0
  456. package/src/utils/scrollToTop.ts +36 -0
  457. package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
  458. package/storybook-static/assets/AccountCircle-BDZFsbTw.js +1 -0
  459. package/storybook-static/assets/ActionMenu-EynP8yU1.js +19 -0
  460. package/storybook-static/assets/ActionMenu.stories-DqSqRGix.js +185 -0
  461. package/storybook-static/assets/Alert-3zvTPc0p.js +1 -0
  462. package/storybook-static/assets/AppBar.stories-DcX3M5th.js +172 -0
  463. package/storybook-static/assets/Autocomplete.stories-CXJm8FOT.js +788 -0
  464. package/storybook-static/assets/Avatar-NbFfkZws.js +1 -0
  465. package/storybook-static/assets/Avatar.stories-CwOYCzqU.js +390 -0
  466. package/storybook-static/assets/Box-BnhEcfFm.js +1 -0
  467. package/storybook-static/assets/Button-D9h7OggD.js +1 -0
  468. package/storybook-static/assets/Button-DBpqmVB_.js +1 -0
  469. package/storybook-static/assets/Button.stories-F20dmnjq.js +320 -0
  470. package/storybook-static/assets/ButtonBase-qyaMEhe4.js +74 -0
  471. package/storybook-static/assets/Card.stories-B3NpAhO0.js +154 -0
  472. package/storybook-static/assets/CheckCircleOutline-CEj5mDsl.js +1 -0
  473. package/storybook-static/assets/Chip-C3vKPpzR.js +1 -0
  474. package/storybook-static/assets/Chip.stories-sxcfHVo9.js +333 -0
  475. package/storybook-static/assets/CircularProgress-DC7ZNWwl.js +28 -0
  476. package/storybook-static/assets/Clear-4kYcKvT3.js +1 -0
  477. package/storybook-static/assets/ClipBoard-DvLBdNHe.js +1 -0
  478. package/storybook-static/assets/ClipBoard.stories-BGUo47r6.js +108 -0
  479. package/storybook-static/assets/Close-CgHeRgmh.js +1 -0
  480. package/storybook-static/assets/Close-Cy8nELYU.js +1 -0
  481. package/storybook-static/assets/Color-AVL7NMMY-BJKvwERm.js +1 -0
  482. package/storybook-static/assets/ContentCopy-BfLTDb10.js +1 -0
  483. package/storybook-static/assets/DatePicker-Clkpr-Ku.js +1 -0
  484. package/storybook-static/assets/DatePicker.stories-EaUCMkh3.js +444 -0
  485. package/storybook-static/assets/DateRangePicker.stories-BMlkj-8K.js +390 -0
  486. package/storybook-static/assets/DateTimePicker.stories-B6gdzKq5.js +555 -0
  487. package/storybook-static/assets/DefaultPropsProvider-BGoQxtDa.js +16 -0
  488. package/storybook-static/assets/Delete-D2SMMmIA.js +1 -0
  489. package/storybook-static/assets/DialogContent-BeCDKgax.js +1 -0
  490. package/storybook-static/assets/Divider-BbCj9wT4.js +1 -0
  491. package/storybook-static/assets/DocsRenderer-PQXLIZUC-BebLK5Y_.js +1243 -0
  492. package/storybook-static/assets/Drawer-DcFwy73r.js +1 -0
  493. package/storybook-static/assets/Drawer.stories-C5AZkJBk.js +173 -0
  494. package/storybook-static/assets/EmptyTable-B-RKtgVs.png +0 -0
  495. package/storybook-static/assets/ErrorOutline-D9gM7ART.js +1 -0
  496. package/storybook-static/assets/Fade-Ll96CvH8.js +1 -0
  497. package/storybook-static/assets/Flyout.stories-Cf7z6MNw.js +163 -0
  498. package/storybook-static/assets/Gallery.stories-DdpWVTF6.js +127 -0
  499. package/storybook-static/assets/Grow-8y4FglGK.js +1 -0
  500. package/storybook-static/assets/Home-BRvJEp2L.js +1 -0
  501. package/storybook-static/assets/Icon.stories-D0mUiW_t.js +78 -0
  502. package/storybook-static/assets/IconButton-9OYSTH58.js +1 -0
  503. package/storybook-static/assets/Input-CjX0t4h-.js +1 -0
  504. package/storybook-static/assets/Input.stories-BRxekliy.js +650 -0
  505. package/storybook-static/assets/InputGroup.stories-DH6gUfmn.js +306 -0
  506. package/storybook-static/assets/KeyboardArrowRight-WO_attK2.js +1 -0
  507. package/storybook-static/assets/KeyboardArrowUp-DsyVef-i.js +1 -0
  508. package/storybook-static/assets/ListItem-D3O0103N.js +1 -0
  509. package/storybook-static/assets/ListItemIcon-hca6xN79.js +1 -0
  510. package/storybook-static/assets/ListItemText-BFLAwLdl.js +1 -0
  511. package/storybook-static/assets/Logout-gj-P3AfU.js +1 -0
  512. package/storybook-static/assets/Menu-ClzfjLc3.js +1 -0
  513. package/storybook-static/assets/MenuButton.stories-B-W_QVDt.js +162 -0
  514. package/storybook-static/assets/MenuItem-iU6tAqJI.js +1 -0
  515. package/storybook-static/assets/Modal-3okp9H2i.js +1 -0
  516. package/storybook-static/assets/Modal.stories-DIWzm4qR.js +468 -0
  517. package/storybook-static/assets/MoreVert-BoIVG4gh.js +1 -0
  518. package/storybook-static/assets/Notifications-DY_A-Sho.js +1 -0
  519. package/storybook-static/assets/PageLoader.stories-DmtO1mlm.js +158 -0
  520. package/storybook-static/assets/Paper-SwQBhqI7.js +1 -0
  521. package/storybook-static/assets/Person-CkQl-mpq.js +1 -0
  522. package/storybook-static/assets/PickersModalDialog-Tjnr_cu5.js +10 -0
  523. package/storybook-static/assets/PickersToolbarButton-Tt185-si.js +1 -0
  524. package/storybook-static/assets/Popper-CnCTYXxy.js +1 -0
  525. package/storybook-static/assets/Portal-Cj8XF9Lf.js +1 -0
  526. package/storybook-static/assets/ScrollTopButton.stories-BflQCwNP.js +90 -0
  527. package/storybook-static/assets/Select-CjcuMAY0.js +4 -0
  528. package/storybook-static/assets/Select-DJh2biEb.js +3 -0
  529. package/storybook-static/assets/Select.stories-DU1Gb3I2.js +1103 -0
  530. package/storybook-static/assets/Settings-BLKc1CnO.js +1 -0
  531. package/storybook-static/assets/Snackbar-BtVeKTw6.js +1 -0
  532. package/storybook-static/assets/Stack-D01OUIXi.js +1 -0
  533. package/storybook-static/assets/Stat.stories-Bn9-iuPT.js +60 -0
  534. package/storybook-static/assets/StatusMessage.stories-hnfX8FeU.js +73 -0
  535. package/storybook-static/assets/Stepper-BtKB5ykn.js +2 -0
  536. package/storybook-static/assets/Stepper.stories-CTEZbgPc.js +165 -0
  537. package/storybook-static/assets/Table.stories-CTn2Ktmn.js +1260 -0
  538. package/storybook-static/assets/TableContainer-CzLNaEU-.js +1 -0
  539. package/storybook-static/assets/TableRow-CS88-1HF.js +2 -0
  540. package/storybook-static/assets/Tabs-DLpDOu_n.js +1 -0
  541. package/storybook-static/assets/Tabs.stories-BFVuFy_5.js +159 -0
  542. package/storybook-static/assets/TextField-22T-xHBm.js +1 -0
  543. package/storybook-static/assets/Timeline.stories-DJU_U2Hv.js +97 -0
  544. package/storybook-static/assets/Tooltip-DbnHUxNj.js +1 -0
  545. package/storybook-static/assets/Tooltip.stories-B7tA3dnV.js +66 -0
  546. package/storybook-static/assets/Typography-BgntX2Ep.js +1 -0
  547. package/storybook-static/assets/Wizard.stories-CVrJLK_D.js +23 -0
  548. package/storybook-static/assets/createSimplePaletteValueFilter-bm0fmN_7.js +1 -0
  549. package/storybook-static/assets/createSvgIcon-D_Gca4vA.js +1 -0
  550. package/storybook-static/assets/debounce-Be36O1Ab.js +1 -0
  551. package/storybook-static/assets/emotion-react.browser.esm--g-C9cX9.js +8 -0
  552. package/storybook-static/assets/extendSxProp-CEpa30hT.js +1 -0
  553. package/storybook-static/assets/formField.sx-DMCmZIAa.js +1 -0
  554. package/storybook-static/assets/getReactElementRef-BQ3ANZdy.js +1 -0
  555. package/storybook-static/assets/iframe-BAJnc_4n.js +1079 -0
  556. package/storybook-static/assets/index-B1tlhOpe.js +240 -0
  557. package/storybook-static/assets/index-BF3FAXTk.js +9 -0
  558. package/storybook-static/assets/index-CIeucmOB.js +2 -0
  559. package/storybook-static/assets/index-CY7j4a7o.js +1 -0
  560. package/storybook-static/assets/index-CxkKctw5.js +1 -0
  561. package/storybook-static/assets/isFocusVisible-B8k4qzLc.js +1 -0
  562. package/storybook-static/assets/isMuiElement-CTZSFcY5.js +1 -0
  563. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +9 -0
  564. package/storybook-static/assets/listItemTextClasses-CC_rwJam.js +1 -0
  565. package/storybook-static/assets/mergeSlotProps-B0UBKBMe.js +1 -0
  566. package/storybook-static/assets/ownerDocument-DW-IO8s5.js +1 -0
  567. package/storybook-static/assets/ownerWindow-HkKU3E4x.js +1 -0
  568. package/storybook-static/assets/preload-helper-PPVm8Dsz.js +1 -0
  569. package/storybook-static/assets/react-18-BUJ64QCV.js +25 -0
  570. package/storybook-static/assets/resolvePreset-CN2aOJJr.js +1 -0
  571. package/storybook-static/assets/useControlled-DsVh1a5j.js +1 -0
  572. package/storybook-static/assets/useForkRef-0ANIrxcF.js +1 -0
  573. package/storybook-static/assets/useId-b4fZxjOL.js +1 -0
  574. package/storybook-static/assets/useMobilePicker-DK-c8xbD.js +1 -0
  575. package/storybook-static/assets/usePreviousProps-WR0rG4aR.js +1 -0
  576. package/storybook-static/assets/useSlot-b6pXgp5_.js +1 -0
  577. package/storybook-static/assets/useSlotProps-C0uMfuBt.js +1 -0
  578. package/storybook-static/assets/useTheme-BmOJK7ra.js +1 -0
  579. package/storybook-static/assets/useThemeProps-DYtxXiUU.js +1 -0
  580. package/storybook-static/assets/useThemeProps-U4yXiZ_5.js +1 -0
  581. package/storybook-static/assets/useTimeout-DNjRaOWc.js +1 -0
  582. package/storybook-static/assets/visuallyHidden-Dan1xhjv.js +1 -0
  583. package/storybook-static/favicon-wrapper.svg +46 -0
  584. package/storybook-static/favicon.svg +1 -0
  585. package/storybook-static/iframe.html +686 -0
  586. package/storybook-static/index.html +160 -0
  587. package/storybook-static/index.json +1 -0
  588. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  589. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  590. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  591. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  592. package/storybook-static/project.json +1 -0
  593. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js +356 -0
  594. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js.LEGAL.txt +40 -0
  595. package/storybook-static/sb-addons/docs-4/manager-bundle.js +151 -0
  596. package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +127 -0
  597. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +971 -0
  598. package/storybook-static/sb-addons/vitest-3/manager-bundle.js +3 -0
  599. package/storybook-static/sb-common-assets/favicon-wrapper.svg +46 -0
  600. package/storybook-static/sb-common-assets/favicon.svg +1 -0
  601. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  602. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  603. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  604. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  605. package/storybook-static/sb-manager/globals-module-info.js +797 -0
  606. package/storybook-static/sb-manager/globals-runtime.js +69679 -0
  607. package/storybook-static/sb-manager/globals.js +34 -0
  608. package/storybook-static/sb-manager/runtime.js +13195 -0
  609. package/storybook-static/vite-inject-mocker-entry.js +18 -0
  610. package/tailwind.config.js +10 -0
  611. package/tsconfig.json +48 -0
  612. package/tsup.config.js +41 -0
  613. package/vite.config.js +132 -0
  614. package/vitest.config.ts +35 -0
  615. package/dist/components/AppBar/AppBarBrand.d.ts +0 -31
  616. package/dist/components/AppBar/AppBarUserMenu.d.ts +0 -65
  617. package/dist/components/Autocomplete/Autocomplete.types.d.ts +0 -1
  618. package/dist/components/DatePicker/DatePicker.types.d.ts +0 -1
  619. package/dist/components/DateRangePicker/DateRangePicker.cjs.map +0 -1
  620. package/dist/components/DateRangePicker/DateRangePicker.d.ts +0 -15
  621. package/dist/components/DateRangePicker/DateRangePicker.definitions.d.ts +0 -6
  622. package/dist/components/DateRangePicker/DateRangePicker.js.map +0 -1
  623. package/dist/components/DateRangePicker/index.d.ts +0 -1
  624. package/dist/components/DateRangePicker.d.ts +0 -2
  625. package/dist/components/DateTimePicker/DateTimePicker.types.d.ts +0 -1
  626. package/dist/components/Input/Input.types.d.ts +0 -1
  627. package/dist/components/PageLoader/PageLoader.cjs +0 -61
  628. package/dist/components/PageLoader/PageLoader.cjs.map +0 -1
  629. package/dist/components/PageLoader/PageLoader.d.ts +0 -38
  630. package/dist/components/PageLoader/PageLoader.js +0 -61
  631. package/dist/components/PageLoader/PageLoader.js.map +0 -1
  632. package/dist/components/PageLoader/index.d.ts +0 -2
  633. package/dist/components/PageLoader.d.ts +0 -6
  634. package/dist/components/ScrollTopButton/ScrollTopButton.cjs +0 -79
  635. package/dist/components/ScrollTopButton/ScrollTopButton.cjs.map +0 -1
  636. package/dist/components/ScrollTopButton/ScrollTopButton.d.ts +0 -48
  637. package/dist/components/ScrollTopButton/ScrollTopButton.js +0 -79
  638. package/dist/components/ScrollTopButton/ScrollTopButton.js.map +0 -1
  639. package/dist/components/ScrollTopButton/index.d.ts +0 -4
  640. package/dist/components/ScrollTopButton.d.ts +0 -6
  641. package/dist/components/Select/Select.definitions.d.ts +0 -17
  642. package/dist/components/Select/Select.types.d.ts +0 -1
  643. package/dist/components/Select/_parts/SelectSearchHeader.d.ts +0 -15
  644. package/dist/formField.sx-CQ1mbk9M.cjs.map +0 -1
  645. package/dist/formField.sx-DfVbMe0V.js.map +0 -1
  646. package/dist/hooks/Wizard/Wizard.cjs +0 -7
  647. package/dist/hooks/Wizard/Wizard.cjs.map +0 -1
  648. package/dist/hooks/Wizard/Wizard.js +0 -7
  649. package/dist/hooks/Wizard/Wizard.js.map +0 -1
  650. package/dist/hooks/Wizard/index.d.ts +0 -3
  651. package/dist/hooks/Wizard/useWizard.d.ts +0 -9
  652. package/dist/hooks/Wizard.d.ts +0 -2
  653. package/dist/useWizard-CWdIxZzX.cjs +0 -94
  654. package/dist/useWizard-CWdIxZzX.cjs.map +0 -1
  655. package/dist/useWizard-CWq--C3o.js +0 -95
  656. package/dist/useWizard-CWq--C3o.js.map +0 -1
  657. /package/dist/{styles.css → index.css} +0 -0
@@ -0,0 +1,265 @@
1
+ import type { Meta, StoryObj } from '@storybook/react';
2
+ import React from 'react';
3
+ import {
4
+ Box,
5
+ Typography,
6
+ Avatar, // Necesario para la historia con avatar
7
+ Chip as MuiChip, // Renombrado para evitar conflicto con nuestro componente Chip
8
+ } from '@mui/material';
9
+ import DeleteIcon from '@mui/icons-material/Delete'; // Icono para deletable chip
10
+ import FaceIcon from '@mui/icons-material/Face'; // Icono para chip con icono
11
+ import CheckCircleOutlineIcon from '@mui/icons-material/CheckCircleOutline'; // Icono para custom content
12
+
13
+ // Importa el componente Chip
14
+ import { Chip } from './Chip';
15
+
16
+ // Importa las definiciones de las historias
17
+ import {
18
+ BasicChipDefinition,
19
+ ClickableChipDefinition,
20
+ DeletableChipDefinition,
21
+ ChipWithAvatarDefinition,
22
+ ChipWithIconDefinition,
23
+ DisabledChipDefinition,
24
+ ChipVariantsDefinition,
25
+ ChipColorsDefinition,
26
+ ChipSizesDefinition,
27
+ CustomContentChipDefinition,
28
+ } from './Chip.definitions';
29
+
30
+ // =============================================================================
31
+ // Definición de las meta-propiedades para Storybook
32
+ // =============================================================================
33
+ const meta: Meta<typeof Chip> = {
34
+ title: 'Components/Chip',
35
+ component: Chip,
36
+ tags: ['autodocs'],
37
+ parameters: {
38
+ layout: 'centered',
39
+ docs: {
40
+ description: {
41
+ component: 'Un componente `Chip` reutilizable de Material UI que muestra una pequeña pieza de información. Soporta varias variantes visuales, avatares, iconos y acciones.',
42
+ },
43
+ },
44
+ },
45
+ argTypes: {
46
+ label: { control: 'text', description: 'El contenido principal del chip. Puede ser un string o JSX.' },
47
+ onClick: { action: 'clicked', description: 'Función de callback que se dispara al hacer click en el chip.' },
48
+ onDelete: { action: 'deleted', description: 'Función de callback que se dispara al hacer click en el botón de borrar del chip. Si se provee, muestra un botón de borrar.' },
49
+ avatar: { control: false, description: 'Un componente `Avatar` a mostrar al inicio del chip.' },
50
+ icon: { control: false, description: 'Un componente `Icon` a mostrar al inicio del chip (alternativa al avatar).' },
51
+ disabled: { control: 'boolean', description: 'Si es verdadero, el chip estará deshabilitado y no interactuable.' },
52
+ variant: {
53
+ control: 'radio',
54
+ options: ['filled', 'outlined'],
55
+ description: 'La variante visual del chip.',
56
+ defaultValue: 'filled',
57
+ },
58
+ color: {
59
+ control: 'select',
60
+ options: ['default', 'primary', 'secondary', 'error', 'info', 'success', 'warning'],
61
+ description: 'El color predefinido del chip.',
62
+ defaultValue: 'default',
63
+ },
64
+ size: {
65
+ control: 'radio',
66
+ options: ['small', 'medium'],
67
+ description: 'El tamaño del chip.',
68
+ defaultValue: 'medium',
69
+ },
70
+ },
71
+ };
72
+
73
+ export default meta;
74
+ type Story = StoryObj<typeof Chip>;
75
+
76
+ // =============================================================================
77
+ // Historias
78
+ // =============================================================================
79
+
80
+ export const BasicChip: Story = {
81
+ render: () => {
82
+ return <Chip label="Etiqueta Básica" />;
83
+ },
84
+ parameters: {
85
+ docs: {
86
+ description: {
87
+ story: "Un chip simple con solo una etiqueta de texto."
88
+ },
89
+ source: { code: BasicChipDefinition.trim() }
90
+ }
91
+ }
92
+ };
93
+
94
+ export const ClickableChip: Story = {
95
+ render: () => {
96
+ const handleClick = () => {
97
+ alert('Chip clickeado!');
98
+ };
99
+ return <Chip label="Clickeable" onClick={handleClick} />;
100
+ },
101
+ parameters: {
102
+ docs: {
103
+ description: {
104
+ story: "Un chip que puede ser clickeado y dispara un evento `onClick`."
105
+ },
106
+ source: { code: ClickableChipDefinition.trim() }
107
+ }
108
+ }
109
+ };
110
+
111
+ export const DeletableChip: Story = {
112
+ render: () => {
113
+ const handleDelete = () => {
114
+ alert('Chip borrado!');
115
+ };
116
+ return <Chip label="Borrable" onDelete={handleDelete} deleteIcon={<DeleteIcon />} />;
117
+ },
118
+ parameters: {
119
+ docs: {
120
+ description: {
121
+ story: "Un chip que incluye un botón de borrar (`DeleteIcon` por defecto o personalizado) y dispara un evento `onDelete`."
122
+ },
123
+ source: { code: DeletableChipDefinition.trim() }
124
+ }
125
+ }
126
+ };
127
+
128
+ export const ChipWithAvatar: Story = {
129
+ render: () => {
130
+ return (
131
+ <Chip
132
+ label="Con Avatar"
133
+ avatar={<Avatar alt="Avatar" src="https://placehold.co/40x40/FF7F50/FFFFFF?text=A" />}
134
+ />
135
+ );
136
+ },
137
+ parameters: {
138
+ docs: {
139
+ description: {
140
+ story: "Un chip que muestra un `Avatar` al inicio, útil para representar usuarios o entidades."
141
+ },
142
+ source: { code: ChipWithAvatarDefinition.trim() }
143
+ }
144
+ }
145
+ };
146
+
147
+ export const ChipWithIcon: Story = {
148
+ render: () => {
149
+ return <Chip label="Con Icono" icon={<FaceIcon />} />;
150
+ },
151
+ parameters: {
152
+ docs: {
153
+ description: {
154
+ story: "Un chip que muestra un `Icon` de Material UI al inicio, como alternativa a un avatar."
155
+ },
156
+ source: { code: ChipWithIconDefinition.trim() }
157
+ }
158
+ }
159
+ };
160
+
161
+ export const DisabledChip: Story = {
162
+ render: () => {
163
+ return (
164
+ <Box sx={{ display: 'flex', gap: 2 }}>
165
+ <Chip label="Deshabilitado" disabled />
166
+ <Chip label="Deshabilitado Borrable" onDelete={() => alert('No se puede borrar!')} disabled />
167
+ </Box>
168
+ );
169
+ },
170
+ parameters: {
171
+ docs: {
172
+ description: {
173
+ story: "Chips que están deshabilitados, impidiendo cualquier interacción o acción."
174
+ },
175
+ source: { code: DisabledChipDefinition.trim() }
176
+ }
177
+ }
178
+ };
179
+
180
+ export const ChipVariants: Story = {
181
+ render: () => {
182
+ return (
183
+ <Box sx={{ display: 'flex', gap: 2 }}>
184
+ <Chip label="Filled (Default)" />
185
+ <Chip label="Outlined" variant="outlined" />
186
+ </Box>
187
+ );
188
+ },
189
+ parameters: {
190
+ docs: {
191
+ story: "Demuestra las variantes `filled` (por defecto) y `outlined` del chip."
192
+ },
193
+ source: { code: ChipVariantsDefinition.trim() }
194
+ }
195
+ };
196
+
197
+ export const ChipColors: Story = {
198
+ render: () => {
199
+ return (
200
+ <Box sx={{ display: 'flex', flexWrap: 'wrap', gap: 2 }}>
201
+ <Chip label="Default" />
202
+ <Chip label="Primary" color="primary" />
203
+ <Chip label="Secondary" color="secondary" />
204
+ <Chip label="Error" color="error" />
205
+ <Chip label="Info" color="info" />
206
+ <Chip label="Success" color="success" />
207
+ <Chip label="Warning" color="warning" />
208
+ <MuiChip label="Primary Outlined" color="primary" variant="outlined" /> {/* Usando MuiChip para demostrar combinado */}
209
+ <MuiChip label="Success Outlined" color="success" variant="outlined" /> {/* Usando MuiChip para demostrar combinado */}
210
+ </Box>
211
+ );
212
+ },
213
+ parameters: {
214
+ docs: {
215
+ story: "Ejemplos de chips con diferentes colores predefinidos de Material UI, tanto en variante `filled` como `outlined`."
216
+ },
217
+ source: { code: ChipColorsDefinition.trim() }
218
+ }
219
+ };
220
+
221
+ export const ChipSizes: Story = {
222
+ render: () => {
223
+ return (
224
+ <Box sx={{ display: 'flex', gap: 2, alignItems: 'center' }}>
225
+ <Chip label="Pequeño" size="small" />
226
+ <Chip label="Mediano (Default)" size="medium" />
227
+ </Box>
228
+ );
229
+ },
230
+ parameters: {
231
+ docs: {
232
+ story: "Demuestra los diferentes tamaños disponibles para el chip: `small` y `medium`."
233
+ },
234
+ source: { code: ChipSizesDefinition.trim() }
235
+ }
236
+ };
237
+
238
+ export const CustomContentChip: Story = {
239
+ render: () => {
240
+ const handleClick = () => alert('Perfil visto!');
241
+ const handleDelete = () => alert('Perfil eliminado!');
242
+
243
+ return (
244
+ <Chip
245
+ avatar={<Avatar src="https://placehold.co/40x40/87CEEB/FFFFFF?text=PR" />}
246
+ label={
247
+ <Box sx={{ display: 'flex', alignItems: 'center', gap: 0.5 }}>
248
+ <CheckCircleOutlineIcon sx={{ fontSize: 16 }} />
249
+ <Typography variant="body2" sx={{ fontWeight: 'bold' }}>Perfil Completo</Typography>
250
+ </Box>
251
+ }
252
+ onDelete={handleDelete}
253
+ onClick={handleClick}
254
+ color="info"
255
+ variant="outlined"
256
+ />
257
+ );
258
+ },
259
+ parameters: {
260
+ docs: {
261
+ story: "Un chip con contenido personalizado en su etiqueta, combinando iconos y tipografía avanzada."
262
+ },
263
+ source: { code: CustomContentChipDefinition.trim() }
264
+ }
265
+ };
@@ -0,0 +1,61 @@
1
+ import React from 'react';
2
+ import { Chip as MuiChip, ChipProps as MuiChipProps } from '@mui/material';
3
+
4
+ // Define las props para el componente Chip personalizado
5
+ // Omitimos algunas props de MuiChipProps que redefiniremos para mayor claridad
6
+ export interface ChipProps extends Omit<MuiChipProps, 'onClick' | 'onDelete' | 'avatar' | 'icon' | 'label' | 'variant' | 'color' | 'size'> {
7
+ // Contenido principal del chip
8
+ label: React.ReactNode;
9
+ // Handler para el evento click del chip
10
+ onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;
11
+ // Handler para el evento delete del chip (muestra un botón de borrar)
12
+ onDelete?: (event: React.MouseEvent<HTMLDivElement>) => void;
13
+ // Elemento Avatar a mostrar al inicio del chip
14
+ avatar?: React.ReactElement;
15
+ // Icono a mostrar al inicio del chip (alternativa a avatar)
16
+ icon?: React.ReactElement;
17
+ // Si el chip está deshabilitado
18
+ disabled?: boolean;
19
+ // Variante visual del chip
20
+ variant?: 'filled' | 'outlined';
21
+ // Color del chip
22
+ color?: 'default' | 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';
23
+ // Tamaño del chip
24
+ size?: 'small' | 'medium';
25
+ }
26
+
27
+ /**
28
+ * Componente Chip personalizado de Material UI.
29
+ * Proporciona una interfaz simplificada para el componente Chip de Material UI,
30
+ * permitiendo una fácil personalización de etiquetas, avatares, iconos y acciones.
31
+ */
32
+ export const Chip: React.FC<ChipProps> = ({
33
+ label,
34
+ onClick,
35
+ onDelete,
36
+ avatar,
37
+ icon,
38
+ disabled = false,
39
+ variant = 'filled', // Default variant
40
+ color = 'default', // Default color
41
+ size = 'medium', // Default size
42
+ ...rest // Permite pasar otras props de MuiChipProps (ej. sx, className)
43
+ }) => {
44
+ return (
45
+ <MuiChip
46
+ label={label}
47
+ onClick={onClick}
48
+ onDelete={onDelete}
49
+ avatar={avatar}
50
+ icon={icon}
51
+ disabled={disabled}
52
+ variant={variant}
53
+ color={color}
54
+ size={size}
55
+ clickable={!!onClick} // Habilita el estilo clickable si se proporciona onClick
56
+ {...rest}
57
+ />
58
+ );
59
+ };
60
+
61
+ export default Chip;
@@ -0,0 +1,2 @@
1
+ export { Chip, default } from './Chip';
2
+ export type { ChipProps } from './Chip';
@@ -0,0 +1,29 @@
1
+ // -----------------------------------------------------------------------------
2
+ // Componente Column: Define la estructura de una columna en la tabla.
3
+ // Este componente NO renderiza nada directamente, solo pasa sus props al componente Table.
4
+ // -----------------------------------------------------------------------------
5
+ // Tipo auxiliar para 'field'.
6
+ // Define si 'field' es una sola clave (keyof T) o un array de claves (Array<keyof T>).
7
+ type FieldName<T> = keyof T | Array<keyof T>;
8
+
9
+ export interface ColumnProps<T> {
10
+ name: string; // Nombre a mostrar en el encabezado de la columna
11
+ field: FieldName<T>; // Define el campo o campos a usar de los datos
12
+ // La prop 'children' ahora recibe 'Partial<T>'.
13
+ // Esto permite a TypeScript inferir los tipos de las propiedades desestructuradas
14
+ // como 'avatar', 'nombre', etc., basándose en la interfaz genérica 'T' de tu data.
15
+ width?: string;
16
+ children: (fieldData: Partial<T>) => React.ReactNode;
17
+ }
18
+
19
+ // El componente Column no renderiza nada directamente en el DOM.
20
+ // Su propósito es actuar como un contenedor de configuración para el componente Table.
21
+ export function Column<T>(_props: ColumnProps<T>): React.ReactNode {
22
+ return null;
23
+ }
24
+
25
+ // Esto es crucial para que el componente Table pueda identificar a nuestros componentes Column
26
+ // entre sus hijos, utilizando (child.type as any).displayName === 'Column'.
27
+ Column.displayName = 'Column';
28
+
29
+ export default Column;
@@ -0,0 +1,2 @@
1
+ export { default as Column } from './Column'
2
+ export type { ColumnProps } from './Column'
@@ -0,0 +1,228 @@
1
+ // DatePicker.definitions.ts
2
+
3
+ export const BasicDatePickerDefinition = `
4
+ import React, { useState } from 'react';
5
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
6
+ import dayjs from 'dayjs';
7
+ import { Box, Typography } from '@mui/material';
8
+
9
+ export const BasicDatePickerExample = () => {
10
+ const [selectedDate, setSelectedDate] = useState(dayjs());
11
+ return (
12
+ <Box sx={{ width: 300 }}>
13
+ <DatePicker
14
+ label="Seleccionar Fecha"
15
+ selectedDate={selectedDate}
16
+ onDateChange={setSelectedDate}
17
+ />
18
+ <Typography sx={{ mt: 2 }}>
19
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
20
+ </Typography>
21
+ </Box>
22
+ );
23
+ };
24
+ `;
25
+
26
+ export const DatePickerWithMinMaxDefinition = `
27
+ import React, { useState } from 'react';
28
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
29
+ import dayjs from 'dayjs';
30
+ import { Box, Typography } from '@mui/material';
31
+
32
+ export const DatePickerWithMinMaxExample = () => {
33
+ const [selectedDate, setSelectedDate] = useState(dayjs('2023-06-15'));
34
+ const minDate = dayjs('2023-06-01');
35
+ const maxDate = dayjs('2023-06-30');
36
+ return (
37
+ <Box sx={{ width: 300 }}>
38
+ <DatePicker
39
+ label="Fecha en Junio"
40
+ selectedDate={selectedDate}
41
+ onDateChange={setSelectedDate}
42
+ minDate={minDate}
43
+ maxDate={maxDate}
44
+ />
45
+ <Typography sx={{ mt: 2 }}>
46
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
47
+ </Typography>
48
+ <Typography variant="caption" color="text.secondary">
49
+ (Rango: \${minDate.format('YYYY-MM-DD')} a \${maxDate.format('YYYY-MM-DD')})
50
+ </Typography>
51
+ </Box>
52
+ );
53
+ };
54
+ `;
55
+
56
+ export const DateRangePickerDefinition = `
57
+ import React, { useState } from 'react';
58
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
59
+ import dayjs from 'dayjs';
60
+ import { Box, Typography } from '@mui/material';
61
+
62
+ export const DateRangePickerExample = () => {
63
+ const [startDate, setStartDate] = useState(dayjs('2023-01-01'));
64
+ const [endDate, setEndDate] = useState(dayjs('2023-01-31'));
65
+
66
+ const handleStartDateChange = (date) => {
67
+ setStartDate(date);
68
+ if (date && endDate && date.isAfter(endDate)) {
69
+ setEndDate(date);
70
+ }
71
+ };
72
+
73
+ const handleEndDateChange = (date) => {
74
+ setEndDate(date);
75
+ if (date && startDate && date.isBefore(startDate)) {
76
+ setStartDate(date);
77
+ }
78
+ };
79
+
80
+ return (
81
+ <Box sx={{ display: 'flex', gap: 3, flexDirection: 'column' }}>
82
+ <DatePicker
83
+ label="Fecha de Inicio"
84
+ selectedDate={startDate}
85
+ onDateChange={handleStartDateChange}
86
+ maxDate={endDate || undefined}
87
+ />
88
+ <DatePicker
89
+ label="Fecha de Fin"
90
+ selectedDate={endDate}
91
+ onDateChange={handleEndDateChange}
92
+ minDate={startDate || undefined}
93
+ />
94
+ <Typography>
95
+ Inicio: {startDate ? startDate.format('YYYY-MM-DD') : 'N/A'} |
96
+ Fin: {endDate ? endDate.format('YYYY-MM-DD') : 'N/A'}
97
+ </Typography>
98
+ </Box>
99
+ );
100
+ };
101
+ `;
102
+
103
+ export const DatePickerWithErrorDefinition = `
104
+ import React, { useState } from 'react';
105
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
106
+ import dayjs from 'dayjs';
107
+ import { Box, Typography } from '@mui/material';
108
+
109
+ export const DatePickerWithErrorExample = () => {
110
+ const [selectedDate, setSelectedDate] = useState(dayjs('2023-01-01'));
111
+ // Intentamos establecer una fecha fuera de un rango muy restringido para forzar un error
112
+ const minDate = dayjs('2023-01-05');
113
+ const maxDate = dayjs('2023-01-10');
114
+
115
+ return (
116
+ <Box sx={{ width: 300 }}>
117
+ <DatePicker
118
+ label="Fecha (con error de rango)"
119
+ selectedDate={selectedDate}
120
+ onDateChange={setSelectedDate}
121
+ minDate={minDate}
122
+ maxDate={maxDate}
123
+ />
124
+ <Typography sx={{ mt: 2 }}>
125
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
126
+ </Typography>
127
+ <Typography variant="caption" color="error">
128
+ (Intenta seleccionar una fecha fuera de \${minDate.format('YYYY-MM-DD')} - \${maxDate.format('YYYY-MM-DD')})
129
+ </Typography>
130
+ </Box>
131
+ );
132
+ };
133
+ `;
134
+
135
+ export const DatePickerSmallSizeDefinition = `
136
+ import React, { useState } from 'react';
137
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
138
+ import dayjs from 'dayjs';
139
+ import { Box, Typography } from '@mui/material';
140
+
141
+ export const DatePickerSmallSizeExample = () => {
142
+ const [selectedDate, setSelectedDate] = useState(dayjs());
143
+ return (
144
+ <Box sx={{ width: 250 }}>
145
+ <DatePicker
146
+ label="Fecha (Pequeño)"
147
+ selectedDate={selectedDate}
148
+ onDateChange={setSelectedDate}
149
+ slotProps={{ textField: { size: 'small' } }} // Prop para hacer el TextField pequeño
150
+ />
151
+ <Typography sx={{ mt: 2 }}>
152
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
153
+ </Typography>
154
+ </Box>
155
+ );
156
+ };
157
+ `;
158
+
159
+ export const DatePickerDisabledDefinition = `
160
+ import React, { useState } from 'react';
161
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
162
+ import dayjs from 'dayjs';
163
+ import { Box, Typography } from '@mui/material';
164
+
165
+ export const DatePickerDisabledExample = () => {
166
+ const [selectedDate, setSelectedDate] = useState(dayjs());
167
+ return (
168
+ <Box sx={{ width: 300 }}>
169
+ <DatePicker
170
+ label="Fecha (Deshabilitado)"
171
+ selectedDate={selectedDate}
172
+ onDateChange={setSelectedDate}
173
+ disabled
174
+ />
175
+ <Typography sx={{ mt: 2 }}>
176
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
177
+ </Typography>
178
+ </Box>
179
+ );
180
+ };
181
+ `;
182
+
183
+ export const DatePickerReadOnlyDefinition = `
184
+ import React, { useState } from 'react';
185
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
186
+ import dayjs from 'dayjs';
187
+ import { Box, Typography } from '@mui/material';
188
+
189
+ export const DatePickerReadOnlyDefinition = () => {
190
+ const [selectedDate, setSelectedDate] = useState<Dayjs | null>(dayjs('2024-07-24'));
191
+ return (
192
+ <Box sx={{ width: 300 }}>
193
+ <DatePicker
194
+ label="Fecha (Solo Lectura)"
195
+ selectedDate={selectedDate}
196
+ onDateChange={() => {}} // No permite cambios
197
+ readOnly
198
+ />
199
+ <Typography sx={{ mt: 2 }}>
200
+ Fecha seleccionada: {selectedDate ? selectedDate.format('YYYY-MM-DD') : 'Ninguna'}
201
+ </Typography>
202
+ </Box>
203
+ );
204
+ };
205
+ `;
206
+ export const DatePickerEmptyWithMaskDefinition = `
207
+ import React, { useState } from 'react';
208
+ import { DatePicker } from '@soyfri/shared-library/DatePicker';
209
+ import { Dayjs } from 'dayjs';
210
+ import { Box, Typography } from '@mui/material';
211
+
212
+ export const DatePickerEmptyWithMaskExample = () => {
213
+ const [selectedDate, setSelectedDate] = useState<Dayjs | null>(null);
214
+ return (
215
+ <Box sx={{ width: 300 }}>
216
+ <DatePicker
217
+ label="Fecha"
218
+ selectedDate={selectedDate}
219
+ onDateChange={setSelectedDate}
220
+ format="DD/MM/YY"
221
+ />
222
+ <Typography sx={{ mt: 2 }} variant="caption" color="text.secondary">
223
+ Al estar vacío, el campo muestra la máscara del formato (DD/MM/AA).
224
+ </Typography>
225
+ </Box>
226
+ );
227
+ };
228
+ `;
@@ -0,0 +1,24 @@
1
+ import type { DateValidationError } from '@mui/x-date-pickers/models';
2
+
3
+ /**
4
+ * Traduce el código de error del DatePicker de MUI X a un mensaje en español.
5
+ * Se usa internamente para poblar `helperText` cuando hay error de validación
6
+ * y el consumer no pasó un mensaje propio.
7
+ */
8
+ export const getDateValidationMessage = (
9
+ error: DateValidationError | null,
10
+ ): string => {
11
+ switch (error) {
12
+ case 'minDate':
13
+ case 'maxDate':
14
+ return 'Fecha fuera del rango permitido';
15
+ case 'invalidDate':
16
+ return 'Formato de fecha inválido';
17
+ case 'disableFuture':
18
+ return 'No se permiten fechas futuras';
19
+ case 'disablePast':
20
+ return 'No se permiten fechas pasadas';
21
+ default:
22
+ return '';
23
+ }
24
+ };