@trackunit/react-components 1.4.201 → 1.4.203
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.cjs.js +25 -6
- package/index.esm.js +25 -6
- package/package.json +1 -1
- package/src/common/Density.d.ts +1 -1
- package/src/components/Card/Card.variants.d.ts +3 -3
- package/src/components/Card/CardHeader.d.ts +1 -1
- package/src/components/KPI/KPI.d.ts +10 -1
- package/src/components/KPI/KPI.variants.d.ts +4 -0
- package/src/components/KPICard/KPICard.d.ts +9 -0
- package/src/components/KPICard/KPICard.variants.d.ts +1 -0
package/index.cjs.js
CHANGED
|
@@ -1736,6 +1736,7 @@ const cvaCardFooterDensityContainer = cssClassVarianceUtilities.cvaMerge(["flex"
|
|
|
1736
1736
|
dense: "gap-1 p-2",
|
|
1737
1737
|
compact: "gap-3 p-3",
|
|
1738
1738
|
comfortable: "gap-4 p-4",
|
|
1739
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1739
1740
|
spacious: "gap-4 p-6",
|
|
1740
1741
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1741
1742
|
},
|
|
@@ -1758,6 +1759,7 @@ const cvaCardHeaderDensityContainer = cssClassVarianceUtilities.cvaMerge(["flex"
|
|
|
1758
1759
|
dense: "gap-1 p-2",
|
|
1759
1760
|
compact: "gap-3 p-3",
|
|
1760
1761
|
comfortable: "gap-4 p-4",
|
|
1762
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1761
1763
|
spacious: "gap-4 p-6",
|
|
1762
1764
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1763
1765
|
},
|
|
@@ -1784,6 +1786,7 @@ const cvaCardBodyDensityContainer = cssClassVarianceUtilities.cvaMerge(["flex",
|
|
|
1784
1786
|
dense: "gap-1 p-2",
|
|
1785
1787
|
compact: "gap-3 p-3",
|
|
1786
1788
|
comfortable: "gap-4 p-4",
|
|
1789
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1787
1790
|
spacious: "gap-4 p-6",
|
|
1788
1791
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1789
1792
|
},
|
|
@@ -1892,7 +1895,7 @@ const Heading = ({ variant = "primary", inverted = false, subtle = false, classN
|
|
|
1892
1895
|
* @param {CardHeaderProps} props - The props for the CardHeader component
|
|
1893
1896
|
* @returns {ReactElement} CardHeader component
|
|
1894
1897
|
*/
|
|
1895
|
-
const CardHeader = ({ heading, headingVariant = "
|
|
1898
|
+
const CardHeader = ({ heading, headingVariant = "secondary", subHeading, onClose, dataTestId, className, children, accessories, actions, density, hideSeparator = false, }) => {
|
|
1896
1899
|
return (jsxRuntime.jsx("div", { className: cvaCardHeaderDensityContainer({
|
|
1897
1900
|
density,
|
|
1898
1901
|
border: hideSeparator ? "borderless" : "default",
|
|
@@ -2815,7 +2818,7 @@ const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground
|
|
|
2815
2818
|
return (jsxRuntime.jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxRuntime.jsxs("div", { "aria-label": label, className: cvaIndicator(), "data-testid": dataTestId, ...rest, children: [jsxRuntime.jsxs("div", { className: cvaIndicatorIconBackground({ color, background: withBackground ? "visible" : "hidden" }), "data-testid": dataTestId ? `${dataTestId}-background` : "indicator-background", children: [ping ? (jsxRuntime.jsx("div", { className: cvaIndicatorPing({ color }), "data-testid": dataTestId ? `${dataTestId}-ping` : "indicator-ping" })) : null, icon] }), label !== undefined && withLabel ? (jsxRuntime.jsx("div", { className: cvaIndicatorLabel({ size, weight, background: withBackground ? "visible" : "hidden" }), "data-testid": dataTestId ? `${dataTestId}-label` : undefined, children: label })) : null] }) }));
|
|
2816
2819
|
};
|
|
2817
2820
|
|
|
2818
|
-
const cvaKPI = cssClassVarianceUtilities.cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col"
|
|
2821
|
+
const cvaKPI = cssClassVarianceUtilities.cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col"], {
|
|
2819
2822
|
variants: {
|
|
2820
2823
|
variant: {
|
|
2821
2824
|
small: ["px-3"],
|
|
@@ -2827,8 +2830,19 @@ const cvaKPI = cssClassVarianceUtilities.cvaMerge(["w-full", "px-4", "py-2", "fl
|
|
|
2827
2830
|
variant: "default",
|
|
2828
2831
|
},
|
|
2829
2832
|
});
|
|
2833
|
+
const cvaKPIHeader = cssClassVarianceUtilities.cvaMerge(["flex", "flex-row", "justify-between", "gap-1"]);
|
|
2834
|
+
const cvaKPIIconContainer = cssClassVarianceUtilities.cvaMerge(["flex", "items-center", "justify-center", "w-7", "h-7", "rounded-md", "text-white"], {
|
|
2835
|
+
variants: {
|
|
2836
|
+
iconColor: {
|
|
2837
|
+
primary: ["bg-primary-600"],
|
|
2838
|
+
success: ["bg-success-600"],
|
|
2839
|
+
warning: ["bg-warning-500"],
|
|
2840
|
+
danger: ["bg-danger-600"],
|
|
2841
|
+
},
|
|
2842
|
+
},
|
|
2843
|
+
});
|
|
2830
2844
|
const cvaKPITitleText = cssClassVarianceUtilities.cvaMerge(["truncate", "whitespace-nowrap"]);
|
|
2831
|
-
const cvaKPIvalueText = cssClassVarianceUtilities.cvaMerge(["truncate", "whitespace-nowrap", "text-
|
|
2845
|
+
const cvaKPIvalueText = cssClassVarianceUtilities.cvaMerge(["truncate", "whitespace-nowrap", "text-lg", "font-medium"], {
|
|
2832
2846
|
variants: {
|
|
2833
2847
|
variant: {
|
|
2834
2848
|
small: ["mt-0.5"],
|
|
@@ -2871,9 +2885,9 @@ const LoadingContent$1 = () => (jsxRuntime.jsx("div", { className: "flex h-11 fl
|
|
|
2871
2885
|
* @param {KPIProps} props - The props for the KPI component
|
|
2872
2886
|
* @returns {ReactElement} KPI component
|
|
2873
2887
|
*/
|
|
2874
|
-
const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
|
|
2888
|
+
const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, iconName, iconColor = "primary", ...rest }) => {
|
|
2875
2889
|
const isSmallVariant = variant === "small";
|
|
2876
|
-
return (jsxRuntime.jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsxRuntime.jsx("div", { className: cvaKPI({ variant, className }), "data-testid": dataTestId ? `${dataTestId}` : undefined, ...rest, children: loading ? (jsxRuntime.jsx(LoadingContent$1, {})) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Text, { className: cvaKPITitleText(), dataTestId: dataTestId ? `${dataTestId}-title` : undefined, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), jsxRuntime.jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: dataTestId ? `${dataTestId}-value` : undefined, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxRuntime.jsxs("div", { className: cvaKPIValueContainer({
|
|
2890
|
+
return (jsxRuntime.jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsxRuntime.jsx("div", { className: cvaKPI({ variant, className }), "data-testid": dataTestId ? `${dataTestId}` : undefined, ...rest, children: loading ? (jsxRuntime.jsx(LoadingContent$1, {})) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("div", { className: cvaKPIHeader(), children: [jsxRuntime.jsx(Text, { className: cvaKPITitleText(), dataTestId: dataTestId ? `${dataTestId}-title` : undefined, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), iconName ? (jsxRuntime.jsx("div", { className: cvaKPIIconContainer({ iconColor }), children: jsxRuntime.jsx(Icon, { name: iconName, size: "small", type: "solid" }) })) : null] }), jsxRuntime.jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: dataTestId ? `${dataTestId}-value` : undefined, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxRuntime.jsxs("div", { className: cvaKPIValueContainer({
|
|
2877
2891
|
isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
|
|
2878
2892
|
className,
|
|
2879
2893
|
}), children: [jsxRuntime.jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsxRuntime.jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }));
|
|
@@ -2887,6 +2901,10 @@ const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
|
|
|
2887
2901
|
|
|
2888
2902
|
const cvaKPICard = cssClassVarianceUtilities.cvaMerge(["inline-flex", "gap-1"], {
|
|
2889
2903
|
variants: {
|
|
2904
|
+
minHeight: {
|
|
2905
|
+
default: ["min-h-[78px]"],
|
|
2906
|
+
withTrends: ["min-h-[94px]"],
|
|
2907
|
+
},
|
|
2890
2908
|
isClickable: {
|
|
2891
2909
|
true: ["hover:bg-slate-50", "component-card-border"],
|
|
2892
2910
|
false: [],
|
|
@@ -2919,9 +2937,10 @@ const KPICard = ({ isActive, onClick, className, dataTestId, children, ...rest }
|
|
|
2919
2937
|
return (jsxRuntime.jsx(Card, { className: cvaKPICard({
|
|
2920
2938
|
isClickable,
|
|
2921
2939
|
isActive,
|
|
2940
|
+
minHeight: rest.trend ? "withTrends" : "default",
|
|
2922
2941
|
variant: rest.variant,
|
|
2923
2942
|
className,
|
|
2924
|
-
}), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxRuntime.jsxs(CardBody, { density: "
|
|
2943
|
+
}), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxRuntime.jsxs(CardBody, { density: "kpi", children: [jsxRuntime.jsx(KPI, { ...rest, className: "p-0", dataTestId: dataTestId ? `${dataTestId}-kpi` : undefined }), children] }) }));
|
|
2925
2944
|
};
|
|
2926
2945
|
|
|
2927
2946
|
const cvaMenuList = cssClassVarianceUtilities.cvaMerge([
|
package/index.esm.js
CHANGED
|
@@ -1734,6 +1734,7 @@ const cvaCardFooterDensityContainer = cvaMerge(["flex", "border-t", "border-seco
|
|
|
1734
1734
|
dense: "gap-1 p-2",
|
|
1735
1735
|
compact: "gap-3 p-3",
|
|
1736
1736
|
comfortable: "gap-4 p-4",
|
|
1737
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1737
1738
|
spacious: "gap-4 p-6",
|
|
1738
1739
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1739
1740
|
},
|
|
@@ -1756,6 +1757,7 @@ const cvaCardHeaderDensityContainer = cvaMerge(["flex", "border-b", "border-seco
|
|
|
1756
1757
|
dense: "gap-1 p-2",
|
|
1757
1758
|
compact: "gap-3 p-3",
|
|
1758
1759
|
comfortable: "gap-4 p-4",
|
|
1760
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1759
1761
|
spacious: "gap-4 p-6",
|
|
1760
1762
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1761
1763
|
},
|
|
@@ -1782,6 +1784,7 @@ const cvaCardBodyDensityContainer = cvaMerge(["flex", "flex-grow", "overflow-aut
|
|
|
1782
1784
|
dense: "gap-1 p-2",
|
|
1783
1785
|
compact: "gap-3 p-3",
|
|
1784
1786
|
comfortable: "gap-4 p-4",
|
|
1787
|
+
kpi: "gap-3 px-3 pb-2 pt-3",
|
|
1785
1788
|
spacious: "gap-4 p-6",
|
|
1786
1789
|
auto: "component-card-spacing @sm:component-card-spacing-sm @md:component-card-spacing-md",
|
|
1787
1790
|
},
|
|
@@ -1890,7 +1893,7 @@ const Heading = ({ variant = "primary", inverted = false, subtle = false, classN
|
|
|
1890
1893
|
* @param {CardHeaderProps} props - The props for the CardHeader component
|
|
1891
1894
|
* @returns {ReactElement} CardHeader component
|
|
1892
1895
|
*/
|
|
1893
|
-
const CardHeader = ({ heading, headingVariant = "
|
|
1896
|
+
const CardHeader = ({ heading, headingVariant = "secondary", subHeading, onClose, dataTestId, className, children, accessories, actions, density, hideSeparator = false, }) => {
|
|
1894
1897
|
return (jsx("div", { className: cvaCardHeaderDensityContainer({
|
|
1895
1898
|
density,
|
|
1896
1899
|
border: hideSeparator ? "borderless" : "default",
|
|
@@ -2813,7 +2816,7 @@ const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground
|
|
|
2813
2816
|
return (jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxs("div", { "aria-label": label, className: cvaIndicator(), "data-testid": dataTestId, ...rest, children: [jsxs("div", { className: cvaIndicatorIconBackground({ color, background: withBackground ? "visible" : "hidden" }), "data-testid": dataTestId ? `${dataTestId}-background` : "indicator-background", children: [ping ? (jsx("div", { className: cvaIndicatorPing({ color }), "data-testid": dataTestId ? `${dataTestId}-ping` : "indicator-ping" })) : null, icon] }), label !== undefined && withLabel ? (jsx("div", { className: cvaIndicatorLabel({ size, weight, background: withBackground ? "visible" : "hidden" }), "data-testid": dataTestId ? `${dataTestId}-label` : undefined, children: label })) : null] }) }));
|
|
2814
2817
|
};
|
|
2815
2818
|
|
|
2816
|
-
const cvaKPI = cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col"
|
|
2819
|
+
const cvaKPI = cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col"], {
|
|
2817
2820
|
variants: {
|
|
2818
2821
|
variant: {
|
|
2819
2822
|
small: ["px-3"],
|
|
@@ -2825,8 +2828,19 @@ const cvaKPI = cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col", "gap-1"],
|
|
|
2825
2828
|
variant: "default",
|
|
2826
2829
|
},
|
|
2827
2830
|
});
|
|
2831
|
+
const cvaKPIHeader = cvaMerge(["flex", "flex-row", "justify-between", "gap-1"]);
|
|
2832
|
+
const cvaKPIIconContainer = cvaMerge(["flex", "items-center", "justify-center", "w-7", "h-7", "rounded-md", "text-white"], {
|
|
2833
|
+
variants: {
|
|
2834
|
+
iconColor: {
|
|
2835
|
+
primary: ["bg-primary-600"],
|
|
2836
|
+
success: ["bg-success-600"],
|
|
2837
|
+
warning: ["bg-warning-500"],
|
|
2838
|
+
danger: ["bg-danger-600"],
|
|
2839
|
+
},
|
|
2840
|
+
},
|
|
2841
|
+
});
|
|
2828
2842
|
const cvaKPITitleText = cvaMerge(["truncate", "whitespace-nowrap"]);
|
|
2829
|
-
const cvaKPIvalueText = cvaMerge(["truncate", "whitespace-nowrap", "text-
|
|
2843
|
+
const cvaKPIvalueText = cvaMerge(["truncate", "whitespace-nowrap", "text-lg", "font-medium"], {
|
|
2830
2844
|
variants: {
|
|
2831
2845
|
variant: {
|
|
2832
2846
|
small: ["mt-0.5"],
|
|
@@ -2869,9 +2883,9 @@ const LoadingContent$1 = () => (jsx("div", { className: "flex h-11 flex-row item
|
|
|
2869
2883
|
* @param {KPIProps} props - The props for the KPI component
|
|
2870
2884
|
* @returns {ReactElement} KPI component
|
|
2871
2885
|
*/
|
|
2872
|
-
const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
|
|
2886
|
+
const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, iconName, iconColor = "primary", ...rest }) => {
|
|
2873
2887
|
const isSmallVariant = variant === "small";
|
|
2874
|
-
return (jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsx("div", { className: cvaKPI({ variant, className }), "data-testid": dataTestId ? `${dataTestId}` : undefined, ...rest, children: loading ? (jsx(LoadingContent$1, {})) : (jsxs(Fragment, { children: [jsx(Text, { className: cvaKPITitleText(), dataTestId: dataTestId ? `${dataTestId}-title` : undefined, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: dataTestId ? `${dataTestId}-value` : undefined, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxs("div", { className: cvaKPIValueContainer({
|
|
2888
|
+
return (jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsx("div", { className: cvaKPI({ variant, className }), "data-testid": dataTestId ? `${dataTestId}` : undefined, ...rest, children: loading ? (jsx(LoadingContent$1, {})) : (jsxs(Fragment, { children: [jsxs("div", { className: cvaKPIHeader(), children: [jsx(Text, { className: cvaKPITitleText(), dataTestId: dataTestId ? `${dataTestId}-title` : undefined, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), iconName ? (jsx("div", { className: cvaKPIIconContainer({ iconColor }), children: jsx(Icon, { name: iconName, size: "small", type: "solid" }) })) : null] }), jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: dataTestId ? `${dataTestId}-value` : undefined, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxs("div", { className: cvaKPIValueContainer({
|
|
2875
2889
|
isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
|
|
2876
2890
|
className,
|
|
2877
2891
|
}), children: [jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }));
|
|
@@ -2885,6 +2899,10 @@ const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
|
|
|
2885
2899
|
|
|
2886
2900
|
const cvaKPICard = cvaMerge(["inline-flex", "gap-1"], {
|
|
2887
2901
|
variants: {
|
|
2902
|
+
minHeight: {
|
|
2903
|
+
default: ["min-h-[78px]"],
|
|
2904
|
+
withTrends: ["min-h-[94px]"],
|
|
2905
|
+
},
|
|
2888
2906
|
isClickable: {
|
|
2889
2907
|
true: ["hover:bg-slate-50", "component-card-border"],
|
|
2890
2908
|
false: [],
|
|
@@ -2917,9 +2935,10 @@ const KPICard = ({ isActive, onClick, className, dataTestId, children, ...rest }
|
|
|
2917
2935
|
return (jsx(Card, { className: cvaKPICard({
|
|
2918
2936
|
isClickable,
|
|
2919
2937
|
isActive,
|
|
2938
|
+
minHeight: rest.trend ? "withTrends" : "default",
|
|
2920
2939
|
variant: rest.variant,
|
|
2921
2940
|
className,
|
|
2922
|
-
}), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxs(CardBody, { density: "
|
|
2941
|
+
}), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxs(CardBody, { density: "kpi", children: [jsx(KPI, { ...rest, className: "p-0", dataTestId: dataTestId ? `${dataTestId}-kpi` : undefined }), children] }) }));
|
|
2923
2942
|
};
|
|
2924
2943
|
|
|
2925
2944
|
const cvaMenuList = cvaMerge([
|
package/package.json
CHANGED
package/src/common/Density.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export type Density = "none" | "dense" | "compact" | "comfortable" | "spacious" | "auto";
|
|
1
|
+
export type Density = "none" | "dense" | "compact" | "comfortable" | "kpi" | "spacious" | "auto";
|
|
@@ -4,16 +4,16 @@ export declare const cvaCard: (props?: ({
|
|
|
4
4
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
5
5
|
export declare const cvaCardFooterDensityContainer: (props?: ({
|
|
6
6
|
border?: "default" | "borderless" | null | undefined;
|
|
7
|
-
density?: "none" | "dense" | "compact" | "comfortable" | "spacious" | "auto" | null | undefined;
|
|
7
|
+
density?: "none" | "dense" | "compact" | "comfortable" | "kpi" | "spacious" | "auto" | null | undefined;
|
|
8
8
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
9
9
|
export declare const cvaCardHeader: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
10
10
|
export declare const cvaCardHeaderHeadingContainer: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
11
11
|
export declare const cvaCardHeaderDensityContainer: (props?: ({
|
|
12
12
|
border?: "default" | "borderless" | null | undefined;
|
|
13
|
-
density?: "none" | "dense" | "compact" | "comfortable" | "spacious" | "auto" | null | undefined;
|
|
13
|
+
density?: "none" | "dense" | "compact" | "comfortable" | "kpi" | "spacious" | "auto" | null | undefined;
|
|
14
14
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
15
15
|
export declare const cvaCardBodyDensityContainer: (props?: ({
|
|
16
16
|
disableGap?: boolean | null | undefined;
|
|
17
17
|
direction?: "row" | "row-reverse" | "column" | "column-reverse" | null | undefined;
|
|
18
|
-
density?: "none" | "dense" | "compact" | "comfortable" | "spacious" | "auto" | null | undefined;
|
|
18
|
+
density?: "none" | "dense" | "compact" | "comfortable" | "kpi" | "spacious" | "auto" | null | undefined;
|
|
19
19
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
@@ -10,7 +10,7 @@ export interface CardHeaderProps extends CommonProps {
|
|
|
10
10
|
* The variant/size of the heading.
|
|
11
11
|
* Same as the `Heading` component.
|
|
12
12
|
*
|
|
13
|
-
* @default "
|
|
13
|
+
* @default "secondary"
|
|
14
14
|
*/
|
|
15
15
|
headingVariant?: HeadingVariant;
|
|
16
16
|
/** Adds an extra heading below the main heading. */
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IconName } from "@trackunit/ui-icons";
|
|
1
2
|
import { ReactElement } from "react";
|
|
2
3
|
import { CommonProps } from "../../common";
|
|
3
4
|
export interface KPIProps extends CommonProps {
|
|
@@ -25,6 +26,14 @@ export interface KPIProps extends CommonProps {
|
|
|
25
26
|
* The size of the KPI Card
|
|
26
27
|
*/
|
|
27
28
|
variant?: "small" | "default" | "condensed";
|
|
29
|
+
/**
|
|
30
|
+
* The icon name to be displayed
|
|
31
|
+
*/
|
|
32
|
+
iconName?: IconName;
|
|
33
|
+
/**
|
|
34
|
+
* The color of the icon
|
|
35
|
+
*/
|
|
36
|
+
iconColor?: "primary" | "success" | "warning" | "danger";
|
|
28
37
|
/**
|
|
29
38
|
* The trend of the KPI Card
|
|
30
39
|
*/
|
|
@@ -58,4 +67,4 @@ export interface KPIProps extends CommonProps {
|
|
|
58
67
|
* @param {KPIProps} props - The props for the KPI component
|
|
59
68
|
* @returns {ReactElement} KPI component
|
|
60
69
|
*/
|
|
61
|
-
export declare const KPI: ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant, trend, ...rest }: KPIProps) => ReactElement;
|
|
70
|
+
export declare const KPI: ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant, trend, iconName, iconColor, ...rest }: KPIProps) => ReactElement;
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export declare const cvaKPI: (props?: ({
|
|
2
2
|
variant?: "default" | "small" | "condensed" | null | undefined;
|
|
3
3
|
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
4
|
+
export declare const cvaKPIHeader: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
5
|
+
export declare const cvaKPIIconContainer: (props?: ({
|
|
6
|
+
iconColor?: "primary" | "success" | "warning" | "danger" | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
4
8
|
export declare const cvaKPITitleText: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
|
|
5
9
|
export declare const cvaKPIvalueText: (props?: ({
|
|
6
10
|
variant?: "default" | "small" | "condensed" | null | undefined;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { IconName } from "@trackunit/ui-icons";
|
|
1
2
|
import { ReactElement, ReactNode } from "react";
|
|
2
3
|
import { KPIProps } from "../KPI/KPI";
|
|
3
4
|
export interface KPICardProps extends KPIProps {
|
|
@@ -13,6 +14,14 @@ export interface KPICardProps extends KPIProps {
|
|
|
13
14
|
* Children to be rendered
|
|
14
15
|
*/
|
|
15
16
|
children?: ReactNode;
|
|
17
|
+
/**
|
|
18
|
+
* The name of the icon
|
|
19
|
+
*/
|
|
20
|
+
iconName?: IconName;
|
|
21
|
+
/**
|
|
22
|
+
* The color of the icon
|
|
23
|
+
*/
|
|
24
|
+
iconColor?: "primary" | "success" | "warning" | "danger";
|
|
16
25
|
}
|
|
17
26
|
/**
|
|
18
27
|
* The KPICard component is used to display KPIs.
|