@xyo-network/react-card 2.64.9 → 2.64.10
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/docs.json +43 -43
- package/package.json +6 -6
- package/dist/browser/components/CardContentEx.cjs +0 -56
- package/dist/browser/components/CardContentEx.cjs.map +0 -1
- package/dist/browser/components/CardContentEx.js +0 -35
- package/dist/browser/components/CardContentEx.js.map +0 -1
- package/dist/browser/components/CardEx.cjs +0 -48
- package/dist/browser/components/CardEx.cjs.map +0 -1
- package/dist/browser/components/CardEx.js +0 -27
- package/dist/browser/components/CardEx.js.map +0 -1
- package/dist/browser/components/FullWidthCard/FullWidthCard.cjs +0 -93
- package/dist/browser/components/FullWidthCard/FullWidthCard.cjs.map +0 -1
- package/dist/browser/components/FullWidthCard/FullWidthCard.js +0 -72
- package/dist/browser/components/FullWidthCard/FullWidthCard.js.map +0 -1
- package/dist/browser/components/FullWidthCard/index.cjs +0 -95
- package/dist/browser/components/FullWidthCard/index.cjs.map +0 -1
- package/dist/browser/components/FullWidthCard/index.js +0 -72
- package/dist/browser/components/FullWidthCard/index.js.map +0 -1
- package/dist/browser/components/PageCard.cjs +0 -71
- package/dist/browser/components/PageCard.cjs.map +0 -1
- package/dist/browser/components/PageCard.js +0 -50
- package/dist/browser/components/PageCard.js.map +0 -1
- package/dist/browser/components/SimpleCard/SimpleCard.cjs +0 -120
- package/dist/browser/components/SimpleCard/SimpleCard.cjs.map +0 -1
- package/dist/browser/components/SimpleCard/SimpleCard.js +0 -99
- package/dist/browser/components/SimpleCard/SimpleCard.js.map +0 -1
- package/dist/browser/components/SimpleCard/coinbase-wallet.svg +0 -1
- package/dist/browser/components/SimpleCard/index.cjs +0 -122
- package/dist/browser/components/SimpleCard/index.cjs.map +0 -1
- package/dist/browser/components/SimpleCard/index.js +0 -99
- package/dist/browser/components/SimpleCard/index.js.map +0 -1
- package/dist/browser/components/SimpleCard/money.jpg +0 -0
- package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.cjs +0 -129
- package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.cjs.map +0 -1
- package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.js +0 -108
- package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.js.map +0 -1
- package/dist/browser/components/SimpleCardGrid/coinbase-wallet.svg +0 -1
- package/dist/browser/components/SimpleCardGrid/index.cjs +0 -131
- package/dist/browser/components/SimpleCardGrid/index.cjs.map +0 -1
- package/dist/browser/components/SimpleCardGrid/index.js +0 -108
- package/dist/browser/components/SimpleCardGrid/index.js.map +0 -1
- package/dist/browser/components/SimpleCardGrid/money.jpg +0 -0
- package/dist/browser/components/index.cjs +0 -248
- package/dist/browser/components/index.cjs.map +0 -1
- package/dist/browser/components/index.js +0 -225
- package/dist/browser/components/index.js.map +0 -1
- package/dist/browser/types/images.d.cjs +0 -2
- package/dist/browser/types/images.d.cjs.map +0 -1
- package/dist/browser/types/images.d.js +0 -1
- package/dist/browser/types/images.d.js.map +0 -1
- package/dist/node/components/CardContentEx.cjs +0 -62
- package/dist/node/components/CardContentEx.cjs.map +0 -1
- package/dist/node/components/CardContentEx.js +0 -36
- package/dist/node/components/CardContentEx.js.map +0 -1
- package/dist/node/components/CardEx.cjs +0 -53
- package/dist/node/components/CardEx.cjs.map +0 -1
- package/dist/node/components/CardEx.js +0 -27
- package/dist/node/components/CardEx.js.map +0 -1
- package/dist/node/components/FullWidthCard/FullWidthCard.cjs +0 -97
- package/dist/node/components/FullWidthCard/FullWidthCard.cjs.map +0 -1
- package/dist/node/components/FullWidthCard/FullWidthCard.js +0 -72
- package/dist/node/components/FullWidthCard/FullWidthCard.js.map +0 -1
- package/dist/node/components/FullWidthCard/index.cjs +0 -99
- package/dist/node/components/FullWidthCard/index.cjs.map +0 -1
- package/dist/node/components/FullWidthCard/index.js +0 -72
- package/dist/node/components/FullWidthCard/index.js.map +0 -1
- package/dist/node/components/PageCard.cjs +0 -75
- package/dist/node/components/PageCard.cjs.map +0 -1
- package/dist/node/components/PageCard.js +0 -50
- package/dist/node/components/PageCard.js.map +0 -1
- package/dist/node/components/SimpleCard/SimpleCard.cjs +0 -124
- package/dist/node/components/SimpleCard/SimpleCard.cjs.map +0 -1
- package/dist/node/components/SimpleCard/SimpleCard.js +0 -99
- package/dist/node/components/SimpleCard/SimpleCard.js.map +0 -1
- package/dist/node/components/SimpleCard/coinbase-wallet.svg +0 -1
- package/dist/node/components/SimpleCard/index.cjs +0 -126
- package/dist/node/components/SimpleCard/index.cjs.map +0 -1
- package/dist/node/components/SimpleCard/index.js +0 -99
- package/dist/node/components/SimpleCard/index.js.map +0 -1
- package/dist/node/components/SimpleCard/money.jpg +0 -0
- package/dist/node/components/SimpleCardGrid/SimpleCardGrid.cjs +0 -133
- package/dist/node/components/SimpleCardGrid/SimpleCardGrid.cjs.map +0 -1
- package/dist/node/components/SimpleCardGrid/SimpleCardGrid.js +0 -108
- package/dist/node/components/SimpleCardGrid/SimpleCardGrid.js.map +0 -1
- package/dist/node/components/SimpleCardGrid/coinbase-wallet.svg +0 -1
- package/dist/node/components/SimpleCardGrid/index.cjs +0 -135
- package/dist/node/components/SimpleCardGrid/index.cjs.map +0 -1
- package/dist/node/components/SimpleCardGrid/index.js +0 -108
- package/dist/node/components/SimpleCardGrid/index.js.map +0 -1
- package/dist/node/components/SimpleCardGrid/money.jpg +0 -0
- package/dist/node/components/index.cjs +0 -259
- package/dist/node/components/index.cjs.map +0 -1
- package/dist/node/components/index.js +0 -226
- package/dist/node/components/index.js.map +0 -1
- package/dist/node/types/images.d.cjs +0 -2
- package/dist/node/types/images.d.cjs.map +0 -1
- package/dist/node/types/images.d.js +0 -1
- package/dist/node/types/images.d.js.map +0 -1
@@ -1,129 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __defProp = Object.defineProperty;
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
6
|
-
var __export = (target, all) => {
|
7
|
-
for (var name in all)
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
9
|
-
};
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
12
|
-
for (let key of __getOwnPropNames(from))
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
15
|
-
}
|
16
|
-
return to;
|
17
|
-
};
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
|
-
|
20
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
21
|
-
var SimpleCardGrid_exports = {};
|
22
|
-
__export(SimpleCardGrid_exports, {
|
23
|
-
SimpleCardGrid: () => SimpleCardGrid
|
24
|
-
});
|
25
|
-
module.exports = __toCommonJS(SimpleCardGrid_exports);
|
26
|
-
var import_material3 = require("@mui/material");
|
27
|
-
|
28
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
29
|
-
var import_icons_material = require("@mui/icons-material");
|
30
|
-
var import_material2 = require("@mui/material");
|
31
|
-
var import_react_flexbox = require("@xylabs/react-flexbox");
|
32
|
-
var import_react_shared2 = require("@xyo-network/react-shared");
|
33
|
-
var import_react2 = require("react");
|
34
|
-
var import_react_router_dom = require("react-router-dom");
|
35
|
-
|
36
|
-
// src/components/CardEx.tsx
|
37
|
-
var import_material = require("@mui/material");
|
38
|
-
var import_react_shared = require("@xyo-network/react-shared");
|
39
|
-
var import_react = require("react");
|
40
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
41
|
-
var CardExWithRef = (0, import_react.forwardRef)(({ style, gradient, ...props }, ref) => {
|
42
|
-
const { styles } = (0, import_react_shared.useGradientStyles)();
|
43
|
-
const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
|
44
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
45
|
-
import_material.Card,
|
46
|
-
{
|
47
|
-
style: {
|
48
|
-
...gradientStyle,
|
49
|
-
...style
|
50
|
-
},
|
51
|
-
ref,
|
52
|
-
...props
|
53
|
-
}
|
54
|
-
);
|
55
|
-
});
|
56
|
-
CardExWithRef.displayName = "CardEx";
|
57
|
-
var CardEx = CardExWithRef;
|
58
|
-
|
59
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
60
|
-
var import_jsx_runtime2 = require("react/jsx-runtime");
|
61
|
-
var SimpleCard = ({
|
62
|
-
desc,
|
63
|
-
iconImage,
|
64
|
-
interactionVariant = "card",
|
65
|
-
headline,
|
66
|
-
href,
|
67
|
-
media,
|
68
|
-
small,
|
69
|
-
subtitle,
|
70
|
-
sx,
|
71
|
-
to,
|
72
|
-
...props
|
73
|
-
}) => {
|
74
|
-
const theme = (0, import_material2.useTheme)();
|
75
|
-
const [raised, setRaised] = (0, import_react2.useState)(false);
|
76
|
-
const navigate = (0, import_react_router_dom.useNavigate)();
|
77
|
-
const isMobile = (0, import_react_shared2.useIsMobile)();
|
78
|
-
const localRouteChange = (to2) => {
|
79
|
-
to2 ? navigate(to2) : navigate("/404");
|
80
|
-
};
|
81
|
-
const externalRouteChange = (href2) => {
|
82
|
-
href2 ? window.open(href2) : navigate("/404");
|
83
|
-
};
|
84
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
85
|
-
CardEx,
|
86
|
-
{
|
87
|
-
elevation: raised ? 3 : 0,
|
88
|
-
sx: {
|
89
|
-
"&:hover": {
|
90
|
-
cursor: interactionVariant == "button" ? "pointer" : null
|
91
|
-
},
|
92
|
-
backgroundColor: (0, import_material2.alpha)(theme.palette.primary.light, 0.05),
|
93
|
-
...sx
|
94
|
-
},
|
95
|
-
onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
|
96
|
-
onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
|
97
|
-
onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
|
98
|
-
...props,
|
99
|
-
children: [
|
100
|
-
media ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
|
101
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardContent, { sx: { height: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { width: "100%", alignItems: "flex-start", children: [
|
102
|
-
iconImage ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
|
103
|
-
typeof headline === "string" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
|
104
|
-
subtitle ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
|
105
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
|
106
|
-
] }) }),
|
107
|
-
interactionVariant == "button" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardActions, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexGrowCol, { alignItems: "flex-end", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
108
|
-
import_material2.IconButton,
|
109
|
-
{
|
110
|
-
color: raised ? "secondary" : "primary",
|
111
|
-
size: small ? "small" : "medium",
|
112
|
-
onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
|
113
|
-
disableFocusRipple: true,
|
114
|
-
disableRipple: true,
|
115
|
-
disableTouchRipple: true,
|
116
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowForwardRounded, { fontSize: small ? "small" : "medium" })
|
117
|
-
}
|
118
|
-
) }) }) : null
|
119
|
-
]
|
120
|
-
}
|
121
|
-
);
|
122
|
-
};
|
123
|
-
|
124
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
125
|
-
var import_jsx_runtime3 = require("react/jsx-runtime");
|
126
|
-
var SimpleCardGrid = ({ cards, ...props }) => {
|
127
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Grid, { container: true, ...props, children: cards?.map((card, index) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Grid, { item: true, xs: 12, sm: 6, md: 4, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(SimpleCard, { ...card, sx: { flexDirection: "column", height: "100%" } }) }, index)) });
|
128
|
-
};
|
129
|
-
//# sourceMappingURL=SimpleCardGrid.cjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SimpleCardGrid/SimpleCardGrid.tsx","../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["import { Grid, GridProps } from '@mui/material'\n\nimport { SimpleCard, SimpleCardProps } from '../SimpleCard'\n\nexport interface SimpleCardGridProps extends GridProps {\n cards?: SimpleCardProps[]\n}\n\nexport const SimpleCardGrid: React.FC<SimpleCardGridProps> = ({ cards, ...props }) => {\n return (\n <Grid container {...props}>\n {cards?.map((card, index) => (\n <Grid item key={index} xs={12} sm={6} md={4}>\n <SimpleCard {...card} sx={{ flexDirection: 'column', height: '100%' }} />\n </Grid>\n ))}\n </Grid>\n )\n}\n","import { ArrowForwardRounded as ArrowForwardRoundedIcon } from '@mui/icons-material'\nimport { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from '@mui/material'\nimport { FlexCol, FlexGrowCol } from '@xylabs/react-flexbox'\nimport { useIsMobile } from '@xyo-network/react-shared'\nimport { ReactNode, useState } from 'react'\nimport { To, useNavigate } from 'react-router-dom'\n\nimport { CardEx, CardExProps } from '../CardEx'\n\nexport interface SimpleCardProps extends CardExProps {\n desc?: ReactNode\n headline?: ReactNode\n href?: string\n iconImage?: string\n interactionVariant?: 'button' | 'card'\n media?: string\n small?: boolean\n subtitle?: string\n to?: To\n}\n\nexport const SimpleCard: React.FC<SimpleCardProps> = ({\n desc,\n iconImage,\n interactionVariant = 'card',\n headline,\n href,\n media,\n small,\n subtitle,\n sx,\n to,\n ...props\n}) => {\n const theme = useTheme()\n const [raised, setRaised] = useState(false)\n const navigate = useNavigate()\n const isMobile = useIsMobile()\n const localRouteChange = (to: To | undefined) => {\n to ? navigate(to) : navigate('/404')\n }\n const externalRouteChange = (href: string | undefined) => {\n href ? window.open(href) : navigate('/404')\n }\n return (\n <CardEx\n elevation={raised ? 3 : 0}\n sx={{\n '&:hover': {\n cursor: interactionVariant == 'button' ? 'pointer' : null,\n },\n backgroundColor: alpha(theme.palette.primary.light, 0.05),\n ...sx,\n }}\n onMouseEnter={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(true) : null)}\n onMouseLeave={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(false) : null)}\n onClick={() => (interactionVariant == 'button' ? (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404')) : null)}\n {...props}\n >\n {media ? <CardMedia component=\"img\" height=\"100\" image={media} alt=\"\" /> : null}\n\n <CardContent sx={{ height: '100%' }}>\n <FlexCol width=\"100%\" alignItems=\"flex-start\">\n {iconImage ? <img src={iconImage} height=\"40px\" style={{ paddingBottom: '8px' }} /> : null}\n {typeof headline === 'string' ? (\n <Typography variant={small ? 'body1' : 'h6'} textAlign=\"left\" gutterBottom>\n {headline}\n </Typography>\n ) : (\n headline\n )}\n {subtitle ? (\n <Typography variant=\"subtitle2\" textAlign=\"left\" gutterBottom>\n {subtitle}\n </Typography>\n ) : null}\n <Typography variant={small ? 'caption' : 'body1'} textAlign=\"left\" gutterBottom>\n {desc}\n </Typography>\n </FlexCol>\n </CardContent>\n {interactionVariant == 'button' ? (\n <CardActions>\n <FlexGrowCol alignItems=\"flex-end\">\n <IconButton\n color={raised ? 'secondary' : 'primary'}\n size={small ? 'small' : 'medium'}\n onClick={() => (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404'))}\n disableFocusRipple\n disableRipple\n disableTouchRipple\n >\n <ArrowForwardRoundedIcon fontSize={small ? 'small' : 'medium'} />\n </IconButton>\n </FlexGrowCol>\n </CardActions>\n ) : null}\n </CardEx>\n )\n}\n","import { Card, CardProps } from '@mui/material'\nimport { useGradientStyles } from '@xyo-network/react-shared'\nimport { forwardRef } from 'react'\n\nexport type CardExProps = CardProps & {\n gradient?: 'border' | 'background'\n}\n\nexport const CardExWithRef: React.FC<CardExProps> = forwardRef(({ style, gradient, ...props }, ref) => {\n const { styles } = useGradientStyles()\n const gradientStyle = gradient === 'border' ? styles.border : gradient === 'background' ? styles.background : {}\n return (\n <Card\n style={{\n ...gradientStyle,\n ...style,\n }}\n ref={ref}\n {...props}\n />\n )\n})\n\nCardExWithRef.displayName = 'CardEx'\n\nexport const CardEx = CardExWithRef\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,mBAAgC;;;ACAhC,4BAA+D;AAC/D,IAAAC,mBAA6F;AAC7F,2BAAqC;AACrC,IAAAC,uBAA4B;AAC5B,IAAAC,gBAAoC;AACpC,8BAAgC;;;ACLhC,sBAAgC;AAChC,0BAAkC;AAClC,mBAA2B;AAUvB;AAJG,IAAM,oBAAuC,yBAAW,CAAC,EAAE,OAAO,UAAU,GAAG,MAAM,GAAG,QAAQ;AACrG,QAAM,EAAE,OAAO,QAAI,uCAAkB;AACrC,QAAM,gBAAgB,aAAa,WAAW,OAAO,SAAS,aAAa,eAAe,OAAO,aAAa,CAAC;AAC/G,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,QACL,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,MACA;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ,CAAC;AAED,cAAc,cAAc;AAErB,IAAM,SAAS;;;ADkCP,IAAAC,sBAAA;AAtCR,IAAM,aAAwC,CAAC;AAAA,EACpD;AAAA,EACA;AAAA,EACA,qBAAqB;AAAA,EACrB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,YAAQ,2BAAS;AACvB,QAAM,CAAC,QAAQ,SAAS,QAAI,wBAAS,KAAK;AAC1C,QAAM,eAAW,qCAAY;AAC7B,QAAM,eAAW,kCAAY;AAC7B,QAAM,mBAAmB,CAACC,QAAuB;AAC/C,IAAAA,MAAK,SAASA,GAAE,IAAI,SAAS,MAAM;AAAA,EACrC;AACA,QAAM,sBAAsB,CAACC,UAA6B;AACxD,IAAAA,QAAO,OAAO,KAAKA,KAAI,IAAI,SAAS,MAAM;AAAA,EAC5C;AACA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,SAAS,IAAI;AAAA,MACxB,IAAI;AAAA,QACF,WAAW;AAAA,UACT,QAAQ,sBAAsB,WAAW,YAAY;AAAA,QACvD;AAAA,QACA,qBAAiB,wBAAM,MAAM,QAAQ,QAAQ,OAAO,IAAI;AAAA,QACxD,GAAG;AAAA,MACL;AAAA,MACA,cAAc,MAAO,WAAW,OAAO,sBAAsB,WAAW,UAAU,IAAI,IAAI;AAAA,MAC1F,cAAc,MAAO,WAAW,OAAO,sBAAsB,WAAW,UAAU,KAAK,IAAI;AAAA,MAC3F,SAAS,MAAO,sBAAsB,WAAY,OAAO,oBAAoB,IAAI,IAAI,KAAK,iBAAiB,EAAE,IAAI,SAAS,MAAM,IAAK;AAAA,MACpI,GAAG;AAAA,MAEH;AAAA,gBAAQ,6CAAC,8BAAU,WAAU,OAAM,QAAO,OAAM,OAAO,OAAO,KAAI,IAAG,IAAK;AAAA,QAE3E,6CAAC,gCAAY,IAAI,EAAE,QAAQ,OAAO,GAChC,wDAAC,gCAAQ,OAAM,QAAO,YAAW,cAC9B;AAAA,sBAAY,6CAAC,SAAI,KAAK,WAAW,QAAO,QAAO,OAAO,EAAE,eAAe,MAAM,GAAG,IAAK;AAAA,UACrF,OAAO,aAAa,WACnB,6CAAC,+BAAW,SAAS,QAAQ,UAAU,MAAM,WAAU,QAAO,cAAY,MACvE,oBACH,IAEA;AAAA,UAED,WACC,6CAAC,+BAAW,SAAQ,aAAY,WAAU,QAAO,cAAY,MAC1D,oBACH,IACE;AAAA,UACJ,6CAAC,+BAAW,SAAS,QAAQ,YAAY,SAAS,WAAU,QAAO,cAAY,MAC5E,gBACH;AAAA,WACF,GACF;AAAA,QACC,sBAAsB,WACrB,6CAAC,gCACC,uDAAC,oCAAY,YAAW,YACtB;AAAA,UAAC;AAAA;AAAA,YACC,OAAO,SAAS,cAAc;AAAA,YAC9B,MAAM,QAAQ,UAAU;AAAA,YACxB,SAAS,MAAO,OAAO,oBAAoB,IAAI,IAAI,KAAK,iBAAiB,EAAE,IAAI,SAAS,MAAM;AAAA,YAC9F,oBAAkB;AAAA,YAClB,eAAa;AAAA,YACb,oBAAkB;AAAA,YAElB,uDAAC,sBAAAC,qBAAA,EAAwB,UAAU,QAAQ,UAAU,UAAU;AAAA;AAAA,QACjE,GACF,GACF,IACE;AAAA;AAAA;AAAA,EACN;AAEJ;;;ADtFU,IAAAC,sBAAA;AALH,IAAM,iBAAgD,CAAC,EAAE,OAAO,GAAG,MAAM,MAAM;AACpF,SACE,6CAAC,yBAAK,WAAS,MAAE,GAAG,OACjB,iBAAO,IAAI,CAAC,MAAM,UACjB,6CAAC,yBAAK,MAAI,MAAa,IAAI,IAAI,IAAI,GAAG,IAAI,GACxC,uDAAC,cAAY,GAAG,MAAM,IAAI,EAAE,eAAe,UAAU,QAAQ,OAAO,GAAG,KADzD,KAEhB,CACD,GACH;AAEJ;","names":["import_material","import_material","import_react_shared","import_react","import_jsx_runtime","to","href","ArrowForwardRoundedIcon","import_jsx_runtime"]}
|
@@ -1,108 +0,0 @@
|
|
1
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
2
|
-
import { Grid } from "@mui/material";
|
3
|
-
|
4
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
5
|
-
import { ArrowForwardRounded as ArrowForwardRoundedIcon } from "@mui/icons-material";
|
6
|
-
import { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from "@mui/material";
|
7
|
-
import { FlexCol, FlexGrowCol } from "@xylabs/react-flexbox";
|
8
|
-
import { useIsMobile } from "@xyo-network/react-shared";
|
9
|
-
import { useState } from "react";
|
10
|
-
import { useNavigate } from "react-router-dom";
|
11
|
-
|
12
|
-
// src/components/CardEx.tsx
|
13
|
-
import { Card } from "@mui/material";
|
14
|
-
import { useGradientStyles } from "@xyo-network/react-shared";
|
15
|
-
import { forwardRef } from "react";
|
16
|
-
import { jsx } from "react/jsx-runtime";
|
17
|
-
var CardExWithRef = forwardRef(({ style, gradient, ...props }, ref) => {
|
18
|
-
const { styles } = useGradientStyles();
|
19
|
-
const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
|
20
|
-
return /* @__PURE__ */ jsx(
|
21
|
-
Card,
|
22
|
-
{
|
23
|
-
style: {
|
24
|
-
...gradientStyle,
|
25
|
-
...style
|
26
|
-
},
|
27
|
-
ref,
|
28
|
-
...props
|
29
|
-
}
|
30
|
-
);
|
31
|
-
});
|
32
|
-
CardExWithRef.displayName = "CardEx";
|
33
|
-
var CardEx = CardExWithRef;
|
34
|
-
|
35
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
36
|
-
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
37
|
-
var SimpleCard = ({
|
38
|
-
desc,
|
39
|
-
iconImage,
|
40
|
-
interactionVariant = "card",
|
41
|
-
headline,
|
42
|
-
href,
|
43
|
-
media,
|
44
|
-
small,
|
45
|
-
subtitle,
|
46
|
-
sx,
|
47
|
-
to,
|
48
|
-
...props
|
49
|
-
}) => {
|
50
|
-
const theme = useTheme();
|
51
|
-
const [raised, setRaised] = useState(false);
|
52
|
-
const navigate = useNavigate();
|
53
|
-
const isMobile = useIsMobile();
|
54
|
-
const localRouteChange = (to2) => {
|
55
|
-
to2 ? navigate(to2) : navigate("/404");
|
56
|
-
};
|
57
|
-
const externalRouteChange = (href2) => {
|
58
|
-
href2 ? window.open(href2) : navigate("/404");
|
59
|
-
};
|
60
|
-
return /* @__PURE__ */ jsxs(
|
61
|
-
CardEx,
|
62
|
-
{
|
63
|
-
elevation: raised ? 3 : 0,
|
64
|
-
sx: {
|
65
|
-
"&:hover": {
|
66
|
-
cursor: interactionVariant == "button" ? "pointer" : null
|
67
|
-
},
|
68
|
-
backgroundColor: alpha(theme.palette.primary.light, 0.05),
|
69
|
-
...sx
|
70
|
-
},
|
71
|
-
onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
|
72
|
-
onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
|
73
|
-
onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
|
74
|
-
...props,
|
75
|
-
children: [
|
76
|
-
media ? /* @__PURE__ */ jsx2(CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
|
77
|
-
/* @__PURE__ */ jsx2(CardContent, { sx: { height: "100%" }, children: /* @__PURE__ */ jsxs(FlexCol, { width: "100%", alignItems: "flex-start", children: [
|
78
|
-
iconImage ? /* @__PURE__ */ jsx2("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
|
79
|
-
typeof headline === "string" ? /* @__PURE__ */ jsx2(Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
|
80
|
-
subtitle ? /* @__PURE__ */ jsx2(Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
|
81
|
-
/* @__PURE__ */ jsx2(Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
|
82
|
-
] }) }),
|
83
|
-
interactionVariant == "button" ? /* @__PURE__ */ jsx2(CardActions, { children: /* @__PURE__ */ jsx2(FlexGrowCol, { alignItems: "flex-end", children: /* @__PURE__ */ jsx2(
|
84
|
-
IconButton,
|
85
|
-
{
|
86
|
-
color: raised ? "secondary" : "primary",
|
87
|
-
size: small ? "small" : "medium",
|
88
|
-
onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
|
89
|
-
disableFocusRipple: true,
|
90
|
-
disableRipple: true,
|
91
|
-
disableTouchRipple: true,
|
92
|
-
children: /* @__PURE__ */ jsx2(ArrowForwardRoundedIcon, { fontSize: small ? "small" : "medium" })
|
93
|
-
}
|
94
|
-
) }) }) : null
|
95
|
-
]
|
96
|
-
}
|
97
|
-
);
|
98
|
-
};
|
99
|
-
|
100
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
101
|
-
import { jsx as jsx3 } from "react/jsx-runtime";
|
102
|
-
var SimpleCardGrid = ({ cards, ...props }) => {
|
103
|
-
return /* @__PURE__ */ jsx3(Grid, { container: true, ...props, children: cards?.map((card, index) => /* @__PURE__ */ jsx3(Grid, { item: true, xs: 12, sm: 6, md: 4, children: /* @__PURE__ */ jsx3(SimpleCard, { ...card, sx: { flexDirection: "column", height: "100%" } }) }, index)) });
|
104
|
-
};
|
105
|
-
export {
|
106
|
-
SimpleCardGrid
|
107
|
-
};
|
108
|
-
//# sourceMappingURL=SimpleCardGrid.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SimpleCardGrid/SimpleCardGrid.tsx","../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["import { Grid, GridProps } from '@mui/material'\n\nimport { SimpleCard, SimpleCardProps } from '../SimpleCard'\n\nexport interface SimpleCardGridProps extends GridProps {\n cards?: SimpleCardProps[]\n}\n\nexport const SimpleCardGrid: React.FC<SimpleCardGridProps> = ({ cards, ...props }) => {\n return (\n <Grid container {...props}>\n {cards?.map((card, index) => (\n <Grid item key={index} xs={12} sm={6} md={4}>\n <SimpleCard {...card} sx={{ flexDirection: 'column', height: '100%' }} />\n </Grid>\n ))}\n </Grid>\n )\n}\n","import { ArrowForwardRounded as ArrowForwardRoundedIcon } from '@mui/icons-material'\nimport { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from '@mui/material'\nimport { FlexCol, FlexGrowCol } from '@xylabs/react-flexbox'\nimport { useIsMobile } from '@xyo-network/react-shared'\nimport { ReactNode, useState } from 'react'\nimport { To, useNavigate } from 'react-router-dom'\n\nimport { CardEx, CardExProps } from '../CardEx'\n\nexport interface SimpleCardProps extends CardExProps {\n desc?: ReactNode\n headline?: ReactNode\n href?: string\n iconImage?: string\n interactionVariant?: 'button' | 'card'\n media?: string\n small?: boolean\n subtitle?: string\n to?: To\n}\n\nexport const SimpleCard: React.FC<SimpleCardProps> = ({\n desc,\n iconImage,\n interactionVariant = 'card',\n headline,\n href,\n media,\n small,\n subtitle,\n sx,\n to,\n ...props\n}) => {\n const theme = useTheme()\n const [raised, setRaised] = useState(false)\n const navigate = useNavigate()\n const isMobile = useIsMobile()\n const localRouteChange = (to: To | undefined) => {\n to ? navigate(to) : navigate('/404')\n }\n const externalRouteChange = (href: string | undefined) => {\n href ? window.open(href) : navigate('/404')\n }\n return (\n <CardEx\n elevation={raised ? 3 : 0}\n sx={{\n '&:hover': {\n cursor: interactionVariant == 'button' ? 'pointer' : null,\n },\n backgroundColor: alpha(theme.palette.primary.light, 0.05),\n ...sx,\n }}\n onMouseEnter={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(true) : null)}\n onMouseLeave={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(false) : null)}\n onClick={() => (interactionVariant == 'button' ? (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404')) : null)}\n {...props}\n >\n {media ? <CardMedia component=\"img\" height=\"100\" image={media} alt=\"\" /> : null}\n\n <CardContent sx={{ height: '100%' }}>\n <FlexCol width=\"100%\" alignItems=\"flex-start\">\n {iconImage ? <img src={iconImage} height=\"40px\" style={{ paddingBottom: '8px' }} /> : null}\n {typeof headline === 'string' ? (\n <Typography variant={small ? 'body1' : 'h6'} textAlign=\"left\" gutterBottom>\n {headline}\n </Typography>\n ) : (\n headline\n )}\n {subtitle ? (\n <Typography variant=\"subtitle2\" textAlign=\"left\" gutterBottom>\n {subtitle}\n </Typography>\n ) : null}\n <Typography variant={small ? 'caption' : 'body1'} textAlign=\"left\" gutterBottom>\n {desc}\n </Typography>\n </FlexCol>\n </CardContent>\n {interactionVariant == 'button' ? (\n <CardActions>\n <FlexGrowCol alignItems=\"flex-end\">\n <IconButton\n color={raised ? 'secondary' : 'primary'}\n size={small ? 'small' : 'medium'}\n onClick={() => (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404'))}\n disableFocusRipple\n disableRipple\n disableTouchRipple\n >\n <ArrowForwardRoundedIcon fontSize={small ? 'small' : 'medium'} />\n </IconButton>\n </FlexGrowCol>\n </CardActions>\n ) : null}\n </CardEx>\n )\n}\n","import { Card, CardProps } from '@mui/material'\nimport { useGradientStyles } from '@xyo-network/react-shared'\nimport { forwardRef } from 'react'\n\nexport type CardExProps = CardProps & {\n gradient?: 'border' | 'background'\n}\n\nexport const CardExWithRef: React.FC<CardExProps> = forwardRef(({ style, gradient, ...props }, ref) => {\n const { styles } = useGradientStyles()\n const gradientStyle = gradient === 'border' ? styles.border : gradient === 'background' ? styles.background : {}\n return (\n <Card\n style={{\n ...gradientStyle,\n ...style,\n }}\n ref={ref}\n {...props}\n />\n )\n})\n\nCardExWithRef.displayName = 'CardEx'\n\nexport const CardEx = CardExWithRef\n"],"mappings":"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","names":["jsx","to","href","jsx"]}
|
@@ -1 +0,0 @@
|
|
1
|
-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><style>.cls-1{fill:#005cfe;}.cls-2{fill:#fdfdfe;}</style></defs><g id="Layer_6" data-name="Layer 6"><g id="JuvZVa"><path class="cls-1" d="M0,50C0,40.77-.1,31.58.07,22.4.22,14.9,3,8.55,9.32,4.09A22.35,22.35,0,0,1,20.3.25,56.53,56.53,0,0,1,26.12,0C42.74,0,59.37,0,76,0c5.17,0,10.15.92,14.5,4A21.42,21.42,0,0,1,99.75,20.1,55.89,55.89,0,0,1,100,26c0,17.13.11,34.26-.08,51.38-.1,8.93-3.88,16-12.11,20.15A25.49,25.49,0,0,1,76.15,100Q50,100,23.83,100c-5.37,0-10.52-1.06-14.95-4.39A21.57,21.57,0,0,1,.21,79.72,59,59,0,0,1,0,73.78Q0,61.87,0,50Zm50-35a35.07,35.07,0,1,0,35,35.13A35,35,0,0,0,50,14.92Z"/><path class="cls-2" d="M50,14.92a35.07,35.07,0,1,1-35.11,35A35,35,0,0,1,50,14.92ZM38.7,50c0,2.92,0,5.83,0,8.75a2.26,2.26,0,0,0,2.52,2.53q8.74,0,17.5,0c1.73,0,2.56-.85,2.56-2.6q0-8.68,0-17.38a2.27,2.27,0,0,0-2.57-2.59q-8.7,0-17.39,0c-1.8,0-2.61.84-2.62,2.66C38.69,44.25,38.7,47.12,38.7,50Z"/><path class="cls-1" d="M38.7,50c0-2.88,0-5.75,0-8.63,0-1.82.82-2.66,2.62-2.66q8.7,0,17.39,0a2.27,2.27,0,0,1,2.57,2.59q0,8.69,0,17.38c0,1.75-.83,2.6-2.56,2.6q-8.76,0-17.5,0a2.26,2.26,0,0,1-2.52-2.53C38.68,55.83,38.7,52.92,38.7,50Z"/></g></g></svg>
|
@@ -1,131 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __defProp = Object.defineProperty;
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
5
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
6
|
-
var __export = (target, all) => {
|
7
|
-
for (var name in all)
|
8
|
-
__defProp(target, name, { get: all[name], enumerable: true });
|
9
|
-
};
|
10
|
-
var __copyProps = (to, from, except, desc) => {
|
11
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
12
|
-
for (let key of __getOwnPropNames(from))
|
13
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
14
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
15
|
-
}
|
16
|
-
return to;
|
17
|
-
};
|
18
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
19
|
-
|
20
|
-
// src/components/SimpleCardGrid/index.ts
|
21
|
-
var SimpleCardGrid_exports = {};
|
22
|
-
__export(SimpleCardGrid_exports, {
|
23
|
-
SimpleCardGrid: () => SimpleCardGrid
|
24
|
-
});
|
25
|
-
module.exports = __toCommonJS(SimpleCardGrid_exports);
|
26
|
-
|
27
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
28
|
-
var import_material3 = require("@mui/material");
|
29
|
-
|
30
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
31
|
-
var import_icons_material = require("@mui/icons-material");
|
32
|
-
var import_material2 = require("@mui/material");
|
33
|
-
var import_react_flexbox = require("@xylabs/react-flexbox");
|
34
|
-
var import_react_shared2 = require("@xyo-network/react-shared");
|
35
|
-
var import_react2 = require("react");
|
36
|
-
var import_react_router_dom = require("react-router-dom");
|
37
|
-
|
38
|
-
// src/components/CardEx.tsx
|
39
|
-
var import_material = require("@mui/material");
|
40
|
-
var import_react_shared = require("@xyo-network/react-shared");
|
41
|
-
var import_react = require("react");
|
42
|
-
var import_jsx_runtime = require("react/jsx-runtime");
|
43
|
-
var CardExWithRef = (0, import_react.forwardRef)(({ style, gradient, ...props }, ref) => {
|
44
|
-
const { styles } = (0, import_react_shared.useGradientStyles)();
|
45
|
-
const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
|
46
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
47
|
-
import_material.Card,
|
48
|
-
{
|
49
|
-
style: {
|
50
|
-
...gradientStyle,
|
51
|
-
...style
|
52
|
-
},
|
53
|
-
ref,
|
54
|
-
...props
|
55
|
-
}
|
56
|
-
);
|
57
|
-
});
|
58
|
-
CardExWithRef.displayName = "CardEx";
|
59
|
-
var CardEx = CardExWithRef;
|
60
|
-
|
61
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
62
|
-
var import_jsx_runtime2 = require("react/jsx-runtime");
|
63
|
-
var SimpleCard = ({
|
64
|
-
desc,
|
65
|
-
iconImage,
|
66
|
-
interactionVariant = "card",
|
67
|
-
headline,
|
68
|
-
href,
|
69
|
-
media,
|
70
|
-
small,
|
71
|
-
subtitle,
|
72
|
-
sx,
|
73
|
-
to,
|
74
|
-
...props
|
75
|
-
}) => {
|
76
|
-
const theme = (0, import_material2.useTheme)();
|
77
|
-
const [raised, setRaised] = (0, import_react2.useState)(false);
|
78
|
-
const navigate = (0, import_react_router_dom.useNavigate)();
|
79
|
-
const isMobile = (0, import_react_shared2.useIsMobile)();
|
80
|
-
const localRouteChange = (to2) => {
|
81
|
-
to2 ? navigate(to2) : navigate("/404");
|
82
|
-
};
|
83
|
-
const externalRouteChange = (href2) => {
|
84
|
-
href2 ? window.open(href2) : navigate("/404");
|
85
|
-
};
|
86
|
-
return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
|
87
|
-
CardEx,
|
88
|
-
{
|
89
|
-
elevation: raised ? 3 : 0,
|
90
|
-
sx: {
|
91
|
-
"&:hover": {
|
92
|
-
cursor: interactionVariant == "button" ? "pointer" : null
|
93
|
-
},
|
94
|
-
backgroundColor: (0, import_material2.alpha)(theme.palette.primary.light, 0.05),
|
95
|
-
...sx
|
96
|
-
},
|
97
|
-
onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
|
98
|
-
onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
|
99
|
-
onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
|
100
|
-
...props,
|
101
|
-
children: [
|
102
|
-
media ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
|
103
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardContent, { sx: { height: "100%" }, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_react_flexbox.FlexCol, { width: "100%", alignItems: "flex-start", children: [
|
104
|
-
iconImage ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
|
105
|
-
typeof headline === "string" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
|
106
|
-
subtitle ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
|
107
|
-
/* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
|
108
|
-
] }) }),
|
109
|
-
interactionVariant == "button" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardActions, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react_flexbox.FlexGrowCol, { alignItems: "flex-end", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
|
110
|
-
import_material2.IconButton,
|
111
|
-
{
|
112
|
-
color: raised ? "secondary" : "primary",
|
113
|
-
size: small ? "small" : "medium",
|
114
|
-
onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
|
115
|
-
disableFocusRipple: true,
|
116
|
-
disableRipple: true,
|
117
|
-
disableTouchRipple: true,
|
118
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowForwardRounded, { fontSize: small ? "small" : "medium" })
|
119
|
-
}
|
120
|
-
) }) }) : null
|
121
|
-
]
|
122
|
-
}
|
123
|
-
);
|
124
|
-
};
|
125
|
-
|
126
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
127
|
-
var import_jsx_runtime3 = require("react/jsx-runtime");
|
128
|
-
var SimpleCardGrid = ({ cards, ...props }) => {
|
129
|
-
return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Grid, { container: true, ...props, children: cards?.map((card, index) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_material3.Grid, { item: true, xs: 12, sm: 6, md: 4, children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(SimpleCard, { ...card, sx: { flexDirection: "column", height: "100%" } }) }, index)) });
|
130
|
-
};
|
131
|
-
//# sourceMappingURL=index.cjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SimpleCardGrid/index.ts","../../../../src/components/SimpleCardGrid/SimpleCardGrid.tsx","../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["export * from './SimpleCardGrid'\n","import { Grid, GridProps } from '@mui/material'\n\nimport { SimpleCard, SimpleCardProps } from '../SimpleCard'\n\nexport interface SimpleCardGridProps extends GridProps {\n cards?: SimpleCardProps[]\n}\n\nexport const SimpleCardGrid: React.FC<SimpleCardGridProps> = ({ cards, ...props }) => {\n return (\n <Grid container {...props}>\n {cards?.map((card, index) => (\n <Grid item key={index} xs={12} sm={6} md={4}>\n <SimpleCard {...card} sx={{ flexDirection: 'column', height: '100%' }} />\n </Grid>\n ))}\n </Grid>\n )\n}\n","import { ArrowForwardRounded as ArrowForwardRoundedIcon } from '@mui/icons-material'\nimport { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from '@mui/material'\nimport { FlexCol, FlexGrowCol } from '@xylabs/react-flexbox'\nimport { useIsMobile } from '@xyo-network/react-shared'\nimport { ReactNode, useState } from 'react'\nimport { To, useNavigate } from 'react-router-dom'\n\nimport { CardEx, CardExProps } from '../CardEx'\n\nexport interface SimpleCardProps extends CardExProps {\n desc?: ReactNode\n headline?: ReactNode\n href?: string\n iconImage?: string\n interactionVariant?: 'button' | 'card'\n media?: string\n small?: boolean\n subtitle?: string\n to?: To\n}\n\nexport const SimpleCard: React.FC<SimpleCardProps> = ({\n desc,\n iconImage,\n interactionVariant = 'card',\n headline,\n href,\n media,\n small,\n subtitle,\n sx,\n to,\n ...props\n}) => {\n const theme = useTheme()\n const [raised, setRaised] = useState(false)\n const navigate = useNavigate()\n const isMobile = useIsMobile()\n const localRouteChange = (to: To | undefined) => {\n to ? navigate(to) : navigate('/404')\n }\n const externalRouteChange = (href: string | undefined) => {\n href ? window.open(href) : navigate('/404')\n }\n return (\n <CardEx\n elevation={raised ? 3 : 0}\n sx={{\n '&:hover': {\n cursor: interactionVariant == 'button' ? 'pointer' : null,\n },\n backgroundColor: alpha(theme.palette.primary.light, 0.05),\n ...sx,\n }}\n onMouseEnter={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(true) : null)}\n onMouseLeave={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(false) : null)}\n onClick={() => (interactionVariant == 'button' ? (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404')) : null)}\n {...props}\n >\n {media ? <CardMedia component=\"img\" height=\"100\" image={media} alt=\"\" /> : null}\n\n <CardContent sx={{ height: '100%' }}>\n <FlexCol width=\"100%\" alignItems=\"flex-start\">\n {iconImage ? <img src={iconImage} height=\"40px\" style={{ paddingBottom: '8px' }} /> : null}\n {typeof headline === 'string' ? (\n <Typography variant={small ? 'body1' : 'h6'} textAlign=\"left\" gutterBottom>\n {headline}\n </Typography>\n ) : (\n headline\n )}\n {subtitle ? (\n <Typography variant=\"subtitle2\" textAlign=\"left\" gutterBottom>\n {subtitle}\n </Typography>\n ) : null}\n <Typography variant={small ? 'caption' : 'body1'} textAlign=\"left\" gutterBottom>\n {desc}\n </Typography>\n </FlexCol>\n </CardContent>\n {interactionVariant == 'button' ? (\n <CardActions>\n <FlexGrowCol alignItems=\"flex-end\">\n <IconButton\n color={raised ? 'secondary' : 'primary'}\n size={small ? 'small' : 'medium'}\n onClick={() => (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404'))}\n disableFocusRipple\n disableRipple\n disableTouchRipple\n >\n <ArrowForwardRoundedIcon fontSize={small ? 'small' : 'medium'} />\n </IconButton>\n </FlexGrowCol>\n </CardActions>\n ) : null}\n </CardEx>\n )\n}\n","import { Card, CardProps } from '@mui/material'\nimport { useGradientStyles } from '@xyo-network/react-shared'\nimport { forwardRef } from 'react'\n\nexport type CardExProps = CardProps & {\n gradient?: 'border' | 'background'\n}\n\nexport const CardExWithRef: React.FC<CardExProps> = forwardRef(({ style, gradient, ...props }, ref) => {\n const { styles } = useGradientStyles()\n const gradientStyle = gradient === 'border' ? styles.border : gradient === 'background' ? styles.background : {}\n return (\n <Card\n style={{\n ...gradientStyle,\n ...style,\n }}\n ref={ref}\n {...props}\n />\n )\n})\n\nCardExWithRef.displayName = 'CardEx'\n\nexport const CardEx = CardExWithRef\n"],"mappings":"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","names":["import_material","import_material","import_react_shared","import_react","import_jsx_runtime","to","href","ArrowForwardRoundedIcon","import_jsx_runtime"]}
|
@@ -1,108 +0,0 @@
|
|
1
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
2
|
-
import { Grid } from "@mui/material";
|
3
|
-
|
4
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
5
|
-
import { ArrowForwardRounded as ArrowForwardRoundedIcon } from "@mui/icons-material";
|
6
|
-
import { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from "@mui/material";
|
7
|
-
import { FlexCol, FlexGrowCol } from "@xylabs/react-flexbox";
|
8
|
-
import { useIsMobile } from "@xyo-network/react-shared";
|
9
|
-
import { useState } from "react";
|
10
|
-
import { useNavigate } from "react-router-dom";
|
11
|
-
|
12
|
-
// src/components/CardEx.tsx
|
13
|
-
import { Card } from "@mui/material";
|
14
|
-
import { useGradientStyles } from "@xyo-network/react-shared";
|
15
|
-
import { forwardRef } from "react";
|
16
|
-
import { jsx } from "react/jsx-runtime";
|
17
|
-
var CardExWithRef = forwardRef(({ style, gradient, ...props }, ref) => {
|
18
|
-
const { styles } = useGradientStyles();
|
19
|
-
const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
|
20
|
-
return /* @__PURE__ */ jsx(
|
21
|
-
Card,
|
22
|
-
{
|
23
|
-
style: {
|
24
|
-
...gradientStyle,
|
25
|
-
...style
|
26
|
-
},
|
27
|
-
ref,
|
28
|
-
...props
|
29
|
-
}
|
30
|
-
);
|
31
|
-
});
|
32
|
-
CardExWithRef.displayName = "CardEx";
|
33
|
-
var CardEx = CardExWithRef;
|
34
|
-
|
35
|
-
// src/components/SimpleCard/SimpleCard.tsx
|
36
|
-
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
37
|
-
var SimpleCard = ({
|
38
|
-
desc,
|
39
|
-
iconImage,
|
40
|
-
interactionVariant = "card",
|
41
|
-
headline,
|
42
|
-
href,
|
43
|
-
media,
|
44
|
-
small,
|
45
|
-
subtitle,
|
46
|
-
sx,
|
47
|
-
to,
|
48
|
-
...props
|
49
|
-
}) => {
|
50
|
-
const theme = useTheme();
|
51
|
-
const [raised, setRaised] = useState(false);
|
52
|
-
const navigate = useNavigate();
|
53
|
-
const isMobile = useIsMobile();
|
54
|
-
const localRouteChange = (to2) => {
|
55
|
-
to2 ? navigate(to2) : navigate("/404");
|
56
|
-
};
|
57
|
-
const externalRouteChange = (href2) => {
|
58
|
-
href2 ? window.open(href2) : navigate("/404");
|
59
|
-
};
|
60
|
-
return /* @__PURE__ */ jsxs(
|
61
|
-
CardEx,
|
62
|
-
{
|
63
|
-
elevation: raised ? 3 : 0,
|
64
|
-
sx: {
|
65
|
-
"&:hover": {
|
66
|
-
cursor: interactionVariant == "button" ? "pointer" : null
|
67
|
-
},
|
68
|
-
backgroundColor: alpha(theme.palette.primary.light, 0.05),
|
69
|
-
...sx
|
70
|
-
},
|
71
|
-
onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
|
72
|
-
onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
|
73
|
-
onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
|
74
|
-
...props,
|
75
|
-
children: [
|
76
|
-
media ? /* @__PURE__ */ jsx2(CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
|
77
|
-
/* @__PURE__ */ jsx2(CardContent, { sx: { height: "100%" }, children: /* @__PURE__ */ jsxs(FlexCol, { width: "100%", alignItems: "flex-start", children: [
|
78
|
-
iconImage ? /* @__PURE__ */ jsx2("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
|
79
|
-
typeof headline === "string" ? /* @__PURE__ */ jsx2(Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
|
80
|
-
subtitle ? /* @__PURE__ */ jsx2(Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
|
81
|
-
/* @__PURE__ */ jsx2(Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
|
82
|
-
] }) }),
|
83
|
-
interactionVariant == "button" ? /* @__PURE__ */ jsx2(CardActions, { children: /* @__PURE__ */ jsx2(FlexGrowCol, { alignItems: "flex-end", children: /* @__PURE__ */ jsx2(
|
84
|
-
IconButton,
|
85
|
-
{
|
86
|
-
color: raised ? "secondary" : "primary",
|
87
|
-
size: small ? "small" : "medium",
|
88
|
-
onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
|
89
|
-
disableFocusRipple: true,
|
90
|
-
disableRipple: true,
|
91
|
-
disableTouchRipple: true,
|
92
|
-
children: /* @__PURE__ */ jsx2(ArrowForwardRoundedIcon, { fontSize: small ? "small" : "medium" })
|
93
|
-
}
|
94
|
-
) }) }) : null
|
95
|
-
]
|
96
|
-
}
|
97
|
-
);
|
98
|
-
};
|
99
|
-
|
100
|
-
// src/components/SimpleCardGrid/SimpleCardGrid.tsx
|
101
|
-
import { jsx as jsx3 } from "react/jsx-runtime";
|
102
|
-
var SimpleCardGrid = ({ cards, ...props }) => {
|
103
|
-
return /* @__PURE__ */ jsx3(Grid, { container: true, ...props, children: cards?.map((card, index) => /* @__PURE__ */ jsx3(Grid, { item: true, xs: 12, sm: 6, md: 4, children: /* @__PURE__ */ jsx3(SimpleCard, { ...card, sx: { flexDirection: "column", height: "100%" } }) }, index)) });
|
104
|
-
};
|
105
|
-
export {
|
106
|
-
SimpleCardGrid
|
107
|
-
};
|
108
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/SimpleCardGrid/SimpleCardGrid.tsx","../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["import { Grid, GridProps } from '@mui/material'\n\nimport { SimpleCard, SimpleCardProps } from '../SimpleCard'\n\nexport interface SimpleCardGridProps extends GridProps {\n cards?: SimpleCardProps[]\n}\n\nexport const SimpleCardGrid: React.FC<SimpleCardGridProps> = ({ cards, ...props }) => {\n return (\n <Grid container {...props}>\n {cards?.map((card, index) => (\n <Grid item key={index} xs={12} sm={6} md={4}>\n <SimpleCard {...card} sx={{ flexDirection: 'column', height: '100%' }} />\n </Grid>\n ))}\n </Grid>\n )\n}\n","import { ArrowForwardRounded as ArrowForwardRoundedIcon } from '@mui/icons-material'\nimport { alpha, CardActions, CardContent, CardMedia, IconButton, Typography, useTheme } from '@mui/material'\nimport { FlexCol, FlexGrowCol } from '@xylabs/react-flexbox'\nimport { useIsMobile } from '@xyo-network/react-shared'\nimport { ReactNode, useState } from 'react'\nimport { To, useNavigate } from 'react-router-dom'\n\nimport { CardEx, CardExProps } from '../CardEx'\n\nexport interface SimpleCardProps extends CardExProps {\n desc?: ReactNode\n headline?: ReactNode\n href?: string\n iconImage?: string\n interactionVariant?: 'button' | 'card'\n media?: string\n small?: boolean\n subtitle?: string\n to?: To\n}\n\nexport const SimpleCard: React.FC<SimpleCardProps> = ({\n desc,\n iconImage,\n interactionVariant = 'card',\n headline,\n href,\n media,\n small,\n subtitle,\n sx,\n to,\n ...props\n}) => {\n const theme = useTheme()\n const [raised, setRaised] = useState(false)\n const navigate = useNavigate()\n const isMobile = useIsMobile()\n const localRouteChange = (to: To | undefined) => {\n to ? navigate(to) : navigate('/404')\n }\n const externalRouteChange = (href: string | undefined) => {\n href ? window.open(href) : navigate('/404')\n }\n return (\n <CardEx\n elevation={raised ? 3 : 0}\n sx={{\n '&:hover': {\n cursor: interactionVariant == 'button' ? 'pointer' : null,\n },\n backgroundColor: alpha(theme.palette.primary.light, 0.05),\n ...sx,\n }}\n onMouseEnter={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(true) : null)}\n onMouseLeave={() => (isMobile ? null : interactionVariant == 'button' ? setRaised(false) : null)}\n onClick={() => (interactionVariant == 'button' ? (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404')) : null)}\n {...props}\n >\n {media ? <CardMedia component=\"img\" height=\"100\" image={media} alt=\"\" /> : null}\n\n <CardContent sx={{ height: '100%' }}>\n <FlexCol width=\"100%\" alignItems=\"flex-start\">\n {iconImage ? <img src={iconImage} height=\"40px\" style={{ paddingBottom: '8px' }} /> : null}\n {typeof headline === 'string' ? (\n <Typography variant={small ? 'body1' : 'h6'} textAlign=\"left\" gutterBottom>\n {headline}\n </Typography>\n ) : (\n headline\n )}\n {subtitle ? (\n <Typography variant=\"subtitle2\" textAlign=\"left\" gutterBottom>\n {subtitle}\n </Typography>\n ) : null}\n <Typography variant={small ? 'caption' : 'body1'} textAlign=\"left\" gutterBottom>\n {desc}\n </Typography>\n </FlexCol>\n </CardContent>\n {interactionVariant == 'button' ? (\n <CardActions>\n <FlexGrowCol alignItems=\"flex-end\">\n <IconButton\n color={raised ? 'secondary' : 'primary'}\n size={small ? 'small' : 'medium'}\n onClick={() => (href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate('/404'))}\n disableFocusRipple\n disableRipple\n disableTouchRipple\n >\n <ArrowForwardRoundedIcon fontSize={small ? 'small' : 'medium'} />\n </IconButton>\n </FlexGrowCol>\n </CardActions>\n ) : null}\n </CardEx>\n )\n}\n","import { Card, CardProps } from '@mui/material'\nimport { useGradientStyles } from '@xyo-network/react-shared'\nimport { forwardRef } from 'react'\n\nexport type CardExProps = CardProps & {\n gradient?: 'border' | 'background'\n}\n\nexport const CardExWithRef: React.FC<CardExProps> = forwardRef(({ style, gradient, ...props }, ref) => {\n const { styles } = useGradientStyles()\n const gradientStyle = gradient === 'border' ? styles.border : gradient === 'background' ? styles.background : {}\n return (\n <Card\n style={{\n ...gradientStyle,\n ...style,\n }}\n ref={ref}\n {...props}\n />\n )\n})\n\nCardExWithRef.displayName = 'CardEx'\n\nexport const CardEx = CardExWithRef\n"],"mappings":"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","names":["jsx","to","href","jsx"]}
|
Binary file
|