@soyfri/shared-library 2.0.0-beta.3 → 2.0.0-beta.31
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.
- package/Alert-B3SMPD1s.cjs +31 -0
- package/Alert-B3SMPD1s.cjs.map +1 -0
- package/Alert-YsPScpSE.js +32 -0
- package/Alert-YsPScpSE.js.map +1 -0
- package/Autocomplete-C_lW1VER.js +337 -0
- package/Autocomplete-C_lW1VER.js.map +1 -0
- package/Autocomplete-CejWztBY.cjs +336 -0
- package/Autocomplete-CejWztBY.cjs.map +1 -0
- package/Avatar-Dw5rzayR.cjs +166 -0
- package/Avatar-Dw5rzayR.cjs.map +1 -0
- package/Avatar-H8akSege.js +167 -0
- package/Avatar-H8akSege.js.map +1 -0
- package/Button-C17mExpd.cjs.map +1 -1
- package/Button-UkkP-bNw.js.map +1 -1
- package/Card-DYKGY-NG.js +116 -0
- package/Card-DYKGY-NG.js.map +1 -0
- package/Card-Dr1-ATRY.cjs +115 -0
- package/Card-Dr1-ATRY.cjs.map +1 -0
- package/Checkbox-BCqMFWt4.cjs +187 -0
- package/Checkbox-BCqMFWt4.cjs.map +1 -0
- package/Checkbox-gB5YKkVo.js +188 -0
- package/Checkbox-gB5YKkVo.js.map +1 -0
- package/{components/DateRangePicker/DateRangePicker.js → Chip-OPYQ1uQ_.js} +33 -35
- package/Chip-OPYQ1uQ_.js.map +1 -0
- package/{components/DateRangePicker/DateRangePicker.cjs → Chip-qoJLDiva.cjs} +33 -36
- package/Chip-qoJLDiva.cjs.map +1 -0
- package/DatePicker-_IGWc3I5.js +178 -0
- package/DatePicker-_IGWc3I5.js.map +1 -0
- package/DatePicker-t7uDTZMl.cjs +177 -0
- package/DatePicker-t7uDTZMl.cjs.map +1 -0
- package/DateTimePicker-BxQyjTCY.cjs +229 -0
- package/DateTimePicker-BxQyjTCY.cjs.map +1 -0
- package/DateTimePicker-CrmWav_j.js +230 -0
- package/DateTimePicker-CrmWav_j.js.map +1 -0
- package/Input-CScC87J5.cjs +185 -0
- package/Input-CScC87J5.cjs.map +1 -0
- package/Input-DP_fKl38.js +186 -0
- package/Input-DP_fKl38.js.map +1 -0
- package/Modal-BFpX5AFV.js +347 -0
- package/Modal-BFpX5AFV.js.map +1 -0
- package/Modal-CkpuI8ns.cjs +346 -0
- package/Modal-CkpuI8ns.cjs.map +1 -0
- package/RadioGroup-Dd0rHXSX.cjs +202 -0
- package/RadioGroup-Dd0rHXSX.cjs.map +1 -0
- package/RadioGroup-bO-ahP9T.js +203 -0
- package/RadioGroup-bO-ahP9T.js.map +1 -0
- package/Select-BY5Y0qZ1.js +376 -0
- package/Select-BY5Y0qZ1.js.map +1 -0
- package/Select-CURrHSyl.cjs +375 -0
- package/Select-CURrHSyl.cjs.map +1 -0
- package/Spinner-B6sThC1p.js +74 -0
- package/Spinner-B6sThC1p.js.map +1 -0
- package/Spinner-D7qRmNS9.cjs +73 -0
- package/Spinner-D7qRmNS9.cjs.map +1 -0
- package/Stat-BUcFCGrz.cjs +83 -0
- package/Stat-BUcFCGrz.cjs.map +1 -0
- package/Stat-C06A_izS.js +84 -0
- package/Stat-C06A_izS.js.map +1 -0
- package/StatusMessage-B3nXpuRl.cjs +88 -0
- package/StatusMessage-B3nXpuRl.cjs.map +1 -0
- package/StatusMessage-D0WgSBx7.js +89 -0
- package/StatusMessage-D0WgSBx7.js.map +1 -0
- package/Step-BArsou1V.js +301 -0
- package/Step-BArsou1V.js.map +1 -0
- package/Step-Nd7SJbRZ.cjs +300 -0
- package/Step-Nd7SJbRZ.cjs.map +1 -0
- package/Switch-CQFOopYy.cjs +182 -0
- package/Switch-CQFOopYy.cjs.map +1 -0
- package/Switch-D72dpkH2.js +183 -0
- package/Switch-D72dpkH2.js.map +1 -0
- package/Tab-BbP8jBcK.cjs +110 -0
- package/Tab-BbP8jBcK.cjs.map +1 -0
- package/Tab-BxSxKJsP.js +111 -0
- package/Tab-BxSxKJsP.js.map +1 -0
- package/Table-C2LbW0B1.js +531 -0
- package/Table-C2LbW0B1.js.map +1 -0
- package/Table-C4OM6rrC.cjs +530 -0
- package/Table-C4OM6rrC.cjs.map +1 -0
- package/components/ActionMenu/ActionMenu.cjs +52 -52
- package/components/ActionMenu/ActionMenu.cjs.map +1 -1
- package/components/ActionMenu/ActionMenu.d.ts +20 -36
- package/components/ActionMenu/ActionMenu.js +55 -55
- package/components/ActionMenu/ActionMenu.js.map +1 -1
- package/components/ActionMenu/index.d.ts +2 -2
- package/components/Alert/Alert.cjs +6 -0
- package/components/Alert/Alert.cjs.map +1 -0
- package/components/Alert/Alert.d.ts +31 -0
- package/components/Alert/Alert.js +6 -0
- package/components/Alert/Alert.js.map +1 -0
- package/components/Alert/index.d.ts +2 -0
- package/components/Alert.d.ts +6 -0
- package/components/AppBar/AppBar.cjs +3 -220
- package/components/AppBar/AppBar.cjs.map +1 -1
- package/components/AppBar/AppBar.d.ts +6 -6
- package/components/AppBar/AppBar.js +6 -223
- package/components/AppBar/AppBar.js.map +1 -1
- package/components/AppBar/index.d.ts +0 -6
- package/components/Autocomplete/Autocomplete.cjs +4 -311
- package/components/Autocomplete/Autocomplete.cjs.map +1 -1
- package/components/Autocomplete/Autocomplete.d.ts +8 -6
- package/components/Autocomplete/Autocomplete.helpers.d.ts +8 -4
- package/components/Autocomplete/Autocomplete.js +4 -311
- package/components/Autocomplete/Autocomplete.js.map +1 -1
- package/components/Autocomplete/_parts/AutocompleteOption.d.ts +5 -8
- package/components/Autocomplete/index.d.ts +1 -1
- package/components/Avatar/Avatar.cjs +2 -160
- package/components/Avatar/Avatar.cjs.map +1 -1
- package/components/Avatar/Avatar.d.ts +16 -1
- package/components/Avatar/Avatar.js +2 -160
- package/components/Avatar/Avatar.js.map +1 -1
- package/components/Avatar/index.d.ts +1 -0
- package/components/Button/Button.d.ts +5 -5
- package/components/Button/index.d.ts +1 -0
- package/components/Card/Card.cjs +4 -184
- package/components/Card/Card.cjs.map +1 -1
- package/components/Card/Card.d.ts +21 -50
- package/components/Card/Card.js +4 -184
- package/components/Card/Card.js.map +1 -1
- package/components/Card/Card.sx.d.ts +3 -6
- package/components/Card/index.d.ts +1 -1
- package/components/Checkbox/Checkbox.cjs +6 -0
- package/components/Checkbox/Checkbox.cjs.map +1 -0
- package/components/Checkbox/Checkbox.d.ts +55 -0
- package/components/Checkbox/Checkbox.js +6 -0
- package/components/Checkbox/Checkbox.js.map +1 -0
- package/components/Checkbox/Checkbox.sx.d.ts +13 -0
- package/components/Checkbox/index.d.ts +2 -0
- package/components/Checkbox.d.ts +6 -0
- package/components/Chip/Chip.cjs +4 -72
- package/components/Chip/Chip.cjs.map +1 -1
- package/components/Chip/Chip.js +3 -71
- package/components/Chip/Chip.js.map +1 -1
- package/components/Chip/index.d.ts +2 -1
- package/components/Chip.d.ts +4 -0
- package/components/Column/Column.cjs +1 -1
- package/components/Column/Column.cjs.map +1 -1
- package/components/Column/Column.d.ts +1 -1
- package/components/Column/Column.js +1 -1
- package/components/Column/Column.js.map +1 -1
- package/components/Column/index.d.ts +1 -0
- package/components/DatePicker/DatePicker.cjs +3 -200
- package/components/DatePicker/DatePicker.cjs.map +1 -1
- package/components/DatePicker/DatePicker.d.ts +1 -13
- package/components/DatePicker/DatePicker.js +3 -200
- package/components/DatePicker/DatePicker.js.map +1 -1
- package/components/DatePicker/index.d.ts +1 -1
- package/components/DateTimePicker/DateTimePicker.cjs +3 -219
- package/components/DateTimePicker/DateTimePicker.cjs.map +1 -1
- package/components/DateTimePicker/DateTimePicker.d.ts +10 -6
- package/components/DateTimePicker/DateTimePicker.definitions.d.ts +2 -0
- package/components/DateTimePicker/DateTimePicker.helpers.d.ts +4 -2
- package/components/DateTimePicker/DateTimePicker.js +3 -219
- package/components/DateTimePicker/DateTimePicker.js.map +1 -1
- package/components/DateTimePicker/index.d.ts +1 -1
- package/components/Drawer/Drawer.cjs +25 -24
- package/components/Drawer/Drawer.cjs.map +1 -1
- package/components/Drawer/Drawer.d.ts +8 -1
- package/components/Drawer/Drawer.js +26 -25
- package/components/Drawer/Drawer.js.map +1 -1
- package/components/Drawer/DrawerItem.d.ts +6 -1
- package/components/Gallery/Gallery.cjs +154 -79
- package/components/Gallery/Gallery.cjs.map +1 -1
- package/components/Gallery/Gallery.d.ts +25 -9
- package/components/Gallery/Gallery.js +154 -79
- package/components/Gallery/Gallery.js.map +1 -1
- package/components/Gallery/GalleryLightbox.d.ts +6 -10
- package/components/Gallery/GalleryMain.d.ts +3 -7
- package/components/Gallery/GalleryThumbnails.d.ts +7 -11
- package/components/Gallery/index.d.ts +2 -1
- package/components/Gallery.d.ts +4 -0
- package/components/Icon/Icon.cjs +6 -8
- package/components/Icon/Icon.cjs.map +1 -1
- package/components/Icon/Icon.d.ts +11 -17
- package/components/Icon/Icon.js +6 -8
- package/components/Icon/Icon.js.map +1 -1
- package/components/Icon/index.d.ts +2 -1
- package/components/Icon.d.ts +4 -0
- package/components/Input/Input.cjs +3 -172
- package/components/Input/Input.cjs.map +1 -1
- package/components/Input/Input.d.ts +9 -2
- package/components/Input/Input.definitions.d.ts +1 -0
- package/components/Input/Input.helpers.d.ts +3 -3
- package/components/Input/Input.js +3 -172
- package/components/Input/Input.js.map +1 -1
- package/components/Input/index.d.ts +1 -1
- package/components/InputGroup/InputGroup.cjs +23 -22
- package/components/InputGroup/InputGroup.cjs.map +1 -1
- package/components/InputGroup/InputGroup.d.ts +4 -4
- package/components/InputGroup/InputGroup.js +22 -21
- package/components/InputGroup/InputGroup.js.map +1 -1
- package/components/InputGroup/index.d.ts +2 -1
- package/components/InputGroup.d.ts +4 -0
- package/components/Modal/Modal.cjs +7 -317
- package/components/Modal/Modal.cjs.map +1 -1
- package/components/Modal/Modal.d.ts +20 -5
- package/components/Modal/Modal.js +6 -316
- package/components/Modal/Modal.js.map +1 -1
- package/components/Modal/ModalBody.d.ts +6 -1
- package/components/Modal/ModalFooter.d.ts +4 -4
- package/components/Modal/ModalHeader.d.ts +6 -1
- package/components/Modal/index.d.ts +3 -1
- package/components/Modal.d.ts +4 -0
- package/components/RadioGroup/RadioGroup.cjs +6 -0
- package/components/RadioGroup/RadioGroup.cjs.map +1 -0
- package/components/RadioGroup/RadioGroup.d.ts +59 -0
- package/components/RadioGroup/RadioGroup.definitions.d.ts +6 -0
- package/components/RadioGroup/RadioGroup.js +6 -0
- package/components/RadioGroup/RadioGroup.js.map +1 -0
- package/components/RadioGroup/RadioGroup.sx.d.ts +20 -0
- package/components/RadioGroup/index.d.ts +2 -0
- package/components/RadioGroup.d.ts +6 -0
- package/components/Select/Select.cjs +4 -445
- package/components/Select/Select.cjs.map +1 -1
- package/components/Select/Select.d.ts +37 -18
- package/components/Select/Select.helpers.d.ts +5 -19
- package/components/Select/Select.js +4 -445
- package/components/Select/Select.js.map +1 -1
- package/components/Select/index.d.ts +1 -1
- package/components/Spinner/Spinner.cjs +6 -0
- package/components/Spinner/Spinner.cjs.map +1 -0
- package/components/Spinner/Spinner.d.ts +26 -0
- package/components/Spinner/Spinner.js +6 -0
- package/components/Spinner/Spinner.js.map +1 -0
- package/components/Spinner/index.d.ts +2 -0
- package/components/Spinner.d.ts +6 -0
- package/components/Stat/Stat.cjs +4 -83
- package/components/Stat/Stat.cjs.map +1 -1
- package/components/Stat/Stat.js +3 -82
- package/components/Stat/Stat.js.map +1 -1
- package/components/Stat/index.d.ts +2 -1
- package/components/Stat.d.ts +4 -0
- package/components/StatusMessage/StatusMessage.cjs +4 -77
- package/components/StatusMessage/StatusMessage.cjs.map +1 -1
- package/components/StatusMessage/StatusMessage.d.ts +20 -36
- package/components/StatusMessage/StatusMessage.js +3 -76
- package/components/StatusMessage/StatusMessage.js.map +1 -1
- package/components/StatusMessage/index.d.ts +2 -1
- package/components/StatusMessage.d.ts +4 -0
- package/components/Stepper/Stepper.cjs +8 -47
- package/components/Stepper/Stepper.cjs.map +1 -1
- package/components/Stepper/Stepper.d.ts +9 -8
- package/components/Stepper/Stepper.js +7 -46
- package/components/Stepper/Stepper.js.map +1 -1
- package/{hooks/Wizard/WizardContext.d.ts → components/Stepper/StepperContext.d.ts} +29 -23
- package/components/Stepper/_hooks/useHorizontalScroll.d.ts +19 -0
- package/components/Stepper/_parts/StepperScrollArrow.d.ts +19 -0
- package/components/Stepper/index.d.ts +6 -2
- package/components/Stepper.d.ts +4 -0
- package/components/Switch/Switch.cjs +6 -0
- package/components/Switch/Switch.cjs.map +1 -0
- package/components/Switch/Switch.d.ts +48 -0
- package/components/Switch/Switch.definitions.d.ts +7 -0
- package/components/Switch/Switch.js +6 -0
- package/components/Switch/Switch.js.map +1 -0
- package/components/Switch/Switch.sx.d.ts +22 -0
- package/components/Switch/Switch.types.d.ts +1 -0
- package/components/Switch/index.d.ts +2 -0
- package/components/Switch.d.ts +6 -0
- package/components/Table/Table.cjs +2 -528
- package/components/Table/Table.cjs.map +1 -1
- package/components/Table/Table.d.ts +1 -1
- package/components/Table/Table.js +2 -528
- package/components/Table/Table.js.map +1 -1
- package/components/Tabs/Tabs.cjs +5 -94
- package/components/Tabs/Tabs.cjs.map +1 -1
- package/components/Tabs/Tabs.d.ts +21 -16
- package/components/Tabs/Tabs.js +4 -93
- package/components/Tabs/Tabs.js.map +1 -1
- package/components/Tabs/index.d.ts +4 -2
- package/components/Tabs.d.ts +4 -0
- package/components/Timeline/Timeline.cjs +3 -2
- package/components/Timeline/Timeline.cjs.map +1 -1
- package/components/Timeline/Timeline.d.ts +4 -8
- package/components/Timeline/Timeline.js +3 -2
- package/components/Timeline/Timeline.js.map +1 -1
- package/components/Timeline/index.d.ts +4 -2
- package/components/Timeline.d.ts +4 -0
- package/components/_shared/mergeSx.d.ts +7 -0
- package/{formField.sx-DfVbMe0V.js → formField.sx-8_QRnKxv.js} +2 -11
- package/formField.sx-8_QRnKxv.js.map +1 -0
- package/{formField.sx-CQ1mbk9M.cjs → formField.sx-BAX7KwMR.cjs} +10 -19
- package/formField.sx-BAX7KwMR.cjs.map +1 -0
- package/index.cjs +96 -6
- package/index.cjs.map +1 -1
- package/index.d.ts +36 -0
- package/index.js +70 -4
- package/index.js.map +1 -1
- package/local/affiliations/affiliations.dev.soyfri.com-key.pem +28 -0
- package/local/affiliations/affiliations.dev.soyfri.com.pem +27 -0
- package/local/aficiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
- package/local/aficiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
- package/local/afiliaciones/afiliaciones.dev.soyfri.com-key.pem +28 -0
- package/local/afiliaciones/afiliaciones.dev.soyfri.com.pem +27 -0
- package/local/root/rootCA-key.pem +40 -0
- package/local/root/rootCA.pem +30 -0
- package/local/soporte/supportweb.dev.soyfri.com-key.pem +28 -0
- package/local/soporte/supportweb.dev.soyfri.com.pem +27 -0
- package/local/support/supportweb.dev.soyfri.com-key.pem +28 -0
- package/local/support/supportweb.dev.soyfri.com.pem +27 -0
- package/mergeSx-BXoNZjB_.js +10 -0
- package/mergeSx-BXoNZjB_.js.map +1 -0
- package/mergeSx-Dbccoo_H.cjs +9 -0
- package/mergeSx-Dbccoo_H.cjs.map +1 -0
- package/mui.d.ts +3 -1
- package/package.json +78 -73
- package/{resolvePreset-CT3kU-K2.cjs → resolvePreset-CxTI6_Ln.cjs} +3 -3
- package/{resolvePreset-CT3kU-K2.cjs.map → resolvePreset-CxTI6_Ln.cjs.map} +1 -1
- package/{resolvePreset-B-IB0ehH.js → resolvePreset-K6_BfWHD.js} +3 -3
- package/{resolvePreset-B-IB0ehH.js.map → resolvePreset-K6_BfWHD.js.map} +1 -1
- package/theme/componentStyles.d.ts +1 -1
- package/tokens-BRrcP_p_.js +21 -0
- package/tokens-BRrcP_p_.js.map +1 -0
- package/tokens-jaWWNk39.cjs +20 -0
- package/tokens-jaWWNk39.cjs.map +1 -0
- package/utils/index.d.ts +2 -0
- package/{components/ScrollTopButton → utils}/scrollToTop.d.ts +6 -7
- package/components/AppBar/AppBarBrand.d.ts +0 -31
- package/components/AppBar/AppBarUserMenu.d.ts +0 -65
- package/components/Autocomplete/Autocomplete.types.d.ts +0 -1
- package/components/DatePicker/DatePicker.types.d.ts +0 -1
- package/components/DateRangePicker/DateRangePicker.cjs.map +0 -1
- package/components/DateRangePicker/DateRangePicker.d.ts +0 -15
- package/components/DateRangePicker/DateRangePicker.definitions.d.ts +0 -6
- package/components/DateRangePicker/DateRangePicker.js.map +0 -1
- package/components/DateRangePicker/index.d.ts +0 -1
- package/components/DateRangePicker.d.ts +0 -2
- package/components/DateTimePicker/DateTimePicker.types.d.ts +0 -1
- package/components/Input/Input.types.d.ts +0 -1
- package/components/PageLoader/PageLoader.cjs +0 -61
- package/components/PageLoader/PageLoader.cjs.map +0 -1
- package/components/PageLoader/PageLoader.d.ts +0 -38
- package/components/PageLoader/PageLoader.js +0 -61
- package/components/PageLoader/PageLoader.js.map +0 -1
- package/components/PageLoader/index.d.ts +0 -2
- package/components/PageLoader.d.ts +0 -6
- package/components/ScrollTopButton/ScrollTopButton.cjs +0 -79
- package/components/ScrollTopButton/ScrollTopButton.cjs.map +0 -1
- package/components/ScrollTopButton/ScrollTopButton.d.ts +0 -48
- package/components/ScrollTopButton/ScrollTopButton.js +0 -79
- package/components/ScrollTopButton/ScrollTopButton.js.map +0 -1
- package/components/ScrollTopButton/index.d.ts +0 -4
- package/components/ScrollTopButton.d.ts +0 -6
- package/components/Select/Select.definitions.d.ts +0 -17
- package/components/Select/Select.types.d.ts +0 -1
- package/components/Select/_parts/SelectSearchHeader.d.ts +0 -15
- package/formField.sx-CQ1mbk9M.cjs.map +0 -1
- package/formField.sx-DfVbMe0V.js.map +0 -1
- package/hooks/Wizard/Wizard.cjs +0 -7
- package/hooks/Wizard/Wizard.cjs.map +0 -1
- package/hooks/Wizard/Wizard.js +0 -7
- package/hooks/Wizard/Wizard.js.map +0 -1
- package/hooks/Wizard/index.d.ts +0 -3
- package/hooks/Wizard/useWizard.d.ts +0 -9
- package/hooks/Wizard.d.ts +0 -2
- package/useWizard-CWdIxZzX.cjs +0 -94
- package/useWizard-CWdIxZzX.cjs.map +0 -1
- package/useWizard-CWq--C3o.js +0 -95
- package/useWizard-CWq--C3o.js.map +0 -1
- /package/{styles.css → index.css} +0 -0
|
@@ -1,163 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
var __defProps = Object.defineProperties;
|
|
3
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
-
var __spreadValues = (a, b) => {
|
|
9
|
-
for (var prop in b || (b = {}))
|
|
10
|
-
if (__hasOwnProp.call(b, prop))
|
|
11
|
-
__defNormalProp(a, prop, b[prop]);
|
|
12
|
-
if (__getOwnPropSymbols)
|
|
13
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
-
if (__propIsEnum.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
}
|
|
17
|
-
return a;
|
|
18
|
-
};
|
|
19
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
-
import { jsxs, jsx } from "react/jsx-runtime";
|
|
21
|
-
import React__default, { useState } from "react";
|
|
22
|
-
import { Box, Typography, Avatar as Avatar$1, Tooltip } from "@mui/material";
|
|
23
|
-
import AccountCircleIcon from "@mui/icons-material/AccountCircle";
|
|
24
|
-
const sizeMap = {
|
|
25
|
-
sm: { px: 32, border: 2, font: 14, overlap: 8 },
|
|
26
|
-
md: { px: 40, border: 2, font: 16, overlap: 10 },
|
|
27
|
-
lg: { px: 56, border: 3, font: 22, overlap: 14 },
|
|
28
|
-
xl: { px: 96, border: 4, font: 36, overlap: 20 }
|
|
29
|
-
};
|
|
30
|
-
const resolveSize = (size) => {
|
|
31
|
-
if (typeof size === "number") {
|
|
32
|
-
return {
|
|
33
|
-
px: size,
|
|
34
|
-
border: Math.max(2, Math.round(size * 0.05)),
|
|
35
|
-
font: Math.round(size * 0.4),
|
|
36
|
-
overlap: Math.round(size * 0.25)
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
return sizeMap[size];
|
|
40
|
-
};
|
|
41
|
-
const mergeSx = (base, extra) => {
|
|
42
|
-
if (!extra) return base;
|
|
43
|
-
const baseArr = Array.isArray(base) ? base : [base];
|
|
44
|
-
const extraArr = Array.isArray(extra) ? extra : [extra];
|
|
45
|
-
return [...baseArr, ...extraArr];
|
|
46
|
-
};
|
|
47
|
-
const Avatar = ({
|
|
48
|
-
items,
|
|
49
|
-
type,
|
|
50
|
-
displayedAvatars = 4,
|
|
51
|
-
size = "sm",
|
|
52
|
-
showText = true,
|
|
53
|
-
showTooltip = false,
|
|
54
|
-
sx,
|
|
55
|
-
avatarSx,
|
|
56
|
-
className,
|
|
57
|
-
overlap
|
|
58
|
-
}) => {
|
|
59
|
-
var _a;
|
|
60
|
-
const [errorIndex, setErrorIndex] = useState(/* @__PURE__ */ new Set());
|
|
61
|
-
const handleImageError = (index) => {
|
|
62
|
-
setErrorIndex((prev) => {
|
|
63
|
-
const next = new Set(prev);
|
|
64
|
-
next.add(index);
|
|
65
|
-
return next;
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
if (!items || items.length === 0) {
|
|
69
|
-
return null;
|
|
70
|
-
}
|
|
71
|
-
const s = resolveSize(size);
|
|
72
|
-
const effectiveOverlap = overlap != null ? overlap : s.overlap;
|
|
73
|
-
const visibleItems = items.slice(0, displayedAvatars);
|
|
74
|
-
const baseAvatarSx = {
|
|
75
|
-
width: s.px,
|
|
76
|
-
height: s.px,
|
|
77
|
-
fontSize: s.font,
|
|
78
|
-
fontWeight: 700,
|
|
79
|
-
border: (theme) => `${s.border}px solid ${theme.palette.background.paper}`,
|
|
80
|
-
boxSizing: "content-box"
|
|
81
|
-
};
|
|
82
|
-
const renderSingleAvatar = (item, i) => {
|
|
83
|
-
var _a2, _b;
|
|
84
|
-
const hasImage = !!item.imageUrl && !errorIndex.has(i);
|
|
85
|
-
const showBadgeFallback = !!item.badge;
|
|
86
|
-
const itemSx = __spreadProps(__spreadValues({
|
|
87
|
-
bgcolor: (_a2 = item.backgroundColor) != null ? _a2 : "action.selected",
|
|
88
|
-
color: (_b = item.color) != null ? _b : "text.secondary"
|
|
89
|
-
}, i > 0 && { marginLeft: `-${effectiveOverlap}px` }), {
|
|
90
|
-
zIndex: visibleItems.length - i
|
|
91
|
-
});
|
|
92
|
-
const finalSx = mergeSx(mergeSx(baseAvatarSx, itemSx), avatarSx);
|
|
93
|
-
const avatarEl = /* @__PURE__ */ jsx(
|
|
94
|
-
Avatar$1,
|
|
95
|
-
{
|
|
96
|
-
"data-testid": "avatar",
|
|
97
|
-
alt: item.text || "User avatar",
|
|
98
|
-
src: hasImage ? item.imageUrl : void 0,
|
|
99
|
-
imgProps: {
|
|
100
|
-
"data-testid": "image",
|
|
101
|
-
onError: () => handleImageError(i)
|
|
102
|
-
},
|
|
103
|
-
sx: finalSx,
|
|
104
|
-
children: !hasImage && showBadgeFallback ? /* @__PURE__ */ jsx("span", { "data-testid": "badge", "aria-label": item.text, children: item.badge }) : !hasImage ? /* @__PURE__ */ jsx(
|
|
105
|
-
AccountCircleIcon,
|
|
106
|
-
{
|
|
107
|
-
"data-testid": "icon",
|
|
108
|
-
"aria-label": item.text,
|
|
109
|
-
sx: { width: "100%", height: "100%" }
|
|
110
|
-
}
|
|
111
|
-
) : null
|
|
112
|
-
}
|
|
113
|
-
);
|
|
114
|
-
if (showTooltip && item.text) {
|
|
115
|
-
return /* @__PURE__ */ jsx(Tooltip, { title: item.text, children: avatarEl }, i);
|
|
116
|
-
}
|
|
117
|
-
return /* @__PURE__ */ jsx(React__default.Fragment, { children: avatarEl }, i);
|
|
118
|
-
};
|
|
119
|
-
return /* @__PURE__ */ jsxs(
|
|
120
|
-
Box,
|
|
121
|
-
{
|
|
122
|
-
"data-testid": "avatar-container",
|
|
123
|
-
className,
|
|
124
|
-
sx: mergeSx(
|
|
125
|
-
{
|
|
126
|
-
display: "flex",
|
|
127
|
-
alignItems: "center",
|
|
128
|
-
lineHeight: 1,
|
|
129
|
-
width: "fit-content"
|
|
130
|
-
},
|
|
131
|
-
sx
|
|
132
|
-
),
|
|
133
|
-
children: [
|
|
134
|
-
/* @__PURE__ */ jsx(Box, { sx: { display: "flex", alignItems: "center" }, children: visibleItems.map((item, i) => renderSingleAvatar(item, i)) }),
|
|
135
|
-
showText && ((_a = items[0]) == null ? void 0 : _a.text) && /* @__PURE__ */ jsxs(
|
|
136
|
-
Typography,
|
|
137
|
-
{
|
|
138
|
-
"data-testid": "text",
|
|
139
|
-
variant: "caption",
|
|
140
|
-
sx: {
|
|
141
|
-
ml: 1,
|
|
142
|
-
fontSize: "0.75rem",
|
|
143
|
-
fontWeight: 400,
|
|
144
|
-
color: "text.primary"
|
|
145
|
-
},
|
|
146
|
-
children: [
|
|
147
|
-
type && items.length === 1 && /* @__PURE__ */ jsxs(Box, { component: "span", "data-testid": "type", sx: { mr: 0.5 }, children: [
|
|
148
|
-
type,
|
|
149
|
-
":"
|
|
150
|
-
] }),
|
|
151
|
-
items[0].text,
|
|
152
|
-
items.length > 1 && ` +${items.length - 1}`
|
|
153
|
-
]
|
|
154
|
-
}
|
|
155
|
-
)
|
|
156
|
-
]
|
|
157
|
-
}
|
|
158
|
-
);
|
|
159
|
-
};
|
|
1
|
+
import { A } from "../../Avatar-H8akSege.js";
|
|
160
2
|
export {
|
|
161
|
-
Avatar
|
|
3
|
+
A as Avatar
|
|
162
4
|
};
|
|
163
5
|
//# sourceMappingURL=Avatar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sources":[
|
|
1
|
+
{"version":3,"file":"Avatar.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { SxProps, Theme } from '@mui/material/styles';
|
|
2
2
|
import { default as React } from 'react';
|
|
3
|
-
|
|
4
|
-
export interface MyButtonProps extends PickButtonProps {
|
|
3
|
+
export interface ButtonProps {
|
|
5
4
|
children?: React.ReactNode;
|
|
6
5
|
variant?: "text" | "outlined" | "contained";
|
|
7
6
|
disabled?: boolean;
|
|
@@ -13,10 +12,11 @@ export interface MyButtonProps extends PickButtonProps {
|
|
|
13
12
|
loading?: boolean;
|
|
14
13
|
loadingIndicator?: React.ReactNode;
|
|
15
14
|
loadingPosition?: "start" | "end" | "center";
|
|
16
|
-
color?: "primary" | "success" | "error" | "info" | "warning";
|
|
15
|
+
color?: "inherit" | "primary" | "secondary" | "success" | "error" | "info" | "warning";
|
|
17
16
|
href?: string;
|
|
18
17
|
"data-testid"?: string;
|
|
19
18
|
type?: "button" | "submit";
|
|
19
|
+
sx?: SxProps<Theme>;
|
|
20
20
|
}
|
|
21
|
-
export declare const Button: React.FC<
|
|
21
|
+
export declare const Button: React.FC<ButtonProps>;
|
|
22
22
|
export default Button;
|
package/components/Card/Card.cjs
CHANGED
|
@@ -1,187 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
5
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
8
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
9
|
-
var __spreadValues = (a, b) => {
|
|
10
|
-
for (var prop in b || (b = {}))
|
|
11
|
-
if (__hasOwnProp.call(b, prop))
|
|
12
|
-
__defNormalProp(a, prop, b[prop]);
|
|
13
|
-
if (__getOwnPropSymbols)
|
|
14
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
15
|
-
if (__propIsEnum.call(b, prop))
|
|
16
|
-
__defNormalProp(a, prop, b[prop]);
|
|
17
|
-
}
|
|
18
|
-
return a;
|
|
19
|
-
};
|
|
20
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
21
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
none: 0,
|
|
27
|
-
dense: 1.5,
|
|
28
|
-
normal: 2.5,
|
|
29
|
-
loose: 4
|
|
30
|
-
};
|
|
31
|
-
function buildCardSx({
|
|
32
|
-
variant,
|
|
33
|
-
padding,
|
|
34
|
-
clickable
|
|
35
|
-
}) {
|
|
36
|
-
return (theme) => __spreadProps(__spreadValues({
|
|
37
|
-
borderRadius: 2,
|
|
38
|
-
backgroundColor: "background.paper",
|
|
39
|
-
boxShadow: variant === "elevated" ? theme.shadows[1] : "none",
|
|
40
|
-
border: variant === "outlined" ? `1px solid ${theme.palette.divider}` : "none",
|
|
41
|
-
transition: theme.transitions.create(
|
|
42
|
-
["box-shadow", "transform", "border-color"],
|
|
43
|
-
{ duration: theme.transitions.duration.shorter }
|
|
44
|
-
),
|
|
45
|
-
cursor: clickable ? "pointer" : "default"
|
|
46
|
-
}, clickable && {
|
|
47
|
-
"&:hover": {
|
|
48
|
-
boxShadow: variant === "elevated" ? theme.shadows[3] : variant === "outlined" ? theme.shadows[1] : "none",
|
|
49
|
-
transform: variant !== "plain" ? "translateY(-1px)" : "none"
|
|
50
|
-
},
|
|
51
|
-
"&:active": {
|
|
52
|
-
transform: "translateY(0)"
|
|
53
|
-
}
|
|
54
|
-
}), {
|
|
55
|
-
// Body padding (cuando no hay header/footer envolventes). Para el caso
|
|
56
|
-
// compuesto los slots manejan su propio padding, dejamos el root en 0.
|
|
57
|
-
p: paddingMap[padding]
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
function buildCardHeaderSx() {
|
|
61
|
-
return (theme) => ({
|
|
62
|
-
display: "flex",
|
|
63
|
-
alignItems: "center",
|
|
64
|
-
gap: 1.5,
|
|
65
|
-
px: 2.5,
|
|
66
|
-
py: 1.75,
|
|
67
|
-
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
68
|
-
"& .card-header-text": {
|
|
69
|
-
flex: 1,
|
|
70
|
-
minWidth: 0
|
|
71
|
-
},
|
|
72
|
-
"& .card-header-actions": {
|
|
73
|
-
display: "flex",
|
|
74
|
-
alignItems: "center",
|
|
75
|
-
gap: 0.5,
|
|
76
|
-
flexShrink: 0
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
function buildCardBodySx(padding) {
|
|
81
|
-
return {
|
|
82
|
-
px: padding === "none" ? 0 : padding === "dense" ? 1.5 : padding === "loose" ? 4 : 2.5,
|
|
83
|
-
py: padding === "none" ? 0 : padding === "dense" ? 1.5 : padding === "loose" ? 4 : 2.5
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
function buildCardFooterSx() {
|
|
87
|
-
return (theme) => ({
|
|
88
|
-
display: "flex",
|
|
89
|
-
alignItems: "center",
|
|
90
|
-
justifyContent: "flex-end",
|
|
91
|
-
gap: 1,
|
|
92
|
-
px: 2.5,
|
|
93
|
-
py: 1.5,
|
|
94
|
-
borderTop: `1px solid ${theme.palette.divider}`,
|
|
95
|
-
backgroundColor: theme.palette.action.hover
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
function Card({
|
|
99
|
-
children,
|
|
100
|
-
title,
|
|
101
|
-
subtitle,
|
|
102
|
-
actions,
|
|
103
|
-
header,
|
|
104
|
-
footer,
|
|
105
|
-
variant,
|
|
106
|
-
padding = "normal",
|
|
107
|
-
clickable = false,
|
|
108
|
-
preset,
|
|
109
|
-
raised,
|
|
110
|
-
sx,
|
|
111
|
-
bodySx,
|
|
112
|
-
headerSx,
|
|
113
|
-
footerSx,
|
|
114
|
-
onClick,
|
|
115
|
-
onBlur,
|
|
116
|
-
className,
|
|
117
|
-
"data-testid": dataTestId
|
|
118
|
-
}) {
|
|
119
|
-
const theme = material.useTheme();
|
|
120
|
-
const resolvedVariant = raised ? "elevated" : variant != null ? variant : "elevated";
|
|
121
|
-
const hasHeader = Boolean(header || title || subtitle || actions);
|
|
122
|
-
const hasFooter = Boolean(footer);
|
|
123
|
-
const isCompound = hasHeader || hasFooter;
|
|
124
|
-
const rootPadding = isCompound ? "none" : padding;
|
|
125
|
-
const presetSx = resolvePreset.resolvePreset("Card", preset, theme);
|
|
126
|
-
const rootSx = [
|
|
127
|
-
buildCardSx({
|
|
128
|
-
variant: resolvedVariant,
|
|
129
|
-
padding: rootPadding,
|
|
130
|
-
clickable: clickable || Boolean(onClick)
|
|
131
|
-
}),
|
|
132
|
-
...presetSx ? [presetSx] : [],
|
|
133
|
-
...Array.isArray(sx) ? sx : sx ? [sx] : []
|
|
134
|
-
];
|
|
135
|
-
const renderHeader = () => {
|
|
136
|
-
if (header) return /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: [buildCardHeaderSx(), ...Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : []], children: header });
|
|
137
|
-
if (!title && !subtitle && !actions) return null;
|
|
138
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(material.Box, { sx: [buildCardHeaderSx(), ...Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : []], children: [
|
|
139
|
-
/* @__PURE__ */ jsxRuntime.jsxs(material.Box, { className: "card-header-text", children: [
|
|
140
|
-
title && /* @__PURE__ */ jsxRuntime.jsx(
|
|
141
|
-
material.Typography,
|
|
142
|
-
{
|
|
143
|
-
variant: "subtitle1",
|
|
144
|
-
component: "div",
|
|
145
|
-
sx: { fontWeight: 600, lineHeight: 1.3 },
|
|
146
|
-
noWrap: true,
|
|
147
|
-
children: title
|
|
148
|
-
}
|
|
149
|
-
),
|
|
150
|
-
subtitle && /* @__PURE__ */ jsxRuntime.jsx(
|
|
151
|
-
material.Typography,
|
|
152
|
-
{
|
|
153
|
-
variant: "caption",
|
|
154
|
-
color: "text.secondary",
|
|
155
|
-
component: "div",
|
|
156
|
-
noWrap: true,
|
|
157
|
-
children: subtitle
|
|
158
|
-
}
|
|
159
|
-
)
|
|
160
|
-
] }),
|
|
161
|
-
actions && /* @__PURE__ */ jsxRuntime.jsx(material.Box, { className: "card-header-actions", children: actions })
|
|
162
|
-
] });
|
|
163
|
-
};
|
|
164
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
165
|
-
material.Card,
|
|
166
|
-
{
|
|
167
|
-
sx: rootSx,
|
|
168
|
-
className,
|
|
169
|
-
"data-testid": dataTestId,
|
|
170
|
-
onClick,
|
|
171
|
-
onBlur,
|
|
172
|
-
elevation: 0,
|
|
173
|
-
children: [
|
|
174
|
-
renderHeader(),
|
|
175
|
-
isCompound ? /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: [buildCardBodySx(padding), ...Array.isArray(bodySx) ? bodySx : bodySx ? [bodySx] : []], children }) : children,
|
|
176
|
-
hasFooter && /* @__PURE__ */ jsxRuntime.jsx(material.Box, { sx: [buildCardFooterSx(), ...Array.isArray(footerSx) ? footerSx : footerSx ? [footerSx] : []], children: footer })
|
|
177
|
-
]
|
|
178
|
-
}
|
|
179
|
-
);
|
|
180
|
-
}
|
|
181
|
-
exports.Card = Card;
|
|
182
|
-
exports.buildCardBodySx = buildCardBodySx;
|
|
183
|
-
exports.buildCardFooterSx = buildCardFooterSx;
|
|
184
|
-
exports.buildCardHeaderSx = buildCardHeaderSx;
|
|
185
|
-
exports.buildCardSx = buildCardSx;
|
|
186
|
-
exports.default = Card;
|
|
3
|
+
const Card = require("../../Card-Dr1-ATRY.cjs");
|
|
4
|
+
exports.Card = Card.Card;
|
|
5
|
+
exports.buildCardSx = Card.buildCardSx;
|
|
6
|
+
exports.default = Card.Card;
|
|
187
7
|
//# sourceMappingURL=Card.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Card.cjs","sources":["../../../src/components/Card/Card.sx.ts","../../../src/components/Card/Card.tsx"],"sourcesContent":["import type { SxProps, Theme } from '@mui/material/styles';\n\nexport type CardVariant = 'elevated' | 'outlined' | 'plain';\nexport type CardPadding = 'none' | 'dense' | 'normal' | 'loose';\n\nexport interface BuildCardSxArgs {\n variant: CardVariant;\n padding: CardPadding;\n clickable: boolean;\n}\n\nconst paddingMap: Record<CardPadding, number> = {\n none: 0,\n dense: 1.5,\n normal: 2.5,\n loose: 4,\n};\n\n/**\n * Estilo base del Card (root). La props `sx` del consumer se compone encima\n * junto al preset resuelto (en Card.tsx). Este builder solo se ocupa del\n * variant + padding, para que siga siendo predecible.\n */\nexport function buildCardSx({\n variant,\n padding,\n clickable,\n}: BuildCardSxArgs): SxProps<Theme> {\n return (theme) => ({\n borderRadius: 2,\n backgroundColor: 'background.paper',\n boxShadow:\n variant === 'elevated'\n ? theme.shadows[1]\n : 'none',\n border:\n variant === 'outlined'\n ? `1px solid ${theme.palette.divider}`\n : 'none',\n transition: theme.transitions.create(\n ['box-shadow', 'transform', 'border-color'],\n { duration: theme.transitions.duration.shorter },\n ),\n cursor: clickable ? 'pointer' : 'default',\n ...(clickable && {\n '&:hover': {\n boxShadow:\n variant === 'elevated'\n ? theme.shadows[3]\n : variant === 'outlined'\n ? theme.shadows[1]\n : 'none',\n transform: variant !== 'plain' ? 'translateY(-1px)' : 'none',\n },\n '&:active': {\n transform: 'translateY(0)',\n },\n }),\n // Body padding (cuando no hay header/footer envolventes). Para el caso\n // compuesto los slots manejan su propio padding, dejamos el root en 0.\n p: paddingMap[padding],\n });\n}\n\nexport function buildCardHeaderSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n gap: 1.5,\n px: 2.5,\n py: 1.75,\n borderBottom: `1px solid ${theme.palette.divider}`,\n '& .card-header-text': {\n flex: 1,\n minWidth: 0,\n },\n '& .card-header-actions': {\n display: 'flex',\n alignItems: 'center',\n gap: 0.5,\n flexShrink: 0,\n },\n });\n}\n\nexport function buildCardBodySx(padding: CardPadding): SxProps<Theme> {\n return {\n px: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n py: padding === 'none' ? 0 : padding === 'dense' ? 1.5 : padding === 'loose' ? 4 : 2.5,\n };\n}\n\nexport function buildCardFooterSx(): SxProps<Theme> {\n return (theme) => ({\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'flex-end',\n gap: 1,\n px: 2.5,\n py: 1.5,\n borderTop: `1px solid ${theme.palette.divider}`,\n backgroundColor: theme.palette.action.hover,\n });\n}\n","import React, { type ReactNode } from 'react';\nimport { Box, Card as MuiCard, Typography, useTheme } from '@mui/material';\nimport type { SxProps, Theme } from '@mui/material/styles';\n\nimport { resolvePreset } from '../_shared/resolvePreset';\nimport {\n buildCardSx,\n buildCardHeaderSx,\n buildCardBodySx,\n buildCardFooterSx,\n type CardVariant,\n type CardPadding,\n} from './Card.sx';\n\nexport interface CardProps {\n /** Contenido principal. */\n children?: ReactNode;\n /**\n * Título del Card. Si se provee, renderiza un header con separador. Puede\n * ser string o cualquier ReactNode para permitir iconos / chips.\n */\n title?: ReactNode;\n /** Texto secundario debajo del título. */\n subtitle?: ReactNode;\n /**\n * Acciones del header (botones, ActionMenu, etc). Se renderizan alineadas\n * a la derecha.\n */\n actions?: ReactNode;\n /**\n * Header totalmente custom. Si se provee, ignora `title`/`subtitle`/`actions`\n * y toma control del slot entero.\n */\n header?: ReactNode;\n /** Footer custom (botones, mensajes, etc). */\n footer?: ReactNode;\n /**\n * Variante visual.\n * - `elevated` (default): sombra sutil.\n * - `outlined`: borde sin sombra.\n * - `plain`: sin borde ni sombra, útil para layouts con nesting.\n */\n variant?: CardVariant;\n /**\n * Densidad del padding interno. Solo aplica al body cuando hay header/footer;\n * cuando no hay slots, aplica al root.\n */\n padding?: CardPadding;\n /** Si `true`, muestra feedback de hover/active (cursor, sombra). */\n clickable?: boolean;\n /**\n * Preset registrado en `theme.styles.Card`. `\"default\"` usa el estilo\n * built-in sin preset extra.\n */\n preset?: string;\n /**\n * MUI `raised` legacy — mantenido por backward-compat. Equivale a\n * `variant=\"elevated\"` con sombra mayor. Ignora `variant` si se usa.\n */\n raised?: boolean;\n /** sx del root. Se compone sobre el base + preset. */\n sx?: SxProps<Theme>;\n /** sx custom del slot body. */\n bodySx?: SxProps<Theme>;\n /** sx custom del slot header. */\n headerSx?: SxProps<Theme>;\n /** sx custom del slot footer. */\n footerSx?: SxProps<Theme>;\n onClick?: () => void;\n onBlur?: () => void;\n className?: string;\n 'data-testid'?: string;\n}\n\n/**\n * Card semántico con slots `title` / `subtitle` / `actions` / `footer`.\n * Reemplaza el patrón `<div class=\"card\"><div class=\"card-header\">...</div>...`\n * de Metronic/Bootstrap con composición declarativa.\n *\n * Backward-compat: si solo se pasa `children`, se comporta como el Card\n * original (MUI Card + body padding).\n *\n * ```tsx\n * <Card\n * title=\"Datos del cliente\"\n * subtitle=\"Última actualización: hace 2h\"\n * actions={<ActionMenu items={menuItems} />}\n * footer={<Button>Guardar</Button>}\n * >\n * <CustomerForm />\n * </Card>\n * ```\n */\nexport function Card({\n children,\n title,\n subtitle,\n actions,\n header,\n footer,\n variant,\n padding = 'normal',\n clickable = false,\n preset,\n raised,\n sx,\n bodySx,\n headerSx,\n footerSx,\n onClick,\n onBlur,\n className,\n 'data-testid': dataTestId,\n}: CardProps) {\n const theme = useTheme();\n\n // Back-compat: `raised` legacy => elevated. Si no vienen ni `raised` ni\n // `variant`, default a 'elevated'.\n const resolvedVariant: CardVariant = raised\n ? 'elevated'\n : (variant ?? 'elevated');\n\n const hasHeader = Boolean(header || title || subtitle || actions);\n const hasFooter = Boolean(footer);\n const isCompound = hasHeader || hasFooter;\n\n // Cuando hay slots, el root no lleva padding (lo llevan los slots).\n const rootPadding: CardPadding = isCompound ? 'none' : padding;\n\n const presetSx = resolvePreset('Card', preset, theme);\n\n const rootSx: SxProps<Theme> = [\n buildCardSx({\n variant: resolvedVariant,\n padding: rootPadding,\n clickable: clickable || Boolean(onClick),\n }),\n ...(presetSx ? [presetSx] : []),\n ...(Array.isArray(sx) ? sx : sx ? [sx] : []),\n ];\n\n const renderHeader = () => {\n if (header) return <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>{header}</Box>;\n if (!title && !subtitle && !actions) return null;\n return (\n <Box sx={[buildCardHeaderSx(), ...(Array.isArray(headerSx) ? headerSx : headerSx ? [headerSx] : [])]}>\n <Box className=\"card-header-text\">\n {title && (\n <Typography\n variant=\"subtitle1\"\n component=\"div\"\n sx={{ fontWeight: 600, lineHeight: 1.3 }}\n noWrap\n >\n {title}\n </Typography>\n )}\n {subtitle && (\n <Typography\n variant=\"caption\"\n color=\"text.secondary\"\n component=\"div\"\n noWrap\n >\n {subtitle}\n </Typography>\n )}\n </Box>\n {actions && <Box className=\"card-header-actions\">{actions}</Box>}\n </Box>\n );\n };\n\n return (\n <MuiCard\n sx={rootSx}\n className={className}\n data-testid={dataTestId}\n onClick={onClick}\n onBlur={onBlur}\n elevation={0} // sombra la maneja buildCardSx\n >\n {renderHeader()}\n {isCompound ? (\n <Box sx={[buildCardBodySx(padding), ...(Array.isArray(bodySx) ? bodySx : bodySx ? [bodySx] : [])]}>\n {children}\n </Box>\n ) : (\n children\n )}\n {hasFooter && (\n <Box sx={[buildCardFooterSx(), ...(Array.isArray(footerSx) ? footerSx : footerSx ? [footerSx] : [])]}>\n {footer}\n </Box>\n )}\n </MuiCard>\n );\n}\n\nexport default Card;\n"],"names":["useTheme","resolvePreset","jsx","Box","jsxs","Typography","MuiCard"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Card.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -2,27 +2,8 @@ import { ReactNode } from 'react';
|
|
|
2
2
|
import { SxProps, Theme } from '@mui/material/styles';
|
|
3
3
|
import { CardVariant, CardPadding } from './Card.sx';
|
|
4
4
|
export interface CardProps {
|
|
5
|
-
/** Contenido
|
|
5
|
+
/** Contenido del Card. */
|
|
6
6
|
children?: ReactNode;
|
|
7
|
-
/**
|
|
8
|
-
* Título del Card. Si se provee, renderiza un header con separador. Puede
|
|
9
|
-
* ser string o cualquier ReactNode para permitir iconos / chips.
|
|
10
|
-
*/
|
|
11
|
-
title?: ReactNode;
|
|
12
|
-
/** Texto secundario debajo del título. */
|
|
13
|
-
subtitle?: ReactNode;
|
|
14
|
-
/**
|
|
15
|
-
* Acciones del header (botones, ActionMenu, etc). Se renderizan alineadas
|
|
16
|
-
* a la derecha.
|
|
17
|
-
*/
|
|
18
|
-
actions?: ReactNode;
|
|
19
|
-
/**
|
|
20
|
-
* Header totalmente custom. Si se provee, ignora `title`/`subtitle`/`actions`
|
|
21
|
-
* y toma control del slot entero.
|
|
22
|
-
*/
|
|
23
|
-
header?: ReactNode;
|
|
24
|
-
/** Footer custom (botones, mensajes, etc). */
|
|
25
|
-
footer?: ReactNode;
|
|
26
7
|
/**
|
|
27
8
|
* Variante visual.
|
|
28
9
|
* - `elevated` (default): sombra sutil.
|
|
@@ -30,10 +11,7 @@ export interface CardProps {
|
|
|
30
11
|
* - `plain`: sin borde ni sombra, útil para layouts con nesting.
|
|
31
12
|
*/
|
|
32
13
|
variant?: CardVariant;
|
|
33
|
-
/**
|
|
34
|
-
* Densidad del padding interno. Solo aplica al body cuando hay header/footer;
|
|
35
|
-
* cuando no hay slots, aplica al root.
|
|
36
|
-
*/
|
|
14
|
+
/** Densidad del padding interno. */
|
|
37
15
|
padding?: CardPadding;
|
|
38
16
|
/** Si `true`, muestra feedback de hover/active (cursor, sombra). */
|
|
39
17
|
clickable?: boolean;
|
|
@@ -47,37 +25,30 @@ export interface CardProps {
|
|
|
47
25
|
* `variant="elevated"` con sombra mayor. Ignora `variant` si se usa.
|
|
48
26
|
*/
|
|
49
27
|
raised?: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Título de cabecera. Si se provee (o `subheader`/`action`), se renderiza un
|
|
30
|
+
* `CardHeader` antes del contenido. Reemplaza el patrón
|
|
31
|
+
* `<Card><CardHeader/>...</Card>` de MUI.
|
|
32
|
+
*/
|
|
33
|
+
title?: ReactNode;
|
|
34
|
+
/** Subtítulo de la cabecera. */
|
|
35
|
+
subheader?: ReactNode;
|
|
36
|
+
/** Acción a la derecha de la cabecera (ej. botón/menú). */
|
|
37
|
+
action?: ReactNode;
|
|
38
|
+
/** sx aplicado al `CardHeader`. */
|
|
39
|
+
headerSx?: SxProps<Theme>;
|
|
40
|
+
/**
|
|
41
|
+
* sx aplicado al `CardContent` que envuelve a `children`. Al proveerlo (o al
|
|
42
|
+
* usar header), el body se envuelve en un `CardContent` y el padding del root
|
|
43
|
+
* pasa a `none` — equivale al patrón `<CardContent sx={...}>` de MUI.
|
|
44
|
+
*/
|
|
45
|
+
contentSx?: SxProps<Theme>;
|
|
50
46
|
/** sx del root. Se compone sobre el base + preset. */
|
|
51
47
|
sx?: SxProps<Theme>;
|
|
52
|
-
/** sx custom del slot body. */
|
|
53
|
-
bodySx?: SxProps<Theme>;
|
|
54
|
-
/** sx custom del slot header. */
|
|
55
|
-
headerSx?: SxProps<Theme>;
|
|
56
|
-
/** sx custom del slot footer. */
|
|
57
|
-
footerSx?: SxProps<Theme>;
|
|
58
48
|
onClick?: () => void;
|
|
59
49
|
onBlur?: () => void;
|
|
60
50
|
className?: string;
|
|
61
51
|
'data-testid'?: string;
|
|
62
52
|
}
|
|
63
|
-
|
|
64
|
-
* Card semántico con slots `title` / `subtitle` / `actions` / `footer`.
|
|
65
|
-
* Reemplaza el patrón `<div class="card"><div class="card-header">...</div>...`
|
|
66
|
-
* de Metronic/Bootstrap con composición declarativa.
|
|
67
|
-
*
|
|
68
|
-
* Backward-compat: si solo se pasa `children`, se comporta como el Card
|
|
69
|
-
* original (MUI Card + body padding).
|
|
70
|
-
*
|
|
71
|
-
* ```tsx
|
|
72
|
-
* <Card
|
|
73
|
-
* title="Datos del cliente"
|
|
74
|
-
* subtitle="Última actualización: hace 2h"
|
|
75
|
-
* actions={<ActionMenu items={menuItems} />}
|
|
76
|
-
* footer={<Button>Guardar</Button>}
|
|
77
|
-
* >
|
|
78
|
-
* <CustomerForm />
|
|
79
|
-
* </Card>
|
|
80
|
-
* ```
|
|
81
|
-
*/
|
|
82
|
-
export declare function Card({ children, title, subtitle, actions, header, footer, variant, padding, clickable, preset, raised, sx, bodySx, headerSx, footerSx, onClick, onBlur, className, 'data-testid': dataTestId, }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
53
|
+
export declare function Card({ children, variant, padding, clickable, preset, raised, title, subheader, action, headerSx, contentSx, sx, onClick, onBlur, className, 'data-testid': dataTestId, }: CardProps): import("react/jsx-runtime").JSX.Element;
|
|
83
54
|
export default Card;
|