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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (720) hide show
  1. package/{dist/Select-D5OrjVj3.js → Select-Dycmh9vt.js} +6 -3
  2. package/Select-Dycmh9vt.js.map +1 -0
  3. package/{dist/Select-Dyvc4bVo.cjs → Select-kqR48jZU.cjs} +5 -2
  4. package/Select-kqR48jZU.cjs.map +1 -0
  5. package/{dist/components → components}/Select/Select.cjs +1 -1
  6. package/{dist/components → components}/Select/Select.d.ts +2 -0
  7. package/{dist/components → components}/Select/Select.js +1 -1
  8. package/{dist/index.cjs → index.cjs} +1 -1
  9. package/{dist/index.js → index.js} +1 -1
  10. package/local/affiliations/affiliations.dev.soyfri.com-key.pem +28 -0
  11. package/local/affiliations/affiliations.dev.soyfri.com.pem +27 -0
  12. package/local/aficiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
  13. package/local/aficiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
  14. package/local/afiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
  15. package/local/afiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
  16. package/local/root/rootCA-key.pem +40 -0
  17. package/local/root/rootCA.pem +30 -0
  18. package/local/soporte/supportweb.dev.soyfri.com-key.pem +28 -0
  19. package/local/soporte/supportweb.dev.soyfri.com.pem +27 -0
  20. package/local/support/supportweb.dev.soyfri.com-key.pem +28 -0
  21. package/local/support/supportweb.dev.soyfri.com.pem +27 -0
  22. package/package.json +167 -57
  23. package/.dockerignore +0 -8
  24. package/.github/workflows/publish.yml +0 -107
  25. package/.prettierrc +0 -3
  26. package/.storybook/main.ts +0 -19
  27. package/.storybook/preview.ts +0 -14
  28. package/.storybook/vitest.setup.ts +0 -9
  29. package/Dockerfile +0 -37
  30. package/Readme.md +0 -243
  31. package/build.js +0 -117
  32. package/chromatic.config.json +0 -5
  33. package/cleanDirectories.js +0 -40
  34. package/dist/Select-D5OrjVj3.js.map +0 -1
  35. package/dist/Select-Dyvc4bVo.cjs.map +0 -1
  36. package/dist/package.json +0 -190
  37. package/rollup.config.cjs +0 -87
  38. package/scripts/gen-dist-pkg.mjs +0 -15
  39. package/shared-library-comercios-MUI.code-workspace +0 -10
  40. package/src/components/ActionMenu/ActionMenu.stories.tsx +0 -427
  41. package/src/components/ActionMenu/ActionMenu.tsx +0 -153
  42. package/src/components/ActionMenu/index.ts +0 -2
  43. package/src/components/AppBar/AppBar.stories.tsx +0 -316
  44. package/src/components/AppBar/AppBar.sx.ts +0 -32
  45. package/src/components/AppBar/AppBar.tsx +0 -119
  46. package/src/components/AppBar/AppBarContext.ts +0 -25
  47. package/src/components/AppBar/AppBarMenuToggle.tsx +0 -90
  48. package/src/components/AppBar/index.ts +0 -12
  49. package/src/components/Autocomplete/Autocomplete.definitions.ts +0 -477
  50. package/src/components/Autocomplete/Autocomplete.helpers.ts +0 -80
  51. package/src/components/Autocomplete/Autocomplete.stories.tsx +0 -784
  52. package/src/components/Autocomplete/Autocomplete.sx.ts +0 -30
  53. package/src/components/Autocomplete/Autocomplete.tsx +0 -393
  54. package/src/components/Autocomplete/_parts/AutocompleteChips.tsx +0 -55
  55. package/src/components/Autocomplete/_parts/AutocompleteLoader.tsx +0 -17
  56. package/src/components/Autocomplete/_parts/AutocompleteOption.tsx +0 -29
  57. package/src/components/Autocomplete/index.ts +0 -12
  58. package/src/components/Avatar/Avatar.definitions.ts +0 -162
  59. package/src/components/Avatar/Avatar.stories.tsx +0 -258
  60. package/src/components/Avatar/Avatar.tsx +0 -206
  61. package/src/components/Avatar/index.ts +0 -2
  62. package/src/components/Button/Button.definition.ts +0 -97
  63. package/src/components/Button/Button.stories.tsx +0 -285
  64. package/src/components/Button/Button.tsx +0 -66
  65. package/src/components/Button/index.ts +0 -2
  66. package/src/components/Card/Card.definition.ts +0 -5
  67. package/src/components/Card/Card.stories.tsx +0 -102
  68. package/src/components/Card/Card.sx.ts +0 -58
  69. package/src/components/Card/Card.tsx +0 -85
  70. package/src/components/Card/index.ts +0 -4
  71. package/src/components/Checkbox/Checkbox.stories.tsx +0 -212
  72. package/src/components/Checkbox/Checkbox.sx.ts +0 -67
  73. package/src/components/Checkbox/Checkbox.tsx +0 -208
  74. package/src/components/Checkbox/index.ts +0 -10
  75. package/src/components/Chip/Chip.definitions.ts +0 -167
  76. package/src/components/Chip/Chip.stories.tsx +0 -265
  77. package/src/components/Chip/Chip.tsx +0 -61
  78. package/src/components/Chip/index.ts +0 -2
  79. package/src/components/Column/Column.tsx +0 -29
  80. package/src/components/Column/index.ts +0 -2
  81. package/src/components/DatePicker/DatePicker.definitions.ts +0 -228
  82. package/src/components/DatePicker/DatePicker.helpers.ts +0 -24
  83. package/src/components/DatePicker/DatePicker.stories.tsx +0 -309
  84. package/src/components/DatePicker/DatePicker.sx.ts +0 -33
  85. package/src/components/DatePicker/DatePicker.tsx +0 -133
  86. package/src/components/DatePicker/index.ts +0 -7
  87. package/src/components/DateTimePicker/DateTimePicker.definitions.ts +0 -317
  88. package/src/components/DateTimePicker/DateTimePicker.helpers.ts +0 -45
  89. package/src/components/DateTimePicker/DateTimePicker.stories.tsx +0 -415
  90. package/src/components/DateTimePicker/DateTimePicker.sx.ts +0 -30
  91. package/src/components/DateTimePicker/DateTimePicker.tsx +0 -240
  92. package/src/components/DateTimePicker/index.ts +0 -9
  93. package/src/components/Drawer/Drawer.stories.tsx +0 -438
  94. package/src/components/Drawer/Drawer.sx.ts +0 -106
  95. package/src/components/Drawer/Drawer.tsx +0 -224
  96. package/src/components/Drawer/DrawerContext.ts +0 -26
  97. package/src/components/Drawer/DrawerItem.tsx +0 -120
  98. package/src/components/Drawer/index.ts +0 -10
  99. package/src/components/Flyout/Flyout.stories.tsx +0 -282
  100. package/src/components/Flyout/Flyout.tsx +0 -122
  101. package/src/components/Flyout/index.ts +0 -1
  102. package/src/components/Gallery/Gallery.definition.tsx +0 -37
  103. package/src/components/Gallery/Gallery.stories.tsx +0 -82
  104. package/src/components/Gallery/Gallery.tsx +0 -158
  105. package/src/components/Gallery/GalleryLightbox.tsx +0 -186
  106. package/src/components/Gallery/GalleryMain.tsx +0 -87
  107. package/src/components/Gallery/GalleryThumbnails.tsx +0 -122
  108. package/src/components/Gallery/index.ts +0 -2
  109. package/src/components/Icon/Icon.stories.tsx +0 -121
  110. package/src/components/Icon/Icon.tsx +0 -163
  111. package/src/components/Icon/index.ts +0 -2
  112. package/src/components/Input/Input.definitions.ts +0 -348
  113. package/src/components/Input/Input.helpers.ts +0 -50
  114. package/src/components/Input/Input.stories.tsx +0 -528
  115. package/src/components/Input/Input.sx.ts +0 -42
  116. package/src/components/Input/Input.tsx +0 -162
  117. package/src/components/Input/index.ts +0 -10
  118. package/src/components/InputGroup/InputGroup.definitions.ts +0 -158
  119. package/src/components/InputGroup/InputGroup.stories.tsx +0 -267
  120. package/src/components/InputGroup/InputGroup.tsx +0 -180
  121. package/src/components/InputGroup/index.ts +0 -2
  122. package/src/components/MenuButton/MenuButton.stories.tsx +0 -197
  123. package/src/components/MenuButton/MenuButton.tsx +0 -100
  124. package/src/components/MenuButton/index.ts +0 -1
  125. package/src/components/Modal/Modal.stories.tsx +0 -721
  126. package/src/components/Modal/Modal.tsx +0 -407
  127. package/src/components/Modal/ModalBody.tsx +0 -23
  128. package/src/components/Modal/ModalFooter.tsx +0 -83
  129. package/src/components/Modal/ModalHeader.tsx +0 -33
  130. package/src/components/Modal/index.ts +0 -11
  131. package/src/components/RadioGroup/RadioGroup.definitions.ts +0 -177
  132. package/src/components/RadioGroup/RadioGroup.stories.tsx +0 -231
  133. package/src/components/RadioGroup/RadioGroup.sx.ts +0 -75
  134. package/src/components/RadioGroup/RadioGroup.tsx +0 -207
  135. package/src/components/RadioGroup/index.ts +0 -10
  136. package/src/components/Select/Select.helpers.ts +0 -31
  137. package/src/components/Select/Select.stories.tsx +0 -393
  138. package/src/components/Select/Select.sx.ts +0 -14
  139. package/src/components/Select/Select.tsx +0 -327
  140. package/src/components/Select/_parts/SelectMenuItem.tsx +0 -40
  141. package/src/components/Select/_parts/SelectValue.tsx +0 -95
  142. package/src/components/Select/index.ts +0 -12
  143. package/src/components/Stat/Stat.stories.tsx +0 -85
  144. package/src/components/Stat/Stat.tsx +0 -117
  145. package/src/components/Stat/index.ts +0 -2
  146. package/src/components/StatusMessage/StatusMessage.stories.tsx +0 -159
  147. package/src/components/StatusMessage/StatusMessage.tsx +0 -143
  148. package/src/components/StatusMessage/index.ts +0 -3
  149. package/src/components/Stepper/Step.tsx +0 -21
  150. package/src/components/Stepper/Stepper.definition.ts +0 -75
  151. package/src/components/Stepper/Stepper.stories.tsx +0 -194
  152. package/src/components/Stepper/Stepper.tsx +0 -194
  153. package/src/components/Stepper/StepperContext.tsx +0 -176
  154. package/src/components/Stepper/StepperProvider.stories.tsx +0 -286
  155. package/src/components/Stepper/_hooks/useHorizontalScroll.ts +0 -56
  156. package/src/components/Stepper/_parts/StepperScrollArrow.tsx +0 -50
  157. package/src/components/Stepper/index.ts +0 -15
  158. package/src/components/Switch/Switch.definitions.ts +0 -134
  159. package/src/components/Switch/Switch.stories.tsx +0 -213
  160. package/src/components/Switch/Switch.sx.ts +0 -81
  161. package/src/components/Switch/Switch.tsx +0 -188
  162. package/src/components/Switch/Switch.types.ts +0 -10
  163. package/src/components/Switch/index.ts +0 -9
  164. package/src/components/Table/EmptyTable.png +0 -0
  165. package/src/components/Table/Table.definition.ts +0 -580
  166. package/src/components/Table/Table.stories.tsx +0 -853
  167. package/src/components/Table/Table.tsx +0 -494
  168. package/src/components/Table/data.ts +0 -134
  169. package/src/components/Table/exportsUtils.ts +0 -195
  170. package/src/components/Table/index.ts +0 -3
  171. package/src/components/Table/types.ts +0 -34
  172. package/src/components/Tabs/Tab.definition.ts +0 -53
  173. package/src/components/Tabs/Tab.tsx +0 -19
  174. package/src/components/Tabs/Tabs.stories.tsx +0 -118
  175. package/src/components/Tabs/Tabs.tsx +0 -163
  176. package/src/components/Tabs/_tabUtils.tsx +0 -4
  177. package/src/components/Tabs/index.ts +0 -5
  178. package/src/components/Timeline/Timeline.definition.ts +0 -43
  179. package/src/components/Timeline/Timeline.stories.tsx +0 -108
  180. package/src/components/Timeline/Timeline.tsx +0 -44
  181. package/src/components/Timeline/TimelineItem.tsx +0 -31
  182. package/src/components/Timeline/index.ts +0 -5
  183. package/src/components/Tooltip/Tooltip.stories.tsx +0 -129
  184. package/src/components/Tooltip/Tooltip.tsx +0 -58
  185. package/src/components/Tooltip/index.ts +0 -1
  186. package/src/components/_shared/formField.sx.ts +0 -118
  187. package/src/components/_shared/mergeSx.ts +0 -16
  188. package/src/components/_shared/resolvePreset.ts +0 -38
  189. package/src/hooks/ClipBoard/ClipBoard.stories.tsx +0 -168
  190. package/src/hooks/ClipBoard/ClipBoard.tsx +0 -131
  191. package/src/hooks/ClipBoard/ClipboardUnifiedDemo.tsx +0 -111
  192. package/src/hooks/ClipBoard/index.ts +0 -1
  193. package/src/index.ts +0 -51
  194. package/src/mui.ts +0 -57
  195. package/src/styles.css +0 -3
  196. package/src/theme/componentStyles.ts +0 -50
  197. package/src/theme/tokens.ts +0 -43
  198. package/src/utils/index.ts +0 -2
  199. package/src/utils/scrollToTop.ts +0 -36
  200. package/storybook-static/addon-visual-tests-assets/visual-test-illustration.mp4 +0 -0
  201. package/storybook-static/assets/AccountCircle-BDZFsbTw.js +0 -1
  202. package/storybook-static/assets/ActionMenu-EynP8yU1.js +0 -19
  203. package/storybook-static/assets/ActionMenu.stories-DqSqRGix.js +0 -185
  204. package/storybook-static/assets/Alert-3zvTPc0p.js +0 -1
  205. package/storybook-static/assets/AppBar.stories-DcX3M5th.js +0 -172
  206. package/storybook-static/assets/Autocomplete.stories-CXJm8FOT.js +0 -788
  207. package/storybook-static/assets/Avatar-NbFfkZws.js +0 -1
  208. package/storybook-static/assets/Avatar.stories-CwOYCzqU.js +0 -390
  209. package/storybook-static/assets/Box-BnhEcfFm.js +0 -1
  210. package/storybook-static/assets/Button-D9h7OggD.js +0 -1
  211. package/storybook-static/assets/Button-DBpqmVB_.js +0 -1
  212. package/storybook-static/assets/Button.stories-F20dmnjq.js +0 -320
  213. package/storybook-static/assets/ButtonBase-qyaMEhe4.js +0 -74
  214. package/storybook-static/assets/Card.stories-B3NpAhO0.js +0 -154
  215. package/storybook-static/assets/CheckCircleOutline-CEj5mDsl.js +0 -1
  216. package/storybook-static/assets/Chip-C3vKPpzR.js +0 -1
  217. package/storybook-static/assets/Chip.stories-sxcfHVo9.js +0 -333
  218. package/storybook-static/assets/CircularProgress-DC7ZNWwl.js +0 -28
  219. package/storybook-static/assets/Clear-4kYcKvT3.js +0 -1
  220. package/storybook-static/assets/ClipBoard-DvLBdNHe.js +0 -1
  221. package/storybook-static/assets/ClipBoard.stories-BGUo47r6.js +0 -108
  222. package/storybook-static/assets/Close-CgHeRgmh.js +0 -1
  223. package/storybook-static/assets/Close-Cy8nELYU.js +0 -1
  224. package/storybook-static/assets/Color-AVL7NMMY-BJKvwERm.js +0 -1
  225. package/storybook-static/assets/ContentCopy-BfLTDb10.js +0 -1
  226. package/storybook-static/assets/DatePicker-Clkpr-Ku.js +0 -1
  227. package/storybook-static/assets/DatePicker.stories-EaUCMkh3.js +0 -444
  228. package/storybook-static/assets/DateRangePicker.stories-BMlkj-8K.js +0 -390
  229. package/storybook-static/assets/DateTimePicker.stories-B6gdzKq5.js +0 -555
  230. package/storybook-static/assets/DefaultPropsProvider-BGoQxtDa.js +0 -16
  231. package/storybook-static/assets/Delete-D2SMMmIA.js +0 -1
  232. package/storybook-static/assets/DialogContent-BeCDKgax.js +0 -1
  233. package/storybook-static/assets/Divider-BbCj9wT4.js +0 -1
  234. package/storybook-static/assets/DocsRenderer-PQXLIZUC-BebLK5Y_.js +0 -1243
  235. package/storybook-static/assets/Drawer-DcFwy73r.js +0 -1
  236. package/storybook-static/assets/Drawer.stories-C5AZkJBk.js +0 -173
  237. package/storybook-static/assets/EmptyTable-B-RKtgVs.png +0 -0
  238. package/storybook-static/assets/ErrorOutline-D9gM7ART.js +0 -1
  239. package/storybook-static/assets/Fade-Ll96CvH8.js +0 -1
  240. package/storybook-static/assets/Flyout.stories-Cf7z6MNw.js +0 -163
  241. package/storybook-static/assets/Gallery.stories-DdpWVTF6.js +0 -127
  242. package/storybook-static/assets/Grow-8y4FglGK.js +0 -1
  243. package/storybook-static/assets/Home-BRvJEp2L.js +0 -1
  244. package/storybook-static/assets/Icon.stories-D0mUiW_t.js +0 -78
  245. package/storybook-static/assets/IconButton-9OYSTH58.js +0 -1
  246. package/storybook-static/assets/Input-CjX0t4h-.js +0 -1
  247. package/storybook-static/assets/Input.stories-BRxekliy.js +0 -650
  248. package/storybook-static/assets/InputGroup.stories-DH6gUfmn.js +0 -306
  249. package/storybook-static/assets/KeyboardArrowRight-WO_attK2.js +0 -1
  250. package/storybook-static/assets/KeyboardArrowUp-DsyVef-i.js +0 -1
  251. package/storybook-static/assets/ListItem-D3O0103N.js +0 -1
  252. package/storybook-static/assets/ListItemIcon-hca6xN79.js +0 -1
  253. package/storybook-static/assets/ListItemText-BFLAwLdl.js +0 -1
  254. package/storybook-static/assets/Logout-gj-P3AfU.js +0 -1
  255. package/storybook-static/assets/Menu-ClzfjLc3.js +0 -1
  256. package/storybook-static/assets/MenuButton.stories-B-W_QVDt.js +0 -162
  257. package/storybook-static/assets/MenuItem-iU6tAqJI.js +0 -1
  258. package/storybook-static/assets/Modal-3okp9H2i.js +0 -1
  259. package/storybook-static/assets/Modal.stories-DIWzm4qR.js +0 -468
  260. package/storybook-static/assets/MoreVert-BoIVG4gh.js +0 -1
  261. package/storybook-static/assets/Notifications-DY_A-Sho.js +0 -1
  262. package/storybook-static/assets/PageLoader.stories-DmtO1mlm.js +0 -158
  263. package/storybook-static/assets/Paper-SwQBhqI7.js +0 -1
  264. package/storybook-static/assets/Person-CkQl-mpq.js +0 -1
  265. package/storybook-static/assets/PickersModalDialog-Tjnr_cu5.js +0 -10
  266. package/storybook-static/assets/PickersToolbarButton-Tt185-si.js +0 -1
  267. package/storybook-static/assets/Popper-CnCTYXxy.js +0 -1
  268. package/storybook-static/assets/Portal-Cj8XF9Lf.js +0 -1
  269. package/storybook-static/assets/ScrollTopButton.stories-BflQCwNP.js +0 -90
  270. package/storybook-static/assets/Select-CjcuMAY0.js +0 -4
  271. package/storybook-static/assets/Select-DJh2biEb.js +0 -3
  272. package/storybook-static/assets/Select.stories-DU1Gb3I2.js +0 -1103
  273. package/storybook-static/assets/Settings-BLKc1CnO.js +0 -1
  274. package/storybook-static/assets/Snackbar-BtVeKTw6.js +0 -1
  275. package/storybook-static/assets/Stack-D01OUIXi.js +0 -1
  276. package/storybook-static/assets/Stat.stories-Bn9-iuPT.js +0 -60
  277. package/storybook-static/assets/StatusMessage.stories-hnfX8FeU.js +0 -73
  278. package/storybook-static/assets/Stepper-BtKB5ykn.js +0 -2
  279. package/storybook-static/assets/Stepper.stories-CTEZbgPc.js +0 -165
  280. package/storybook-static/assets/Table.stories-CTn2Ktmn.js +0 -1260
  281. package/storybook-static/assets/TableContainer-CzLNaEU-.js +0 -1
  282. package/storybook-static/assets/TableRow-CS88-1HF.js +0 -2
  283. package/storybook-static/assets/Tabs-DLpDOu_n.js +0 -1
  284. package/storybook-static/assets/Tabs.stories-BFVuFy_5.js +0 -159
  285. package/storybook-static/assets/TextField-22T-xHBm.js +0 -1
  286. package/storybook-static/assets/Timeline.stories-DJU_U2Hv.js +0 -97
  287. package/storybook-static/assets/Tooltip-DbnHUxNj.js +0 -1
  288. package/storybook-static/assets/Tooltip.stories-B7tA3dnV.js +0 -66
  289. package/storybook-static/assets/Typography-BgntX2Ep.js +0 -1
  290. package/storybook-static/assets/Wizard.stories-CVrJLK_D.js +0 -23
  291. package/storybook-static/assets/createSimplePaletteValueFilter-bm0fmN_7.js +0 -1
  292. package/storybook-static/assets/createSvgIcon-D_Gca4vA.js +0 -1
  293. package/storybook-static/assets/debounce-Be36O1Ab.js +0 -1
  294. package/storybook-static/assets/emotion-react.browser.esm--g-C9cX9.js +0 -8
  295. package/storybook-static/assets/extendSxProp-CEpa30hT.js +0 -1
  296. package/storybook-static/assets/formField.sx-DMCmZIAa.js +0 -1
  297. package/storybook-static/assets/getReactElementRef-BQ3ANZdy.js +0 -1
  298. package/storybook-static/assets/iframe-BAJnc_4n.js +0 -1079
  299. package/storybook-static/assets/index-B1tlhOpe.js +0 -240
  300. package/storybook-static/assets/index-BF3FAXTk.js +0 -9
  301. package/storybook-static/assets/index-CIeucmOB.js +0 -2
  302. package/storybook-static/assets/index-CY7j4a7o.js +0 -1
  303. package/storybook-static/assets/index-CxkKctw5.js +0 -1
  304. package/storybook-static/assets/isFocusVisible-B8k4qzLc.js +0 -1
  305. package/storybook-static/assets/isMuiElement-CTZSFcY5.js +0 -1
  306. package/storybook-static/assets/jsx-runtime-D_zvdyIk.js +0 -9
  307. package/storybook-static/assets/listItemTextClasses-CC_rwJam.js +0 -1
  308. package/storybook-static/assets/mergeSlotProps-B0UBKBMe.js +0 -1
  309. package/storybook-static/assets/ownerDocument-DW-IO8s5.js +0 -1
  310. package/storybook-static/assets/ownerWindow-HkKU3E4x.js +0 -1
  311. package/storybook-static/assets/preload-helper-PPVm8Dsz.js +0 -1
  312. package/storybook-static/assets/react-18-BUJ64QCV.js +0 -25
  313. package/storybook-static/assets/resolvePreset-CN2aOJJr.js +0 -1
  314. package/storybook-static/assets/useControlled-DsVh1a5j.js +0 -1
  315. package/storybook-static/assets/useForkRef-0ANIrxcF.js +0 -1
  316. package/storybook-static/assets/useId-b4fZxjOL.js +0 -1
  317. package/storybook-static/assets/useMobilePicker-DK-c8xbD.js +0 -1
  318. package/storybook-static/assets/usePreviousProps-WR0rG4aR.js +0 -1
  319. package/storybook-static/assets/useSlot-b6pXgp5_.js +0 -1
  320. package/storybook-static/assets/useSlotProps-C0uMfuBt.js +0 -1
  321. package/storybook-static/assets/useTheme-BmOJK7ra.js +0 -1
  322. package/storybook-static/assets/useThemeProps-DYtxXiUU.js +0 -1
  323. package/storybook-static/assets/useThemeProps-U4yXiZ_5.js +0 -1
  324. package/storybook-static/assets/useTimeout-DNjRaOWc.js +0 -1
  325. package/storybook-static/assets/visuallyHidden-Dan1xhjv.js +0 -1
  326. package/storybook-static/favicon-wrapper.svg +0 -46
  327. package/storybook-static/favicon.svg +0 -1
  328. package/storybook-static/iframe.html +0 -686
  329. package/storybook-static/index.html +0 -160
  330. package/storybook-static/index.json +0 -1
  331. package/storybook-static/nunito-sans-bold-italic.woff2 +0 -0
  332. package/storybook-static/nunito-sans-bold.woff2 +0 -0
  333. package/storybook-static/nunito-sans-italic.woff2 +0 -0
  334. package/storybook-static/nunito-sans-regular.woff2 +0 -0
  335. package/storybook-static/project.json +0 -1
  336. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js +0 -356
  337. package/storybook-static/sb-addons/chromatic-com-storybook-2/manager-bundle.js.LEGAL.txt +0 -40
  338. package/storybook-static/sb-addons/docs-4/manager-bundle.js +0 -151
  339. package/storybook-static/sb-addons/onboarding-1/manager-bundle.js +0 -127
  340. package/storybook-static/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +0 -971
  341. package/storybook-static/sb-addons/vitest-3/manager-bundle.js +0 -3
  342. package/storybook-static/sb-common-assets/favicon-wrapper.svg +0 -46
  343. package/storybook-static/sb-common-assets/favicon.svg +0 -1
  344. package/storybook-static/sb-common-assets/nunito-sans-bold-italic.woff2 +0 -0
  345. package/storybook-static/sb-common-assets/nunito-sans-bold.woff2 +0 -0
  346. package/storybook-static/sb-common-assets/nunito-sans-italic.woff2 +0 -0
  347. package/storybook-static/sb-common-assets/nunito-sans-regular.woff2 +0 -0
  348. package/storybook-static/sb-manager/globals-module-info.js +0 -797
  349. package/storybook-static/sb-manager/globals-runtime.js +0 -69679
  350. package/storybook-static/sb-manager/globals.js +0 -34
  351. package/storybook-static/sb-manager/runtime.js +0 -13195
  352. package/storybook-static/vite-inject-mocker-entry.js +0 -18
  353. package/tailwind.config.js +0 -10
  354. package/tsconfig.json +0 -48
  355. package/tsup.config.js +0 -41
  356. package/vite.config.js +0 -132
  357. package/vitest.config.ts +0 -35
  358. /package/{dist/Autocomplete-C_lW1VER.js → Autocomplete-C_lW1VER.js} +0 -0
  359. /package/{dist/Autocomplete-C_lW1VER.js.map → Autocomplete-C_lW1VER.js.map} +0 -0
  360. /package/{dist/Autocomplete-CejWztBY.cjs → Autocomplete-CejWztBY.cjs} +0 -0
  361. /package/{dist/Autocomplete-CejWztBY.cjs.map → Autocomplete-CejWztBY.cjs.map} +0 -0
  362. /package/{dist/Avatar-CgT7955R.js → Avatar-CgT7955R.js} +0 -0
  363. /package/{dist/Avatar-CgT7955R.js.map → Avatar-CgT7955R.js.map} +0 -0
  364. /package/{dist/Avatar-CuSrK8Wn.cjs → Avatar-CuSrK8Wn.cjs} +0 -0
  365. /package/{dist/Avatar-CuSrK8Wn.cjs.map → Avatar-CuSrK8Wn.cjs.map} +0 -0
  366. /package/{dist/Button-C17mExpd.cjs → Button-C17mExpd.cjs} +0 -0
  367. /package/{dist/Button-C17mExpd.cjs.map → Button-C17mExpd.cjs.map} +0 -0
  368. /package/{dist/Button-UkkP-bNw.js → Button-UkkP-bNw.js} +0 -0
  369. /package/{dist/Button-UkkP-bNw.js.map → Button-UkkP-bNw.js.map} +0 -0
  370. /package/{dist/Card-B1wtavyl.js → Card-B1wtavyl.js} +0 -0
  371. /package/{dist/Card-B1wtavyl.js.map → Card-B1wtavyl.js.map} +0 -0
  372. /package/{dist/Card-DfdU610V.cjs → Card-DfdU610V.cjs} +0 -0
  373. /package/{dist/Card-DfdU610V.cjs.map → Card-DfdU610V.cjs.map} +0 -0
  374. /package/{dist/Checkbox-BCqMFWt4.cjs → Checkbox-BCqMFWt4.cjs} +0 -0
  375. /package/{dist/Checkbox-BCqMFWt4.cjs.map → Checkbox-BCqMFWt4.cjs.map} +0 -0
  376. /package/{dist/Checkbox-gB5YKkVo.js → Checkbox-gB5YKkVo.js} +0 -0
  377. /package/{dist/Checkbox-gB5YKkVo.js.map → Checkbox-gB5YKkVo.js.map} +0 -0
  378. /package/{dist/Chip-OPYQ1uQ_.js → Chip-OPYQ1uQ_.js} +0 -0
  379. /package/{dist/Chip-OPYQ1uQ_.js.map → Chip-OPYQ1uQ_.js.map} +0 -0
  380. /package/{dist/Chip-qoJLDiva.cjs → Chip-qoJLDiva.cjs} +0 -0
  381. /package/{dist/Chip-qoJLDiva.cjs.map → Chip-qoJLDiva.cjs.map} +0 -0
  382. /package/{dist/DatePicker-_IGWc3I5.js → DatePicker-_IGWc3I5.js} +0 -0
  383. /package/{dist/DatePicker-_IGWc3I5.js.map → DatePicker-_IGWc3I5.js.map} +0 -0
  384. /package/{dist/DatePicker-t7uDTZMl.cjs → DatePicker-t7uDTZMl.cjs} +0 -0
  385. /package/{dist/DatePicker-t7uDTZMl.cjs.map → DatePicker-t7uDTZMl.cjs.map} +0 -0
  386. /package/{dist/DateTimePicker-BxQyjTCY.cjs → DateTimePicker-BxQyjTCY.cjs} +0 -0
  387. /package/{dist/DateTimePicker-BxQyjTCY.cjs.map → DateTimePicker-BxQyjTCY.cjs.map} +0 -0
  388. /package/{dist/DateTimePicker-CrmWav_j.js → DateTimePicker-CrmWav_j.js} +0 -0
  389. /package/{dist/DateTimePicker-CrmWav_j.js.map → DateTimePicker-CrmWav_j.js.map} +0 -0
  390. /package/{dist/Input-CScC87J5.cjs → Input-CScC87J5.cjs} +0 -0
  391. /package/{dist/Input-CScC87J5.cjs.map → Input-CScC87J5.cjs.map} +0 -0
  392. /package/{dist/Input-DP_fKl38.js → Input-DP_fKl38.js} +0 -0
  393. /package/{dist/Input-DP_fKl38.js.map → Input-DP_fKl38.js.map} +0 -0
  394. /package/{dist/Modal-BN5s-Tfk.cjs → Modal-BN5s-Tfk.cjs} +0 -0
  395. /package/{dist/Modal-BN5s-Tfk.cjs.map → Modal-BN5s-Tfk.cjs.map} +0 -0
  396. /package/{dist/Modal-BRZMPwDj.js → Modal-BRZMPwDj.js} +0 -0
  397. /package/{dist/Modal-BRZMPwDj.js.map → Modal-BRZMPwDj.js.map} +0 -0
  398. /package/{dist/README.md → README.md} +0 -0
  399. /package/{dist/RadioGroup-Dd0rHXSX.cjs → RadioGroup-Dd0rHXSX.cjs} +0 -0
  400. /package/{dist/RadioGroup-Dd0rHXSX.cjs.map → RadioGroup-Dd0rHXSX.cjs.map} +0 -0
  401. /package/{dist/RadioGroup-bO-ahP9T.js → RadioGroup-bO-ahP9T.js} +0 -0
  402. /package/{dist/RadioGroup-bO-ahP9T.js.map → RadioGroup-bO-ahP9T.js.map} +0 -0
  403. /package/{dist/Stat-BUcFCGrz.cjs → Stat-BUcFCGrz.cjs} +0 -0
  404. /package/{dist/Stat-BUcFCGrz.cjs.map → Stat-BUcFCGrz.cjs.map} +0 -0
  405. /package/{dist/Stat-C06A_izS.js → Stat-C06A_izS.js} +0 -0
  406. /package/{dist/Stat-C06A_izS.js.map → Stat-C06A_izS.js.map} +0 -0
  407. /package/{dist/StatusMessage-B3nXpuRl.cjs → StatusMessage-B3nXpuRl.cjs} +0 -0
  408. /package/{dist/StatusMessage-B3nXpuRl.cjs.map → StatusMessage-B3nXpuRl.cjs.map} +0 -0
  409. /package/{dist/StatusMessage-D0WgSBx7.js → StatusMessage-D0WgSBx7.js} +0 -0
  410. /package/{dist/StatusMessage-D0WgSBx7.js.map → StatusMessage-D0WgSBx7.js.map} +0 -0
  411. /package/{dist/Step-BArsou1V.js → Step-BArsou1V.js} +0 -0
  412. /package/{dist/Step-BArsou1V.js.map → Step-BArsou1V.js.map} +0 -0
  413. /package/{dist/Step-Nd7SJbRZ.cjs → Step-Nd7SJbRZ.cjs} +0 -0
  414. /package/{dist/Step-Nd7SJbRZ.cjs.map → Step-Nd7SJbRZ.cjs.map} +0 -0
  415. /package/{dist/Switch-CQFOopYy.cjs → Switch-CQFOopYy.cjs} +0 -0
  416. /package/{dist/Switch-CQFOopYy.cjs.map → Switch-CQFOopYy.cjs.map} +0 -0
  417. /package/{dist/Switch-D72dpkH2.js → Switch-D72dpkH2.js} +0 -0
  418. /package/{dist/Switch-D72dpkH2.js.map → Switch-D72dpkH2.js.map} +0 -0
  419. /package/{dist/Tab-BbP8jBcK.cjs → Tab-BbP8jBcK.cjs} +0 -0
  420. /package/{dist/Tab-BbP8jBcK.cjs.map → Tab-BbP8jBcK.cjs.map} +0 -0
  421. /package/{dist/Tab-BxSxKJsP.js → Tab-BxSxKJsP.js} +0 -0
  422. /package/{dist/Tab-BxSxKJsP.js.map → Tab-BxSxKJsP.js.map} +0 -0
  423. /package/{dist/Table-C2LbW0B1.js → Table-C2LbW0B1.js} +0 -0
  424. /package/{dist/Table-C2LbW0B1.js.map → Table-C2LbW0B1.js.map} +0 -0
  425. /package/{dist/Table-C4OM6rrC.cjs → Table-C4OM6rrC.cjs} +0 -0
  426. /package/{dist/Table-C4OM6rrC.cjs.map → Table-C4OM6rrC.cjs.map} +0 -0
  427. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs +0 -0
  428. /package/{dist/components → components}/ActionMenu/ActionMenu.cjs.map +0 -0
  429. /package/{dist/components → components}/ActionMenu/ActionMenu.d.ts +0 -0
  430. /package/{dist/components → components}/ActionMenu/ActionMenu.js +0 -0
  431. /package/{dist/components → components}/ActionMenu/ActionMenu.js.map +0 -0
  432. /package/{dist/components → components}/ActionMenu/index.d.ts +0 -0
  433. /package/{dist/components → components}/ActionMenu.d.ts +0 -0
  434. /package/{dist/components → components}/AppBar/AppBar.cjs +0 -0
  435. /package/{dist/components → components}/AppBar/AppBar.cjs.map +0 -0
  436. /package/{dist/components → components}/AppBar/AppBar.d.ts +0 -0
  437. /package/{dist/components → components}/AppBar/AppBar.js +0 -0
  438. /package/{dist/components → components}/AppBar/AppBar.js.map +0 -0
  439. /package/{dist/components → components}/AppBar/AppBar.sx.d.ts +0 -0
  440. /package/{dist/components → components}/AppBar/AppBarContext.d.ts +0 -0
  441. /package/{dist/components → components}/AppBar/AppBarMenuToggle.d.ts +0 -0
  442. /package/{dist/components → components}/AppBar/index.d.ts +0 -0
  443. /package/{dist/components → components}/AppBar.d.ts +0 -0
  444. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs +0 -0
  445. /package/{dist/components → components}/Autocomplete/Autocomplete.cjs.map +0 -0
  446. /package/{dist/components → components}/Autocomplete/Autocomplete.d.ts +0 -0
  447. /package/{dist/components → components}/Autocomplete/Autocomplete.definitions.d.ts +0 -0
  448. /package/{dist/components → components}/Autocomplete/Autocomplete.helpers.d.ts +0 -0
  449. /package/{dist/components → components}/Autocomplete/Autocomplete.js +0 -0
  450. /package/{dist/components → components}/Autocomplete/Autocomplete.js.map +0 -0
  451. /package/{dist/components → components}/Autocomplete/Autocomplete.sx.d.ts +0 -0
  452. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteChips.d.ts +0 -0
  453. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteLoader.d.ts +0 -0
  454. /package/{dist/components → components}/Autocomplete/_parts/AutocompleteOption.d.ts +0 -0
  455. /package/{dist/components → components}/Autocomplete/index.d.ts +0 -0
  456. /package/{dist/components → components}/Autocomplete.d.ts +0 -0
  457. /package/{dist/components → components}/Avatar/Avatar.cjs +0 -0
  458. /package/{dist/components → components}/Avatar/Avatar.cjs.map +0 -0
  459. /package/{dist/components → components}/Avatar/Avatar.d.ts +0 -0
  460. /package/{dist/components → components}/Avatar/Avatar.definitions.d.ts +0 -0
  461. /package/{dist/components → components}/Avatar/Avatar.js +0 -0
  462. /package/{dist/components → components}/Avatar/Avatar.js.map +0 -0
  463. /package/{dist/components → components}/Avatar/index.d.ts +0 -0
  464. /package/{dist/components → components}/Avatar.d.ts +0 -0
  465. /package/{dist/components → components}/Button/Button.cjs +0 -0
  466. /package/{dist/components → components}/Button/Button.cjs.map +0 -0
  467. /package/{dist/components → components}/Button/Button.d.ts +0 -0
  468. /package/{dist/components → components}/Button/Button.definition.d.ts +0 -0
  469. /package/{dist/components → components}/Button/Button.js +0 -0
  470. /package/{dist/components → components}/Button/Button.js.map +0 -0
  471. /package/{dist/components → components}/Button/index.d.ts +0 -0
  472. /package/{dist/components → components}/Button.d.ts +0 -0
  473. /package/{dist/components → components}/Card/Card.cjs +0 -0
  474. /package/{dist/components → components}/Card/Card.cjs.map +0 -0
  475. /package/{dist/components → components}/Card/Card.d.ts +0 -0
  476. /package/{dist/components → components}/Card/Card.definition.d.ts +0 -0
  477. /package/{dist/components → components}/Card/Card.js +0 -0
  478. /package/{dist/components → components}/Card/Card.js.map +0 -0
  479. /package/{dist/components → components}/Card/Card.sx.d.ts +0 -0
  480. /package/{dist/components → components}/Card/index.d.ts +0 -0
  481. /package/{dist/components → components}/Card.d.ts +0 -0
  482. /package/{dist/components → components}/Checkbox/Checkbox.cjs +0 -0
  483. /package/{dist/components → components}/Checkbox/Checkbox.cjs.map +0 -0
  484. /package/{dist/components → components}/Checkbox/Checkbox.d.ts +0 -0
  485. /package/{dist/components → components}/Checkbox/Checkbox.js +0 -0
  486. /package/{dist/components → components}/Checkbox/Checkbox.js.map +0 -0
  487. /package/{dist/components → components}/Checkbox/Checkbox.sx.d.ts +0 -0
  488. /package/{dist/components → components}/Checkbox/index.d.ts +0 -0
  489. /package/{dist/components → components}/Checkbox.d.ts +0 -0
  490. /package/{dist/components → components}/Chip/Chip.cjs +0 -0
  491. /package/{dist/components → components}/Chip/Chip.cjs.map +0 -0
  492. /package/{dist/components → components}/Chip/Chip.d.ts +0 -0
  493. /package/{dist/components → components}/Chip/Chip.definitions.d.ts +0 -0
  494. /package/{dist/components → components}/Chip/Chip.js +0 -0
  495. /package/{dist/components → components}/Chip/Chip.js.map +0 -0
  496. /package/{dist/components → components}/Chip/index.d.ts +0 -0
  497. /package/{dist/components → components}/Chip.d.ts +0 -0
  498. /package/{dist/components → components}/Column/Column.cjs +0 -0
  499. /package/{dist/components → components}/Column/Column.cjs.map +0 -0
  500. /package/{dist/components → components}/Column/Column.d.ts +0 -0
  501. /package/{dist/components → components}/Column/Column.js +0 -0
  502. /package/{dist/components → components}/Column/Column.js.map +0 -0
  503. /package/{dist/components → components}/Column/index.d.ts +0 -0
  504. /package/{dist/components → components}/Column.d.ts +0 -0
  505. /package/{dist/components → components}/DatePicker/DatePicker.cjs +0 -0
  506. /package/{dist/components → components}/DatePicker/DatePicker.cjs.map +0 -0
  507. /package/{dist/components → components}/DatePicker/DatePicker.d.ts +0 -0
  508. /package/{dist/components → components}/DatePicker/DatePicker.definitions.d.ts +0 -0
  509. /package/{dist/components → components}/DatePicker/DatePicker.helpers.d.ts +0 -0
  510. /package/{dist/components → components}/DatePicker/DatePicker.js +0 -0
  511. /package/{dist/components → components}/DatePicker/DatePicker.js.map +0 -0
  512. /package/{dist/components → components}/DatePicker/DatePicker.sx.d.ts +0 -0
  513. /package/{dist/components → components}/DatePicker/index.d.ts +0 -0
  514. /package/{dist/components → components}/DatePicker.d.ts +0 -0
  515. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs +0 -0
  516. /package/{dist/components → components}/DateTimePicker/DateTimePicker.cjs.map +0 -0
  517. /package/{dist/components → components}/DateTimePicker/DateTimePicker.d.ts +0 -0
  518. /package/{dist/components → components}/DateTimePicker/DateTimePicker.definitions.d.ts +0 -0
  519. /package/{dist/components → components}/DateTimePicker/DateTimePicker.helpers.d.ts +0 -0
  520. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js +0 -0
  521. /package/{dist/components → components}/DateTimePicker/DateTimePicker.js.map +0 -0
  522. /package/{dist/components → components}/DateTimePicker/DateTimePicker.sx.d.ts +0 -0
  523. /package/{dist/components → components}/DateTimePicker/index.d.ts +0 -0
  524. /package/{dist/components → components}/DateTimePicker.d.ts +0 -0
  525. /package/{dist/components → components}/Drawer/Drawer.cjs +0 -0
  526. /package/{dist/components → components}/Drawer/Drawer.cjs.map +0 -0
  527. /package/{dist/components → components}/Drawer/Drawer.d.ts +0 -0
  528. /package/{dist/components → components}/Drawer/Drawer.js +0 -0
  529. /package/{dist/components → components}/Drawer/Drawer.js.map +0 -0
  530. /package/{dist/components → components}/Drawer/Drawer.sx.d.ts +0 -0
  531. /package/{dist/components → components}/Drawer/DrawerContext.d.ts +0 -0
  532. /package/{dist/components → components}/Drawer/DrawerItem.d.ts +0 -0
  533. /package/{dist/components → components}/Drawer/index.d.ts +0 -0
  534. /package/{dist/components → components}/Drawer.d.ts +0 -0
  535. /package/{dist/components → components}/Flyout/Flyout.cjs +0 -0
  536. /package/{dist/components → components}/Flyout/Flyout.cjs.map +0 -0
  537. /package/{dist/components → components}/Flyout/Flyout.d.ts +0 -0
  538. /package/{dist/components → components}/Flyout/Flyout.js +0 -0
  539. /package/{dist/components → components}/Flyout/Flyout.js.map +0 -0
  540. /package/{dist/components → components}/Flyout/index.d.ts +0 -0
  541. /package/{dist/components → components}/Flyout.d.ts +0 -0
  542. /package/{dist/components → components}/Gallery/Gallery.cjs +0 -0
  543. /package/{dist/components → components}/Gallery/Gallery.cjs.map +0 -0
  544. /package/{dist/components → components}/Gallery/Gallery.d.ts +0 -0
  545. /package/{dist/components → components}/Gallery/Gallery.definition.d.ts +0 -0
  546. /package/{dist/components → components}/Gallery/Gallery.js +0 -0
  547. /package/{dist/components → components}/Gallery/Gallery.js.map +0 -0
  548. /package/{dist/components → components}/Gallery/GalleryLightbox.d.ts +0 -0
  549. /package/{dist/components → components}/Gallery/GalleryMain.d.ts +0 -0
  550. /package/{dist/components → components}/Gallery/GalleryThumbnails.d.ts +0 -0
  551. /package/{dist/components → components}/Gallery/index.d.ts +0 -0
  552. /package/{dist/components → components}/Gallery.d.ts +0 -0
  553. /package/{dist/components → components}/Icon/Icon.cjs +0 -0
  554. /package/{dist/components → components}/Icon/Icon.cjs.map +0 -0
  555. /package/{dist/components → components}/Icon/Icon.d.ts +0 -0
  556. /package/{dist/components → components}/Icon/Icon.js +0 -0
  557. /package/{dist/components → components}/Icon/Icon.js.map +0 -0
  558. /package/{dist/components → components}/Icon/index.d.ts +0 -0
  559. /package/{dist/components → components}/Icon.d.ts +0 -0
  560. /package/{dist/components → components}/Input/Input.cjs +0 -0
  561. /package/{dist/components → components}/Input/Input.cjs.map +0 -0
  562. /package/{dist/components → components}/Input/Input.d.ts +0 -0
  563. /package/{dist/components → components}/Input/Input.definitions.d.ts +0 -0
  564. /package/{dist/components → components}/Input/Input.helpers.d.ts +0 -0
  565. /package/{dist/components → components}/Input/Input.js +0 -0
  566. /package/{dist/components → components}/Input/Input.js.map +0 -0
  567. /package/{dist/components → components}/Input/Input.sx.d.ts +0 -0
  568. /package/{dist/components → components}/Input/index.d.ts +0 -0
  569. /package/{dist/components → components}/Input.d.ts +0 -0
  570. /package/{dist/components → components}/InputGroup/InputGroup.cjs +0 -0
  571. /package/{dist/components → components}/InputGroup/InputGroup.cjs.map +0 -0
  572. /package/{dist/components → components}/InputGroup/InputGroup.d.ts +0 -0
  573. /package/{dist/components → components}/InputGroup/InputGroup.definitions.d.ts +0 -0
  574. /package/{dist/components → components}/InputGroup/InputGroup.js +0 -0
  575. /package/{dist/components → components}/InputGroup/InputGroup.js.map +0 -0
  576. /package/{dist/components → components}/InputGroup/index.d.ts +0 -0
  577. /package/{dist/components → components}/InputGroup.d.ts +0 -0
  578. /package/{dist/components → components}/MenuButton/MenuButton.cjs +0 -0
  579. /package/{dist/components → components}/MenuButton/MenuButton.cjs.map +0 -0
  580. /package/{dist/components → components}/MenuButton/MenuButton.d.ts +0 -0
  581. /package/{dist/components → components}/MenuButton/MenuButton.js +0 -0
  582. /package/{dist/components → components}/MenuButton/MenuButton.js.map +0 -0
  583. /package/{dist/components → components}/MenuButton/index.d.ts +0 -0
  584. /package/{dist/components → components}/MenuButton.d.ts +0 -0
  585. /package/{dist/components → components}/Modal/Modal.cjs +0 -0
  586. /package/{dist/components → components}/Modal/Modal.cjs.map +0 -0
  587. /package/{dist/components → components}/Modal/Modal.d.ts +0 -0
  588. /package/{dist/components → components}/Modal/Modal.js +0 -0
  589. /package/{dist/components → components}/Modal/Modal.js.map +0 -0
  590. /package/{dist/components → components}/Modal/ModalBody.d.ts +0 -0
  591. /package/{dist/components → components}/Modal/ModalFooter.d.ts +0 -0
  592. /package/{dist/components → components}/Modal/ModalHeader.d.ts +0 -0
  593. /package/{dist/components → components}/Modal/index.d.ts +0 -0
  594. /package/{dist/components → components}/Modal.d.ts +0 -0
  595. /package/{dist/components → components}/RadioGroup/RadioGroup.cjs +0 -0
  596. /package/{dist/components → components}/RadioGroup/RadioGroup.cjs.map +0 -0
  597. /package/{dist/components → components}/RadioGroup/RadioGroup.d.ts +0 -0
  598. /package/{dist/components → components}/RadioGroup/RadioGroup.definitions.d.ts +0 -0
  599. /package/{dist/components → components}/RadioGroup/RadioGroup.js +0 -0
  600. /package/{dist/components → components}/RadioGroup/RadioGroup.js.map +0 -0
  601. /package/{dist/components → components}/RadioGroup/RadioGroup.sx.d.ts +0 -0
  602. /package/{dist/components → components}/RadioGroup/index.d.ts +0 -0
  603. /package/{dist/components → components}/RadioGroup.d.ts +0 -0
  604. /package/{dist/components → components}/Select/Select.cjs.map +0 -0
  605. /package/{dist/components → components}/Select/Select.helpers.d.ts +0 -0
  606. /package/{dist/components → components}/Select/Select.js.map +0 -0
  607. /package/{dist/components → components}/Select/Select.sx.d.ts +0 -0
  608. /package/{dist/components → components}/Select/_parts/SelectMenuItem.d.ts +0 -0
  609. /package/{dist/components → components}/Select/_parts/SelectValue.d.ts +0 -0
  610. /package/{dist/components → components}/Select/index.d.ts +0 -0
  611. /package/{dist/components → components}/Select.d.ts +0 -0
  612. /package/{dist/components → components}/Stat/Stat.cjs +0 -0
  613. /package/{dist/components → components}/Stat/Stat.cjs.map +0 -0
  614. /package/{dist/components → components}/Stat/Stat.d.ts +0 -0
  615. /package/{dist/components → components}/Stat/Stat.js +0 -0
  616. /package/{dist/components → components}/Stat/Stat.js.map +0 -0
  617. /package/{dist/components → components}/Stat/index.d.ts +0 -0
  618. /package/{dist/components → components}/Stat.d.ts +0 -0
  619. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs +0 -0
  620. /package/{dist/components → components}/StatusMessage/StatusMessage.cjs.map +0 -0
  621. /package/{dist/components → components}/StatusMessage/StatusMessage.d.ts +0 -0
  622. /package/{dist/components → components}/StatusMessage/StatusMessage.js +0 -0
  623. /package/{dist/components → components}/StatusMessage/StatusMessage.js.map +0 -0
  624. /package/{dist/components → components}/StatusMessage/index.d.ts +0 -0
  625. /package/{dist/components → components}/StatusMessage.d.ts +0 -0
  626. /package/{dist/components → components}/Stepper/Step.d.ts +0 -0
  627. /package/{dist/components → components}/Stepper/Stepper.cjs +0 -0
  628. /package/{dist/components → components}/Stepper/Stepper.cjs.map +0 -0
  629. /package/{dist/components → components}/Stepper/Stepper.d.ts +0 -0
  630. /package/{dist/components → components}/Stepper/Stepper.definition.d.ts +0 -0
  631. /package/{dist/components → components}/Stepper/Stepper.js +0 -0
  632. /package/{dist/components → components}/Stepper/Stepper.js.map +0 -0
  633. /package/{dist/components → components}/Stepper/StepperContext.d.ts +0 -0
  634. /package/{dist/components → components}/Stepper/_hooks/useHorizontalScroll.d.ts +0 -0
  635. /package/{dist/components → components}/Stepper/_parts/StepperScrollArrow.d.ts +0 -0
  636. /package/{dist/components → components}/Stepper/index.d.ts +0 -0
  637. /package/{dist/components → components}/Stepper.d.ts +0 -0
  638. /package/{dist/components → components}/Switch/Switch.cjs +0 -0
  639. /package/{dist/components → components}/Switch/Switch.cjs.map +0 -0
  640. /package/{dist/components → components}/Switch/Switch.d.ts +0 -0
  641. /package/{dist/components → components}/Switch/Switch.definitions.d.ts +0 -0
  642. /package/{dist/components → components}/Switch/Switch.js +0 -0
  643. /package/{dist/components → components}/Switch/Switch.js.map +0 -0
  644. /package/{dist/components → components}/Switch/Switch.sx.d.ts +0 -0
  645. /package/{dist/components → components}/Switch/Switch.types.d.ts +0 -0
  646. /package/{dist/components → components}/Switch/index.d.ts +0 -0
  647. /package/{dist/components → components}/Switch.d.ts +0 -0
  648. /package/{dist/components → components}/Table/Table.cjs +0 -0
  649. /package/{dist/components → components}/Table/Table.cjs.map +0 -0
  650. /package/{dist/components → components}/Table/Table.d.ts +0 -0
  651. /package/{dist/components → components}/Table/Table.definition.d.ts +0 -0
  652. /package/{dist/components → components}/Table/Table.js +0 -0
  653. /package/{dist/components → components}/Table/Table.js.map +0 -0
  654. /package/{dist/components → components}/Table/data.d.ts +0 -0
  655. /package/{dist/components → components}/Table/exportsUtils.d.ts +0 -0
  656. /package/{dist/components → components}/Table/index.d.ts +0 -0
  657. /package/{dist/components → components}/Table/types.d.ts +0 -0
  658. /package/{dist/components → components}/Table.d.ts +0 -0
  659. /package/{dist/components → components}/Tabs/Tab.d.ts +0 -0
  660. /package/{dist/components → components}/Tabs/Tab.definition.d.ts +0 -0
  661. /package/{dist/components → components}/Tabs/Tabs.cjs +0 -0
  662. /package/{dist/components → components}/Tabs/Tabs.cjs.map +0 -0
  663. /package/{dist/components → components}/Tabs/Tabs.d.ts +0 -0
  664. /package/{dist/components → components}/Tabs/Tabs.js +0 -0
  665. /package/{dist/components → components}/Tabs/Tabs.js.map +0 -0
  666. /package/{dist/components → components}/Tabs/_tabUtils.d.ts +0 -0
  667. /package/{dist/components → components}/Tabs/index.d.ts +0 -0
  668. /package/{dist/components → components}/Tabs.d.ts +0 -0
  669. /package/{dist/components → components}/Timeline/Timeline.cjs +0 -0
  670. /package/{dist/components → components}/Timeline/Timeline.cjs.map +0 -0
  671. /package/{dist/components → components}/Timeline/Timeline.d.ts +0 -0
  672. /package/{dist/components → components}/Timeline/Timeline.definition.d.ts +0 -0
  673. /package/{dist/components → components}/Timeline/Timeline.js +0 -0
  674. /package/{dist/components → components}/Timeline/Timeline.js.map +0 -0
  675. /package/{dist/components → components}/Timeline/TimelineItem.d.ts +0 -0
  676. /package/{dist/components → components}/Timeline/index.d.ts +0 -0
  677. /package/{dist/components → components}/Timeline.d.ts +0 -0
  678. /package/{dist/components → components}/Tooltip/Tooltip.cjs +0 -0
  679. /package/{dist/components → components}/Tooltip/Tooltip.cjs.map +0 -0
  680. /package/{dist/components → components}/Tooltip/Tooltip.d.ts +0 -0
  681. /package/{dist/components → components}/Tooltip/Tooltip.js +0 -0
  682. /package/{dist/components → components}/Tooltip/Tooltip.js.map +0 -0
  683. /package/{dist/components → components}/Tooltip/index.d.ts +0 -0
  684. /package/{dist/components → components}/Tooltip.d.ts +0 -0
  685. /package/{dist/components → components}/_shared/formField.sx.d.ts +0 -0
  686. /package/{dist/components → components}/_shared/mergeSx.d.ts +0 -0
  687. /package/{dist/components → components}/_shared/resolvePreset.d.ts +0 -0
  688. /package/{dist/formField.sx-8_QRnKxv.js → formField.sx-8_QRnKxv.js} +0 -0
  689. /package/{dist/formField.sx-8_QRnKxv.js.map → formField.sx-8_QRnKxv.js.map} +0 -0
  690. /package/{dist/formField.sx-BAX7KwMR.cjs → formField.sx-BAX7KwMR.cjs} +0 -0
  691. /package/{dist/formField.sx-BAX7KwMR.cjs.map → formField.sx-BAX7KwMR.cjs.map} +0 -0
  692. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs +0 -0
  693. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.cjs.map +0 -0
  694. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.d.ts +0 -0
  695. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js +0 -0
  696. /package/{dist/hooks → hooks}/ClipBoard/ClipBoard.js.map +0 -0
  697. /package/{dist/hooks → hooks}/ClipBoard/ClipboardUnifiedDemo.d.ts +0 -0
  698. /package/{dist/hooks → hooks}/ClipBoard/index.d.ts +0 -0
  699. /package/{dist/hooks → hooks}/ClipBoard.d.ts +0 -0
  700. /package/{dist/index.cjs.map → index.cjs.map} +0 -0
  701. /package/{dist/index.css → index.css} +0 -0
  702. /package/{dist/index.d.ts → index.d.ts} +0 -0
  703. /package/{dist/index.js.map → index.js.map} +0 -0
  704. /package/{dist/mergeSx-BXoNZjB_.js → mergeSx-BXoNZjB_.js} +0 -0
  705. /package/{dist/mergeSx-BXoNZjB_.js.map → mergeSx-BXoNZjB_.js.map} +0 -0
  706. /package/{dist/mergeSx-Dbccoo_H.cjs → mergeSx-Dbccoo_H.cjs} +0 -0
  707. /package/{dist/mergeSx-Dbccoo_H.cjs.map → mergeSx-Dbccoo_H.cjs.map} +0 -0
  708. /package/{dist/mui.d.ts → mui.d.ts} +0 -0
  709. /package/{dist/resolvePreset-CxTI6_Ln.cjs → resolvePreset-CxTI6_Ln.cjs} +0 -0
  710. /package/{dist/resolvePreset-CxTI6_Ln.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +0 -0
  711. /package/{dist/resolvePreset-K6_BfWHD.js → resolvePreset-K6_BfWHD.js} +0 -0
  712. /package/{dist/resolvePreset-K6_BfWHD.js.map → resolvePreset-K6_BfWHD.js.map} +0 -0
  713. /package/{dist/theme → theme}/componentStyles.d.ts +0 -0
  714. /package/{dist/theme → theme}/tokens.d.ts +0 -0
  715. /package/{dist/tokens-BRrcP_p_.js → tokens-BRrcP_p_.js} +0 -0
  716. /package/{dist/tokens-BRrcP_p_.js.map → tokens-BRrcP_p_.js.map} +0 -0
  717. /package/{dist/tokens-jaWWNk39.cjs → tokens-jaWWNk39.cjs} +0 -0
  718. /package/{dist/tokens-jaWWNk39.cjs.map → tokens-jaWWNk39.cjs.map} +0 -0
  719. /package/{dist/utils → utils}/index.d.ts +0 -0
  720. /package/{dist/utils → utils}/scrollToTop.d.ts +0 -0
@@ -1,1260 +0,0 @@
1
- import{j as e}from"./jsx-runtime-D_zvdyIk.js";import{r as T,R as pa}from"./iframe-BAJnc_4n.js";import{c as le}from"./createSvgIcon-D_Gca4vA.js";import{K as ua,a as ga}from"./KeyboardArrowRight-WO_attK2.js";import{T as ha}from"./TableContainer-CzLNaEU-.js";import{T as xa,a as ya,b as ea,c as Te,d as fa}from"./TableRow-CS88-1HF.js";import{g as $e,a as Ue,s as ie,b as te,d as Me,r as na,u as Ye,c as xe,m as Oe,h as he,e as ba,i as va,j as Ca}from"./DefaultPropsProvider-BGoQxtDa.js";import{u as Sa,S as Ta}from"./Select-DJh2biEb.js";import{u as re}from"./useSlot-b6pXgp5_.js";import{u as la}from"./useControlled-DsVh1a5j.js";import{B as Ea}from"./ButtonBase-qyaMEhe4.js";import{c as Ze}from"./createSimplePaletteValueFilter-bm0fmN_7.js";import{m as ja}from"./mergeSlotProps-B0UBKBMe.js";import{T as s}from"./Typography-BgntX2Ep.js";import{B as w}from"./Box-BnhEcfFm.js";import{M as wa}from"./MenuItem-iU6tAqJI.js";import{I as Ee}from"./IconButton-9OYSTH58.js";import{B as ge}from"./Button-DBpqmVB_.js";import{S as Ia}from"./Snackbar-BtVeKTw6.js";import{A as ka}from"./Alert-3zvTPc0p.js";import{A as We}from"./Avatar-NbFfkZws.js";import{C as $}from"./Chip-C3vKPpzR.js";import{a as Pa}from"./useSlotProps-C0uMfuBt.js";import{u as ia}from"./useId-b4fZxjOL.js";import{u as za}from"./useForkRef-0ANIrxcF.js";import{v as Ba}from"./visuallyHidden-Dan1xhjv.js";import{i as Le}from"./isFocusVisible-B8k4qzLc.js";import{u as Ra}from"./useTheme-BmOJK7ra.js";import"./preload-helper-PPVm8Dsz.js";import"./Menu-ClzfjLc3.js";import"./Paper-SwQBhqI7.js";import"./ownerDocument-DW-IO8s5.js";import"./ownerWindow-HkKU3E4x.js";import"./debounce-Be36O1Ab.js";import"./Grow-8y4FglGK.js";import"./getReactElementRef-BQ3ANZdy.js";import"./useTimeout-DNjRaOWc.js";import"./index-CY7j4a7o.js";import"./index-BF3FAXTk.js";import"./Modal-3okp9H2i.js";import"./Portal-Cj8XF9Lf.js";import"./Fade-Ll96CvH8.js";import"./emotion-react.browser.esm--g-C9cX9.js";import"./extendSxProp-CEpa30hT.js";import"./listItemTextClasses-CC_rwJam.js";import"./CircularProgress-DC7ZNWwl.js";import"./Close-Cy8nELYU.js";function Da(o){return $e("PrivateSwitchBase",o)}Ue("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const Fa=o=>{const{classes:a,checked:t,disabled:r,edge:l}=o,p={root:["root",t&&"checked",r&&"disabled",l&&`edge${te(l)}`],input:["input"]};return Me(p,Da,a)},Aa=ie(Ea,{name:"MuiSwitchBase"})({padding:9,borderRadius:"50%",variants:[{props:{edge:"start",size:"small"},style:{marginLeft:-3}},{props:({edge:o,ownerState:a})=>o==="start"&&a.size!=="small",style:{marginLeft:-12}},{props:{edge:"end",size:"small"},style:{marginRight:-3}},{props:({edge:o,ownerState:a})=>o==="end"&&a.size!=="small",style:{marginRight:-12}}]}),Va=ie("input",{name:"MuiSwitchBase",shouldForwardProp:na})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),Na=T.forwardRef(function(a,t){const{autoFocus:r,checked:l,checkedIcon:p,defaultChecked:n,disabled:u,disableFocusRipple:f=!1,edge:h=!1,icon:x,id:y,inputProps:E,inputRef:j,name:v,onBlur:R,onChange:D,onFocus:z,readOnly:A,required:S=!1,tabIndex:g,type:P,value:J,slots:se={},slotProps:H={},...ee}=a,[M,ae]=la({controlled:l,default:!!n,name:"SwitchBase",state:"checked"}),V=Sa(),oe=C=>{z&&z(C),V&&V.onFocus&&V.onFocus(C)},_=C=>{R&&R(C),V&&V.onBlur&&V.onBlur(C)},ce=C=>{if(C.nativeEvent.defaultPrevented)return;const F=C.target.checked;ae(F),D&&D(C,F)};let B=u;V&&typeof B>"u"&&(B=V.disabled);const k=P==="checkbox"||P==="radio",N={...a,checked:M,disabled:B,disableFocusRipple:f,edge:h},O=Fa(N),X={slots:se,slotProps:{input:E,...H}},[de,me]=re("root",{ref:t,elementType:Aa,className:O.root,shouldForwardComponentProp:!0,externalForwardedProps:{...X,component:"span",...ee},getSlotProps:C=>({...C,onFocus:F=>{C.onFocus?.(F),oe(F)},onBlur:F=>{C.onBlur?.(F),_(F)}}),ownerState:N,additionalProps:{centerRipple:!0,focusRipple:!f,disabled:B,role:void 0,tabIndex:null}}),[ye,fe]=re("input",{ref:j,elementType:Va,className:O.input,externalForwardedProps:X,getSlotProps:C=>({...C,onChange:F=>{C.onChange?.(F),ce(F)}}),ownerState:N,additionalProps:{autoFocus:r,checked:l,defaultChecked:n,disabled:B,id:k?y:void 0,name:v,readOnly:A,required:S,tabIndex:g,type:P,...P==="checkbox"&&J===void 0?{}:{value:J}}});return e.jsxs(de,{...me,children:[e.jsx(ye,{...fe}),M?p:x]})}),La=le(e.jsx("path",{d:"M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z"})),$a=le(e.jsx("path",{d:"M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"})),Ua=le(e.jsx("path",{d:"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z"}));function Ma(o){return $e("MuiCheckbox",o)}const Ke=Ue("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary","sizeSmall","sizeMedium"]),Oa=o=>{const{classes:a,indeterminate:t,color:r,size:l}=o,p={root:["root",t&&"indeterminate",`color${te(r)}`,`size${te(l)}`]},n=Me(p,Ma,a);return{...a,...n}},Wa=ie(Na,{shouldForwardProp:o=>na(o)||o==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(o,a)=>{const{ownerState:t}=o;return[a.root,t.indeterminate&&a.indeterminate,a[`size${te(t.size)}`],t.color!=="default"&&a[`color${te(t.color)}`]]}})(Oe(({theme:o})=>({color:(o.vars||o).palette.text.secondary,variants:[{props:{color:"default",disableRipple:!1},style:{"&:hover":{backgroundColor:o.alpha((o.vars||o).palette.action.active,(o.vars||o).palette.action.hoverOpacity)}}},...Object.entries(o.palette).filter(Ze()).map(([a])=>({props:{color:a,disableRipple:!1},style:{"&:hover":{backgroundColor:o.alpha((o.vars||o).palette[a].main,(o.vars||o).palette.action.hoverOpacity)}}})),...Object.entries(o.palette).filter(Ze()).map(([a])=>({props:{color:a},style:{[`&.${Ke.checked}, &.${Ke.indeterminate}`]:{color:(o.vars||o).palette[a].main},[`&.${Ke.disabled}`]:{color:(o.vars||o).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}))),qa=e.jsx($a,{}),Ha=e.jsx(La,{}),_a=e.jsx(Ua,{}),aa=T.forwardRef(function(a,t){const r=Ye({props:a,name:"MuiCheckbox"}),{checkedIcon:l=qa,color:p="primary",icon:n=Ha,indeterminate:u=!1,indeterminateIcon:f=_a,inputProps:h,size:x="medium",disableRipple:y=!1,className:E,slots:j={},slotProps:v={},...R}=r,D=u?f:n,z=u?f:l,A={...r,disableRipple:y,color:p,indeterminate:u,size:x},S=Oa(A),g=v.input??h,[P,J]=re("root",{ref:t,elementType:Wa,className:xe(S.root,E),shouldForwardComponentProp:!0,externalForwardedProps:{slots:j,slotProps:v,...R},ownerState:A,additionalProps:{type:"checkbox",icon:T.cloneElement(D,{fontSize:D.props.fontSize??x}),checkedIcon:T.cloneElement(z,{fontSize:z.props.fontSize??x}),disableRipple:y,slots:j,slotProps:{input:ja(typeof g=="function"?g(A):g,{"data-indeterminate":u})}}});return e.jsx(P,{...J,classes:S})});function Xa(o){return $e("MuiLink",o)}const Ga=Ue("MuiLink",["root","underlineNone","underlineHover","underlineAlways","button","focusVisible"]),Ka=({theme:o,ownerState:a})=>{const t=a.color;if("colorSpace"in o&&o.colorSpace){const p=he(o,`palette.${t}.main`)||he(o,`palette.${t}`)||a.color;return o.alpha(p,.4)}const r=he(o,`palette.${t}.main`,!1)||he(o,`palette.${t}`,!1)||a.color,l=he(o,`palette.${t}.mainChannel`)||he(o,`palette.${t}Channel`);return"vars"in o&&l?`rgba(${l} / 0.4)`:ba(r,.4)},oa={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},Ja=o=>{const{classes:a,component:t,focusVisible:r,underline:l}=o,p={root:["root",`underline${te(l)}`,t==="button"&&"button",r&&"focusVisible"]};return Me(p,Xa,a)},Za=ie(s,{name:"MuiLink",slot:"Root",overridesResolver:(o,a)=>{const{ownerState:t}=o;return[a.root,a[`underline${te(t.underline)}`],t.component==="button"&&a.button]}})(Oe(({theme:o})=>({variants:[{props:{underline:"none"},style:{textDecoration:"none"}},{props:{underline:"hover"},style:{textDecoration:"none","&:hover":{textDecoration:"underline"}}},{props:{underline:"always"},style:{textDecoration:"underline","&:hover":{textDecorationColor:"inherit"}}},{props:({underline:a,ownerState:t})=>a==="always"&&t.color!=="inherit",style:{textDecorationColor:"var(--Link-underlineColor)"}},{props:({underline:a,ownerState:t})=>a==="always"&&t.color==="inherit",style:o.colorSpace?{textDecorationColor:o.alpha("currentColor",.4)}:null},...Object.entries(o.palette).filter(Ze()).map(([a])=>({props:{underline:"always",color:a},style:{"--Link-underlineColor":o.alpha((o.vars||o).palette[a].main,.4)}})),{props:{underline:"always",color:"textPrimary"},style:{"--Link-underlineColor":o.alpha((o.vars||o).palette.text.primary,.4)}},{props:{underline:"always",color:"textSecondary"},style:{"--Link-underlineColor":o.alpha((o.vars||o).palette.text.secondary,.4)}},{props:{underline:"always",color:"textDisabled"},style:{"--Link-underlineColor":(o.vars||o).palette.text.disabled}},{props:{component:"button"},style:{position:"relative",WebkitTapHighlightColor:"transparent",backgroundColor:"transparent",outline:0,border:0,margin:0,borderRadius:0,padding:0,cursor:"pointer",userSelect:"none",verticalAlign:"middle",MozAppearance:"none",WebkitAppearance:"none","&::-moz-focus-inner":{borderStyle:"none"},[`&.${Ga.focusVisible}`]:{outline:"auto"}}}]}))),Ya=T.forwardRef(function(a,t){const r=Ye({props:a,name:"MuiLink"}),l=Ra(),{className:p,color:n="primary",component:u="a",onBlur:f,onFocus:h,TypographyClasses:x,underline:y="always",variant:E="inherit",sx:j,...v}=r,[R,D]=T.useState(!1),z=P=>{Le(P.target)||D(!1),f&&f(P)},A=P=>{Le(P.target)&&D(!0),h&&h(P)},S={...r,color:n,component:u,focusVisible:R,underline:y,variant:E},g=Ja(S);return e.jsx(Za,{color:n,className:xe(g.root,p),classes:x,component:u,onBlur:z,onFocus:A,ref:t,ownerState:S,variant:E,...v,sx:[...oa[n]===void 0?[{color:n}]:[],...Array.isArray(j)?j:[j]],style:{...v.style,...y==="always"&&n!=="inherit"&&!oa[n]&&{"--Link-underlineColor":Ka({theme:l,ownerState:S})}}})}),Qa=le(e.jsx("path",{d:"M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"})),eo=le(e.jsx("path",{d:"M22 9.24l-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"}));function ao(o){return $e("MuiRating",o)}const Ce=Ue("MuiRating",["root","sizeSmall","sizeMedium","sizeLarge","readOnly","disabled","focusVisible","visuallyHidden","pristine","label","labelEmptyValueActive","icon","iconEmpty","iconFilled","iconHover","iconFocus","iconActive","decimal"]);function oo(o){const a=o.toString().split(".")[1];return a?a.length:0}function Je(o,a){if(o==null)return o;const t=Math.round(o/a)*a;return Number(t.toFixed(oo(a)))}const to=o=>{const{classes:a,size:t,readOnly:r,disabled:l,emptyValueFocused:p,focusVisible:n}=o,u={root:["root",`size${te(t)}`,l&&"disabled",n&&"focusVisible",r&&"readOnly"],label:["label","pristine"],labelEmptyValue:[p&&"labelEmptyValueActive"],icon:["icon"],iconEmpty:["iconEmpty"],iconFilled:["iconFilled"],iconHover:["iconHover"],iconFocus:["iconFocus"],iconActive:["iconActive"],decimal:["decimal"],visuallyHidden:["visuallyHidden"]};return Me(u,ao,a)},ro=ie("span",{name:"MuiRating",slot:"Root",overridesResolver:(o,a)=>{const{ownerState:t}=o;return[{[`& .${Ce.visuallyHidden}`]:a.visuallyHidden},a.root,a[`size${te(t.size)}`],t.readOnly&&a.readOnly]}})(Oe(({theme:o})=>({display:"inline-flex",position:"relative",fontSize:o.typography.pxToRem(24),color:"#faaf00",cursor:"pointer",textAlign:"left",width:"min-content",WebkitTapHighlightColor:"transparent",[`&.${Ce.disabled}`]:{opacity:(o.vars||o).palette.action.disabledOpacity,pointerEvents:"none"},[`&.${Ce.focusVisible} .${Ce.iconActive}`]:{outline:"1px solid #999"},[`& .${Ce.visuallyHidden}`]:Ba,variants:[{props:{size:"small"},style:{fontSize:o.typography.pxToRem(18)}},{props:{size:"large"},style:{fontSize:o.typography.pxToRem(30)}},{props:({ownerState:a})=>a.readOnly,style:{pointerEvents:"none"}}]}))),sa=ie("label",{name:"MuiRating",slot:"Label",overridesResolver:({ownerState:o},a)=>[a.label,o.emptyValueFocused&&a.labelEmptyValueActive]})({cursor:"inherit",variants:[{props:({ownerState:o})=>o.emptyValueFocused,style:{top:0,bottom:0,position:"absolute",outline:"1px solid #999",width:"100%"}}]}),no=ie("span",{name:"MuiRating",slot:"Icon",overridesResolver:(o,a)=>{const{ownerState:t}=o;return[a.icon,t.iconEmpty&&a.iconEmpty,t.iconFilled&&a.iconFilled,t.iconHover&&a.iconHover,t.iconFocus&&a.iconFocus,t.iconActive&&a.iconActive]}})(Oe(({theme:o})=>({display:"flex",transition:o.transitions.create("transform",{duration:o.transitions.duration.shortest}),pointerEvents:"none",variants:[{props:({ownerState:a})=>a.iconActive,style:{transform:"scale(1.2)"}},{props:({ownerState:a})=>a.iconEmpty,style:{color:(o.vars||o).palette.action.disabled}}]}))),lo=ie("span",{name:"MuiRating",slot:"Decimal",shouldForwardProp:o=>va(o)&&o!=="iconActive",overridesResolver:(o,a)=>{const{iconActive:t}=o;return[a.decimal,t&&a.iconActive]}})({position:"relative",variants:[{props:({iconActive:o})=>o,style:{transform:"scale(1.2)"}}]});function io(o){const{value:a,...t}=o;return e.jsx("span",{...t})}function ta(o){const{classes:a,disabled:t,emptyIcon:r,focus:l,getLabelText:p,highlightSelectedOnly:n,hover:u,icon:f,IconContainerComponent:h,isActive:x,itemValue:y,labelProps:E,name:j,onBlur:v,onChange:R,onClick:D,onFocus:z,readOnly:A,ownerState:S,ratingValue:g,ratingValueRounded:P,slots:J={},slotProps:se={}}=o,H=n?y===g:y<=g,ee=y<=u,M=y<=l,ae=y===P,V=`${j}-${ia()}`,oe={slots:J,slotProps:se},[_,ce]=re("icon",{elementType:no,className:xe(a.icon,H?a.iconFilled:a.iconEmpty,ee&&a.iconHover,M&&a.iconFocus,x&&a.iconActive),externalForwardedProps:oe,ownerState:{...S,iconEmpty:!H,iconFilled:H,iconHover:ee,iconFocus:M,iconActive:x},additionalProps:{value:y},internalForwardedProps:{as:h}}),[B,k]=re("label",{elementType:sa,externalForwardedProps:oe,ownerState:{...S,emptyValueFocused:void 0},additionalProps:{style:E?.style,htmlFor:V}}),N=e.jsx(_,{...ce,children:r&&!H?r:f});return A?e.jsx("span",{...E,children:N}):e.jsxs(T.Fragment,{children:[e.jsxs(B,{...k,children:[N,e.jsx("span",{className:a.visuallyHidden,children:p(y)})]}),e.jsx("input",{className:a.visuallyHidden,onFocus:z,onBlur:v,onChange:R,onClick:D,disabled:t,value:y,id:V,type:"radio",name:j,checked:ae})]})}const so=e.jsx(Qa,{fontSize:"inherit"}),co=e.jsx(eo,{fontSize:"inherit"});function mo(o){return`${o||"0"} Star${o!==1?"s":""}`}const Qe=T.forwardRef(function(a,t){const r=Ye({name:"MuiRating",props:a}),{component:l="span",className:p,defaultValue:n=null,disabled:u=!1,emptyIcon:f=co,emptyLabelText:h="Empty",getLabelText:x=mo,highlightSelectedOnly:y=!1,icon:E=so,IconContainerComponent:j=io,max:v=5,name:R,onChange:D,onChangeActive:z,onMouseLeave:A,onMouseMove:S,precision:g=1,readOnly:P=!1,size:J="medium",value:se,slots:H={},slotProps:ee={},...M}=r,ae=ia(R),[V,oe]=la({controlled:se,default:n,name:"Rating"}),_=Je(V,g),ce=Pa(),[{hover:B,focus:k},N]=T.useState({hover:-1,focus:-1});let O=_;B!==-1&&(O=B),k!==-1&&(O=k);const[X,de]=T.useState(!1),me=T.useRef(),ye=za(me,t),fe=m=>{S&&S(m);const c=me.current,{right:b,left:L,width:W}=c.getBoundingClientRect();let K;ce?K=(b-m.clientX)/W:K=(m.clientX-L)/W;let q=Je(v*K+g/2,g);q=Ca(q,g,v),N(Q=>Q.hover===q&&Q.focus===q?Q:{hover:q,focus:q}),de(!1),z&&B!==q&&z(m,q)},C=m=>{A&&A(m);const c=-1;N({hover:c,focus:c}),z&&B!==c&&z(m,c)},F=m=>{let c=m.target.value===""?null:parseFloat(m.target.value);B!==-1&&(c=B),oe(c),D&&D(m,c)},G=m=>{m.clientX===0&&m.clientY===0||(N({hover:-1,focus:-1}),oe(null),D&&parseFloat(m.target.value)===_&&D(m,null))},Z=m=>{Le(m.target)&&de(!0);const c=parseFloat(m.target.value);N(b=>({hover:b.hover,focus:c}))},pe=m=>{if(B!==-1)return;Le(m.target)||de(!1);const c=-1;N(b=>({hover:b.hover,focus:c}))},[qe,He]=T.useState(!1),ue={...r,component:l,defaultValue:n,disabled:u,emptyIcon:f,emptyLabelText:h,emptyValueFocused:qe,focusVisible:X,getLabelText:x,icon:E,IconContainerComponent:j,max:v,precision:g,readOnly:P,size:J},Y=to(ue),be={slots:H,slotProps:ee},[Se,ve]=re("root",{ref:ye,className:xe(Y.root,p),elementType:ro,externalForwardedProps:{...be,...M,component:l},getSlotProps:m=>({...m,onMouseMove:c=>{fe(c),m.onMouseMove?.(c)},onMouseLeave:c=>{C(c),m.onMouseLeave?.(c)}}),ownerState:ue,additionalProps:{role:P?"img":null,"aria-label":P?x(O):null}}),[_e,Xe]=re("label",{className:xe(Y.label,Y.labelEmptyValue),elementType:sa,externalForwardedProps:be,ownerState:ue}),[d,I]=re("decimal",{className:Y.decimal,elementType:lo,externalForwardedProps:be,ownerState:ue});return e.jsxs(Se,{...ve,children:[Array.from(new Array(v)).map((m,c)=>{const b=c+1,L={classes:Y,disabled:u,emptyIcon:f,focus:k,getLabelText:x,highlightSelectedOnly:y,hover:B,icon:E,IconContainerComponent:j,name:ae,onBlur:pe,onChange:F,onClick:G,onFocus:Z,ratingValue:O,ratingValueRounded:_,readOnly:P,ownerState:ue,slots:H,slotProps:ee},W=b===Math.ceil(O)&&(B!==-1||k!==-1);if(g<1){const K=Array.from(new Array(1/g));return T.createElement(d,{...I,key:b,className:xe(I.className,W&&Y.iconActive),iconActive:W},K.map((q,Q)=>{const Ge=Je(b-1+(Q+1)*g,g);return e.jsx(ta,{...L,isActive:!1,itemValue:Ge,labelProps:{style:K.length-1===Q?{}:{width:Ge===O?`${(Q+1)*g*100}%`:"0%",overflow:"hidden",position:"absolute"}}},Ge)}))}return e.jsx(ta,{...L,isActive:W,itemValue:b},b)}),!P&&!u&&e.jsxs(_e,{...Xe,children:[e.jsx("input",{className:Y.visuallyHidden,value:"",id:`${ae}-empty`,type:"radio",name:ae,checked:_==null,onFocus:()=>He(!0),onBlur:()=>He(!1),onChange:F}),e.jsx("span",{className:Y.visuallyHidden,children:h})]})]})}),ra=le(e.jsx("path",{d:"M19 9h-4V3H9v6H5l7 7zm-8 2V5h2v6h1.17L12 13.17 9.83 11zm-6 7h14v2H5z"})),po=le(e.jsx("path",{d:"M18.41 16.59 13.82 12l4.59-4.59L17 6l-6 6 6 6zM6 6h2v12H6z"})),uo=le(e.jsx("path",{d:"M5.59 7.41 10.18 12l-4.59 4.59L7 18l6-6-6-6zM16 6h2v12h-2z"})),go=o=>{const{data:a,columns:t,fileName:r,exportColumns:l,setSnackbarOpen:p,setSnackbarMessage:n,setSnackbarSeverity:u}=o;if(!a||a.length===0){n("No hay datos para exportar a CSV."),u("warning"),p(!0);return}n("Exportando datos a CSV..."),u("info"),p(!0);try{const f=l?t.filter(v=>l.includes(v.props.name)):t,h=f.map(v=>`"${v.props.name.replace(/"/g,'""')}"`).join(","),x=a.map(v=>f.map(D=>{const z=D.props.field;let A;Array.isArray(z)?A=v[z[0]]:A=v[z];let S=String(A||"");return(S.includes(",")||S.includes('"')||S.includes(`
2
- `))&&(S=`"${S.replace(/"/g,'""')}"`),S}).join(",")),y=[h,...x].join(`
3
- `),E=new Blob([y],{type:"text/csv;charset=utf-8;"}),j=document.createElement("a");if(j.download!==void 0){const v=URL.createObjectURL(E);j.setAttribute("href",v),j.setAttribute("download",r+".csv"),j.style.visibility="hidden",document.body.appendChild(j),j.click(),document.body.removeChild(j),URL.revokeObjectURL(v),n("¡Exportación a CSV completada!"),u("success")}else n("Tu navegador no soporta la descarga directa para CSV. Por favor, copia el contenido manualmente."),u("error")}catch(f){console.error("Error al exportar los datos a CSV:",f),n("Error al exportar los datos a CSV."),u("error")}finally{p(!0)}},ho=o=>{const{data:a,columns:t,fileName:r,exportColumns:l,setSnackbarOpen:p,setSnackbarMessage:n,setSnackbarSeverity:u}=o;if(!a||a.length===0){n("No hay datos para exportar a Excel."),u("warning"),p(!0);return}n("Exportando datos a Excel (XLSX)..."),u("info"),p(!0);try{const f=l?t.filter(E=>l.includes(E.props.name)):t;let h=`
4
- <html xmlns:o="urn:schemas-microsoft-com:office:office"
5
- xmlns:x="urn:schemas-microsoft-com:office:excel"
6
- xmlns="http://www.w3.org/TR/REC-html40">
7
- <head>
8
- <meta charset="utf-8" />
9
- <!--[if gte mso 9]><xml>
10
- <x:ExcelWorkbook>
11
- <x:ExcelWorksheets>
12
- <x:ExcelWorksheet>
13
- <x:Name>Hoja1</x:Name>
14
- <x:WorksheetOptions>
15
- <x:DisplayGridlines/>
16
- </x:WorksheetOptions>
17
- </x:ExcelWorksheet>
18
- </x:ExcelWorksheets>
19
- </x:ExcelWorkbook>
20
- </xml><![endif]-->
21
- </head>
22
- <body>
23
- <table>
24
- <thead>
25
- <tr>
26
- ${f.map(E=>`<th>${E.props.name}</th>`).join("")}
27
- </tr>
28
- </thead>
29
- <tbody>
30
- ${a.map(E=>`
31
- <tr>
32
- ${f.map(j=>{const v=j.props.field;let R;return Array.isArray(v)?R=E[v[0]]:R=E[v],`<td>${String(R||"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}</td>`}).join("")}
33
- </tr>
34
- `).join("")}
35
- </tbody>
36
- </table>
37
- </body>
38
- </html>
39
- `;const x=new Blob([h],{type:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8;"}),y=document.createElement("a");if(y.download!==void 0){const E=URL.createObjectURL(x);y.setAttribute("href",E),y.setAttribute("download",r+".xlsx"),y.style.visibility="hidden",document.body.appendChild(y),y.click(),document.body.removeChild(y),URL.revokeObjectURL(E),n("¡Exportación a Excel (XLSX) completada!"),u("success")}else n("Tu navegador no soporta la descarga directa para Excel (XLSX). Por favor, copia el contenido manualmente."),u("error")}catch(f){console.error("Error al exportar los datos a Excel (XLSX):",f),n("Error al exportar los datos a Excel (XLSX)."),u("error")}finally{p(!0)}},xo=""+new URL("EmptyTable-B-RKtgVs.png",import.meta.url).href,yo=pa.forwardRef(function(a,t){return e.jsx(ka,{elevation:6,ref:t,variant:"filled",...a})});function U({data:o,children:a,currentPage:t,pageSize:r,totalPages:l,previousPage:p,nextPage:n,pageSizeSelectorValue:u=10,onPageChange:f,onPageSizeChange:h,visiblePageNumbers:x=5,enableCSVExport:y=!1,csvExportFileName:E="data.csv",csvExportButtonText:j="Exportar CSV",csvExportColumns:v,enableExcelExport:R=!1,excelExportFileName:D="data.xlsx",excelExportButtonText:z="Exportar Excel",excelExportColumns:A,enableRowSelection:S=!1,rowIdentifier:g,onSelectionChange:P,showPageSizeSelector:J=!0,emptyTitle:se="No hay datos disponibles",emptyMessage:H,emptyImageSrc:ee=e.jsx(w,{mb:2,children:e.jsx("img",{src:xo,alt:"No data",style:{maxWidth:"150px",opacity:.6}})})}){const M=T.Children.toArray(a).filter(d=>T.isValidElement(d)&&d.type.displayName==="Column"),[ae,V]=T.useState(!1),[oe,_]=T.useState(""),[ce,B]=T.useState("info"),[k,N]=T.useState([]);T.useEffect(()=>{N([])},[o,t,r]),T.useEffect(()=>{P?.(k)},[k,P]);const O=(d,I)=>{I!=="clickaway"&&V(!1)},X=typeof f=="function"&&typeof t=="number",[de,me]=T.useState(1),[ye,fe]=T.useState(u),C=X?t:de,F=X?r:ye,G=X?o:o.slice((C-1)*F,C*F),Z=X?l:Math.ceil(o.length/F),pe=d=>{d<1||d>Z||(X?f?.(d):me(d))},qe=d=>{X?(h?.(d),f?.(1)):(fe(d),me(1))},ue=(()=>{const d=[],I=Z,m=C,c=Math.floor(x/2);let b=Math.max(1,m-c),L=Math.min(I,m+c);L-b+1<x&&(b===1?L=Math.min(I,b+x-1):L===I&&(b=Math.max(1,I-x+1)));for(let W=b;W<=L;W++)d.push(W);return d})(),Y=d=>{if(!g){console.warn("`rowIdentifier` prop is required for row selection.");return}if(d.target.checked){const I=[...k];G.forEach(m=>{const c=m[g];I.some(b=>b[g]===c)||I.push(m)}),N(I)}else{const I=k.filter(m=>!G.some(c=>c[g]===m[g]));N(I)}},be=(d,I)=>{if(!g){console.warn("`rowIdentifier` prop is required for row selection.");return}const m=I[g],c=k.findIndex(L=>L[g]===m);let b=[];c===-1?b=b.concat(k,I):c===0?b=b.concat(k.slice(1)):c===k.length-1?b=b.concat(k.slice(0,-1)):c>0&&(b=b.concat(k.slice(0,c),k.slice(c+1))),N(b)},Se=d=>g?k.some(I=>I[g]===d[g]):!1,ve=G.filter(Se).length,_e=G.length>0&&ve===G.length,Xe=ve>0&&ve<G.length;return e.jsxs(ha,{children:[e.jsxs(xa,{sx:{minWidth:650},"aria-label":"custom table",style:G.length===0?{display:"none"}:{},children:[e.jsx(ya,{sx:{backgroundColor:"#fff"},children:e.jsxs(ea,{children:[S&&e.jsxs(Te,{padding:"checkbox",sx:{width:"50px"},children:[" ",e.jsx(aa,{color:"primary",indeterminate:Xe,checked:_e,onChange:Y,inputProps:{"aria-label":"select all desserts"}})]}),M.map((d,I)=>e.jsx(Te,{sx:{fontSize:"12px",color:m=>m.palette.text.secondary,width:d.props.width||"auto",whiteSpace:"nowrap"},children:e.jsx(s,{sx:{fontSize:"12px"},children:d.props.name})},I))]})}),e.jsx(fa,{sx:{borderRadius:"10px",overflow:"hidden"},children:G.map((d,I)=>{const m=S&&Se(d);return e.jsxs(ea,{sx:{backgroundColor:"#F8F8F8","&:last-child td, &:last-child th":{border:0},"&:hover":{backgroundColor:c=>"#FFF"}},selected:m,children:[S&&e.jsxs(Te,{padding:"checkbox",sx:{width:"50px"},children:[" ",e.jsx(aa,{color:"primary",checked:m,onClick:c=>be(c,d),inputProps:{"aria-labelledby":`table-checkbox-${I}`}})]}),M.map((c,b)=>{const{field:L,children:W}=c.props;let K;return Array.isArray(L)?L.length===0?K={...d}:K=L.reduce((q,Q)=>(q[Q]=d[Q],q),{}):K={[L]:d[L]},e.jsx(Te,{sx:{fontSize:"14px",width:c.props.width||"auto",whiteSpace:"nowrap",padding:"12px 16px",borderBottom:"none"},children:W(K)},b)})]},I)})})]}),G.length===0&&e.jsxs(w,{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",p:4,children:[ee,e.jsx(s,{variant:"body2",color:"#878E9A",fontSize:"18px",fontWeight:"600",children:se||"No hay datos disponibles para mostrar."}),e.jsx(s,{variant:"body2",color:"#878E9A",fontSize:"14px",mt:1,children:H||"Intente ajustar sus filtros o agregar nuevos datos."})]}),(Z>0||y||R||S&&k.length>0)&&e.jsxs(w,{display:"flex",justifyContent:"space-between",alignItems:"center",p:2,children:[Z>0&&J&&e.jsx(Ta,{size:"small",value:F,onChange:d=>qe(Number(d.target.value)),children:[1,2,3,5,10,20,50,100].map(d=>e.jsxs(wa,{value:d,children:["Mostrar ",d]},d))}),Z>0&&e.jsxs(w,{display:"flex",alignItems:"center",gap:.5,sx:{flexGrow:1,justifyContent:"center"},children:[e.jsx(Ee,{onClick:()=>pe(1),disabled:C<=1,size:"small",color:"primary",children:e.jsx(po,{fontSize:"small"})}),e.jsx(Ee,{onClick:()=>pe(C-1),disabled:C<=1,size:"small",color:"primary",children:e.jsx(ua,{fontSize:"small"})}),ue.map(d=>e.jsx(ge,{onClick:()=>pe(d),variant:C===d?"contained":"text",size:"small",sx:{minWidth:"32px",height:"32px"},children:d},d)),e.jsx(Ee,{onClick:()=>pe(C+1),disabled:C>=Z,size:"small",color:"primary",children:e.jsx(ga,{fontSize:"small"})}),e.jsx(Ee,{onClick:()=>pe(Z),disabled:C>=Z,size:"small",color:"primary",children:e.jsx(uo,{fontSize:"small"})})]}),S&&k.length>0&&e.jsxs(s,{variant:"subtitle2",sx:{mr:2},children:[k.length," seleccionados"]}),(y||R)&&e.jsxs(w,{display:"flex",alignItems:"center",gap:1,children:[y&&e.jsx(ge,{variant:"text",color:"primary",onClick:()=>go({data:o,columns:M,fileName:E,exportColumns:v,setSnackbarOpen:V,setSnackbarMessage:_,setSnackbarSeverity:B}),size:"small",startIcon:e.jsx(ra,{}),children:j}),R&&e.jsx(ge,{variant:"text",color:"primary",onClick:()=>ho({data:o,columns:M,fileName:D,exportColumns:A,setSnackbarOpen:V,setSnackbarMessage:_,setSnackbarSeverity:B}),size:"small",startIcon:e.jsx(ra,{}),children:z})]})]}),e.jsx(Ia,{open:ae,autoHideDuration:3e3,onClose:O,anchorOrigin:{vertical:"bottom",horizontal:"center"},children:e.jsx(yo,{onClose:O,severity:ce,sx:{width:"100%"},children:oe})})]})}U.__docgenInfo={description:"",methods:[],displayName:"Table",props:{data:{required:!0,tsType:{name:"Array",elements:[{name:"T"}],raw:"T[]"},description:""},children:{required:!0,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:""},currentPage:{required:!1,tsType:{name:"number"},description:""},pageSize:{required:!1,tsType:{name:"number"},description:""},totalPages:{required:!1,tsType:{name:"number"},description:""},previousPage:{required:!1,tsType:{name:"number"},description:""},nextPage:{required:!1,tsType:{name:"number"},description:""},pageSizeSelectorValue:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"10",computed:!1}},onPageChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(newPage: number) => void",signature:{arguments:[{type:{name:"number"},name:"newPage"}],return:{name:"void"}}},description:""},onPageSizeChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(newSize: number) => void",signature:{arguments:[{type:{name:"number"},name:"newSize"}],return:{name:"void"}}},description:""},visiblePageNumbers:{required:!1,tsType:{name:"number"},description:"",defaultValue:{value:"5",computed:!1}},enableCSVExport:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},csvExportFileName:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'data.csv'",computed:!1}},csvExportButtonText:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'Exportar CSV'",computed:!1}},csvExportColumns:{required:!1,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},enableExcelExport:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},excelExportFileName:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'data.xlsx'",computed:!1}},excelExportButtonText:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'Exportar Excel'",computed:!1}},excelExportColumns:{required:!1,tsType:{name:"Array",elements:[{name:"string"}],raw:"string[]"},description:""},enableRowSelection:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},rowIdentifier:{required:!1,tsType:{name:"T"},description:""},onSelectionChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(selectedItems: T[]) => void",signature:{arguments:[{type:{name:"Array",elements:[{name:"T"}],raw:"T[]"},name:"selectedItems"}],return:{name:"void"}}},description:""},showPageSizeSelector:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},emptyTitle:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"'No hay datos disponibles'",computed:!1}},emptyMessage:{required:!1,tsType:{name:"string"},description:""},emptyImageSrc:{required:!1,tsType:{name:"ReactReactNode",raw:"React.ReactNode"},description:"",defaultValue:{value:`<Box mb={2}>
40
- <img src={EmptyImage} alt="No data" style={{ maxWidth: '150px', opacity: 0.6 }} />
41
- </Box>`,computed:!1}}}};function i(o){return null}i.displayName="Column";const ne=[{id:1,nombre:"Juan Pérez",email:"juan@example.com",avatar:"https://placehold.co/50x50/F0F8FF/333333?text=JP",edad:25,activo:!0,rol:"admin",fechaRegistro:"2023-01-15",puntuacion:4.5},{id:2,nombre:"Ana García",email:"ana@example.com",avatar:"https://placehold.co/50x50/FFF0F5/333333?text=AG",edad:30,activo:!1,rol:"usuario",fechaRegistro:"2023-02-20",puntuacion:3.8},{id:3,nombre:"Carlos López",email:"carlos@example.com",avatar:"https://placehold.co/50x50/F5FFFA/333333?text=CL",edad:28,activo:!0,rol:"moderador",fechaRegistro:"2023-03-10",puntuacion:4.2},{id:4,nombre:"María Rodríguez",email:"maria@example.com",avatar:"https://placehold.co/50x50/F8F8FF/333333?text=MR",edad:35,activo:!0,rol:"usuario",fechaRegistro:"2023-04-05",puntuacion:4.9},{id:5,nombre:"Luis Martínez",email:"luis@example.com",avatar:"https://placehold.co/50x50/E6E6FA/333333?text=LM",edad:22,activo:!1,rol:"usuario",fechaRegistro:"2023-05-12",puntuacion:3.2}],ca=[{id:1,nombre:"iPhone 15",precio:999,categoria:"Electrónicos",stock:15,imagen:"https://placehold.co/60x60/ADD8E6/000000?text=I15",enOferta:!0,rating:4.8},{id:2,nombre:"Samsung Galaxy S24",precio:899,categoria:"Electrónicos",stock:8,imagen:"https://placehold.co/60x60/90EE90/000000?text=S24",enOferta:!1,rating:4.6},{id:3,nombre:"MacBook Pro",precio:1999,categoria:"Computadoras",stock:3,imagen:"https://placehold.co/60x60/DDA0DD/000000?text=MBP",enOferta:!0,rating:4.9},{id:4,nombre:"Dell XPS 13",precio:1299,categoria:"Computadoras",stock:0,imagen:"https://placehold.co/60x60/FFB6C1/000000?text=DX13",enOferta:!1,rating:4.4}],da=[{id:1,nombre:"Roberto",apellido:"Silva",departamento:"Desarrollo",salario:75e3,fechaIngreso:"2022-01-15",activo:!0,avatar:"https://placehold.co/50x50/B0E0E6/000000?text=RS"},{id:2,nombre:"Sofía",apellido:"Herrera",departamento:"Diseño",salario:65e3,fechaIngreso:"2022-03-20",activo:!0,avatar:"https://placehold.co/50x50/F5DEB3/000000?text=SH"},{id:3,nombre:"Diego",apellido:"Morales",departamento:"Marketing",salario:55e3,fechaIngreso:"2021-11-10",activo:!1,avatar:"https://placehold.co/50x50/D8BFD8/000000?text=DM"}],fo=`
42
- <Table data={data} visiblePageNumbers={5} pageSizeSelectorValue={1} pageSize={1}>
43
- <Column name="Nombre" field="nombre">
44
- {({ nombre }) => <Typography variant="body2">{nombre}</Typography>}
45
- </Column>
46
- <Column name="Email" field="email">
47
- {({ email }) => <Typography variant="body2" color="text.secondary">{email}</Typography>}
48
- </Column>
49
- <Column name="Edad" field="edad">
50
- {({ edad }) => <Typography variant="body2">{edad} años</Typography>}
51
- </Column>
52
- </Table>
53
- `,bo=`
54
- <Table data={data}>
55
- <Column name="Usuario" field={['avatar', 'nombre']}>
56
- {({ avatar, nombre }) => (
57
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
58
- <Avatar src={avatar} alt={nombre} sx={{ width: 40, height: 40 }} />
59
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
60
- </Box>
61
- )}
62
- </Column>
63
- <Column name="Estado" field="activo">
64
- {({ activo }) => (
65
- <Chip
66
- label={activo ? 'Activo' : 'Inactivo'}
67
- color={activo ? 'success' : 'default'}
68
- size="small"
69
- />
70
- )}
71
- </Column>
72
- <Column name="Rol" field="rol">
73
- {({ rol }) => (
74
- <Chip
75
- label={rol!.charAt(0).toUpperCase() + rol!.slice(1)}
76
- color={rol === 'admin' ? 'primary' : rol === 'moderador' ? 'secondary' : 'default'}
77
- variant="outlined"
78
- size="small"
79
- />
80
- )}
81
- </Column>
82
- <Column name="Puntuación" field="puntuacion">
83
- {({ puntuacion }) => (
84
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
85
- <Rating value={puntuacion} max={5} precision={0.1} size="small" readOnly />
86
- <Typography variant="caption" color="text.secondary">
87
- {puntuacion}
88
- </Typography>
89
- </Box>
90
- )}
91
- </Column>
92
- </Table>
93
- `,vo=`
94
- const [currentPage, setCurrentPage] = useState(1);
95
- const [pageSize, setPageSize] = useState(2);
96
- const totalItems = usuarios.length;
97
- const totalPages = Math.ceil(totalItems / pageSize);
98
-
99
- const startIndex = (currentPage - 1) * pageSize;
100
- const currentData = usuarios.slice(startIndex, startIndex + pageSize);
101
-
102
- const previousPageNum = currentPage > 1 ? currentPage - 1 : 1;
103
- const nextPageNum = currentPage < totalPages ? currentPage + 1 : totalPages;
104
-
105
- return (
106
- <Table
107
- data={currentData} // Pasa solo los datos de la página actual
108
- currentPage={currentPage}
109
- pageSize={pageSize}
110
- totalPages={totalPages}
111
- previousPage={previousPageNum}
112
- nextPage={nextPageNum}
113
- onPageChange={setCurrentPage}
114
- onPageSizeChange={setPageSize}
115
- >
116
- <Column name="Nombre" field="nombre">
117
- {({ nombre }) => <Typography variant="body2" fontWeight="medium">{nombre}</Typography>}
118
- </Column>
119
- <Column name="Email" field="email">
120
- {({ email }) => <Typography variant="body2" color="text.secondary">{email}</Typography>}
121
- </Column>
122
- <Column name="Estado" field="activo">
123
- {({ activo }) => (
124
- <Chip
125
- label={activo ? 'Activo' : 'Inactivo'}
126
- color={activo ? 'success' : 'default'}
127
- size="small"
128
- />
129
- )}
130
- </Column>
131
- <Column name="Fecha de Registro" field="fechaRegistro">
132
- {({ fechaRegistro }) => (
133
- <Typography variant="body2">
134
- {new Date(fechaRegistro!).toLocaleDateString('es-ES')}
135
- </Typography>
136
- )}
137
- </Column>
138
- </Table>
139
- );
140
- `,Co=`
141
- <Table data={data} pageSizeSelectorValue={pageSizeSelectorValue}>
142
- <Column name="Producto" field={['imagen', 'nombre']}>
143
- {({ imagen, nombre }) => (
144
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
145
- <Box
146
- component="img"
147
- src={imagen}
148
- alt={nombre}
149
- sx={{ width: 50, height: 50, borderRadius: 1, objectFit: 'cover' }}
150
- />
151
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
152
- </Box>
153
- )}
154
- </Column>
155
- <Column name="Precio" field={['precio', 'enOferta']}>
156
- {({ precio, enOferta }) => (
157
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
158
- <Typography
159
- variant="body2"
160
- color={enOferta ? 'error.main' : 'text.primary'}
161
- fontWeight={enOferta ? 'bold' : 'normal'}
162
- >
163
- \${precio!.toLocaleString()}
164
- </Typography>
165
- {enOferta && (
166
- <Chip label="OFERTA" color="error" size="small" />
167
- )}
168
- </Box>
169
- )}
170
- </Column>
171
- <Column name="Stock" field="stock">
172
- {({ stock }) => (
173
- <Chip
174
- label={stock! > 0 ? \`\${stock} unidades\` : 'Sin stock'}
175
- color={stock! > 5 ? 'success' : stock! > 0 ? 'warning' : 'error'}
176
- size="small"
177
- />
178
- )}
179
- </Column>
180
- <Column name="Categoría" field="categoria">
181
- {({ categoria }) => (
182
- <Typography variant="body2">{categoria}</Typography>
183
- )}
184
- </Column>
185
- <Column name="Rating" field="rating">
186
- {({ rating }) => (
187
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
188
- <Rating value={rating} max={5} precision={0.1} size="small" readOnly />
189
- <Typography variant="caption">({rating})</Typography>
190
- </Box>
191
- )}
192
- </Column>
193
- </Table>
194
- `,So=`
195
- <Table data={data} pageSizeSelectorValue={pageSizeSelectorValue}>
196
- <Column name="Empleado" field={['avatar', 'nombre', 'apellido']}>
197
- {({ avatar, nombre, apellido }) => (
198
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
199
- <Avatar src={avatar} sx={{ width: 40, height: 40 }}>
200
- {avatar ? '' : \`\${nombre!.charAt(0)}\${apellido!.charAt(0)}\`}
201
- </Avatar>
202
- <Typography variant="body2" fontWeight="medium">
203
- {nombre} {apellido}
204
- </Typography>
205
- </Box>
206
- )}
207
- </Column>
208
- <Column name="Departamento" field="departamento">
209
- {({ departamento }) => (
210
- <Chip
211
- label={departamento}
212
- color="info"
213
- variant="filled"
214
- size="small"
215
- />
216
- )}
217
- </Column>
218
- <Column name="Salario" field="salario">
219
- {({ salario }) => (
220
- <Typography variant="body2" fontWeight="bold" color="success.dark">
221
- \${salario!.toLocaleString('es-ES')}
222
- </Typography>
223
- )}
224
- </Column>
225
- <Column name="Estado" field={['activo', 'fechaIngreso']}>
226
- {({ activo, fechaIngreso }) => (
227
- <Box>
228
- <Chip
229
- label={activo ? 'Contratado' : 'Inactivo'}
230
- color={activo ? 'success' : 'error'}
231
- size="small"
232
- />
233
- <Typography variant="caption" display="block" color="text.secondary" sx={{ mt: 0.5 }}>
234
- Desde: {new Date(fechaIngreso!).toLocaleDateString('es-ES')}
235
- </Typography>
236
- </Box>
237
- )}
238
- </Column>
239
- </Table>
240
- `,To=`
241
- <Table data={data}>
242
- <Column name="Nombre" field="nombre">
243
- {({ nombre }) => <Typography variant="body2">{nombre}</Typography>}
244
- </Column>
245
- <Column name="Email" field="email">
246
- {({ email }) => <Typography variant="body2">{email}</Typography>}
247
- </Column>
248
- <Column name="Estado" field="activo">
249
- {({ activo }) => <Chip label={activo ? 'Activo' : 'Inactivo'} size="small" />}
250
- </Column>
251
- </Table>
252
- `,Eo=`
253
- <Table data={data}>
254
- <Column name="Usuario" field={['avatar', 'nombre', 'email']}>
255
- {({ avatar, nombre, email }) => (
256
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
257
- <Avatar src={avatar} alt={nombre} />
258
- <Box>
259
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
260
- <Typography variant="caption" color="text.secondary">{email}</Typography>
261
- </Box>
262
- </Box>
263
- )}
264
- </Column>
265
- <Column<Usuario> name="Información" field={[]}>
266
- {(user) => (
267
- <>
268
- <Typography variant="body2">{user.edad} años</Typography>
269
- <Box sx={{ display: 'flex', gap: 1, mt: 0.5 }}>
270
- <Chip label={user.rol} size="small" color="primary" variant="outlined" />
271
- <Chip
272
- label={user.activo ? 'Activo' : 'Inactivo'}
273
- size="small"
274
- color={user.activo ? 'success' : 'default'}
275
- />
276
- </Box>
277
- </>
278
- )}
279
- </Column>
280
- </Table>
281
- `,jo=`
282
- <Table data={data}>
283
- <Column name="Producto" field={['imagen', 'nombre']}>
284
- {({ imagen, nombre }) => (
285
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
286
- <Box
287
- component="img"
288
- src={imagen}
289
- alt={nombre}
290
- sx={{ width: 50, height: 50, borderRadius: 1, objectFit: 'cover' }}
291
- />
292
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
293
- </Box>
294
- )}
295
- </Column>
296
- <Column name="Precio" field={['precio', 'enOferta']}>
297
- {({ precio, enOferta }) => (
298
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
299
- <Typography
300
- variant="body2"
301
- color={enOferta ? 'error.main' : 'text.primary'}
302
- fontWeight={enOferta ? 'bold' : 'normal'}
303
- >
304
- \${precio!.toLocaleString()}
305
- </Typography>
306
- {enOferta && (
307
- <Chip label="OFERTA" color="error" size="small" />
308
- )}
309
- </Box>
310
- )}
311
- </Column>
312
- <Column name="Stock" field="stock">
313
- {({ stock }) => (
314
- <Chip
315
- label={stock! > 0 ? \`\${stock} unidades\` : 'Sin stock'}
316
- color={stock!> 5 ? 'success' : stock! > 0 ? 'warning' : 'error'}
317
- size="small"
318
- sx={{ backgroundColor: stock === 0 ? 'rgba(255, 0, 0, 0.1)' : undefined }}
319
- />
320
- )}
321
- </Column>
322
- <Column name="Rating" field="rating">
323
- {({ rating }) => (
324
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 1 }}>
325
- <Rating value={rating} max={5} precision={0.1} size="small" readOnly />
326
- <Typography variant="caption">({rating})</Typography>
327
- </Box>
328
- )}
329
- </Column>
330
- </Table>
331
- `,wo=`
332
- <Table data={data}>
333
- <Column name="Empleado" field={['nombre', 'apellido', 'avatar']}>
334
- {({ nombre, apellido, avatar }) => (
335
- <Box sx={{ display: 'flex', alignItems: 'center', gap: 2 }}>
336
- <Avatar src={avatar} sx={{ width: 40, height: 40 }}>
337
- {avatar ? '' : \`\${nombre!.charAt(0)}\${apellido!.charAt(0)}\`}
338
- </Avatar>
339
- <Typography variant="body2" fontWeight="medium">
340
- {nombre} {apellido}
341
- </Typography>
342
- </Box>
343
- )}
344
- </Column>
345
- <Column name="Departamento" field="departamento">
346
- {({ departamento }) => (
347
- <Chip
348
- label={departamento}
349
- color="info"
350
- variant="filled"
351
- size="small"
352
- />
353
- )}
354
- </Column>
355
- <Column name="Salario" field="salario">
356
- {({ salario }) => (
357
- <Typography variant="body2" fontWeight="bold" color="success.dark">
358
- \${salario!.toLocaleString('es-ES')}
359
- </Typography>
360
- )}
361
- </Column>
362
- <Column name="Estado de Contratación" field={['activo', 'fechaIngreso']}>
363
- {({ activo, fechaIngreso }) => (
364
- <Box>
365
- <Chip
366
- label={activo ? 'Contratado' : 'Inactivo'}
367
- color={activo ? 'success' : 'error'}
368
- size="small"
369
- />
370
- <Typography variant="caption" display="block" color="text.secondary" sx={{ mt: 0.5 }}>
371
- Desde: {new Date(fechaIngreso!).toLocaleDateString('es-ES')}
372
- </Typography>
373
- </Box>
374
- )}
375
- </Column>
376
- </Table>
377
- `,Io=`
378
- <Table data={data}>
379
- <Column name="Nombre" field="nombre">
380
- {({ nombre }) => <Typography variant="body2">{nombre}</Typography>}
381
- </Column>
382
- <Column name="Email" field="email">
383
- {({ email }) => <Typography variant="body2" color="text.secondary">{email}</Typography>}
384
- </Column>
385
- <Column name="Acciones" field="id">
386
- {({ id }) => (
387
- <Button
388
- variant="contained"
389
- color="primary"
390
- size="small"
391
- onClick={() => alert('ID del usuario: '+id )} // Log al hacer clic
392
- >
393
- Ver Detalles ({id})
394
- </Button>
395
- )}
396
- </Column>
397
- </Table>
398
- `,ko=`
399
- <Table<Usuario>
400
- data={usuarios}
401
- enableExport={enableExport}
402
- exportFileName={exportFileName}
403
- exportButtonText={exportButtonText}
404
- exportColumns={exportColumns}
405
- >
406
- <Column<Usuario> name="ID" field="id">
407
- {(row) => <Typography>{row.id}</Typography>}
408
- </Column>
409
- <Column<Usuario> name="Nombre" field="nombre">
410
- {(row) => <Typography>{row.nombre}</Typography>}
411
- </Column>
412
- <Column<Usuario> name="Email" field="email">
413
- {({ email }) => <Link href={\`mailto:\${email}\`}>{email}</Link>}
414
- </Column>
415
- <Column<Usuario> name="Edad" field="edad">
416
- {(row) => <Typography>{row.edad}</Typography>}
417
- </Column>
418
- <Column<Usuario> name="Rol" field="rol">
419
- {({ rol }) => <Chip label={rol} size="small" />}
420
- </Column>
421
- <Column<Usuario> name="Acciones" field="id">
422
- {({ id }) => (
423
- <Button variant="outlined" size="small" onClick={() => alert(\`Ver detalles de usuario \${id}\`)}>
424
- Ver
425
- </Button>
426
- )}
427
- </Column>
428
- </Table>
429
- `,Po=`
430
-
431
- const [selectedItems, setSelectedItems] = useState<UserData[]>([]);
432
-
433
- const handleSelectionChange = (items: UserData[]) => {
434
- setSelectedItems(items);
435
- args.onSelectionChange?.(items);
436
- };
437
-
438
- const handleBulkDelete = () => {
439
- if (selectedItems.length > 0) {
440
- alert(\`Eliminando \${selectedItems.length} usuarios: \${selectedItems.map(item => item.nombre).join(', ')}\`);
441
- setSelectedItems([]);
442
- } else {
443
- alert('No hay elementos seleccionados para eliminar.');
444
- }
445
- };
446
-
447
- const handleBulkUpdateCity = () => {
448
- if (selectedItems.length > 0) {
449
- const newCity = prompt('Ingresa la nueva ciudad para los seleccionados:');
450
- if (newCity) {
451
- alert(\`Actualizando ciudad de \${selectedItems.length} usuarios a \${newCity}\`);
452
- setSelectedItems([]);
453
- }
454
- } else {
455
- alert('No hay elementos seleccionados para actualizar.');
456
- }
457
- };
458
-
459
- return (
460
- <Box>
461
- <Typography variant="h6" gutterBottom>
462
- Tabla con Selección de Filas
463
- </Typography>
464
- {selectedItems.length > 0 && (
465
- <Box sx={{ mb: 2, display: 'flex', gap: 1 }}>
466
- <Button variant="contained" color="error" onClick={handleBulkDelete}>
467
- Eliminar ({selectedItems.length})
468
- </Button>
469
- <Button variant="contained" color="primary" onClick={handleBulkUpdateCity}>
470
- Actualizar Ciudad ({selectedItems.length})
471
- </Button>
472
- <Typography variant="body2" sx={{ alignSelf: 'center', ml: 2 }}>
473
- Elementos seleccionados: {selectedItems.length}
474
- </Typography>
475
- </Box>
476
- )}
477
- <Table<UserData>
478
- {...args}
479
- data={sampleData} // Usamos sampleData para esta historia
480
- enableRowSelection={true}
481
- rowIdentifier="id" // Es crucial que coincida con una clave única en tus datos
482
- onSelectionChange={handleSelectionChange}
483
- pageSizeSelectorValue={5}
484
- >
485
- <Column<UserData>
486
- name="ID"
487
- field="id"
488
- children={(row) => <Typography>{row.id}</Typography>}
489
- />
490
- <Column<UserData>
491
- name="Nombre"
492
- field="name"
493
- children={(row) => <Typography>{row.name}</Typography>}
494
- />
495
- <Column<UserData>
496
- name="Email"
497
- field="email"
498
- children={(row) => <Typography>{row.email}</Typography>}
499
- />
500
- <Column<UserData>
501
- name="Ciudad"
502
- field="city"
503
- children={(row) => <Typography>{row.city}</Typography>}
504
- />
505
- </Table>
506
- </Box>
507
- );
508
-
509
- `,zo=`
510
- const [selectedItems, setSelectedItems] = useState<UserData[]>([]);
511
-
512
- const handleSelectionChange = (items: UserData[]) => {
513
- setSelectedItems(items);
514
- args.onSelectionChange?.(items);
515
- };
516
-
517
- return (
518
- <Box>
519
- <Typography variant="h6" gutterBottom>
520
- Tabla con Exportación y Selección de Filas
521
- </Typography>
522
- {selectedItems.length > 0 && (
523
- <Box sx={{ mb: 2 }}>
524
- <Typography variant="body2">
525
- Elementos seleccionados: {selectedItems.length}
526
- </Typography>
527
- </Box>
528
- )}
529
- <Table<UserData>
530
- {...args}
531
- data={sampleData} // Usamos sampleData para esta historia
532
- enableRowSelection={true}
533
- rowIdentifier="id"
534
- onSelectionChange={handleSelectionChange}
535
- pageSizeSelectorValue={5}
536
- enableCSVExport={true}
537
- csvExportFileName="users_data_with_selection"
538
- enableExcelExport={true}
539
- excelExportFileName="users_data_with_selection"
540
- >
541
- <Column<UserData>
542
- name="ID"
543
- field="id"
544
- children={(row) => <Typography>{row.id}</Typography>}
545
- />
546
- <Column<UserData>
547
- name="Nombre"
548
- field="name"
549
- children={(row) => <Typography>{row.name}</Typography>}
550
- />
551
- <Column<UserData>
552
- name="Email"
553
- field="email"
554
- children={(row) => <Typography>{row.email}</Typography>}
555
- />
556
- <Column<UserData>
557
- name="Ciudad"
558
- field="city"
559
- children={(row) => <Typography>{row.city}</Typography>}
560
- />
561
- </Table>
562
- </Box>
563
- );
564
- `,ma=[{id:1,name:"Alice Smith",age:28,city:"New York",email:"alice@example.com"},{id:2,name:"Bob Johnson",age:34,city:"London",email:"bob@example.com"},{id:3,name:"Charlie Brown",age:22,city:"Paris",email:"charlie@example.com"},{id:4,name:"Diana Prince",age:40,city:"Themyscira",email:"diana@example.com"},{id:5,name:"Eve Adams",age:19,city:"Berlin",email:"eve@example.com"},{id:6,name:"Frank White",age:55,city:"Tokyo",email:"frank@example.com"},{id:7,name:"Grace Lee",age:31,city:"Seoul",email:"grace@example.com"},{id:8,name:"Henry Ford",age:60,city:"Detroit",email:"henry@example.com"},{id:9,name:"Ivy Green",age:25,city:"Rome",email:"ivy@example.com"},{id:10,name:"Jack Black",age:45,city:"Los Angeles",email:"jack@example.com"},{id:11,name:"Karen Millen",age:33,city:"Madrid",email:"karen@example.com"},{id:12,name:"Leo Messi",age:37,city:"Miami",email:"leo@example.com"}],Et={title:"Components/Table",component:U,parameters:{layout:"padded",docs:{description:{component:"Componente de tabla flexible y tipado que permite definir columnas de forma declarativa con paginación interna o externa."}}},tags:["autodocs"],argTypes:{data:{control:"object",description:"Array de objetos de datos a mostrar en la tabla. Las columnas heredarán el tipo definido del arreglo de datos."},children:{control:!1,description:"Componentes `Column` que definen la estructura de las columnas. Las columnas definen requieren las propiedades: `name` que es el nombre que se verá en la columna y `field` que son los atributos a los cuales se podran acceder desde el scope interno de la columna. Si el atributo `field` tiene un arreglo vacio, se utilizará el objeto completo (todos los campos del objeto)."},currentPage:{control:"number",description:"Número de página actual (para paginación controlada).",if:{arg:"onPageChange",exists:!0}},pageSize:{control:"number",description:"Número de elementos por página (para paginación controlada).",if:{arg:"onPageChange",exists:!0}},totalPages:{control:"number",description:"Número total de páginas (para paginación controlada).",if:{arg:"onPageChange",exists:!0}},previousPage:{control:"number",description:"Página anterior (para paginación controlada).",if:{arg:"onPageChange",exists:!0}},nextPage:{control:"number",description:"Página siguiente (para paginación controlada).",if:{arg:"onPageChange",exists:!0}},pageSizeSelectorValue:{control:"number",description:"Valor por defecto para el selector de tamaño de página cuando la paginación es interna."},onPageChange:{action:"page changed",description:"Callback para manejar el cambio de página (activa paginación controlada)."},onPageSizeChange:{action:"page size changed",description:"Callback para manejar el cambio de tamaño de página (activa paginación controlada).",if:{arg:"onPageChange",exists:!0}},enableCSVExport:{control:"boolean",description:"Habilita o deshabilita la funcionalidad de exportación a CSV.",defaultValue:!1},csvExportFileName:{control:"text",description:"Nombre del archivo CSV al exportar.",defaultValue:"data.csv",if:{arg:"enableCSVExport",eq:!0}},enableExcelExport:{control:"boolean",description:"Habilita o deshabilita la funcionalidad de exportación a Excel.",defaultValue:!1},excelExportFileName:{control:"text",description:"Nombre del archivo Excel al exportar.",defaultValue:"data.xlsx",if:{arg:"enableExcelExport",eq:!0}},csvExportButtonText:{control:"text",description:"Texto del botón de exportar.",defaultValue:"Exportar CSV",if:{arg:"enableCSVExport",eq:!0}},excelExportButtonText:{control:"text",description:"Texto del botón de exportar.",defaultValue:"Exportar Excel",if:{arg:"enableExcelExport",eq:!0}},csvExportColumns:{control:"text",description:"Array de nombres de columnas a exportar. Si no se especifica, se exportan todas.",if:{arg:"enableCSVExport",eq:!0}},enableRowSelection:{control:"boolean",description:"Habilita o deshabilita la selección de filas con checkboxes.",defaultValue:!1},rowIdentifier:{control:"text",description:'La clave única en el objeto de datos utilizada como identificador para las filas seleccionables (ej. "id").',if:{arg:"enableRowSelection",eq:!0}},onSelectionChange:{action:"selectionChanged",description:"Callback que se dispara cuando cambia la selección de filas. Devuelve un array con los objetos seleccionados.",if:{arg:"enableRowSelection",eq:!0}}}},je={args:{data:ne},render:({data:o})=>e.jsxs(U,{data:o,pageSizeSelectorValue:1,pageSize:1,children:[e.jsx(i,{name:"Nombre",field:"nombre",children:({nombre:a})=>e.jsx(s,{children:a})}),e.jsx(i,{name:"Email",field:"email",children:({email:a})=>e.jsx(s,{color:"text.secondary",children:a})}),e.jsx(i,{width:"10%",name:"Edad",field:"edad",children:({edad:a})=>e.jsxs(s,{children:[a," años"]})})]}),parameters:{docs:{description:{story:"Tabla básica con datos simples y columnas de texto. La paginación es interna por defecto."},source:{code:fo.trim()}}}},we={args:{data:ne.slice(0,4)},render:({data:o})=>e.jsxs(U,{data:o,children:[e.jsx(i,{name:"Usuario",field:["avatar","nombre"],children:({avatar:a,nombre:t})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(We,{src:a,alt:t,sx:{width:40,height:40}}),e.jsx(s,{variant:"body2",fontWeight:"medium",children:t})]})}),e.jsx(i,{name:"Estado",field:"activo",children:({activo:a})=>e.jsx($,{label:a?"Activo":"Inactivo",color:a?"success":"default",size:"small"})}),e.jsx(i,{name:"Rol",field:"rol",children:({rol:a})=>e.jsx($,{label:a.charAt(0).toUpperCase()+a.slice(1),color:a==="admin"?"primary":a==="moderador"?"secondary":"default",variant:"outlined",size:"small"})}),e.jsx(i,{name:"Puntuación",field:"puntuacion",children:({puntuacion:a})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsx(Qe,{value:a,max:5,precision:.1,size:"small",readOnly:!0}),e.jsx(s,{variant:"caption",color:"text.secondary",children:a})]})})]}),parameters:{docs:{description:{story:"Tabla con componentes complejos como avatars, chips y ratings. La paginación es interna por defecto."},source:{code:bo.trim()}}}},Ie={render:()=>{const[o,a]=T.useState(1),[t,r]=T.useState(2),l=ne.length,p=Math.ceil(l/t),n=(o-1)*t,u=ne.slice(n,n+t),f=o>1?o-1:1,h=o<p?o+1:p;return e.jsxs(U,{data:u,currentPage:o,pageSize:t,totalPages:p,previousPage:f,nextPage:h,onPageChange:a,onPageSizeChange:r,children:[e.jsx(i,{name:"Nombre",field:"nombre",children:({nombre:x})=>e.jsx(s,{variant:"body2",fontWeight:"medium",children:x})}),e.jsx(i,{name:"Email",field:"email",children:({email:x})=>e.jsx(s,{variant:"body2",color:"text.secondary",children:x})}),e.jsx(i,{name:"Estado",field:"activo",children:({activo:x})=>e.jsx($,{label:x?"Activo":"Inactivo",color:x?"success":"default",size:"small"})}),e.jsx(i,{name:"Fecha de Registro",field:"fechaRegistro",children:({fechaRegistro:x})=>e.jsx(s,{variant:"body2",children:new Date(x).toLocaleDateString("es-ES")})})]})},parameters:{docs:{description:{story:"Tabla con paginación controlada externamente. El componente `Table` no gestiona el estado de la paginación, solo la UI."},source:{code:vo.trim()}}}},ke={args:{data:ca,pageSizeSelectorValue:1},render:({data:o,pageSizeSelectorValue:a})=>e.jsxs(U,{data:o,pageSizeSelectorValue:a,children:[e.jsx(i,{name:"Producto",field:["imagen","nombre"],children:({imagen:t,nombre:r})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(w,{component:"img",src:t,alt:r,sx:{width:50,height:50,borderRadius:1,objectFit:"cover"}}),e.jsx(s,{variant:"body2",fontWeight:"medium",children:r})]})}),e.jsx(i,{name:"Precio",field:["precio","enOferta"],children:({precio:t,enOferta:r})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsxs(s,{variant:"body2",color:r?"error.main":"text.primary",fontWeight:r?"bold":"normal",children:["$",t.toLocaleString()]}),r&&e.jsx($,{label:"OFERTA",color:"error",size:"small"})]})}),e.jsx(i,{name:"Stock",field:"stock",children:({stock:t})=>e.jsx($,{label:t>0?`${t} unidades`:"Sin stock",color:t>5?"success":t>0?"warning":"error",size:"small"})}),e.jsx(i,{name:"Categoría",field:"categoria",children:({categoria:t})=>e.jsx(s,{variant:"body2",children:t})}),e.jsx(i,{name:"Rating",field:"rating",children:({rating:t})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsx(Qe,{value:t,max:5,precision:.1,size:"small",readOnly:!0}),e.jsxs(s,{variant:"caption",children:["(",t,")"]})]})})]}),parameters:{docs:{description:{story:"Tabla de productos con imágenes, precios, stock y calificaciones. Paginación interna."},source:{code:Co.trim()}}}},Pe={args:{data:da,pageSizeSelectorValue:1},render:({data:o,pageSizeSelectorValue:a})=>e.jsxs(U,{data:o,pageSizeSelectorValue:a,children:[e.jsx(i,{name:"Empleado",field:["avatar","nombre","apellido"],children:({avatar:t,nombre:r,apellido:l})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(We,{src:t,sx:{width:40,height:40},children:t?"":`${r.charAt(0)}${l.charAt(0)}`}),e.jsxs(s,{variant:"body2",fontWeight:"medium",children:[r," ",l]})]})}),e.jsx(i,{name:"Departamento",field:"departamento",children:({departamento:t})=>e.jsx($,{label:t,color:"info",variant:"filled",size:"small"})}),e.jsx(i,{name:"Salario",field:"salario",children:({salario:t})=>e.jsxs(s,{variant:"body2",fontWeight:"bold",color:"success.dark",children:["$",t.toLocaleString("es-ES")]})}),e.jsx(i,{name:"Estado",field:["activo","fechaIngreso"],children:({activo:t,fechaIngreso:r})=>e.jsxs(w,{children:[e.jsx($,{label:t?"Contratado":"Inactivo",color:t?"success":"error",size:"small"}),e.jsxs(s,{variant:"caption",display:"block",color:"text.secondary",sx:{mt:.5},children:["Desde: ",new Date(r).toLocaleDateString("es-ES")]})]})})]}),parameters:{docs:{description:{story:"Tabla de empleados con múltiples campos combinados en una sola columna. Paginación interna."},source:{code:So.trim()}}}},ze={args:{data:[]},render:({data:o})=>e.jsxs(U,{data:o,emptyTitle:"No se encontraron registros",emptyMessage:"Intente ajustar sus filtros o agregar nuevos datos.",children:[e.jsx(i,{name:"Nombre",field:"nombre",children:({nombre:a})=>e.jsx(s,{variant:"body2",children:a})}),e.jsx(i,{name:"Email",field:"email",children:({email:a})=>e.jsx(s,{variant:"body2",children:a})}),e.jsx(i,{name:"Estado",field:"activo",children:({activo:a})=>e.jsx($,{label:a?"Activo":"Inactivo",size:"small"})})]}),parameters:{docs:{description:{story:"Tabla sin datos para mostrar el estado vacío y el mensaje correspondiente."},source:{code:To.trim()}}}},Be={args:{data:[ne[0]]},render:({data:o})=>e.jsxs(U,{data:o,children:[e.jsx(i,{name:"Usuario",field:["avatar","nombre","email"],children:({avatar:a,nombre:t,email:r})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(We,{src:a,alt:t}),e.jsxs(w,{children:[e.jsx(s,{variant:"body2",fontWeight:"medium",children:t}),e.jsx(s,{variant:"caption",color:"text.secondary",children:r})]})]})}),e.jsx(i,{name:"Información",field:[],children:a=>e.jsxs(e.Fragment,{children:[e.jsxs(s,{variant:"body2",children:[a.edad," años"]}),e.jsxs(w,{sx:{display:"flex",gap:1,mt:.5},children:[e.jsx($,{label:a.rol,size:"small",color:"primary",variant:"outlined"}),e.jsx($,{label:a.activo?"Activo":"Inactivo",size:"small",color:a.activo?"success":"default"})]})]})})]}),parameters:{docs:{description:{story:"Tabla con una sola fila de datos."},source:{code:Eo.trim()}}}},Re={args:{data:ca},render:({data:o})=>e.jsxs(U,{data:o,children:[e.jsx(i,{name:"Producto",field:["imagen","nombre"],children:({imagen:a,nombre:t})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(w,{component:"img",src:a,alt:t,sx:{width:50,height:50,borderRadius:1,objectFit:"cover"}}),e.jsx(s,{variant:"body2",fontWeight:"medium",children:t})]})}),e.jsx(i,{name:"Precio",field:["precio","enOferta"],children:({precio:a,enOferta:t})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsxs(s,{variant:"body2",color:t?"error.main":"text.primary",fontWeight:t?"bold":"normal",children:["$",a.toLocaleString()]}),t&&e.jsx($,{label:"OFERTA",color:"error",size:"small"})]})}),e.jsx(i,{name:"Stock",field:"stock",children:({stock:a})=>e.jsx($,{label:a>0?`${a} unidades`:"Sin stock",color:a>5?"success":a>0?"warning":"error",size:"small",sx:{backgroundColor:a===0?"rgba(255, 0, 0, 0.1)":void 0}})}),e.jsx(i,{name:"Rating",field:"rating",children:({rating:a})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsx(Qe,{value:a,max:5,precision:.1,size:"small",readOnly:!0}),e.jsxs(s,{variant:"caption",children:["(",a,")"]})]})})]}),parameters:{docs:{description:{story:"Muestra la tabla de productos resaltando visualmente los productos sin stock. Paginación interna."},source:{code:jo.trim()}}}},De={args:{data:da},render:({data:o})=>e.jsxs(U,{data:o,children:[e.jsx(i,{name:"Empleado",field:["nombre","apellido","avatar"],children:({nombre:a,apellido:t,avatar:r})=>e.jsxs(w,{sx:{display:"flex",alignItems:"center",gap:2},children:[e.jsx(We,{src:r,sx:{width:40,height:40},children:r?"":`${a.charAt(0)}${t.charAt(0)}`}),e.jsxs(s,{variant:"body2",fontWeight:"medium",children:[a," ",t]})]})}),e.jsx(i,{name:"Departamento",field:"departamento",children:({departamento:a})=>e.jsx($,{label:a,color:"info",variant:"filled",size:"small"})}),e.jsx(i,{name:"Salario",field:"salario",children:({salario:a})=>e.jsxs(s,{variant:"body2",fontWeight:"bold",color:"success.dark",children:["$",a.toLocaleString("es-ES")]})}),e.jsx(i,{name:"Estado de Contratación",field:["activo","fechaIngreso"],children:({activo:a,fechaIngreso:t})=>e.jsxs(w,{children:[e.jsx($,{label:a?"Contratado":"Inactivo",color:a?"success":"error",size:"small"}),e.jsxs(s,{variant:"caption",display:"block",color:"text.secondary",sx:{mt:.5},children:["Desde: ",new Date(t).toLocaleDateString("es-ES")]})]})})]}),parameters:{docs:{description:{story:"Muestra una tabla de empleados con un resumen detallado de su estado de contratación y fecha de ingreso. Paginación interna."},source:{code:wo.trim()}}}},Fe={args:{data:ne.slice(0,3)},render:({data:o})=>e.jsxs(U,{data:o,children:[e.jsx(i,{name:"Nombre",field:"nombre",children:({nombre:a})=>e.jsx(s,{variant:"body2",children:a})}),e.jsx(i,{name:"Email",field:"email",children:({email:a})=>e.jsx(s,{variant:"body2",color:"text.secondary",children:a})}),e.jsx(i,{name:"Acciones",field:"id",children:({id:a})=>e.jsxs(ge,{variant:"contained",color:"primary",size:"small",onClick:()=>alert("ID del usuario: "+a),children:["Ver Detalles (",a,")"]})})]}),parameters:{docs:{description:{story:"Ejemplo de tabla con una columna de acciones que, al hacer clic en un botón, registra el ID del elemento en la consola."},source:{code:Io.trim()}}}},Ae={args:{data:ne,enableCSVExport:!0,enableExcelExport:!0,csvExportFileName:"usuarios_data",csvExportButtonText:".csv",excelExportFileName:"usuarios_data",excelExportButtonText:".xlsx",csvExportColumns:["ID","Nombre","Email","Edad"],excelExportColumns:["ID","Nombre","Email","Edad"]},render:({data:o,enableCSVExport:a,enableExcelExport:t,csvExportFileName:r,csvExportButtonText:l,excelExportFileName:p,excelExportButtonText:n,csvExportColumns:u,excelExportColumns:f})=>e.jsxs(U,{data:ne,enableCSVExport:a,enableExcelExport:t,csvExportFileName:r,csvExportButtonText:l,excelExportFileName:p,excelExportButtonText:n,csvExportColumns:u,excelExportColumns:f,children:[e.jsx(i,{name:"ID",field:"id",children:h=>e.jsx(s,{children:h.id})}),e.jsx(i,{name:"Nombre",field:"nombre",children:h=>e.jsx(s,{children:h.nombre})}),e.jsx(i,{name:"Email",field:"email",children:({email:h})=>e.jsx(Ya,{href:`mailto:${h}`,children:h})}),e.jsx(i,{name:"Edad",field:"edad",children:h=>e.jsx(s,{children:h.edad})}),e.jsx(i,{name:"Rol",field:"rol",children:({rol:h})=>e.jsx($,{label:h,size:"small"})}),e.jsx(i,{name:"Acciones",field:"id",children:({id:h})=>e.jsx(ge,{variant:"outlined",size:"small",onClick:()=>alert(`Ver detalles de usuario ${h}`),children:"Ver"})})]}),parameters:{docs:{description:{story:"Tabla con la funcionalidad de exportar sus datos a un archivo CSV. Puedes especificar qué columnas incluir en la exportación y el nombre del archivo."},source:{code:ko.trim()}}}},Ve={render:o=>{const[a,t]=T.useState([]),r=n=>{t(n),o.onSelectionChange?.(n)},l=()=>{a.length>0?(alert(`Eliminando ${a.length} usuarios: ${a.map(n=>n.name).join(", ")}`),t([])):alert("No hay elementos seleccionados para eliminar.")},p=()=>{if(a.length>0){const n=prompt("Ingresa la nueva ciudad para los seleccionados:");n&&(alert(`Actualizando ciudad de ${a.length} usuarios a ${n}`),t([]))}else alert("No hay elementos seleccionados para actualizar.")};return e.jsxs(w,{children:[e.jsx(s,{variant:"h6",gutterBottom:!0,children:"Tabla con Selección de Filas"}),a.length>0&&e.jsxs(w,{sx:{mb:2,display:"flex",gap:1},children:[e.jsxs(ge,{variant:"contained",color:"error",onClick:l,children:["Eliminar (",a.length,")"]}),e.jsxs(ge,{variant:"contained",color:"primary",onClick:p,children:["Actualizar Ciudad (",a.length,")"]}),e.jsxs(s,{variant:"body2",sx:{alignSelf:"center",ml:2},children:["Elementos seleccionados: ",a.length]})]}),e.jsxs(U,{...o,data:ma,enableRowSelection:!0,rowIdentifier:"id",onSelectionChange:r,pageSizeSelectorValue:5,children:[e.jsx(i,{name:"ID",field:"id",children:n=>e.jsx(s,{children:n.id})}),e.jsx(i,{name:"Nombre",field:"name",children:n=>e.jsx(s,{children:n.name})}),e.jsx(i,{name:"Email",field:"email",children:n=>e.jsx(s,{children:n.email})}),e.jsx(i,{name:"Ciudad",field:"city",children:n=>e.jsx(s,{children:n.city})})]})]})},args:{},parameters:{docs:{description:{story:"Tabla con la funcionalidad de selección de filas. Puedes seleccionar una o muchas filas y realizar acciones en masa."},source:{code:Po.trim()}}}},Ne={render:o=>{const[a,t]=T.useState([]),r=l=>{t(l),o.onSelectionChange?.(l)};return e.jsxs(w,{children:[e.jsx(s,{variant:"h6",gutterBottom:!0,children:"Tabla con Exportación y Selección de Filas"}),a.length>0&&e.jsx(w,{sx:{mb:2},children:e.jsxs(s,{variant:"body2",children:["Elementos seleccionados: ",a.length]})}),e.jsxs(U,{...o,data:ma,enableRowSelection:!0,rowIdentifier:"id",onSelectionChange:r,pageSizeSelectorValue:5,enableCSVExport:!0,csvExportFileName:"users_data_with_selection",enableExcelExport:!0,excelExportFileName:"users_data_with_selection",children:[e.jsx(i,{name:"ID",field:"id",children:l=>e.jsx(s,{children:l.id})}),e.jsx(i,{name:"Nombre",field:"name",children:l=>e.jsx(s,{children:l.name})}),e.jsx(i,{name:"Email",field:"email",children:l=>e.jsx(s,{children:l.email})}),e.jsx(i,{name:"Ciudad",field:"city",children:l=>e.jsx(s,{children:l.city})})]})]})},args:{},parameters:{docs:{description:{story:"Tabla con la funcionalidad de exportar sus datos a un archivo CSV y Excel. Puedes especificar qué columnas incluir en la exportación y el nombre del archivo."},source:{code:zo.trim()}}}};je.parameters={...je.parameters,docs:{...je.parameters?.docs,source:{originalSource:`{
565
- args: {
566
- data: usuarios
567
- },
568
- render: ({
569
- data
570
- }) => <Table data={data} pageSizeSelectorValue={1} pageSize={1}>
571
- <Column name="Nombre" field="nombre">
572
- {({
573
- nombre
574
- }) => <Typography>{nombre}</Typography>}
575
- </Column>
576
- <Column name="Email" field="email">
577
- {({
578
- email
579
- }) => <Typography color="text.secondary">{email}</Typography>}
580
- </Column>
581
- <Column width='10%' name="Edad" field="edad">
582
- {({
583
- edad
584
- }) => <Typography>{edad} años</Typography>}
585
- </Column>
586
- </Table>,
587
- parameters: {
588
- docs: {
589
- description: {
590
- story: 'Tabla básica con datos simples y columnas de texto. La paginación es interna por defecto.'
591
- },
592
- source: {
593
- code: BasicTableCode.trim()
594
- }
595
- }
596
- }
597
- }`,...je.parameters?.docs?.source}}};we.parameters={...we.parameters,docs:{...we.parameters?.docs,source:{originalSource:`{
598
- args: {
599
- data: usuarios.slice(0, 4)
600
- },
601
- render: ({
602
- data
603
- }) => <Table data={data}>
604
- <Column name="Usuario" field={['avatar', 'nombre']}>
605
- {({
606
- avatar,
607
- nombre
608
- }) => <Box sx={{
609
- display: 'flex',
610
- alignItems: 'center',
611
- gap: 2
612
- }}>
613
- <Avatar src={avatar} alt={nombre} sx={{
614
- width: 40,
615
- height: 40
616
- }} />
617
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
618
- </Box>}
619
- </Column>
620
- <Column name="Estado" field="activo">
621
- {({
622
- activo
623
- }) => <Chip label={activo ? 'Activo' : 'Inactivo'} color={activo ? 'success' : 'default'} size="small" />}
624
- </Column>
625
- <Column name="Rol" field="rol">
626
- {({
627
- rol
628
- }) => <Chip label={rol!.charAt(0).toUpperCase() + rol!.slice(1)} color={rol === 'admin' ? 'primary' : rol === 'moderador' ? 'secondary' : 'default'} variant="outlined" size="small" />}
629
- </Column>
630
- <Column name="Puntuación" field="puntuacion">
631
- {({
632
- puntuacion
633
- }) => <Box sx={{
634
- display: 'flex',
635
- alignItems: 'center',
636
- gap: 1
637
- }}>
638
- <Rating value={puntuacion} max={5} precision={0.1} size="small" readOnly />
639
- <Typography variant="caption" color="text.secondary">
640
- {puntuacion}
641
- </Typography>
642
- </Box>}
643
- </Column>
644
- </Table>,
645
- parameters: {
646
- docs: {
647
- description: {
648
- story: 'Tabla con componentes complejos como avatars, chips y ratings. La paginación es interna por defecto.'
649
- },
650
- source: {
651
- code: ComplexComponentsCode.trim()
652
- }
653
- }
654
- }
655
- }`,...we.parameters?.docs?.source}}};Ie.parameters={...Ie.parameters,docs:{...Ie.parameters?.docs,source:{originalSource:`{
656
- render: () => {
657
- const [currentPage, setCurrentPage] = useState(1);
658
- const [pageSize, setPageSize] = useState(2);
659
- const totalItems = usuarios.length;
660
- const totalPages = Math.ceil(totalItems / pageSize);
661
- const startIndex = (currentPage - 1) * pageSize;
662
- const currentData = usuarios.slice(startIndex, startIndex + pageSize);
663
- const previousPageNum = currentPage > 1 ? currentPage - 1 : 1;
664
- const nextPageNum = currentPage < totalPages ? currentPage + 1 : totalPages;
665
- return <Table data={currentData} currentPage={currentPage} pageSize={pageSize} totalPages={totalPages} previousPage={previousPageNum} nextPage={nextPageNum} onPageChange={setCurrentPage} onPageSizeChange={setPageSize}>
666
- <Column name="Nombre" field="nombre">
667
- {({
668
- nombre
669
- }) => <Typography variant="body2" fontWeight="medium">{nombre}</Typography>}
670
- </Column>
671
- <Column name="Email" field="email">
672
- {({
673
- email
674
- }) => <Typography variant="body2" color="text.secondary">{email}</Typography>}
675
- </Column>
676
- <Column name="Estado" field="activo">
677
- {({
678
- activo
679
- }) => <Chip label={activo ? 'Activo' : 'Inactivo'} color={activo ? 'success' : 'default'} size="small" />}
680
- </Column>
681
- <Column name="Fecha de Registro" field="fechaRegistro">
682
- {({
683
- fechaRegistro
684
- }) => <Typography variant="body2">
685
- {new Date(fechaRegistro!).toLocaleDateString('es-ES')}
686
- </Typography>}
687
- </Column>
688
- </Table>;
689
- },
690
- parameters: {
691
- docs: {
692
- description: {
693
- story: 'Tabla con paginación controlada externamente. El componente \`Table\` no gestiona el estado de la paginación, solo la UI.'
694
- },
695
- source: {
696
- code: WithExternalPaginationControlCode.trim()
697
- }
698
- }
699
- }
700
- }`,...Ie.parameters?.docs?.source}}};ke.parameters={...ke.parameters,docs:{...ke.parameters?.docs,source:{originalSource:`{
701
- args: {
702
- data: productos,
703
- pageSizeSelectorValue: 1
704
- },
705
- render: ({
706
- data,
707
- pageSizeSelectorValue
708
- }) => <Table data={data} pageSizeSelectorValue={pageSizeSelectorValue}>
709
- <Column name="Producto" field={['imagen', 'nombre']}>
710
- {({
711
- imagen,
712
- nombre
713
- }) => <Box sx={{
714
- display: 'flex',
715
- alignItems: 'center',
716
- gap: 2
717
- }}>
718
- <Box component="img" src={imagen} alt={nombre} sx={{
719
- width: 50,
720
- height: 50,
721
- borderRadius: 1,
722
- objectFit: 'cover'
723
- }} />
724
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
725
- </Box>}
726
- </Column>
727
- <Column name="Precio" field={['precio', 'enOferta']}>
728
- {({
729
- precio,
730
- enOferta
731
- }) => <Box sx={{
732
- display: 'flex',
733
- alignItems: 'center',
734
- gap: 1
735
- }}>
736
- <Typography variant="body2" color={enOferta ? 'error.main' : 'text.primary'} fontWeight={enOferta ? 'bold' : 'normal'}>
737
- \${precio!.toLocaleString()}
738
- </Typography>
739
- {enOferta && <Chip label="OFERTA" color="error" size="small" />}
740
- </Box>}
741
- </Column>
742
- <Column name="Stock" field="stock">
743
- {({
744
- stock
745
- }) => <Chip label={stock! > 0 ? \`\${stock} unidades\` : 'Sin stock'} color={stock! > 5 ? 'success' : stock! > 0 ? 'warning' : 'error'} size="small" />}
746
- </Column>
747
- <Column name="Categoría" field="categoria">
748
- {({
749
- categoria
750
- }) => <Typography variant="body2">{categoria}</Typography>}
751
- </Column>
752
- <Column name="Rating" field="rating">
753
- {({
754
- rating
755
- }) => <Box sx={{
756
- display: 'flex',
757
- alignItems: 'center',
758
- gap: 1
759
- }}>
760
- <Rating value={rating} max={5} precision={0.1} size="small" readOnly />
761
- <Typography variant="caption">({rating})</Typography>
762
- </Box>}
763
- </Column>
764
- </Table>,
765
- parameters: {
766
- docs: {
767
- description: {
768
- story: 'Tabla de productos con imágenes, precios, stock y calificaciones. Paginación interna.'
769
- },
770
- source: {
771
- code: ProductTableCode.trim()
772
- }
773
- }
774
- }
775
- }`,...ke.parameters?.docs?.source}}};Pe.parameters={...Pe.parameters,docs:{...Pe.parameters?.docs,source:{originalSource:`{
776
- args: {
777
- data: empleados,
778
- pageSizeSelectorValue: 1
779
- },
780
- render: ({
781
- data,
782
- pageSizeSelectorValue
783
- }) => <Table data={data} pageSizeSelectorValue={pageSizeSelectorValue}>
784
- <Column name="Empleado" field={['avatar', 'nombre', 'apellido']}>
785
- {({
786
- avatar,
787
- nombre,
788
- apellido
789
- }) => <Box sx={{
790
- display: 'flex',
791
- alignItems: 'center',
792
- gap: 2
793
- }}>
794
- <Avatar src={avatar} sx={{
795
- width: 40,
796
- height: 40
797
- }}>
798
- {avatar ? '' : \`\${nombre!.charAt(0)}\${apellido!.charAt(0)}\`}
799
- </Avatar>
800
- <Typography variant="body2" fontWeight="medium">
801
- {nombre} {apellido}
802
- </Typography>
803
- </Box>}
804
- </Column>
805
- <Column name="Departamento" field="departamento">
806
- {({
807
- departamento
808
- }) => <Chip label={departamento} color="info" variant="filled" size="small" />}
809
- </Column>
810
- <Column name="Salario" field="salario">
811
- {({
812
- salario
813
- }) => <Typography variant="body2" fontWeight="bold" color="success.dark">
814
- \${salario!.toLocaleString('es-ES')}
815
- </Typography>}
816
- </Column>
817
- <Column name="Estado" field={['activo', 'fechaIngreso']}>
818
- {({
819
- activo,
820
- fechaIngreso
821
- }) => <Box>
822
- <Chip label={activo ? 'Contratado' : 'Inactivo'} color={activo ? 'success' : 'error'} size="small" />
823
- <Typography variant="caption" display="block" color="text.secondary" sx={{
824
- mt: 0.5
825
- }}>
826
- Desde: {new Date(fechaIngreso!).toLocaleDateString('es-ES')}
827
- </Typography>
828
- </Box>}
829
- </Column>
830
- </Table>,
831
- parameters: {
832
- docs: {
833
- description: {
834
- story: 'Tabla de empleados con múltiples campos combinados en una sola columna. Paginación interna.'
835
- },
836
- source: {
837
- code: EmployeeTableCode.trim()
838
- }
839
- }
840
- }
841
- }`,...Pe.parameters?.docs?.source}}};ze.parameters={...ze.parameters,docs:{...ze.parameters?.docs,source:{originalSource:`{
842
- args: {
843
- data: []
844
- },
845
- render: ({
846
- data
847
- }) => <Table data={data} emptyTitle="No se encontraron registros" emptyMessage="Intente ajustar sus filtros o agregar nuevos datos."
848
- // emptyImageSrc={<img src="path/to/empty/image.png" alt="No data" />}
849
- >
850
- <Column name="Nombre" field="nombre">
851
- {({
852
- nombre
853
- }) => <Typography variant="body2">{nombre}</Typography>}
854
- </Column>
855
- <Column name="Email" field="email">
856
- {({
857
- email
858
- }) => <Typography variant="body2">{email}</Typography>}
859
- </Column>
860
- <Column name="Estado" field="activo">
861
- {({
862
- activo
863
- }) => <Chip label={activo ? 'Activo' : 'Inactivo'} size="small" />}
864
- </Column>
865
- </Table>,
866
- parameters: {
867
- docs: {
868
- description: {
869
- story: 'Tabla sin datos para mostrar el estado vacío y el mensaje correspondiente.'
870
- },
871
- source: {
872
- code: EmptyTableCode.trim()
873
- }
874
- }
875
- }
876
- }`,...ze.parameters?.docs?.source}}};Be.parameters={...Be.parameters,docs:{...Be.parameters?.docs,source:{originalSource:`{
877
- args: {
878
- data: [usuarios[0]]
879
- },
880
- render: ({
881
- data
882
- }) => <Table data={data}>
883
- <Column name="Usuario" field={['avatar', 'nombre', 'email']}>
884
- {({
885
- avatar,
886
- nombre,
887
- email
888
- }) => <Box sx={{
889
- display: 'flex',
890
- alignItems: 'center',
891
- gap: 2
892
- }}>
893
- <Avatar src={avatar} alt={nombre} />
894
- <Box>
895
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
896
- <Typography variant="caption" color="text.secondary">{email}</Typography>
897
- </Box>
898
- </Box>}
899
- </Column>
900
- <Column<Usuario> name="Información" field={[]}>
901
- {user => <>
902
- <Typography variant="body2">{user.edad} años</Typography>
903
- <Box sx={{
904
- display: 'flex',
905
- gap: 1,
906
- mt: 0.5
907
- }}>
908
- <Chip label={user.rol} size="small" color="primary" variant="outlined" />
909
- <Chip label={user.activo ? 'Activo' : 'Inactivo'} size="small" color={user.activo ? 'success' : 'default'} />
910
- </Box>
911
- </>}
912
- </Column>
913
- </Table>,
914
- parameters: {
915
- docs: {
916
- description: {
917
- story: 'Tabla con una sola fila de datos.'
918
- },
919
- source: {
920
- code: SingleRowCode.trim()
921
- }
922
- }
923
- }
924
- }`,...Be.parameters?.docs?.source}}};Re.parameters={...Re.parameters,docs:{...Re.parameters?.docs,source:{originalSource:`{
925
- args: {
926
- data: productos
927
- },
928
- render: ({
929
- data
930
- }) => <Table data={data}>
931
- <Column name="Producto" field={['imagen', 'nombre']}>
932
- {({
933
- imagen,
934
- nombre
935
- }) => <Box sx={{
936
- display: 'flex',
937
- alignItems: 'center',
938
- gap: 2
939
- }}>
940
- <Box component="img" src={imagen} alt={nombre} sx={{
941
- width: 50,
942
- height: 50,
943
- borderRadius: 1,
944
- objectFit: 'cover'
945
- }} />
946
- <Typography variant="body2" fontWeight="medium">{nombre}</Typography>
947
- </Box>}
948
- </Column>
949
- <Column name="Precio" field={['precio', 'enOferta']}>
950
- {({
951
- precio,
952
- enOferta
953
- }) => <Box sx={{
954
- display: 'flex',
955
- alignItems: 'center',
956
- gap: 1
957
- }}>
958
- <Typography variant="body2" color={enOferta ? 'error.main' : 'text.primary'} fontWeight={enOferta ? 'bold' : 'normal'}>
959
- \${precio!.toLocaleString()}
960
- </Typography>
961
- {enOferta && <Chip label="OFERTA" color="error" size="small" />}
962
- </Box>}
963
- </Column>
964
- <Column name="Stock" field="stock">
965
- {({
966
- stock
967
- }) => <Chip label={stock! > 0 ? \`\${stock} unidades\` : 'Sin stock'} color={stock! > 5 ? 'success' : stock! > 0 ? 'warning' : 'error'} size="small" sx={{
968
- backgroundColor: stock === 0 ? 'rgba(255, 0, 0, 0.1)' : undefined
969
- }} />}
970
- </Column>
971
- <Column name="Rating" field="rating">
972
- {({
973
- rating
974
- }) => <Box sx={{
975
- display: 'flex',
976
- alignItems: 'center',
977
- gap: 1
978
- }}>
979
- <Rating value={rating} max={5} precision={0.1} size="small" readOnly />
980
- <Typography variant="caption">({rating})</Typography>
981
- </Box>}
982
- </Column>
983
- </Table>,
984
- parameters: {
985
- docs: {
986
- description: {
987
- story: 'Muestra la tabla de productos resaltando visualmente los productos sin stock. Paginación interna.'
988
- },
989
- source: {
990
- code: ProductTableWithZeroStockHighlightedCode.trim()
991
- }
992
- }
993
- }
994
- }`,...Re.parameters?.docs?.source}}};De.parameters={...De.parameters,docs:{...De.parameters?.docs,source:{originalSource:`{
995
- args: {
996
- data: empleados
997
- },
998
- render: ({
999
- data
1000
- }) => <Table data={data}>
1001
- <Column name="Empleado" field={['nombre', 'apellido', 'avatar']}>
1002
- {({
1003
- nombre,
1004
- apellido,
1005
- avatar
1006
- }) => <Box sx={{
1007
- display: 'flex',
1008
- alignItems: 'center',
1009
- gap: 2
1010
- }}>
1011
- <Avatar src={avatar} sx={{
1012
- width: 40,
1013
- height: 40
1014
- }}>
1015
- {avatar ? '' : \`\${nombre!.charAt(0)}\${apellido!.charAt(0)}\`}
1016
- </Avatar>
1017
- <Typography variant="body2" fontWeight="medium">
1018
- {nombre} {apellido}
1019
- </Typography>
1020
- </Box>}
1021
- </Column>
1022
- <Column name="Departamento" field="departamento">
1023
- {({
1024
- departamento
1025
- }) => <Chip label={departamento} color="info" variant="filled" size="small" />}
1026
- </Column>
1027
- <Column name="Salario" field="salario">
1028
- {({
1029
- salario
1030
- }) => <Typography variant="body2" fontWeight="bold" color="success.dark">
1031
- \${salario!.toLocaleString('es-ES')}
1032
- </Typography>}
1033
- </Column>
1034
- <Column name="Estado de Contratación" field={['activo', 'fechaIngreso']}>
1035
- {({
1036
- activo,
1037
- fechaIngreso
1038
- }) => <Box>
1039
- <Chip label={activo ? 'Contratado' : 'Inactivo'} color={activo ? 'success' : 'error'} size="small" />
1040
- <Typography variant="caption" display="block" color="text.secondary" sx={{
1041
- mt: 0.5
1042
- }}>
1043
- Desde: {new Date(fechaIngreso!).toLocaleDateString('es-ES')}
1044
- </Typography>
1045
- </Box>}
1046
- </Column>
1047
- </Table>,
1048
- parameters: {
1049
- docs: {
1050
- description: {
1051
- story: 'Muestra una tabla de empleados con un resumen detallado de su estado de contratación y fecha de ingreso. Paginación interna.'
1052
- },
1053
- source: {
1054
- code: EmployeeDetailedStatusCode.trim()
1055
- }
1056
- }
1057
- }
1058
- }`,...De.parameters?.docs?.source}}};Fe.parameters={...Fe.parameters,docs:{...Fe.parameters?.docs,source:{originalSource:`{
1059
- args: {
1060
- data: usuarios.slice(0, 3)
1061
- },
1062
- render: ({
1063
- data
1064
- }) => <Table data={data}>
1065
- <Column name="Nombre" field="nombre">
1066
- {({
1067
- nombre
1068
- }) => <Typography variant="body2">{nombre}</Typography>}
1069
- </Column>
1070
- <Column name="Email" field="email">
1071
- {({
1072
- email
1073
- }) => <Typography variant="body2" color="text.secondary">{email}</Typography>}
1074
- </Column>
1075
- <Column name="Acciones" field="id">
1076
- {({
1077
- id
1078
- }) => <Button variant="contained" color="primary" size="small" onClick={() => alert('ID del usuario: ' + id)}>
1079
- Ver Detalles ({id})
1080
- </Button>}
1081
- </Column>
1082
- </Table>,
1083
- parameters: {
1084
- docs: {
1085
- description: {
1086
- story: 'Ejemplo de tabla con una columna de acciones que, al hacer clic en un botón, registra el ID del elemento en la consola.'
1087
- },
1088
- source: {
1089
- code: ActionsColumnCode.trim()
1090
- }
1091
- }
1092
- }
1093
- }`,...Fe.parameters?.docs?.source}}};Ae.parameters={...Ae.parameters,docs:{...Ae.parameters?.docs,source:{originalSource:`{
1094
- args: {
1095
- data: usuarios,
1096
- enableCSVExport: true,
1097
- enableExcelExport: true,
1098
- csvExportFileName: 'usuarios_data',
1099
- csvExportButtonText: '.csv',
1100
- excelExportFileName: 'usuarios_data',
1101
- excelExportButtonText: '.xlsx',
1102
- csvExportColumns: ['ID', 'Nombre', 'Email', 'Edad'],
1103
- excelExportColumns: ['ID', 'Nombre', 'Email', 'Edad']
1104
- },
1105
- render: ({
1106
- data,
1107
- enableCSVExport,
1108
- enableExcelExport,
1109
- csvExportFileName,
1110
- csvExportButtonText,
1111
- excelExportFileName,
1112
- excelExportButtonText,
1113
- csvExportColumns,
1114
- excelExportColumns
1115
- }) => <Table<Usuario> data={usuarios} enableCSVExport={enableCSVExport} enableExcelExport={enableExcelExport} csvExportFileName={csvExportFileName} csvExportButtonText={csvExportButtonText} excelExportFileName={excelExportFileName} excelExportButtonText={excelExportButtonText} csvExportColumns={csvExportColumns} excelExportColumns={excelExportColumns}>
1116
- <Column<Usuario> name="ID" field="id">
1117
- {row => <Typography>{row.id}</Typography>}
1118
- </Column>
1119
- <Column<Usuario> name="Nombre" field="nombre">
1120
- {row => <Typography>{row.nombre}</Typography>}
1121
- </Column>
1122
- <Column<Usuario> name="Email" field="email">
1123
- {({
1124
- email
1125
- }) => <Link href={\`mailto:\${email}\`}>{email}</Link>}
1126
- </Column>
1127
- <Column<Usuario> name="Edad" field="edad">
1128
- {row => <Typography>{row.edad}</Typography>}
1129
- </Column>
1130
- <Column<Usuario> name="Rol" field="rol">
1131
- {({
1132
- rol
1133
- }) => <Chip label={rol} size="small" />}
1134
- </Column>
1135
- <Column<Usuario> name="Acciones" field="id">
1136
- {({
1137
- id
1138
- }) => <Button variant="outlined" size="small" onClick={() => alert(\`Ver detalles de usuario \${id}\`)}>
1139
- Ver
1140
- </Button>}
1141
- </Column>
1142
- </Table>,
1143
- parameters: {
1144
- docs: {
1145
- description: {
1146
- story: 'Tabla con la funcionalidad de exportar sus datos a un archivo CSV. Puedes especificar qué columnas incluir en la exportación y el nombre del archivo.'
1147
- },
1148
- source: {
1149
- code: TableWithExportCode.trim()
1150
- }
1151
- }
1152
- }
1153
- }`,...Ae.parameters?.docs?.source}}};Ve.parameters={...Ve.parameters,docs:{...Ve.parameters?.docs,source:{originalSource:`{
1154
- render: args => {
1155
- const [selectedItems, setSelectedItems] = useState<UserData[]>([]);
1156
- const handleSelectionChange = (items: UserData[]) => {
1157
- setSelectedItems(items);
1158
- args.onSelectionChange?.(items);
1159
- };
1160
- const handleBulkDelete = () => {
1161
- if (selectedItems.length > 0) {
1162
- alert(\`Eliminando \${selectedItems.length} usuarios: \${selectedItems.map(item => item.name).join(', ')}\`);
1163
- setSelectedItems([]);
1164
- } else {
1165
- alert('No hay elementos seleccionados para eliminar.');
1166
- }
1167
- };
1168
- const handleBulkUpdateCity = () => {
1169
- if (selectedItems.length > 0) {
1170
- const newCity = prompt('Ingresa la nueva ciudad para los seleccionados:');
1171
- if (newCity) {
1172
- alert(\`Actualizando ciudad de \${selectedItems.length} usuarios a \${newCity}\`);
1173
- setSelectedItems([]);
1174
- }
1175
- } else {
1176
- alert('No hay elementos seleccionados para actualizar.');
1177
- }
1178
- };
1179
- return <Box>
1180
- <Typography variant="h6" gutterBottom>
1181
- Tabla con Selección de Filas
1182
- </Typography>
1183
- {selectedItems.length > 0 && <Box sx={{
1184
- mb: 2,
1185
- display: 'flex',
1186
- gap: 1
1187
- }}>
1188
- <Button variant="contained" color="error" onClick={handleBulkDelete}>
1189
- Eliminar ({selectedItems.length})
1190
- </Button>
1191
- <Button variant="contained" color="primary" onClick={handleBulkUpdateCity}>
1192
- Actualizar Ciudad ({selectedItems.length})
1193
- </Button>
1194
- <Typography variant="body2" sx={{
1195
- alignSelf: 'center',
1196
- ml: 2
1197
- }}>
1198
- Elementos seleccionados: {selectedItems.length}
1199
- </Typography>
1200
- </Box>}
1201
- <Table<UserData> {...args} data={sampleData} // Usamos sampleData para esta historia
1202
- enableRowSelection={true} rowIdentifier="id" // Es crucial que coincida con una clave única en tus datos
1203
- onSelectionChange={handleSelectionChange} pageSizeSelectorValue={5}>
1204
- <Column<UserData> name="ID" field="id" children={row => <Typography>{row.id}</Typography>} />
1205
- <Column<UserData> name="Nombre" field="name" children={row => <Typography>{row.name}</Typography>} />
1206
- <Column<UserData> name="Email" field="email" children={row => <Typography>{row.email}</Typography>} />
1207
- <Column<UserData> name="Ciudad" field="city" children={row => <Typography>{row.city}</Typography>} />
1208
- </Table>
1209
- </Box>;
1210
- },
1211
- args: {},
1212
- parameters: {
1213
- docs: {
1214
- description: {
1215
- story: 'Tabla con la funcionalidad de selección de filas. Puedes seleccionar una o muchas filas y realizar acciones en masa.'
1216
- },
1217
- source: {
1218
- code: WithRowSelectionCode.trim()
1219
- }
1220
- }
1221
- }
1222
- }`,...Ve.parameters?.docs?.source}}};Ne.parameters={...Ne.parameters,docs:{...Ne.parameters?.docs,source:{originalSource:`{
1223
- render: args => {
1224
- const [selectedItems, setSelectedItems] = useState<UserData[]>([]);
1225
- const handleSelectionChange = (items: UserData[]) => {
1226
- setSelectedItems(items);
1227
- args.onSelectionChange?.(items);
1228
- };
1229
- return <Box>
1230
- <Typography variant="h6" gutterBottom>
1231
- Tabla con Exportación y Selección de Filas
1232
- </Typography>
1233
- {selectedItems.length > 0 && <Box sx={{
1234
- mb: 2
1235
- }}>
1236
- <Typography variant="body2">
1237
- Elementos seleccionados: {selectedItems.length}
1238
- </Typography>
1239
- </Box>}
1240
- <Table<UserData> {...args} data={sampleData} // Usamos sampleData para esta historia
1241
- enableRowSelection={true} rowIdentifier="id" onSelectionChange={handleSelectionChange} pageSizeSelectorValue={5} enableCSVExport={true} csvExportFileName="users_data_with_selection" enableExcelExport={true} excelExportFileName="users_data_with_selection">
1242
- <Column<UserData> name="ID" field="id" children={row => <Typography>{row.id}</Typography>} />
1243
- <Column<UserData> name="Nombre" field="name" children={row => <Typography>{row.name}</Typography>} />
1244
- <Column<UserData> name="Email" field="email" children={row => <Typography>{row.email}</Typography>} />
1245
- <Column<UserData> name="Ciudad" field="city" children={row => <Typography>{row.city}</Typography>} />
1246
- </Table>
1247
- </Box>;
1248
- },
1249
- args: {},
1250
- parameters: {
1251
- docs: {
1252
- description: {
1253
- story: 'Tabla con la funcionalidad de exportar sus datos a un archivo CSV y Excel. Puedes especificar qué columnas incluir en la exportación y el nombre del archivo.'
1254
- },
1255
- source: {
1256
- code: WithExportAndSelectionCode.trim()
1257
- }
1258
- }
1259
- }
1260
- }`,...Ne.parameters?.docs?.source}}};const jt=["BasicTable","ComplexComponents","WithExternalPaginationControl","ProductTable","EmployeeTable","EmptyTable","SingleRow","ProductTableWithZeroStockHighlighted","EmployeeDetailedStatus","ActionsColumn","TableWithExport","WithRowSelection","WithExportAndSelection"];export{Fe as ActionsColumn,je as BasicTable,we as ComplexComponents,De as EmployeeDetailedStatus,Pe as EmployeeTable,ze as EmptyTable,ke as ProductTable,Re as ProductTableWithZeroStockHighlighted,Be as SingleRow,Ae as TableWithExport,Ne as WithExportAndSelection,Ie as WithExternalPaginationControl,Ve as WithRowSelection,jt as __namedExportsOrder,Et as default};