@xyo-network/react-card 2.64.0-rc.6 → 2.64.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.
Files changed (167) hide show
  1. package/dist/browser/components/CardContentEx.cjs +56 -0
  2. package/dist/{node/components/CardContentEx.mjs.map → browser/components/CardContentEx.cjs.map} +1 -1
  3. package/dist/browser/components/CardContentEx.d.cts +11 -0
  4. package/dist/browser/components/CardContentEx.d.cts.map +1 -0
  5. package/dist/browser/components/CardEx.cjs +48 -0
  6. package/dist/{node/components/CardEx.mjs.map → browser/components/CardEx.cjs.map} +1 -1
  7. package/dist/browser/components/CardEx.d.cts +8 -0
  8. package/dist/browser/components/CardEx.d.cts.map +1 -0
  9. package/dist/browser/components/FullWidthCard/FullWidthCard.cjs +93 -0
  10. package/dist/{node/components/FullWidthCard/FullWidthCard.mjs.map → browser/components/FullWidthCard/FullWidthCard.cjs.map} +1 -1
  11. package/dist/browser/components/FullWidthCard/FullWidthCard.d.cts +15 -0
  12. package/dist/browser/components/FullWidthCard/FullWidthCard.d.cts.map +1 -0
  13. package/dist/browser/components/FullWidthCard/index.cjs +95 -0
  14. package/dist/browser/components/FullWidthCard/index.cjs.map +1 -0
  15. package/dist/browser/components/FullWidthCard/index.d.cts +2 -0
  16. package/dist/browser/components/FullWidthCard/index.d.cts.map +1 -0
  17. package/dist/browser/components/PageCard.cjs +71 -0
  18. package/dist/browser/components/PageCard.cjs.map +1 -0
  19. package/dist/browser/components/PageCard.d.cts +10 -0
  20. package/dist/browser/components/PageCard.d.cts.map +1 -0
  21. package/dist/browser/components/SimpleCard/SimpleCard.cjs +120 -0
  22. package/dist/browser/components/SimpleCard/SimpleCard.cjs.map +1 -0
  23. package/dist/browser/components/SimpleCard/SimpleCard.d.cts +16 -0
  24. package/dist/browser/components/SimpleCard/SimpleCard.d.cts.map +1 -0
  25. package/dist/browser/components/SimpleCard/index.cjs +122 -0
  26. package/dist/browser/components/SimpleCard/index.cjs.map +1 -0
  27. package/dist/browser/components/SimpleCard/index.d.cts +2 -0
  28. package/dist/browser/components/SimpleCard/index.d.cts.map +1 -0
  29. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.cjs +129 -0
  30. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.cjs.map +1 -0
  31. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.d.cts +8 -0
  32. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.d.cts.map +1 -0
  33. package/dist/browser/components/SimpleCardGrid/index.cjs +131 -0
  34. package/dist/browser/components/SimpleCardGrid/index.cjs.map +1 -0
  35. package/dist/browser/components/SimpleCardGrid/index.d.cts +2 -0
  36. package/dist/browser/components/SimpleCardGrid/index.d.cts.map +1 -0
  37. package/dist/browser/components/index.cjs +248 -0
  38. package/dist/browser/components/index.cjs.map +1 -0
  39. package/dist/browser/components/index.d.cts +6 -0
  40. package/dist/browser/components/index.d.cts.map +1 -0
  41. package/dist/browser/index.cjs +248 -0
  42. package/dist/browser/index.cjs.map +1 -0
  43. package/dist/browser/index.d.cts +2 -0
  44. package/dist/browser/index.d.cts.map +1 -0
  45. package/dist/browser/types/images.d.cjs +2 -0
  46. package/dist/docs.json +1998 -0
  47. package/dist/node/components/CardContentEx.cjs +62 -0
  48. package/dist/node/components/CardContentEx.cjs.map +1 -0
  49. package/dist/node/components/CardContentEx.d.cts +11 -0
  50. package/dist/node/components/CardContentEx.d.cts.map +1 -0
  51. package/dist/node/components/CardContentEx.js +15 -38
  52. package/dist/node/components/CardContentEx.js.map +1 -1
  53. package/dist/node/components/CardEx.cjs +53 -0
  54. package/dist/node/components/CardEx.cjs.map +1 -0
  55. package/dist/node/components/CardEx.d.cts +8 -0
  56. package/dist/node/components/CardEx.d.cts.map +1 -0
  57. package/dist/node/components/CardEx.js +12 -36
  58. package/dist/node/components/CardEx.js.map +1 -1
  59. package/dist/node/components/FullWidthCard/FullWidthCard.cjs +97 -0
  60. package/dist/node/components/FullWidthCard/FullWidthCard.cjs.map +1 -0
  61. package/dist/node/components/FullWidthCard/FullWidthCard.d.cts +15 -0
  62. package/dist/node/components/FullWidthCard/FullWidthCard.d.cts.map +1 -0
  63. package/dist/node/components/FullWidthCard/FullWidthCard.js +28 -51
  64. package/dist/node/components/FullWidthCard/FullWidthCard.js.map +1 -1
  65. package/dist/node/components/FullWidthCard/index.cjs +99 -0
  66. package/dist/node/components/FullWidthCard/index.cjs.map +1 -0
  67. package/dist/node/components/FullWidthCard/index.d.cts +2 -0
  68. package/dist/node/components/FullWidthCard/index.d.cts.map +1 -0
  69. package/dist/node/components/FullWidthCard/index.js +70 -21
  70. package/dist/node/components/FullWidthCard/index.js.map +1 -1
  71. package/dist/node/components/PageCard.cjs +75 -0
  72. package/dist/node/components/PageCard.cjs.map +1 -0
  73. package/dist/node/components/PageCard.d.cts +10 -0
  74. package/dist/node/components/PageCard.d.cts.map +1 -0
  75. package/dist/node/components/PageCard.js +40 -39
  76. package/dist/node/components/PageCard.js.map +1 -1
  77. package/dist/node/components/SimpleCard/SimpleCard.cjs +124 -0
  78. package/dist/node/components/SimpleCard/SimpleCard.cjs.map +1 -0
  79. package/dist/node/components/SimpleCard/SimpleCard.d.cts +16 -0
  80. package/dist/node/components/SimpleCard/SimpleCard.d.cts.map +1 -0
  81. package/dist/node/components/SimpleCard/SimpleCard.js +51 -50
  82. package/dist/node/components/SimpleCard/SimpleCard.js.map +1 -1
  83. package/dist/node/components/SimpleCard/index.cjs +126 -0
  84. package/dist/node/components/SimpleCard/index.cjs.map +1 -0
  85. package/dist/node/components/SimpleCard/index.d.cts +2 -0
  86. package/dist/node/components/SimpleCard/index.d.cts.map +1 -0
  87. package/dist/node/components/SimpleCard/index.js +97 -21
  88. package/dist/node/components/SimpleCard/index.js.map +1 -1
  89. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.cjs +133 -0
  90. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.cjs.map +1 -0
  91. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.d.cts +8 -0
  92. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.d.cts.map +1 -0
  93. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.js +104 -30
  94. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.js.map +1 -1
  95. package/dist/node/components/SimpleCardGrid/index.cjs +135 -0
  96. package/dist/node/components/SimpleCardGrid/index.cjs.map +1 -0
  97. package/dist/node/components/SimpleCardGrid/index.d.cts +2 -0
  98. package/dist/node/components/SimpleCardGrid/index.d.cts.map +1 -0
  99. package/dist/node/components/SimpleCardGrid/index.js +106 -21
  100. package/dist/node/components/SimpleCardGrid/index.js.map +1 -1
  101. package/dist/node/components/index.cjs +259 -0
  102. package/dist/node/components/index.cjs.map +1 -0
  103. package/dist/node/components/index.d.cts +6 -0
  104. package/dist/node/components/index.d.cts.map +1 -0
  105. package/dist/node/components/index.js +222 -27
  106. package/dist/node/components/index.js.map +1 -1
  107. package/dist/node/index.cjs +259 -0
  108. package/dist/node/index.cjs.map +1 -0
  109. package/dist/node/index.d.cts +2 -0
  110. package/dist/node/index.d.cts.map +1 -0
  111. package/dist/node/index.js +222 -19
  112. package/dist/node/index.js.map +1 -1
  113. package/dist/node/types/images.d.cjs +2 -0
  114. package/dist/node/types/images.d.cjs.map +1 -0
  115. package/dist/node/types/images.d.js +0 -1
  116. package/package.json +16 -16
  117. package/dist/browser/components/CardContentEx.stories.js +0 -51
  118. package/dist/browser/components/CardContentEx.stories.js.map +0 -1
  119. package/dist/browser/components/FullWidthCard/FullWidthCard.stories.js +0 -27
  120. package/dist/browser/components/FullWidthCard/FullWidthCard.stories.js.map +0 -1
  121. package/dist/browser/components/PageCard.stories.js +0 -54
  122. package/dist/browser/components/PageCard.stories.js.map +0 -1
  123. package/dist/browser/components/SimpleCard/SimpleCard.stories.js +0 -76
  124. package/dist/browser/components/SimpleCard/SimpleCard.stories.js.map +0 -1
  125. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.stories.js +0 -68
  126. package/dist/browser/components/SimpleCardGrid/SimpleCardGrid.stories.js.map +0 -1
  127. package/dist/node/components/CardContentEx.mjs +0 -34
  128. package/dist/node/components/CardContentEx.stories.js +0 -77
  129. package/dist/node/components/CardContentEx.stories.js.map +0 -1
  130. package/dist/node/components/CardContentEx.stories.mjs +0 -51
  131. package/dist/node/components/CardContentEx.stories.mjs.map +0 -1
  132. package/dist/node/components/CardEx.mjs +0 -26
  133. package/dist/node/components/FullWidthCard/FullWidthCard.mjs +0 -71
  134. package/dist/node/components/FullWidthCard/FullWidthCard.stories.js +0 -51
  135. package/dist/node/components/FullWidthCard/FullWidthCard.stories.js.map +0 -1
  136. package/dist/node/components/FullWidthCard/FullWidthCard.stories.mjs +0 -27
  137. package/dist/node/components/FullWidthCard/FullWidthCard.stories.mjs.map +0 -1
  138. package/dist/node/components/FullWidthCard/index.mjs +0 -2
  139. package/dist/node/components/FullWidthCard/index.mjs.map +0 -1
  140. package/dist/node/components/PageCard.mjs +0 -25
  141. package/dist/node/components/PageCard.mjs.map +0 -1
  142. package/dist/node/components/PageCard.stories.js +0 -80
  143. package/dist/node/components/PageCard.stories.js.map +0 -1
  144. package/dist/node/components/PageCard.stories.mjs +0 -54
  145. package/dist/node/components/PageCard.stories.mjs.map +0 -1
  146. package/dist/node/components/SimpleCard/SimpleCard.mjs +0 -74
  147. package/dist/node/components/SimpleCard/SimpleCard.mjs.map +0 -1
  148. package/dist/node/components/SimpleCard/SimpleCard.stories.js +0 -115
  149. package/dist/node/components/SimpleCard/SimpleCard.stories.js.map +0 -1
  150. package/dist/node/components/SimpleCard/SimpleCard.stories.mjs +0 -76
  151. package/dist/node/components/SimpleCard/SimpleCard.stories.mjs.map +0 -1
  152. package/dist/node/components/SimpleCard/index.mjs +0 -2
  153. package/dist/node/components/SimpleCard/index.mjs.map +0 -1
  154. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.mjs +0 -10
  155. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.mjs.map +0 -1
  156. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.stories.js +0 -102
  157. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.stories.js.map +0 -1
  158. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.stories.mjs +0 -68
  159. package/dist/node/components/SimpleCardGrid/SimpleCardGrid.stories.mjs.map +0 -1
  160. package/dist/node/components/SimpleCardGrid/index.mjs +0 -2
  161. package/dist/node/components/SimpleCardGrid/index.mjs.map +0 -1
  162. package/dist/node/components/index.mjs +0 -6
  163. package/dist/node/components/index.mjs.map +0 -1
  164. package/dist/node/index.mjs +0 -2
  165. package/dist/node/index.mjs.map +0 -1
  166. package/dist/node/types/images.d.mjs +0 -1
  167. /package/dist/{node/types/images.d.mjs.map → browser/types/images.d.cjs.map} +0 -0
