@cere/cere-design-system 0.0.45 → 0.2.0
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/README.md +76 -0
- package/dist/buttons.d.mts +119 -0
- package/dist/buttons.d.ts +119 -0
- package/dist/buttons.js +19 -0
- package/dist/buttons.js.map +1 -0
- package/dist/buttons.mjs +19 -0
- package/dist/buttons.mjs.map +1 -0
- package/dist/carousel.d.mts +51 -0
- package/dist/carousel.d.ts +51 -0
- package/dist/carousel.js +185 -0
- package/dist/carousel.js.map +1 -0
- package/dist/carousel.mjs +185 -0
- package/dist/carousel.mjs.map +1 -0
- package/dist/charts.d.mts +187 -0
- package/dist/charts.d.ts +187 -0
- package/dist/charts.js +13 -0
- package/dist/charts.js.map +1 -0
- package/dist/charts.mjs +13 -0
- package/dist/charts.mjs.map +1 -0
- package/dist/chunk-2EBCST6X.js +25 -0
- package/dist/chunk-2EBCST6X.js.map +1 -0
- package/dist/chunk-2KDN37PQ.js +486 -0
- package/dist/chunk-2KDN37PQ.js.map +1 -0
- package/dist/chunk-34LFXT6C.mjs +486 -0
- package/dist/chunk-34LFXT6C.mjs.map +1 -0
- package/dist/chunk-3KCXCVOX.mjs +411 -0
- package/dist/chunk-3KCXCVOX.mjs.map +1 -0
- package/dist/chunk-4OKTICU5.js +374 -0
- package/dist/chunk-4OKTICU5.js.map +1 -0
- package/dist/chunk-5ASG6G6U.mjs +40 -0
- package/dist/chunk-5ASG6G6U.mjs.map +1 -0
- package/dist/chunk-72TQ56EP.js +280 -0
- package/dist/chunk-72TQ56EP.js.map +1 -0
- package/dist/chunk-7KXKK2RE.js +43 -0
- package/dist/chunk-7KXKK2RE.js.map +1 -0
- package/dist/chunk-ARSCL4ZZ.js +111 -0
- package/dist/chunk-ARSCL4ZZ.js.map +1 -0
- package/dist/chunk-AWVNEU6R.mjs +1478 -0
- package/dist/chunk-AWVNEU6R.mjs.map +1 -0
- package/dist/chunk-BH4FNZKK.mjs +1472 -0
- package/dist/chunk-BH4FNZKK.mjs.map +1 -0
- package/dist/chunk-BIZK6FUD.js +37 -0
- package/dist/chunk-BIZK6FUD.js.map +1 -0
- package/dist/chunk-BOQPWZIB.mjs +147 -0
- package/dist/chunk-BOQPWZIB.mjs.map +1 -0
- package/dist/chunk-BT7XUTT5.mjs +392 -0
- package/dist/chunk-BT7XUTT5.mjs.map +1 -0
- package/dist/chunk-D7D25O6E.mjs +280 -0
- package/dist/chunk-D7D25O6E.mjs.map +1 -0
- package/dist/chunk-DRGMEIPT.mjs +162 -0
- package/dist/chunk-DRGMEIPT.mjs.map +1 -0
- package/dist/chunk-DZXNYLVG.js +392 -0
- package/dist/chunk-DZXNYLVG.js.map +1 -0
- package/dist/chunk-GR52ENYI.mjs +527 -0
- package/dist/chunk-GR52ENYI.mjs.map +1 -0
- package/dist/chunk-GTBKQXXI.js +1472 -0
- package/dist/chunk-GTBKQXXI.js.map +1 -0
- package/dist/chunk-HJ24WKU4.js +120 -0
- package/dist/chunk-HJ24WKU4.js.map +1 -0
- package/dist/chunk-JBHRAAN3.js +31 -0
- package/dist/chunk-JBHRAAN3.js.map +1 -0
- package/dist/chunk-KKIKOIMP.js +1478 -0
- package/dist/chunk-KKIKOIMP.js.map +1 -0
- package/dist/chunk-LVJSKRX3.js +147 -0
- package/dist/chunk-LVJSKRX3.js.map +1 -0
- package/dist/chunk-OWWDNDF4.js +40 -0
- package/dist/chunk-OWWDNDF4.js.map +1 -0
- package/dist/chunk-PFZZJZ64.js +162 -0
- package/dist/chunk-PFZZJZ64.js.map +1 -0
- package/dist/chunk-PHMNZK2R.mjs +18 -0
- package/dist/chunk-PHMNZK2R.mjs.map +1 -0
- package/dist/chunk-POCAW2G4.mjs +111 -0
- package/dist/chunk-POCAW2G4.mjs.map +1 -0
- package/dist/chunk-QBCRH7YF.mjs +37 -0
- package/dist/chunk-QBCRH7YF.mjs.map +1 -0
- package/dist/chunk-QCFLZ7X3.js +527 -0
- package/dist/chunk-QCFLZ7X3.js.map +1 -0
- package/dist/chunk-SG2TD7FQ.mjs +374 -0
- package/dist/chunk-SG2TD7FQ.mjs.map +1 -0
- package/dist/chunk-SSFALO6S.mjs +120 -0
- package/dist/chunk-SSFALO6S.mjs.map +1 -0
- package/dist/chunk-U2QHFISG.js +18 -0
- package/dist/chunk-U2QHFISG.js.map +1 -0
- package/dist/chunk-UPGFBPFX.mjs +25 -0
- package/dist/chunk-UPGFBPFX.mjs.map +1 -0
- package/dist/chunk-WC2TCWXK.mjs +445 -0
- package/dist/chunk-WC2TCWXK.mjs.map +1 -0
- package/dist/chunk-XZZZ4MZV.js +445 -0
- package/dist/chunk-XZZZ4MZV.js.map +1 -0
- package/dist/chunk-YCDCQSYH.js +411 -0
- package/dist/chunk-YCDCQSYH.js.map +1 -0
- package/dist/chunk-ZDAZYIXB.mjs +43 -0
- package/dist/chunk-ZDAZYIXB.mjs.map +1 -0
- package/dist/chunk-ZP26PGMS.mjs +31 -0
- package/dist/chunk-ZP26PGMS.mjs.map +1 -0
- package/dist/feedback.d.mts +368 -0
- package/dist/feedback.d.ts +368 -0
- package/dist/feedback.js +43 -0
- package/dist/feedback.js.map +1 -0
- package/dist/feedback.mjs +43 -0
- package/dist/feedback.mjs.map +1 -0
- package/dist/fonts/HumanSans-BlackOblique.otf +0 -0
- package/dist/fonts/HumanSans-Thin.otf +0 -0
- package/dist/fonts/HumanSans-ThinOblique.otf +0 -0
- package/dist/fonts/human-sans-font.css +88 -0
- package/dist/fonts/human-sans.css +3 -0
- package/dist/fonts/inter.css +3 -0
- package/dist/icons.d.mts +21 -0
- package/dist/icons.d.ts +21 -0
- package/dist/icons.js +23 -0
- package/dist/icons.js.map +1 -0
- package/dist/icons.mjs +23 -0
- package/dist/icons.mjs.map +1 -0
- package/dist/index.d.mts +196 -3082
- package/dist/index.d.ts +196 -3082
- package/dist/index.js +253 -10082
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +229 -10017
- package/dist/index.mjs.map +1 -1
- package/dist/inputs.d.mts +129 -0
- package/dist/inputs.d.ts +129 -0
- package/dist/inputs.js +43 -0
- package/dist/inputs.js.map +1 -0
- package/dist/inputs.mjs +43 -0
- package/dist/inputs.mjs.map +1 -0
- package/dist/layout.d.mts +681 -0
- package/dist/layout.d.ts +681 -0
- package/dist/layout.js +98 -0
- package/dist/layout.js.map +1 -0
- package/dist/layout.mjs +98 -0
- package/dist/layout.mjs.map +1 -0
- package/dist/navigation.d.mts +611 -0
- package/dist/navigation.d.ts +611 -0
- package/dist/navigation.js +54 -0
- package/dist/navigation.js.map +1 -0
- package/dist/navigation.mjs +54 -0
- package/dist/navigation.mjs.map +1 -0
- package/dist/third-party.d.mts +113 -0
- package/dist/third-party.d.ts +113 -0
- package/dist/third-party.js +7 -0
- package/dist/third-party.js.map +1 -0
- package/dist/third-party.mjs +7 -0
- package/dist/third-party.mjs.map +1 -0
- package/dist/tokens.css +45 -71
- package/dist/utilities.d.mts +39 -0
- package/dist/utilities.d.ts +39 -0
- package/dist/utilities.js +17 -0
- package/dist/utilities.js.map +1 -0
- package/dist/utilities.mjs +17 -0
- package/dist/utilities.mjs.map +1 -0
- package/package.json +76 -8
- package/dist/index.css +0 -79
- package/dist/index.css.map +0 -1
- /package/dist/{HumanSans-Black-C4YJONK7.otf → fonts/HumanSans-Black.otf} +0 -0
- /package/dist/{HumanSans-Bold-4EAJ3L3T.otf → fonts/HumanSans-Bold.otf} +0 -0
- /package/dist/{HumanSans-BoldOblique-4D325T4F.otf → fonts/HumanSans-BoldOblique.otf} +0 -0
- /package/dist/{HumanSans-ExtraLight-VL7DEKQ4.otf → fonts/HumanSans-ExtraLight.otf} +0 -0
- /package/dist/{HumanSans-ExtraLightOblique-VK2JTUXF.otf → fonts/HumanSans-ExtraLightOblique.otf} +0 -0
- /package/dist/{HumanSans-Light-YV7AFKRB.otf → fonts/HumanSans-Light.otf} +0 -0
- /package/dist/{HumanSans-LightOblique-VIXV7QA6.otf → fonts/HumanSans-LightOblique.otf} +0 -0
- /package/dist/{HumanSans-Medium-UULJ3PIR.otf → fonts/HumanSans-Medium.otf} +0 -0
- /package/dist/{HumanSans-MediumOblique-M7FHDZRS.otf → fonts/HumanSans-MediumOblique.otf} +0 -0
- /package/dist/{HumanSans-Regular-QMFEP3F6.otf → fonts/HumanSans-Regular.otf} +0 -0
- /package/dist/{HumanSans-RegularOblique-YPKQJAAM.otf → fonts/HumanSans-RegularOblique.otf} +0 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
// src/components/layout/Card.tsx
|
|
2
|
+
import React from "react";
|
|
3
|
+
import MuiCard from "@mui/material/Card";
|
|
4
|
+
import MuiCardContent from "@mui/material/CardContent";
|
|
5
|
+
import MuiCardHeader from "@mui/material/CardHeader";
|
|
6
|
+
import MuiCardActions from "@mui/material/CardActions";
|
|
7
|
+
import MuiCardMedia from "@mui/material/CardMedia";
|
|
8
|
+
import ButtonBase from "@mui/material/ButtonBase";
|
|
9
|
+
import { styled } from "@mui/material/styles";
|
|
10
|
+
import { jsx } from "react/jsx-runtime";
|
|
11
|
+
var CardMedia = React.forwardRef(
|
|
12
|
+
function CardMedia2(props, ref) {
|
|
13
|
+
return /* @__PURE__ */ jsx(MuiCardMedia, { ref, ...props });
|
|
14
|
+
}
|
|
15
|
+
);
|
|
16
|
+
var StyledCard = styled(MuiCard, {
|
|
17
|
+
shouldForwardProp: (prop) => prop !== "hoverable" && prop !== "clickable" && prop !== "dsVariant" && prop !== "asButton"
|
|
18
|
+
})(
|
|
19
|
+
({ theme, hoverable, clickable, dsVariant, asButton }) => ({
|
|
20
|
+
borderRadius: 8,
|
|
21
|
+
transition: "all 0.2s ease-in-out",
|
|
22
|
+
...dsVariant === "standard" && {
|
|
23
|
+
boxShadow: theme.shadows[1],
|
|
24
|
+
backgroundColor: theme.palette.background.paper
|
|
25
|
+
},
|
|
26
|
+
...dsVariant === "tinted" && {
|
|
27
|
+
boxShadow: "none",
|
|
28
|
+
backgroundColor: theme.palette.action.hover,
|
|
29
|
+
border: `1px solid ${theme.palette.divider}`
|
|
30
|
+
},
|
|
31
|
+
...dsVariant === "outlined" && {
|
|
32
|
+
boxShadow: "none",
|
|
33
|
+
backgroundColor: theme.palette.background.paper,
|
|
34
|
+
border: `1px solid ${theme.palette.divider}`
|
|
35
|
+
},
|
|
36
|
+
...(clickable || asButton) && {
|
|
37
|
+
cursor: "pointer"
|
|
38
|
+
},
|
|
39
|
+
...asButton && {
|
|
40
|
+
// Neutralise ButtonBase defaults (inline-flex + center alignment) so the
|
|
41
|
+
// card lays out exactly like a non-clickable Card. We render as a column
|
|
42
|
+
// flex so consumers can still stack GradientSurface + meta inside.
|
|
43
|
+
display: "flex",
|
|
44
|
+
flexDirection: "column",
|
|
45
|
+
alignItems: "stretch",
|
|
46
|
+
justifyContent: "flex-start",
|
|
47
|
+
width: "100%",
|
|
48
|
+
textAlign: "left",
|
|
49
|
+
verticalAlign: "top",
|
|
50
|
+
font: "inherit",
|
|
51
|
+
color: "inherit",
|
|
52
|
+
padding: 0,
|
|
53
|
+
"&:focus-visible": {
|
|
54
|
+
outline: "none",
|
|
55
|
+
boxShadow: "0 0 0 4px rgba(170,68,242,0.25)"
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
...hoverable && {
|
|
59
|
+
"&:hover": {
|
|
60
|
+
boxShadow: theme.shadows[4],
|
|
61
|
+
transform: "translateY(-2px)"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
);
|
|
66
|
+
var Card = React.forwardRef(function Card2({ variant = "standard", hoverable = false, clickable = false, onClick, children, ...props }, ref) {
|
|
67
|
+
const asButton = clickable && typeof onClick === "function";
|
|
68
|
+
return /* @__PURE__ */ jsx(
|
|
69
|
+
StyledCard,
|
|
70
|
+
{
|
|
71
|
+
ref,
|
|
72
|
+
dsVariant: variant,
|
|
73
|
+
hoverable,
|
|
74
|
+
clickable,
|
|
75
|
+
asButton,
|
|
76
|
+
variant: "elevation",
|
|
77
|
+
onClick,
|
|
78
|
+
...asButton ? { component: ButtonBase } : {},
|
|
79
|
+
...props,
|
|
80
|
+
children
|
|
81
|
+
}
|
|
82
|
+
);
|
|
83
|
+
});
|
|
84
|
+
var CardContent = React.forwardRef(
|
|
85
|
+
function CardContent2(props, ref) {
|
|
86
|
+
return /* @__PURE__ */ jsx(MuiCardContent, { ref, ...props });
|
|
87
|
+
}
|
|
88
|
+
);
|
|
89
|
+
var CardHeader = React.forwardRef(
|
|
90
|
+
function CardHeader2(props, ref) {
|
|
91
|
+
return /* @__PURE__ */ jsx(MuiCardHeader, { ref, ...props });
|
|
92
|
+
}
|
|
93
|
+
);
|
|
94
|
+
var CardActions = React.forwardRef(
|
|
95
|
+
function CardActions2(props, ref) {
|
|
96
|
+
return /* @__PURE__ */ jsx(MuiCardActions, { ref, ...props });
|
|
97
|
+
}
|
|
98
|
+
);
|
|
99
|
+
|
|
100
|
+
// src/components/layout/Typography.tsx
|
|
101
|
+
import { default as default2 } from "@mui/material/Typography";
|
|
102
|
+
|
|
103
|
+
export {
|
|
104
|
+
CardMedia,
|
|
105
|
+
Card,
|
|
106
|
+
CardContent,
|
|
107
|
+
CardHeader,
|
|
108
|
+
CardActions,
|
|
109
|
+
default2 as default
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=chunk-POCAW2G4.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/layout/Card.tsx","../src/components/layout/Typography.tsx"],"sourcesContent":["import React from 'react';\nimport MuiCard, { CardProps as MuiCardProps } from '@mui/material/Card';\nimport MuiCardContent, { CardContentProps } from '@mui/material/CardContent';\nimport MuiCardHeader, { CardHeaderProps } from '@mui/material/CardHeader';\nimport MuiCardActions, { CardActionsProps } from '@mui/material/CardActions';\nimport MuiCardMedia, { CardMediaProps as MuiCardMediaProps } from '@mui/material/CardMedia';\nimport ButtonBase from '@mui/material/ButtonBase';\nimport { styled } from '@mui/material/styles';\n\nexport type CardMediaProps = MuiCardMediaProps;\nexport const CardMedia = React.forwardRef<HTMLDivElement, CardMediaProps>(\n function CardMedia(props, ref) {\n return <MuiCardMedia ref={ref} {...props} />;\n },\n);\n\nexport type CardVariant = 'standard' | 'tinted' | 'outlined';\n\nexport interface CardProps extends Omit<MuiCardProps, 'variant'> {\n /** Visual treatment. @default 'standard' */\n variant?: CardVariant;\n hoverable?: boolean;\n /**\n * Opt the card into being a real interactive element. When combined with\n * `onClick`, the root renders via MUI ButtonBase — focusable button,\n * Enter/Space activation, `:focus-visible` ring. When `clickable` is set\n * without `onClick`, only the pointer cursor changes (back-compat).\n *\n * `<Card onClick={...}>` WITHOUT `clickable` keeps a `<div>` root and just\n * forwards the click handler, so consumers using onClick for analytics or\n * non-clickable side effects are not silently turned into buttons.\n */\n clickable?: boolean;\n}\n\nconst StyledCard = styled(MuiCard, {\n shouldForwardProp: (prop) =>\n prop !== 'hoverable' && prop !== 'clickable' && prop !== 'dsVariant' && prop !== 'asButton',\n})<{ hoverable?: boolean; clickable?: boolean; dsVariant: CardVariant; asButton?: boolean }>(\n ({ theme, hoverable, clickable, dsVariant, asButton }) => ({\n borderRadius: 8,\n transition: 'all 0.2s ease-in-out',\n ...(dsVariant === 'standard' && {\n boxShadow: theme.shadows[1],\n backgroundColor: theme.palette.background.paper,\n }),\n ...(dsVariant === 'tinted' && {\n boxShadow: 'none',\n backgroundColor: theme.palette.action.hover,\n border: `1px solid ${theme.palette.divider}`,\n }),\n ...(dsVariant === 'outlined' && {\n boxShadow: 'none',\n backgroundColor: theme.palette.background.paper,\n border: `1px solid ${theme.palette.divider}`,\n }),\n ...((clickable || asButton) && {\n cursor: 'pointer',\n }),\n ...(asButton && {\n // Neutralise ButtonBase defaults (inline-flex + center alignment) so the\n // card lays out exactly like a non-clickable Card. We render as a column\n // flex so consumers can still stack GradientSurface + meta inside.\n display: 'flex',\n flexDirection: 'column',\n alignItems: 'stretch',\n justifyContent: 'flex-start',\n width: '100%',\n textAlign: 'left',\n verticalAlign: 'top',\n font: 'inherit',\n color: 'inherit',\n padding: 0,\n '&:focus-visible': {\n outline: 'none',\n boxShadow: '0 0 0 4px rgba(170,68,242,0.25)',\n },\n }),\n ...(hoverable && {\n '&:hover': {\n boxShadow: theme.shadows[4],\n transform: 'translateY(-2px)',\n },\n }),\n }),\n);\n\nexport const Card = React.forwardRef<HTMLDivElement | HTMLButtonElement, CardProps>(function Card(\n { variant = 'standard', hoverable = false, clickable = false, onClick, children, ...props },\n ref,\n) {\n // Only render as a real button when the consumer EXPLICITLY opts in via\n // `clickable` AND wires an onClick. Inferring from onClick alone would\n // silently turn analytics-tracking cards into <button>s with role=button\n // and break nested forms/links.\n const asButton = clickable && typeof onClick === 'function';\n return (\n <StyledCard\n // MUI's polymorphic Card.ref is typed Ref<HTMLDivElement> by default and\n // shifts when `component` is overridden; our public ref union honestly\n // covers both runtime shapes (div by default, button when asButton).\n // The cast bridges MUI's static typing to the runtime polymorphism we\n // declared on the public API; consumers see the correct union and the\n // ref points at whichever element is actually rendered.\n ref={ref as React.Ref<HTMLDivElement>}\n dsVariant={variant}\n hoverable={hoverable}\n clickable={clickable}\n asButton={asButton}\n // MUI Card accepts a 'variant' prop too (elevation | outlined); we always\n // drive visual via dsVariant + box-shadow, so suppress MUI's default border.\n variant=\"elevation\"\n onClick={onClick}\n // When clickable, render the root as a focusable button so the entire\n // card becomes a real interactive element instead of needing an overlay.\n {...(asButton ? { component: ButtonBase } : {})}\n {...props}\n >\n {children}\n </StyledCard>\n );\n});\n\nexport const CardContent = React.forwardRef<HTMLDivElement, CardContentProps>(\n function CardContent(props, ref) {\n return <MuiCardContent ref={ref} {...props} />;\n },\n);\n\nexport const CardHeader = React.forwardRef<HTMLDivElement, CardHeaderProps>(\n function CardHeader(props, ref) {\n return <MuiCardHeader ref={ref} {...props} />;\n },\n);\n\nexport const CardActions = React.forwardRef<HTMLDivElement, CardActionsProps>(\n function CardActions(props, ref) {\n return <MuiCardActions ref={ref} {...props} />;\n },\n);\n","export { default as Typography } from '@mui/material/Typography';\nexport type { TypographyProps } from '@mui/material/Typography';\n\n"],"mappings":";AAAA,OAAO,WAAW;AAClB,OAAO,aAA4C;AACnD,OAAO,oBAA0C;AACjD,OAAO,mBAAwC;AAC/C,OAAO,oBAA0C;AACjD,OAAO,kBAA2D;AAClE,OAAO,gBAAgB;AACvB,SAAS,cAAc;AAKZ;AAFJ,IAAM,YAAY,MAAM;AAAA,EAC7B,SAASA,WAAU,OAAO,KAAK;AAC7B,WAAO,oBAAC,gBAAa,KAAW,GAAG,OAAO;AAAA,EAC5C;AACF;AAqBA,IAAM,aAAa,OAAO,SAAS;AAAA,EACjC,mBAAmB,CAAC,SAClB,SAAS,eAAe,SAAS,eAAe,SAAS,eAAe,SAAS;AACrF,CAAC;AAAA,EACC,CAAC,EAAE,OAAO,WAAW,WAAW,WAAW,SAAS,OAAO;AAAA,IACzD,cAAc;AAAA,IACd,YAAY;AAAA,IACZ,GAAI,cAAc,cAAc;AAAA,MAC9B,WAAW,MAAM,QAAQ,CAAC;AAAA,MAC1B,iBAAiB,MAAM,QAAQ,WAAW;AAAA,IAC5C;AAAA,IACA,GAAI,cAAc,YAAY;AAAA,MAC5B,WAAW;AAAA,MACX,iBAAiB,MAAM,QAAQ,OAAO;AAAA,MACtC,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC5C;AAAA,IACA,GAAI,cAAc,cAAc;AAAA,MAC9B,WAAW;AAAA,MACX,iBAAiB,MAAM,QAAQ,WAAW;AAAA,MAC1C,QAAQ,aAAa,MAAM,QAAQ,OAAO;AAAA,IAC5C;AAAA,IACA,IAAK,aAAa,aAAa;AAAA,MAC7B,QAAQ;AAAA,IACV;AAAA,IACA,GAAI,YAAY;AAAA;AAAA;AAAA;AAAA,MAId,SAAS;AAAA,MACT,eAAe;AAAA,MACf,YAAY;AAAA,MACZ,gBAAgB;AAAA,MAChB,OAAO;AAAA,MACP,WAAW;AAAA,MACX,eAAe;AAAA,MACf,MAAM;AAAA,MACN,OAAO;AAAA,MACP,SAAS;AAAA,MACT,mBAAmB;AAAA,QACjB,SAAS;AAAA,QACT,WAAW;AAAA,MACb;AAAA,IACF;AAAA,IACA,GAAI,aAAa;AAAA,MACf,WAAW;AAAA,QACT,WAAW,MAAM,QAAQ,CAAC;AAAA,QAC1B,WAAW;AAAA,MACb;AAAA,IACF;AAAA,EACF;AACF;AAEO,IAAM,OAAO,MAAM,WAA0D,SAASC,MAC3F,EAAE,UAAU,YAAY,YAAY,OAAO,YAAY,OAAO,SAAS,UAAU,GAAG,MAAM,GAC1F,KACA;AAKA,QAAM,WAAW,aAAa,OAAO,YAAY;AACjD,SACE;AAAA,IAAC;AAAA;AAAA,MAOC;AAAA,MACA,WAAW;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MAGA,SAAQ;AAAA,MACR;AAAA,MAGC,GAAI,WAAW,EAAE,WAAW,WAAW,IAAI,CAAC;AAAA,MAC5C,GAAG;AAAA,MAEH;AAAA;AAAA,EACH;AAEJ,CAAC;AAEM,IAAM,cAAc,MAAM;AAAA,EAC/B,SAASC,aAAY,OAAO,KAAK;AAC/B,WAAO,oBAAC,kBAAe,KAAW,GAAG,OAAO;AAAA,EAC9C;AACF;AAEO,IAAM,aAAa,MAAM;AAAA,EAC9B,SAASC,YAAW,OAAO,KAAK;AAC9B,WAAO,oBAAC,iBAAc,KAAW,GAAG,OAAO;AAAA,EAC7C;AACF;AAEO,IAAM,cAAc,MAAM;AAAA,EAC/B,SAASC,aAAY,OAAO,KAAK;AAC/B,WAAO,oBAAC,kBAAe,KAAW,GAAG,OAAO;AAAA,EAC9C;AACF;;;AC3IA,SAAoB,WAAXC,gBAA6B;","names":["CardMedia","Card","CardContent","CardHeader","CardActions","default"]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// src/components/feedback/Badge.tsx
|
|
2
|
+
import MuiBadge from "@mui/material/Badge";
|
|
3
|
+
import { styled } from "@mui/material/styles";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
var getBadgeColor = (variant, theme) => {
|
|
6
|
+
switch (variant) {
|
|
7
|
+
case "primary":
|
|
8
|
+
return theme.palette.primary.main;
|
|
9
|
+
case "success":
|
|
10
|
+
return theme.palette.success.main;
|
|
11
|
+
case "error":
|
|
12
|
+
return theme.palette.error.main;
|
|
13
|
+
default:
|
|
14
|
+
return theme.palette.grey[400];
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
var StyledBadge = styled(MuiBadge, {
|
|
18
|
+
shouldForwardProp: (prop) => prop !== "badgeVariant"
|
|
19
|
+
})(({ theme, badgeVariant = "default" }) => ({
|
|
20
|
+
"& .MuiBadge-badge": {
|
|
21
|
+
backgroundColor: getBadgeColor(badgeVariant, theme),
|
|
22
|
+
color: theme.palette.common.white
|
|
23
|
+
}
|
|
24
|
+
}));
|
|
25
|
+
var Badge = ({
|
|
26
|
+
variant = "default",
|
|
27
|
+
children,
|
|
28
|
+
badgeContent,
|
|
29
|
+
...props
|
|
30
|
+
}) => {
|
|
31
|
+
return /* @__PURE__ */ jsx(StyledBadge, { badgeVariant: variant, badgeContent, ...props, children });
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export {
|
|
35
|
+
Badge
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=chunk-QBCRH7YF.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/feedback/Badge.tsx"],"sourcesContent":["import React from 'react';\nimport MuiBadge, { BadgeProps as MuiBadgeProps } from '@mui/material/Badge';\nimport { styled, Theme } from '@mui/material/styles';\n\nexport type BadgeVariant = 'default' | 'primary' | 'success' | 'error';\n\nexport interface BadgeProps extends Omit<MuiBadgeProps, 'color' | 'variant'> {\n variant?: BadgeVariant;\n children?: React.ReactNode;\n}\n\nconst getBadgeColor = (variant: BadgeVariant, theme: Theme) => {\n switch (variant) {\n case 'primary':\n return theme.palette.primary.main;\n case 'success':\n return theme.palette.success.main;\n case 'error':\n return theme.palette.error.main;\n default:\n return theme.palette.grey[400];\n }\n};\n\nconst StyledBadge = styled(MuiBadge, {\n shouldForwardProp: (prop) => prop !== 'badgeVariant',\n})<{ badgeVariant?: BadgeVariant }>(({ theme, badgeVariant = 'default' }) => ({\n '& .MuiBadge-badge': {\n backgroundColor: getBadgeColor(badgeVariant, theme),\n color: theme.palette.common.white,\n },\n}));\n\nexport const Badge: React.FC<BadgeProps> = ({\n variant = 'default',\n children,\n badgeContent,\n ...props\n}) => {\n return (\n <StyledBadge badgeVariant={variant} badgeContent={badgeContent} {...props}>\n {children}\n </StyledBadge>\n );\n};\n\n"],"mappings":";AACA,OAAO,cAA+C;AACtD,SAAS,cAAqB;AAsC1B;AA7BJ,IAAM,gBAAgB,CAAC,SAAuB,UAAiB;AAC7D,UAAQ,SAAS;AAAA,IACf,KAAK;AACH,aAAO,MAAM,QAAQ,QAAQ;AAAA,IAC/B,KAAK;AACH,aAAO,MAAM,QAAQ,QAAQ;AAAA,IAC/B,KAAK;AACH,aAAO,MAAM,QAAQ,MAAM;AAAA,IAC7B;AACE,aAAO,MAAM,QAAQ,KAAK,GAAG;AAAA,EACjC;AACF;AAEA,IAAM,cAAc,OAAO,UAAU;AAAA,EACnC,mBAAmB,CAAC,SAAS,SAAS;AACxC,CAAC,EAAmC,CAAC,EAAE,OAAO,eAAe,UAAU,OAAO;AAAA,EAC5E,qBAAqB;AAAA,IACnB,iBAAiB,cAAc,cAAc,KAAK;AAAA,IAClD,OAAO,MAAM,QAAQ,OAAO;AAAA,EAC9B;AACF,EAAE;AAEK,IAAM,QAA8B,CAAC;AAAA,EAC1C,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,SACE,oBAAC,eAAY,cAAc,SAAS,cAA6B,GAAG,OACjE,UACH;AAEJ;","names":[]}
|