@trackunit/react-components 1.4.51 → 1.4.54

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 CHANGED
@@ -2563,16 +2563,20 @@ const Tooltip = ({ children, dataTestId = "tool-tip", disabled, className, label
2563
2563
 
2564
2564
  const cvaIndicator = cssClassVarianceUtilities.cvaMerge(["flex", "items-center"]);
2565
2565
  const cvaIndicatorIcon = cssClassVarianceUtilities.cvaMerge(["mr-2"]);
2566
- const cvaIndicatorLabel = cssClassVarianceUtilities.cvaMerge(["font-medium", "capitalize", "text-secondary-600"], {
2566
+ const cvaIndicatorLabel = cssClassVarianceUtilities.cvaMerge(["capitalize", "text-secondary-600"], {
2567
2567
  variants: {
2568
2568
  size: {
2569
2569
  small: "pl-1 pr-1 text-xs",
2570
2570
  medium: "pl-2 pr-2 text-sm",
2571
- large: "pl-2 pr-2 text-base",
2571
+ },
2572
+ weight: {
2573
+ normal: "font-normal",
2574
+ medium: "font-medium",
2572
2575
  },
2573
2576
  },
2574
2577
  defaultVariants: {
2575
2578
  size: "medium",
2579
+ weight: "medium",
2576
2580
  },
2577
2581
  });
2578
2582
  const cvaIndicatorPing = cssClassVarianceUtilities.cvaMerge(["animate-ping-sm", "absolute", "inline-flex", "h-full", "w-full", "rounded-full", "opacity-75", "bg-neutral-600"], {
@@ -2680,11 +2684,10 @@ const cvaIndicatorIconBackground = cssClassVarianceUtilities.cvaMerge(["rounded-
2680
2684
  * @param {IndicatorProps} props - The props for the Indicator component
2681
2685
  * @returns {ReactElement} Indicator component
2682
2686
  */
2683
- const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, size, className, ...rest }) => {
2684
- 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 }), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label })) : null] }) }));
2687
+ const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, size, weight, className, ...rest }) => {
2688
+ 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 }), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label })) : null] }) }));
2685
2689
  };
2686
2690
 
2687
- const cvaKPIContainer = cssClassVarianceUtilities.cvaMerge(["inline-flex"]);
2688
2691
  const cvaKPI = cssClassVarianceUtilities.cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col", "gap-1"], {