@@ -0,0 +1,120 @@
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/SimpleCard/SimpleCard.tsx
21
+ var SimpleCard_exports = {};
22
+ __export(SimpleCard_exports, {
23
+ SimpleCard: () => SimpleCard
24
+ });
25
+ module.exports = __toCommonJS(SimpleCard_exports);
26
+ var import_icons_material = require("@mui/icons-material");
27
+ var import_material2 = require("@mui/material");
28
+ var import_react_flexbox = require("@xylabs/react-flexbox");
29
+ var import_react_shared2 = require("@xyo-network/react-shared");
30
+ var import_react2 = require("react");
31
+ var import_react_router_dom = require("react-router-dom");
32
+
33
+ // src/components/CardEx.tsx
34
+ var import_material = require("@mui/material");
35
+ var import_react_shared = require("@xyo-network/react-shared");
36
+ var import_react = require("react");
37
+ var import_jsx_runtime = require("react/jsx-runtime");
38
+ var CardExWithRef = (0, import_react.forwardRef)(({ style, gradient, ...props }, ref) => {
39
+ const { styles } = (0, import_react_shared.useGradientStyles)();
40
+ const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
41
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
42
+ import_material.Card,
43
+ {
44
+ style: {
45
+ ...gradientStyle,
46
+ ...style
47
+ },
48
+ ref,
49
+ ...props
50
+ }
51
+ );
52
+ });
53
+ CardExWithRef.displayName = "CardEx";
54
+ var CardEx = CardExWithRef;
55
+
56
+ // src/components/SimpleCard/SimpleCard.tsx
57
+ var import_jsx_runtime2 = require("react/jsx-runtime");
58
+ var SimpleCard = ({
59
+ desc,
60
+ iconImage,
61
+ interactionVariant = "card",
62
+ headline,
63
+ href,
64
+ media,
65
+ small,
66
+ subtitle,
67
+ sx,
68
+ to,
69
+ ...props
70
+ }) => {
71
+ const theme = (0, import_material2.useTheme)();
72
+ const [raised, setRaised] = (0, import_react2.useState)(false);
73
+ const navigate = (0, import_react_router_dom.useNavigate)();
74
+ const isMobile = (0, import_react_shared2.useIsMobile)();
75
+ const localRouteChange = (to2) => {
76
+ to2 ? navigate(to2) : navigate("/404");
77
+ };
78
+ const externalRouteChange = (href2) => {
79
+ href2 ? window.open(href2) : navigate("/404");
80
+ };
81
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
82
+ CardEx,
83
+ {
84
+ elevation: raised ? 3 : 0,
85
+ sx: {
86
+ "&:hover": {
87
+ cursor: interactionVariant == "button" ? "pointer" : null
88
+ },
89
+ backgroundColor: (0, import_material2.alpha)(theme.palette.primary.light, 0.05),
90
+ ...sx
91
+ },
92
+ onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
93
+ onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
94
+ onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
95
+ ...props,
96
+ children: [
97
+ media ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
98
+ /* @__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: [
99
+ iconImage ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
100
+ typeof headline === "string" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
101
+ subtitle ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
102
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
103
+ ] }) }),
104
+ 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)(
105
+ import_material2.IconButton,
106
+ {
107
+ color: raised ? "secondary" : "primary",
108
+ size: small ? "small" : "medium",
109
+ onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
110
+ disableFocusRipple: true,
111
+ disableRipple: true,
112
+ disableTouchRipple: true,
113
+ children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowForwardRounded, { fontSize: small ? "small" : "medium" })
114
+ }
115
+ ) }) }) : null
116
+ ]
117
+ }
118
+ );
119
+ };
120
+ //# sourceMappingURL=SimpleCard.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["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_react_shared","import_react","import_jsx_runtime","to","href","ArrowForwardRoundedIcon"]}
@@ -0,0 +1,16 @@
1
+ import { ReactNode } from 'react';
2
+ import { To } from 'react-router-dom';
3
+ import { CardExProps } from '../CardEx';
4
+ export interface SimpleCardProps extends CardExProps {
5
+ desc?: ReactNode;
6
+ headline?: ReactNode;
7
+ href?: string;
8
+ iconImage?: string;
9
+ interactionVariant?: 'button' | 'card';
10
+ media?: string;
11
+ small?: boolean;
12
+ subtitle?: string;
13
+ to?: To;
14
+ }
15
+ export declare const SimpleCard: React.FC<SimpleCardProps>;
16
+ //# sourceMappingURL=SimpleCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleCard.d.ts","sourceRoot":"","sources":["../../../../src/components/SimpleCard/SimpleCard.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAY,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAE,EAAE,EAAe,MAAM,kBAAkB,CAAA;AAElD,OAAO,EAAU,WAAW,EAAE,MAAM,WAAW,CAAA;AAE/C,MAAM,WAAW,eAAgB,SAAQ,WAAW;IAClD,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kBAAkB,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAA;IACtC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,EAAE,CAAC,EAAE,EAAE,CAAA;CACR;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA8EhD,CAAA"}
@@ -0,0 +1,122 @@
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/SimpleCard/index.ts
21
+ var SimpleCard_exports = {};
22
+ __export(SimpleCard_exports, {
23
+ SimpleCard: () => SimpleCard
24
+ });
25
+ module.exports = __toCommonJS(SimpleCard_exports);
26
+
27
+ // src/components/SimpleCard/SimpleCard.tsx
28
+ var import_icons_material = require("@mui/icons-material");
29
+ var import_material2 = require("@mui/material");
30
+ var import_react_flexbox = require("@xylabs/react-flexbox");
31
+ var import_react_shared2 = require("@xyo-network/react-shared");
32
+ var import_react2 = require("react");
33
+ var import_react_router_dom = require("react-router-dom");
34
+
35
+ // src/components/CardEx.tsx
36
+ var import_material = require("@mui/material");
37
+ var import_react_shared = require("@xyo-network/react-shared");
38
+ var import_react = require("react");
39
+ var import_jsx_runtime = require("react/jsx-runtime");
40
+ var CardExWithRef = (0, import_react.forwardRef)(({ style, gradient, ...props }, ref) => {
41
+ const { styles } = (0, import_react_shared.useGradientStyles)();
42
+ const gradientStyle = gradient === "border" ? styles.border : gradient === "background" ? styles.background : {};
43
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
44
+ import_material.Card,
45
+ {
46
+ style: {
47
+ ...gradientStyle,
48
+ ...style
49
+ },
50
+ ref,
51
+ ...props
52
+ }
53
+ );
54
+ });
55
+ CardExWithRef.displayName = "CardEx";
56
+ var CardEx = CardExWithRef;
57
+
58
+ // src/components/SimpleCard/SimpleCard.tsx
59
+ var import_jsx_runtime2 = require("react/jsx-runtime");
60
+ var SimpleCard = ({
61
+ desc,
62
+ iconImage,
63
+ interactionVariant = "card",
64
+ headline,
65
+ href,
66
+ media,
67
+ small,
68
+ subtitle,
69
+ sx,
70
+ to,
71
+ ...props
72
+ }) => {
73
+ const theme = (0, import_material2.useTheme)();
74
+ const [raised, setRaised] = (0, import_react2.useState)(false);
75
+ const navigate = (0, import_react_router_dom.useNavigate)();
76
+ const isMobile = (0, import_react_shared2.useIsMobile)();
77
+ const localRouteChange = (to2) => {
78
+ to2 ? navigate(to2) : navigate("/404");
79
+ };
80
+ const externalRouteChange = (href2) => {
81
+ href2 ? window.open(href2) : navigate("/404");
82
+ };
83
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
84
+ CardEx,
85
+ {
86
+ elevation: raised ? 3 : 0,
87
+ sx: {
88
+ "&:hover": {
89
+ cursor: interactionVariant == "button" ? "pointer" : null
90
+ },
91
+ backgroundColor: (0, import_material2.alpha)(theme.palette.primary.light, 0.05),
92
+ ...sx
93
+ },
94
+ onMouseEnter: () => isMobile ? null : interactionVariant == "button" ? setRaised(true) : null,
95
+ onMouseLeave: () => isMobile ? null : interactionVariant == "button" ? setRaised(false) : null,
96
+ onClick: () => interactionVariant == "button" ? href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404") : null,
97
+ ...props,
98
+ children: [
99
+ media ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.CardMedia, { component: "img", height: "100", image: media, alt: "" }) : null,
100
+ /* @__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: [
101
+ iconImage ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: iconImage, height: "40px", style: { paddingBottom: "8px" } }) : null,
102
+ typeof headline === "string" ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "body1" : "h6", textAlign: "left", gutterBottom: true, children: headline }) : headline,
103
+ subtitle ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: "subtitle2", textAlign: "left", gutterBottom: true, children: subtitle }) : null,
104
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_material2.Typography, { variant: small ? "caption" : "body1", textAlign: "left", gutterBottom: true, children: desc })
105
+ ] }) }),
106
+ 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)(
107
+ import_material2.IconButton,
108
+ {
109
+ color: raised ? "secondary" : "primary",
110
+ size: small ? "small" : "medium",
111
+ onClick: () => href ? externalRouteChange(href) : to ? localRouteChange(to) : navigate("/404"),
112
+ disableFocusRipple: true,
113
+ disableRipple: true,
114
+ disableTouchRipple: true,
115
+ children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_icons_material.ArrowForwardRounded, { fontSize: small ? "small" : "medium" })
116
+ }
117
+ ) }) }) : null
118
+ ]
119
+ }
120
+ );
121
+ };
122
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/SimpleCard/index.ts","../../../../src/components/SimpleCard/SimpleCard.tsx","../../../../src/components/CardEx.tsx"],"sourcesContent":["export * from './SimpleCard'\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_react_shared","import_react","import_jsx_runtime","to","href","ArrowForwardRoundedIcon"]}
@@ -0,0 +1,2 @@
1
+ export * from './SimpleCard';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SimpleCard/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -0,0 +1,129 @@
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
@@ -0,0 +1 @@
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":["import_material","import_material","import_react_shared","import_react","import_jsx_runtime","to","href","ArrowForwardRoundedIcon","import_jsx_runtime"]}
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ import { GridProps } from '@mui/material';
3
+ import { SimpleCardProps } from '../SimpleCard';
4
+ export interface SimpleCardGridProps extends GridProps {
5
+ cards?: SimpleCardProps[];
6
+ }
7
+ export declare const SimpleCardGrid: React.FC<SimpleCardGridProps>;
8
+ //# sourceMappingURL=SimpleCardGrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleCardGrid.d.ts","sourceRoot":"","sources":["../../../../src/components/SimpleCardGrid/SimpleCardGrid.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAQ,SAAS,EAAE,MAAM,eAAe,CAAA;AAE/C,OAAO,EAAc,eAAe,EAAE,MAAM,eAAe,CAAA;AAE3D,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,KAAK,CAAC,EAAE,eAAe,EAAE,CAAA;CAC1B;AAED,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAUxD,CAAA"}
@@ -0,0 +1,131 @@
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
@@ -0,0 +1 @@
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"]}
@@ -0,0 +1,2 @@
1
+ export * from './SimpleCardGrid';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/SimpleCardGrid/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}