2689
2692
  variants: {
2690
2693
  variant: {
@@ -2741,13 +2744,12 @@ const LoadingContent$1 = () => (jsxRuntime.jsx("div", { className: "flex h-11 fl
2741
2744
  * @param {KPIProps} props - The props for the KPI component
2742
2745
  * @returns {ReactElement} KPI component
2743
2746
  */
2744
- const KPI = ({ asChild = false, title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
2745
- const Comp = asChild ? reactSlot.Slot : "div";
2747
+ const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
2746
2748
  const isSmallVariant = variant === "small";
2747
- return (jsxRuntime.jsxs(Comp, { className: cvaKPIContainer({ className }), "data-testid": `${dataTestId}-comp`, ...rest, children: [jsxRuntime.jsx(Tooltip, { className: "w-full", disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsxRuntime.jsx("div", { className: cvaKPI({ variant }), children: loading ? (jsxRuntime.jsx(LoadingContent$1, {})) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Text, { className: cvaKPITitleText(), dataTestId: `${dataTestId}-title`, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), jsxRuntime.jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: `${dataTestId}-value`, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxRuntime.jsxs("div", { className: cvaKPIValueContainer({
2748
- isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
2749
- className,
2750
- }), children: [jsxRuntime.jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsxRuntime.jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }), !loading && jsxRuntime.jsx(reactSlot.Slottable, { children: rest.children })] }));
2749
+ return (jsxRuntime.jsx(Tooltip, { 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({
2750
+ isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
2751
+ className,
2752
+ }), children: [jsxRuntime.jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsxRuntime.jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }));
2751
2753
  };
2752
2754
  const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
2753
2755
  if (!trend) {
@@ -2756,7 +2758,7 @@ const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
2756
2758
  return (jsxRuntime.jsxs("div", { className: "flex flex-row items-center gap-1", "data-testid": "trend-indicator", children: [!isSmallVariant && trend.value ? (jsxRuntime.jsxs(Text, { dataTestId: "trend-value", size: "small", weight: "normal", children: [trend.value, " ", unit] })) : null, trend.variant?.icon ? jsxRuntime.jsx(Icon, { color: trend.variant.color, name: trend.variant.icon, size: "small" }) : null, trend.percentage ? (jsxRuntime.jsxs(Text, { className: cvaKPITrendPercentage({ color: trend.variant?.color }), size: "small", weight: "bold", children: [trend.percentage, "%"] })) : null] }));
2757
2759
  };
2758
2760
 
2759
- const cvaKPICard = cssClassVarianceUtilities.cvaMerge(["inline-flex", "gap-1", "p-0"], {
2761
+ const cvaKPICard = cssClassVarianceUtilities.cvaMerge(["inline-flex", "gap-1"], {
2760
2762
  variants: {
2761
2763
  isClickable: {
2762
2764
  true: ["hover:bg-slate-50", "component-card-border"],
@@ -2785,13 +2787,14 @@ const cvaKPICard = cssClassVarianceUtilities.cvaMerge(["inline-flex", "gap-1", "
2785
2787
  * @param {KPICardProps} props - The props for the KPICard component
2786
2788
  * @returns {ReactElement} KPICard component
2787
2789
  */
2788
- const KPICard = ({ isActive, onClick, className, ...rest }) => {
2790
+ const KPICard = ({ isActive, onClick, className, dataTestId, children, ...rest }) => {
2791
+ const isClickable = Boolean(onClick && !rest.loading);
2789
2792
  return (jsxRuntime.jsx(Card, { className: cvaKPICard({
2790
- isClickable: Boolean((onClick || rest.asChild) && !rest.loading),
2793
+ isClickable,
2791
2794
  isActive,
2792
2795
  variant: rest.variant,
2793
2796
  className,
2794
- }), dataTestId: `${rest.dataTestId}-card`, onClick: Boolean(onClick || rest.asChild) ? () => onClick?.() : undefined, children: jsxRuntime.jsx(KPI, { ...rest, className: "overflow-hidden rounded-lg" }) }));
2797
+ }), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxRuntime.jsxs(CardBody, { density: "compact", children: [jsxRuntime.jsx(KPI, { ...rest, className: "p-0", dataTestId: dataTestId ? `${dataTestId}-kpi` : undefined }), children] }) }));
2795
2798
  };
2796
2799
 
2797
2800
  const cvaMenuList = cssClassVarianceUtilities.cvaMerge([
package/index.esm.js CHANGED
@@ -2561,16 +2561,20 @@ const Tooltip = ({ children, dataTestId = "tool-tip", disabled, className, label
2561
2561
 
2562
2562
  const cvaIndicator = cvaMerge(["flex", "items-center"]);
2563
2563
  const cvaIndicatorIcon = cvaMerge(["mr-2"]);
2564
- const cvaIndicatorLabel = cvaMerge(["font-medium", "capitalize", "text-secondary-600"], {
2564
+ const cvaIndicatorLabel = cvaMerge(["capitalize", "text-secondary-600"], {
2565
2565
  variants: {
2566
2566
  size: {
2567
2567
  small: "pl-1 pr-1 text-xs",
2568
2568
  medium: "pl-2 pr-2 text-sm",
2569
- large: "pl-2 pr-2 text-base",
2569
+ },
2570
+ weight: {
2571
+ normal: "font-normal",
2572
+ medium: "font-medium",
2570
2573
  },
2571
2574
  },
2572
2575
  defaultVariants: {
2573
2576
  size: "medium",
2577
+ weight: "medium",
2574
2578
  },
2575
2579
  });
2576
2580
  const cvaIndicatorPing = cvaMerge(["animate-ping-sm", "absolute", "inline-flex", "h-full", "w-full", "rounded-full", "opacity-75", "bg-neutral-600"], {
@@ -2678,11 +2682,10 @@ const cvaIndicatorIconBackground = cvaMerge(["rounded-full", "items-center", "ju
2678
2682
  * @param {IndicatorProps} props - The props for the Indicator component
2679
2683
  * @returns {ReactElement} Indicator component
2680
2684
  */
2681
- const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, size, className, ...rest }) => {
2682
- 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 }), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label })) : null] }) }));
2685
+ const Indicator = ({ dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, size, weight, className, ...rest }) => {
2686
+ 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 }), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label })) : null] }) }));
2683
2687
  };
2684
2688
 
2685
- const cvaKPIContainer = cvaMerge(["inline-flex"]);
2686
2689
  const cvaKPI = cvaMerge(["w-full", "px-4", "py-2", "flex", "flex-col", "gap-1"], {
2687
2690
  variants: {
2688
2691
  variant: {
@@ -2739,13 +2742,12 @@ const LoadingContent$1 = () => (jsx("div", { className: "flex h-11 flex-row item
2739
2742
  * @param {KPIProps} props - The props for the KPI component
2740
2743
  * @returns {ReactElement} KPI component
2741
2744
  */
2742
- const KPI = ({ asChild = false, title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
2743
- const Comp = asChild ? Slot : "div";
2745
+ const KPI = ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant = "default", trend, ...rest }) => {
2744
2746
  const isSmallVariant = variant === "small";
2745
- return (jsxs(Comp, { className: cvaKPIContainer({ className }), "data-testid": `${dataTestId}-comp`, ...rest, children: [jsx(Tooltip, { className: "w-full", disabled: !tooltipLabel, label: tooltipLabel, placement: "bottom", children: jsx("div", { className: cvaKPI({ variant }), children: loading ? (jsx(LoadingContent$1, {})) : (jsxs(Fragment, { children: [jsx(Text, { className: cvaKPITitleText(), dataTestId: `${dataTestId}-title`, size: isSmallVariant ? "small" : "medium", subtle: true, weight: isSmallVariant ? "normal" : "bold", children: title }), jsx(Text, { className: cvaKPIvalueText({ variant }), dataTestId: `${dataTestId}-value`, size: isSmallVariant ? "small" : "large", type: "div", weight: isSmallVariant ? "bold" : "thick", children: jsxs("div", { className: cvaKPIValueContainer({
2746
- isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
2747
- className,
2748
- }), children: [jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }), !loading && jsx(Slottable, { children: rest.children })] }));
2747
+ return (jsx(Tooltip, { 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({
2748
+ isDefaultAndHasTrendValue: Boolean(trend?.value && !isSmallVariant),
2749
+ className,
2750
+ }), children: [jsxs("span", { className: cvaKPIvalueText({ variant }), children: [value, " ", unit] }), jsx(TrendIndicator, { isSmallVariant: isSmallVariant, trend: trend, unit: unit })] }) })] })) }) }));
2749
2751
  };
2750
2752
  const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
2751
2753
  if (!trend) {
@@ -2754,7 +2756,7 @@ const TrendIndicator = ({ trend, unit, isSmallVariant }) => {
2754
2756
  return (jsxs("div", { className: "flex flex-row items-center gap-1", "data-testid": "trend-indicator", children: [!isSmallVariant && trend.value ? (jsxs(Text, { dataTestId: "trend-value", size: "small", weight: "normal", children: [trend.value, " ", unit] })) : null, trend.variant?.icon ? jsx(Icon, { color: trend.variant.color, name: trend.variant.icon, size: "small" }) : null, trend.percentage ? (jsxs(Text, { className: cvaKPITrendPercentage({ color: trend.variant?.color }), size: "small", weight: "bold", children: [trend.percentage, "%"] })) : null] }));
2755
2757
  };
2756
2758
 
2757
- const cvaKPICard = cvaMerge(["inline-flex", "gap-1", "p-0"], {
2759
+ const cvaKPICard = cvaMerge(["inline-flex", "gap-1"], {
2758
2760
  variants: {
2759
2761
  isClickable: {
2760
2762
  true: ["hover:bg-slate-50", "component-card-border"],
@@ -2783,13 +2785,14 @@ const cvaKPICard = cvaMerge(["inline-flex", "gap-1", "p-0"], {
2783
2785
  * @param {KPICardProps} props - The props for the KPICard component
2784
2786
  * @returns {ReactElement} KPICard component
2785
2787
  */
2786
- const KPICard = ({ isActive, onClick, className, ...rest }) => {
2788
+ const KPICard = ({ isActive, onClick, className, dataTestId, children, ...rest }) => {
2789
+ const isClickable = Boolean(onClick && !rest.loading);
2787
2790
  return (jsx(Card, { className: cvaKPICard({
2788
- isClickable: Boolean((onClick || rest.asChild) && !rest.loading),
2791
+ isClickable,
2789
2792
  isActive,
2790
2793
  variant: rest.variant,
2791
2794
  className,
2792
- }), dataTestId: `${rest.dataTestId}-card`, onClick: Boolean(onClick || rest.asChild) ? () => onClick?.() : undefined, children: jsx(KPI, { ...rest, className: "overflow-hidden rounded-lg" }) }));
2795
+ }), "data-testid": dataTestId ? dataTestId : undefined, onClick: onClick, children: jsxs(CardBody, { density: "compact", children: [jsx(KPI, { ...rest, className: "p-0", dataTestId: dataTestId ? `${dataTestId}-kpi` : undefined }), children] }) }));
2793
2796
  };
2794
2797
 
2795
2798
  const cvaMenuList = cvaMerge([
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/react-components",
3
- "version": "1.4.51",
3
+ "version": "1.4.54",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
@@ -18,11 +18,11 @@
18
18
  "@tanstack/react-router": "1.47.1",
19
19
  "string-ts": "^2.0.0",
20
20
  "tailwind-merge": "^2.0.0",
21
- "@trackunit/ui-design-tokens": "1.3.43",
22
- "@trackunit/css-class-variance-utilities": "1.3.43",
23
- "@trackunit/shared-utils": "1.5.43",
24
- "@trackunit/ui-icons": "1.3.43",
25
- "@trackunit/react-table-pagination": "1.3.44"
21
+ "@trackunit/ui-design-tokens": "1.3.44",
22
+ "@trackunit/css-class-variance-utilities": "1.3.44",
23
+ "@trackunit/shared-utils": "1.5.44",
24
+ "@trackunit/ui-icons": "1.3.44",
25
+ "@trackunit/react-table-pagination": "1.3.45"
26
26
  },
27
27
  "module": "./index.esm.js",
28
28
  "main": "./index.cjs.js",
@@ -13,7 +13,11 @@ export interface IndicatorProps extends CommonProps {
13
13
  /**
14
14
  * The size of the label's text
15
15
  */
16
- size?: "small" | "medium" | "large";
16
+ size?: "small" | "medium";
17
+ /**
18
+ * The weight of the label's text
19
+ */
20
+ weight?: "normal" | "medium";
17
21
  /**
18
22
  * A text label to be displayed next to the indicator
19
23
  */
@@ -43,4 +47,4 @@ export interface IndicatorProps extends CommonProps {
43
47
  * @param {IndicatorProps} props - The props for the Indicator component
44
48
  * @returns {ReactElement} Indicator component
45
49
  */
46
- export declare const Indicator: ({ dataTestId, icon, label, color, withBackground, withLabel, ping, size, className, ...rest }: IndicatorProps) => ReactElement;
50
+ export declare const Indicator: ({ dataTestId, icon, label, color, withBackground, withLabel, ping, size, weight, className, ...rest }: IndicatorProps) => ReactElement;
@@ -1,7 +1,8 @@
1
1
  export declare const cvaIndicator: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
2
2
  export declare const cvaIndicatorIcon: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
3
3
  export declare const cvaIndicatorLabel: (props?: ({
4
- size?: "small" | "medium" | "large" | null | undefined;
4
+ size?: "small" | "medium" | null | undefined;
5
+ weight?: "medium" | "normal" | null | undefined;
5
6
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
6
7
  export declare const cvaIndicatorPing: (props?: ({
7
8
  color?: "primary" | "secondary" | "neutral" | "info" | "success" | "warning" | "danger" | "good" | "low" | "critical" | "working" | "idle" | "stopped" | "moving" | "active" | "unknown" | "unused" | "utilized" | "heavily_utilized" | "unknown_utilization" | "available" | "on_rent" | "pickup_ready" | "transfer" | "in_repair" | "returned" | "other_rental_status" | "site_area" | "site_classic_poi" | "site_classic_zone" | "site_depot" | "site_work_place" | "site_construction_site" | "site_unknown" | "white" | "black" | null | undefined;
@@ -1,4 +1,4 @@
1
- import { ReactElement, ReactNode } from "react";
1
+ import { ReactElement } from "react";
2
2
  import { CommonProps } from "../../common";
3
3
  export interface KPIProps extends CommonProps {
4
4
  /**
@@ -17,20 +17,6 @@ export interface KPIProps extends CommonProps {
17
17
  * Whether or not to show the loading state
18
18
  */
19
19
  loading?: boolean;
20
- /**
21
- * Use asChild to render the KPI as another component
22
- */
23
- asChild?: boolean;
24
- /**
25
- * Only add when asChild is true.
26
- * The child element is used to wrap the KPI component to set it to another HTML element.
27
- *
28
- * @example
29
- * <KPI {...props}>
30
- * <Link to="/" />
31
- * </KPI>
32
- */
33
- children?: ReactNode;
34
20
  /**
35
21
  * Label for the tooltip
36
22
  */
@@ -72,4 +58,4 @@ export interface KPIProps extends CommonProps {
72
58
  * @param {KPIProps} props - The props for the KPI component
73
59
  * @returns {ReactElement} KPI component
74
60
  */
75
- export declare const KPI: ({ asChild, title, value, loading, unit, className, dataTestId, tooltipLabel, variant, trend, ...rest }: KPIProps) => ReactElement;
61
+ export declare const KPI: ({ title, value, loading, unit, className, dataTestId, tooltipLabel, variant, trend, ...rest }: KPIProps) => ReactElement;
@@ -1,4 +1,3 @@
1
- export declare const cvaKPIContainer: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
2
1
  export declare const cvaKPI: (props?: ({
3
2
  variant?: "default" | "small" | "condensed" | null | undefined;
4
3
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
@@ -1,4 +1,4 @@
1
- import { ReactElement } from "react";
1
+ import { ReactElement, ReactNode } from "react";
2
2
  import { KPIProps } from "../KPI/KPI";
3
3
  export interface KPICardProps extends KPIProps {
4
4
  /**
@@ -9,6 +9,10 @@ export interface KPICardProps extends KPIProps {
9
9
  * On kpi card click handler
10
10
  */
11
11
  onClick?: () => void;
12
+ /**
13
+ * Children to be rendered
14
+ */
15
+ children?: ReactNode;
12
16
  }
13
17
  /**
14
18
  * The KPICard component is used to display KPIs.
@@ -16,4 +20,4 @@ export interface KPICardProps extends KPIProps {
16
20
  * @param {KPICardProps} props - The props for the KPICard component
17
21
  * @returns {ReactElement} KPICard component
18
22
  */
19
- export declare const KPICard: ({ isActive, onClick, className, ...rest }: KPICardProps) => ReactElement;
23
+ export declare const KPICard: ({ isActive, onClick, className, dataTestId, children, ...rest }: KPICardProps) => ReactElement;