@trackunit/react-components 1.8.2 → 1.8.8

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
@@ -213,13 +213,13 @@ const cvaTag = cssClassVarianceUtilities.cvaMerge([
213
213
  success: ["bg-success-100", "text-success-700"],
214
214
  warning: ["bg-warning-100", "text-warning-700"],
215
215
  danger: ["bg-danger-100", "text-danger-700"],
216
- good: ["bg-good-100", "text-good-700"],
216
+ good: ["bg-good-100", "text-good-800"],
217
217
  low: ["bg-low-100", "text-low-700"],
218
218
  critical: ["bg-critical-100", "text-critical-700"],
219
- working: ["bg-working-100", "text-working-700"],
219
+ working: ["bg-working-50", "text-working-700"],
220
220
  stopped: ["bg-stopped-100", "text-stopped-700"],
221
221
  idle: ["bg-idle-100", "text-idle-700"],
222
- unknown: ["bg-unknown-200", "text-unknown-700"],
222
+ unknown: ["bg-unknown-100", "text-unknown-500"],
223
223
  moving: ["bg-neutral-100", "text-neutral-700"],
224
224
  active: ["bg-neutral-100", "text-neutral-700"],
225
225
  excessive_usage: ["bg-danger-100", "text-danger-700"],
@@ -2312,7 +2312,7 @@ const cvaHighlight = cssClassVarianceUtilities.cvaMerge([
2312
2312
  success: ["bg-success-100", "text-success-700"],
2313
2313
  warning: ["bg-warning-100", "text-warning-700"],
2314
2314
  danger: ["bg-danger-100", "text-danger-700"],
2315
- unknown: ["bg-unknown-100", "text-unknown-700"],
2315
+ unknown: ["bg-neutral-100", "text-neutral-700"],
2316
2316
  clear: ["font-normal", "px-0"],
2317
2317
  },
2318
2318
  },
@@ -2793,33 +2793,33 @@ const cvaIndicatorPing = cssClassVarianceUtilities.cvaMerge(["animate-ping-sm",
2793
2793
  warning: "bg-warning-600",
2794
2794
  danger: "bg-danger-600",
2795
2795
  good: "bg-good-600",
2796
- low: "bg-low-600",
2796
+ low: "bg-low-500",
2797
2797
  critical: "bg-critical-600",
2798
2798
  working: "bg-working-500",
2799
- idle: "bg-idle-600",
2799
+ idle: "bg-idle-500",
2800
2800
  stopped: "bg-stopped-700",
2801
2801
  moving: "bg-moving-600",
2802
2802
  active: "bg-active-600",
2803
- excessive_usage: "bg-danger-600",
2803
+ excessive_usage: "bg-excessive_usage-600",
2804
2804
  unknown: "bg-unknown-400",
2805
2805
  unused: "bg-unused-400",
2806
2806
  utilized: "bg-utilized-600",
2807
2807
  heavily_utilized: "bg-heavily_utilized-500",
2808
2808
  unknown_utilization: "bg-unknown_utilization-600",
2809
- available: "bg-available-600",
2810
- on_rent: "bg-on_rent-600",
2811
- pickup_ready: "bg-pickup_ready-600",
2809
+ available: "bg-available-500",
2810
+ on_rent: "bg-on_rent-400",
2811
+ pickup_ready: "bg-pickup_ready-500",
2812
2812
  transfer: "bg-transfer-600",
2813
- in_repair: "bg-in_repair-600",
2814
- returned: "bg-returned-600",
2815
- other_rental_status: "bg-other_rental_status-600",
2813
+ in_repair: "bg-in_repair-400",
2814
+ returned: "bg-returned-500",
2815
+ other_rental_status: "bg-other_rental_status-500",
2816
2816
  site_area: "bg-site_area-600",
2817
- site_classic_poi: "bg-site_classic_poi-500",
2818
- site_classic_zone: "bg-site_classic_zone-500",
2817
+ site_classic_poi: "bg-site_classic_poi-600",
2818
+ site_classic_zone: "bg-site_classic_zone-600",
2819
2819
  site_depot: "bg-site_depot-500",
2820
2820
  site_work_place: "bg-site_work_place-600",
2821
2821
  site_construction_site: "bg-site_construction_site-500",
2822
- site_unknown: "bg-site_unknown-500",
2822
+ site_unknown: "bg-site_unknown-600",
2823
2823
  white: "bg-white",
2824
2824
  black: "bg-black",
2825
2825
  },
@@ -2843,26 +2843,26 @@ const cvaIndicatorIconBackground = cssClassVarianceUtilities.cvaMerge(["rounded-
2843
2843
  stopped: "bg-stopped-100 text-stopped-700",
2844
2844
  moving: "text-moving-600 bg-neutral-100",
2845
2845
  active: "text-active-600 bg-neutral-100",
2846
- excessive_usage: "bg-danger-100 text-danger-600",
2847
- unknown: "bg-unknown-50 text-unknown-400",
2848
- unused: "bg-unused-300 text-unused-400",
2849
- utilized: "bg-utilized-400 text-utilized-600",
2850
- heavily_utilized: "bg-heavily_utilized-300 text-heavily_utilized-500",
2851
- unknown_utilization: "bg-unknown_utilization-300 text-unknown_utilization-600",
2852
- available: "bg-available-100 text-available-600",
2853
- on_rent: "bg-on_rent-100 text-on_rent-600",
2854
- pickup_ready: "bg-pickup_ready-100 text-pickup_ready-600",
2846
+ excessive_usage: "bg-excessive_usage-100 text-excessive_usage-600",
2847
+ unknown: "bg-unknown-100 text-unknown-400",
2848
+ unused: "bg-unused-100 text-unused-400",
2849
+ utilized: "bg-utilized-100 text-utilized-600",
2850
+ heavily_utilized: "bg-heavily_utilized-100 text-heavily_utilized-500",
2851
+ unknown_utilization: "bg-unknown_utilization-100 text-unknown_utilization-600",
2852
+ available: "bg-available-100 text-available-500",
2853
+ on_rent: "bg-on_rent-100 text-on_rent-400",
2854
+ pickup_ready: "bg-pickup_ready-100 text-pickup_ready-500",
2855
2855
  transfer: "bg-transfer-100 text-transfer-600",
2856
- in_repair: "bg-in_repair-100 text-in_repair-600",
2857
- returned: "bg-returned-100 text-returned-600",
2858
- other_rental_status: "bg-other_rental_status-100 text-other_rental_status-600",
2856
+ in_repair: "bg-in_repair-100 text-in_repair-700",
2857
+ returned: "bg-returned-100 text-returned-500",
2858
+ other_rental_status: "bg-other_rental_status-100 text-other_rental_status-500",
2859
2859
  site_area: "bg-site_area-100 text-site_area-600",
2860
- site_classic_poi: "bg-site_classic_poi-100 text-site_classic_poi-500",
2861
- site_classic_zone: "bg-site_classic_zone-100 text-site_classic_zone-500",
2860
+ site_classic_poi: "bg-site_classic_poi-100 text-site_classic_poi-600",
2861
+ site_classic_zone: "bg-site_classic_zone-100 text-site_classic_zone-600",
2862
2862
  site_depot: "bg-site_depot-100 text-site_depot-500",
2863
2863
  site_work_place: "bg-site_work_place-100 text-site_work_place-600",
2864
2864
  site_construction_site: "bg-site_construction_site-100 text-site_construction_site-500",
2865
- site_unknown: "bg-site_unknown-100 text-site_unknown-500",
2865
+ site_unknown: "bg-site_unknown-100 text-site_unknown-600",
2866
2866
  white: "bg-white text-black",
2867
2867
  black: "bg-black text-white",
2868
2868
  },
@@ -3887,26 +3887,118 @@ const Tabs = ({ children, forceRender, className, dataTestId, fullWidth, ...rest
3887
3887
  return (jsxRuntime.jsx(reactTabs.Root, { className: cvaTabsRoot({ className }), "data-testid": dataTestId, ...rest, children: children }));
3888
3888
  };
3889
3889
 
3890
- const cvaToggleGroup = cssClassVarianceUtilities.cvaMerge(["inline-flex", "divide-x", "divide-slate-300"]);
3891
- const cvaToggleItem = cssClassVarianceUtilities.cvaMerge(["text-slate-600", "rounded-none", "bg-transparent", "flex", "border-x-0", "bg-white"], {
3890
+ const cvaToggleGroup = cssClassVarianceUtilities.cvaMerge(["inline-flex", "p-0.5", "bg-neutral-200", "rounded-md", "gap-1", "relative"]);
3891
+ const cvaToggleItem = cssClassVarianceUtilities.cvaMerge(["z-10", "group"], {
3892
3892
  variants: {
3893
3893
  selected: {
3894
- true: ["bg-slate-200", "hover:bg-slate-200", "text-slate-800"],
3894
+ true: [],
3895
+ false: [],
3896
+ },
3897
+ disabled: {
3898
+ true: [],
3895
3899
  false: [],
3896
3900
  },
3897
3901
  },
3902
+ compoundVariants: [
3903
+ {
3904
+ selected: true,
3905
+ disabled: true,
3906
+ class: ["bg-neutral-50", "shadow-none", "rounded"],
3907
+ },
3908
+ ],
3898
3909
  });
3899
- const cvaToggleItemText = cssClassVarianceUtilities.cvaMerge(["text-ellipsis", "truncate", "flex-grow"], {
3910
+ const cvaToggleGroupWithSlidingBackground = cssClassVarianceUtilities.cvaMerge([], {
3900
3911
  variants: {
3901
- disabledAndSelected: {
3902
- true: ["text-slate-800"],
3903
- false: [],
3912
+ isMounted: {
3913
+ true: [
3914
+ "before:absolute",
3915
+ "before:top-0.5",
3916
+ "before:bottom-0.5",
3917
+ "before:left-[var(--sliding-left)]",
3918
+ "before:w-[var(--sliding-width)]",
3919
+ "before:transition-[left,width]",
3920
+ "before:duration-[var(--transition-duration)]",
3921
+ "before:ease-out",
3922
+ "before:rounded",
3923
+ "before:bg-white",
3924
+ "before:z-0",
3925
+ "before:content-['']",
3926
+ "before:shadow-md",
3927
+ ],
3904
3928
  },
3929
+ },
3930
+ });
3931
+ const cvaToggleItemText = cssClassVarianceUtilities.cvaMerge(["text-ellipsis", "truncate", "flex-grow", "font-medium"], {
3932
+ variants: {
3905
3933
  maxWidth: {
3906
3934
  sm: ["max-w-[80px]"],
3907
3935
  md: ["max-w-[120px]"],
3908
3936
  },
3937
+ selected: {
3938
+ true: [],
3939
+ false: [],
3940
+ },
3941
+ disabled: {
3942
+ true: [],
3943
+ false: [],
3944
+ },
3945
+ },
3946
+ compoundVariants: [
3947
+ {
3948
+ selected: true,
3949
+ disabled: false,
3950
+ class: ["text-neutral-900"],
3951
+ },
3952
+ {
3953
+ selected: true,
3954
+ disabled: true,
3955
+ class: ["text-neutral-400"],
3956
+ },
3957
+ {
3958
+ selected: false,
3959
+ disabled: false,
3960
+ class: ["text-neutral-600", "group-hover:text-neutral-900"],
3961
+ },
3962
+ {
3963
+ selected: false,
3964
+ disabled: true,
3965
+ class: ["text-neutral-400"],
3966
+ },
3967
+ ],
3968
+ });
3969
+ const cvaToggleItemContent = cssClassVarianceUtilities.cvaMerge([], {
3970
+ variants: {
3971
+ selected: {
3972
+ true: [],
3973
+ false: [],
3974
+ },
3975
+ disabled: {
3976
+ true: [],
3977
+ false: [],
3978
+ },
3909
3979
  },
3980
+ compoundVariants: [
3981
+ {
3982
+ selected: true,
3983
+ disabled: false,
3984
+ class: ["text-neutral-700"],
3985
+ },
3986
+ {
3987
+ selected: true,
3988
+ disabled: true,
3989
+ class: ["text-neutral-300"],
3990
+ },
3991
+ {
3992
+ selected: false,
3993
+ disabled: false,
3994
+ class: ["text-neutral-500", "group-hover:text-neutral-900"],
3995
+ },
3996
+ {
3997
+ selected: false,
3998
+ disabled: true,
3999
+ class: ["text-neutral-400"],
4000
+ },
4001
+ ],
3910
4002
  });
3911
4003
 
3912
4004
  /**
@@ -3916,16 +4008,53 @@ const cvaToggleItemText = cssClassVarianceUtilities.cvaMerge(["text-ellipsis", "
3916
4008
  * @returns {ReactElement} ToggleGroup component
3917
4009
  */
3918
4010
  const ToggleGroup = ({ list, selected, setSelected, onChange, disabled = false, size = "medium", isIconOnly = false, className, dataTestId, }) => {
3919
- return (jsxRuntime.jsx("div", { className: cvaToggleGroup({ className }), "data-testid": dataTestId, children: list.map((item, index) => (jsxRuntime.jsx(ToggleItem, { className: tailwindMerge.twMerge(item.className, index === 0 ? ["rounded-l-md", "border-l"] : "", index === list.length - 1 ? ["rounded-r-md", "border-r"] : ""), dataTestId: item.dataTestId, disabled: disabled, iconName: item.iconName, isIconOnly: isIconOnly, onClick: () => {
4011
+ const [isMounted, setIsMounted] = react.useState(false);
4012
+ const buttonRefs = react.useRef([]);
4013
+ const selectedIndex = list.findIndex(item => item.id === selected);
4014
+ const validIndex = selectedIndex >= 0 ? selectedIndex : 0;
4015
+ const containerPadding = 2; // p-0.5 = 2px
4016
+ const gap = 4;
4017
+ const slidingLeft = containerPadding +
4018
+ buttonRefs.current.slice(0, validIndex).reduce((sum, ref) => sum + (ref?.offsetWidth || 0) + gap, 0);
4019
+ const slidingWidth = buttonRefs.current[validIndex]?.offsetWidth || 0;
4020
+ react.useEffect(() => {
4021
+ setIsMounted(true);
4022
+ }, []);
4023
+ return (jsxRuntime.jsx("div", { className: tailwindMerge.twMerge(cvaToggleGroup({ className }), cvaToggleGroupWithSlidingBackground({ isMounted })), "data-testid": dataTestId, style:
4024
+ // eslint-disable-next-line local-rules/no-typescript-assertion
4025
+ {
4026
+ "--sliding-left": `${slidingLeft}px`,
4027
+ "--sliding-width": `${slidingWidth}px`,
4028
+ "--transition-duration": "200ms",
4029
+ }, children: list.map((item, index) => (jsxRuntime.jsx(ToggleItem, { className: item.className, dataTestId: item.dataTestId, disabled: disabled, iconName: item.iconName, isIconOnly: isIconOnly, onClick: () => {
3920
4030
  setSelected(item.id);
3921
4031
  onChange?.(item.id);
3922
- }, selected: selected === item.id, size: size, text: item.text, title: item.title, tooltip: item.tooltip }, item.id))) }));
4032
+ }, ref: el => (buttonRefs.current[index] = el), selected: selected === item.id, size: size, text: item.text, title: item.title, tooltip: item.tooltip }, item.id))) }));
3923
4033
  };
3924
- /**
3925
- * Individual ToggleItem to create custom ToggleGroups
3926
- */
3927
- const ToggleItem = ({ title, onClick, disabled = false, isIconOnly = false, iconName, size, className, selected = false, text, tooltip, dataTestId, }) => {
3928
- return isIconOnly ? (jsxRuntime.jsx(Tooltip, { label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsxRuntime.jsx(IconButton, { className: cvaToggleItem({ className, selected }), "data-testid": dataTestId, disabled: disabled, icon: iconName ? (jsxRuntime.jsx(Icon, { className: selected ? "text-slate-600" : "text-slate-400", name: iconName, size: "small" })) : null, onClick: onClick, size: size, title: iconName, variant: "secondary" }) })) : (jsxRuntime.jsx(Tooltip, { disabled: !tooltip?.content, label: tooltip?.content, placement: tooltip?.placement || "top", children: jsxRuntime.jsx(Button, { className: cvaToggleItem({ className, selected }), "data-testid": dataTestId, disabled: disabled, onClick: onClick, prefix: iconName ? (jsxRuntime.jsx(Icon, { className: selected ? "text-slate-600" : "text-slate-400", name: iconName, size: "small" })) : null, size: size, variant: "secondary", children: jsxRuntime.jsx("span", { className: cvaToggleItemText({ disabledAndSelected: disabled && selected, maxWidth: text?.maxWidth }), children: title }) }) }));
4034
+ const ToggleItem = ({ title, onClick, disabled, isIconOnly, iconName, size, className, selected, text, tooltip, dataTestId, ref, }) => {
4035
+ return isIconOnly ? (jsxRuntime.jsx(Tooltip, { label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsxRuntime.jsx(ToggleButton, { className: cvaToggleItem({
4036
+ className,
4037
+ selected,
4038
+ disabled,
4039
+ }), dataTestId: dataTestId, disabled: disabled, icon: iconName ? (jsxRuntime.jsx(Icon, { className: cvaToggleItemContent({ selected, disabled }), name: iconName, size: size === "large" ? "medium" : "small" })) : null, isIconOnly: isIconOnly, onClick: onClick, ref: ref, size: size, title: title }) })) : (jsxRuntime.jsx(Tooltip, { disabled: !tooltip?.content && !text?.truncate, label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsxRuntime.jsx(ToggleButton, { className: cvaToggleItem({
4040
+ className,
4041
+ selected,
4042
+ disabled,
4043
+ }), dataTestId: dataTestId, disabled: disabled, iconPrefix: iconName ? (jsxRuntime.jsx(Icon, { className: cvaToggleItemContent({ selected, disabled }), name: iconName, size: size === "large" ? "medium" : "small" })) : null, isIconOnly: isIconOnly, onClick: onClick, ref: ref, size: size, title: title, children: jsxRuntime.jsx("span", { className: cvaToggleItemText({ maxWidth: text?.maxWidth, selected, disabled }), children: title }) }) }));
4044
+ };
4045
+ const ToggleButton = ({ title, size, children, dataTestId, className, icon, iconPrefix, isIconOnly, ...rest }) => {
4046
+ const sizeClasses = {
4047
+ small: "px-2 py-1 text-xs",
4048
+ medium: "px-2 py-1 text-sm",
4049
+ large: "px-2.5 py-1.5 text-base",
4050
+ };
4051
+ const iconOnlySizeClasses = {
4052
+ small: "p-1 text-xs",
4053
+ medium: "p-1.5 text-sm",
4054
+ large: "p-2 text-base",
4055
+ };
4056
+ const paddingClasses = isIconOnly ? iconOnlySizeClasses[size] : sizeClasses[size];
4057
+ return (jsxRuntime.jsx("button", { className: tailwindMerge.twMerge("flex items-center justify-center gap-1 self-stretch", paddingClasses, className), "data-testid": dataTestId, title: isIconOnly ? title : undefined, ...rest, children: isIconOnly ? (icon) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [iconPrefix, children] })) }));
3929
4058
  };
3930
4059
 
3931
4060
  const cvaValueBar = cssClassVarianceUtilities.cvaMerge([
@@ -4225,7 +4354,6 @@ exports.Tabs = Tabs;
4225
4354
  exports.Tag = Tag;
4226
4355
  exports.Text = Text;
4227
4356
  exports.ToggleGroup = ToggleGroup;
4228
- exports.ToggleItem = ToggleItem;
4229
4357
  exports.Tooltip = Tooltip;
4230
4358
  exports.ValueBar = ValueBar;
4231
4359
  exports.VirtualizedList = VirtualizedList;
@@ -4253,7 +4381,9 @@ exports.cvaPageHeader = cvaPageHeader;
4253
4381
  exports.cvaPageHeaderContainer = cvaPageHeaderContainer;
4254
4382
  exports.cvaPageHeaderHeading = cvaPageHeaderHeading;
4255
4383
  exports.cvaToggleGroup = cvaToggleGroup;
4384
+ exports.cvaToggleGroupWithSlidingBackground = cvaToggleGroupWithSlidingBackground;
4256
4385
  exports.cvaToggleItem = cvaToggleItem;
4386
+ exports.cvaToggleItemContent = cvaToggleItemContent;
4257
4387
  exports.cvaToggleItemText = cvaToggleItemText;
4258
4388
  exports.cvaVirtualizedList = cvaVirtualizedList;
4259
4389
  exports.cvaVirtualizedListContainer = cvaVirtualizedListContainer;
package/index.esm.js CHANGED
@@ -211,13 +211,13 @@ const cvaTag = cvaMerge([
211
211
  success: ["bg-success-100", "text-success-700"],
212
212
  warning: ["bg-warning-100", "text-warning-700"],
213
213
  danger: ["bg-danger-100", "text-danger-700"],
214
- good: ["bg-good-100", "text-good-700"],
214
+ good: ["bg-good-100", "text-good-800"],
215
215
  low: ["bg-low-100", "text-low-700"],
216
216
  critical: ["bg-critical-100", "text-critical-700"],
217
- working: ["bg-working-100", "text-working-700"],
217
+ working: ["bg-working-50", "text-working-700"],
218
218
  stopped: ["bg-stopped-100", "text-stopped-700"],
219
219
  idle: ["bg-idle-100", "text-idle-700"],
220
- unknown: ["bg-unknown-200", "text-unknown-700"],
220
+ unknown: ["bg-unknown-100", "text-unknown-500"],
221
221
  moving: ["bg-neutral-100", "text-neutral-700"],
222
222
  active: ["bg-neutral-100", "text-neutral-700"],
223
223
  excessive_usage: ["bg-danger-100", "text-danger-700"],
@@ -2310,7 +2310,7 @@ const cvaHighlight = cvaMerge([
2310
2310
  success: ["bg-success-100", "text-success-700"],
2311
2311
  warning: ["bg-warning-100", "text-warning-700"],
2312
2312
  danger: ["bg-danger-100", "text-danger-700"],
2313
- unknown: ["bg-unknown-100", "text-unknown-700"],
2313
+ unknown: ["bg-neutral-100", "text-neutral-700"],
2314
2314
  clear: ["font-normal", "px-0"],
2315
2315
  },
2316
2316
  },
@@ -2791,33 +2791,33 @@ const cvaIndicatorPing = cvaMerge(["animate-ping-sm", "absolute", "inline-flex",
2791
2791
  warning: "bg-warning-600",
2792
2792
  danger: "bg-danger-600",
2793
2793
  good: "bg-good-600",
2794
- low: "bg-low-600",
2794
+ low: "bg-low-500",
2795
2795
  critical: "bg-critical-600",
2796
2796
  working: "bg-working-500",
2797
- idle: "bg-idle-600",
2797
+ idle: "bg-idle-500",
2798
2798
  stopped: "bg-stopped-700",
2799
2799
  moving: "bg-moving-600",
2800
2800
  active: "bg-active-600",
2801
- excessive_usage: "bg-danger-600",
2801
+ excessive_usage: "bg-excessive_usage-600",
2802
2802
  unknown: "bg-unknown-400",
2803
2803
  unused: "bg-unused-400",
2804
2804
  utilized: "bg-utilized-600",
2805
2805
  heavily_utilized: "bg-heavily_utilized-500",
2806
2806
  unknown_utilization: "bg-unknown_utilization-600",
2807
- available: "bg-available-600",
2808
- on_rent: "bg-on_rent-600",
2809
- pickup_ready: "bg-pickup_ready-600",
2807
+ available: "bg-available-500",
2808
+ on_rent: "bg-on_rent-400",
2809
+ pickup_ready: "bg-pickup_ready-500",
2810
2810
  transfer: "bg-transfer-600",
2811
- in_repair: "bg-in_repair-600",
2812
- returned: "bg-returned-600",
2813
- other_rental_status: "bg-other_rental_status-600",
2811
+ in_repair: "bg-in_repair-400",
2812
+ returned: "bg-returned-500",
2813
+ other_rental_status: "bg-other_rental_status-500",
2814
2814
  site_area: "bg-site_area-600",
2815
- site_classic_poi: "bg-site_classic_poi-500",
2816
- site_classic_zone: "bg-site_classic_zone-500",
2815
+ site_classic_poi: "bg-site_classic_poi-600",
2816
+ site_classic_zone: "bg-site_classic_zone-600",
2817
2817
  site_depot: "bg-site_depot-500",
2818
2818
  site_work_place: "bg-site_work_place-600",
2819
2819
  site_construction_site: "bg-site_construction_site-500",
2820
- site_unknown: "bg-site_unknown-500",
2820
+ site_unknown: "bg-site_unknown-600",
2821
2821
  white: "bg-white",
2822
2822
  black: "bg-black",
2823
2823
  },
@@ -2841,26 +2841,26 @@ const cvaIndicatorIconBackground = cvaMerge(["rounded-full", "items-center", "ju
2841
2841
  stopped: "bg-stopped-100 text-stopped-700",
2842
2842
  moving: "text-moving-600 bg-neutral-100",
2843
2843
  active: "text-active-600 bg-neutral-100",
2844
- excessive_usage: "bg-danger-100 text-danger-600",
2845
- unknown: "bg-unknown-50 text-unknown-400",
2846
- unused: "bg-unused-300 text-unused-400",
2847
- utilized: "bg-utilized-400 text-utilized-600",
2848
- heavily_utilized: "bg-heavily_utilized-300 text-heavily_utilized-500",
2849
- unknown_utilization: "bg-unknown_utilization-300 text-unknown_utilization-600",
2850
- available: "bg-available-100 text-available-600",
2851
- on_rent: "bg-on_rent-100 text-on_rent-600",
2852
- pickup_ready: "bg-pickup_ready-100 text-pickup_ready-600",
2844
+ excessive_usage: "bg-excessive_usage-100 text-excessive_usage-600",
2845
+ unknown: "bg-unknown-100 text-unknown-400",
2846
+ unused: "bg-unused-100 text-unused-400",
2847
+ utilized: "bg-utilized-100 text-utilized-600",
2848
+ heavily_utilized: "bg-heavily_utilized-100 text-heavily_utilized-500",
2849
+ unknown_utilization: "bg-unknown_utilization-100 text-unknown_utilization-600",
2850
+ available: "bg-available-100 text-available-500",
2851
+ on_rent: "bg-on_rent-100 text-on_rent-400",
2852
+ pickup_ready: "bg-pickup_ready-100 text-pickup_ready-500",
2853
2853
  transfer: "bg-transfer-100 text-transfer-600",
2854
- in_repair: "bg-in_repair-100 text-in_repair-600",
2855
- returned: "bg-returned-100 text-returned-600",
2856
- other_rental_status: "bg-other_rental_status-100 text-other_rental_status-600",
2854
+ in_repair: "bg-in_repair-100 text-in_repair-700",
2855
+ returned: "bg-returned-100 text-returned-500",
2856
+ other_rental_status: "bg-other_rental_status-100 text-other_rental_status-500",
2857
2857
  site_area: "bg-site_area-100 text-site_area-600",
2858
- site_classic_poi: "bg-site_classic_poi-100 text-site_classic_poi-500",
2859
- site_classic_zone: "bg-site_classic_zone-100 text-site_classic_zone-500",
2858
+ site_classic_poi: "bg-site_classic_poi-100 text-site_classic_poi-600",
2859
+ site_classic_zone: "bg-site_classic_zone-100 text-site_classic_zone-600",
2860
2860
  site_depot: "bg-site_depot-100 text-site_depot-500",
2861
2861
  site_work_place: "bg-site_work_place-100 text-site_work_place-600",
2862
2862
  site_construction_site: "bg-site_construction_site-100 text-site_construction_site-500",
2863
- site_unknown: "bg-site_unknown-100 text-site_unknown-500",
2863
+ site_unknown: "bg-site_unknown-100 text-site_unknown-600",
2864
2864
  white: "bg-white text-black",
2865
2865
  black: "bg-black text-white",
2866
2866
  },
@@ -3885,26 +3885,118 @@ const Tabs = ({ children, forceRender, className, dataTestId, fullWidth, ...rest
3885
3885
  return (jsx(Root, { className: cvaTabsRoot({ className }), "data-testid": dataTestId, ...rest, children: children }));
3886
3886
  };
3887
3887
 
3888
- const cvaToggleGroup = cvaMerge(["inline-flex", "divide-x", "divide-slate-300"]);
3889
- const cvaToggleItem = cvaMerge(["text-slate-600", "rounded-none", "bg-transparent", "flex", "border-x-0", "bg-white"], {
3888
+ const cvaToggleGroup = cvaMerge(["inline-flex", "p-0.5", "bg-neutral-200", "rounded-md", "gap-1", "relative"]);
3889
+ const cvaToggleItem = cvaMerge(["z-10", "group"], {
3890
3890
  variants: {
3891
3891
  selected: {
3892
- true: ["bg-slate-200", "hover:bg-slate-200", "text-slate-800"],
3892
+ true: [],
3893
+ false: [],
3894
+ },
3895
+ disabled: {
3896
+ true: [],
3893
3897
  false: [],
3894
3898
  },
3895
3899
  },
3900
+ compoundVariants: [
3901
+ {
3902
+ selected: true,
3903
+ disabled: true,
3904
+ class: ["bg-neutral-50", "shadow-none", "rounded"],
3905
+ },
3906
+ ],
3896
3907
  });
3897
- const cvaToggleItemText = cvaMerge(["text-ellipsis", "truncate", "flex-grow"], {
3908
+ const cvaToggleGroupWithSlidingBackground = cvaMerge([], {
3898
3909
  variants: {
3899
- disabledAndSelected: {
3900
- true: ["text-slate-800"],
3901
- false: [],
3910
+ isMounted: {
3911
+ true: [
3912
+ "before:absolute",
3913
+ "before:top-0.5",
3914
+ "before:bottom-0.5",
3915
+ "before:left-[var(--sliding-left)]",
3916
+ "before:w-[var(--sliding-width)]",
3917
+ "before:transition-[left,width]",
3918
+ "before:duration-[var(--transition-duration)]",
3919
+ "before:ease-out",
3920
+ "before:rounded",
3921
+ "before:bg-white",
3922
+ "before:z-0",
3923
+ "before:content-['']",
3924
+ "before:shadow-md",
3925
+ ],
3902
3926
  },
3927
+ },
3928
+ });
3929
+ const cvaToggleItemText = cvaMerge(["text-ellipsis", "truncate", "flex-grow", "font-medium"], {
3930
+ variants: {
3903
3931
  maxWidth: {
3904
3932
  sm: ["max-w-[80px]"],
3905
3933
  md: ["max-w-[120px]"],
3906
3934
  },
3935
+ selected: {
3936
+ true: [],
3937
+ false: [],
3938
+ },
3939
+ disabled: {
3940
+ true: [],
3941
+ false: [],
3942
+ },
3943
+ },
3944
+ compoundVariants: [
3945
+ {
3946
+ selected: true,
3947
+ disabled: false,
3948
+ class: ["text-neutral-900"],
3949
+ },
3950
+ {
3951
+ selected: true,
3952
+ disabled: true,
3953
+ class: ["text-neutral-400"],
3954
+ },
3955
+ {
3956
+ selected: false,
3957
+ disabled: false,
3958
+ class: ["text-neutral-600", "group-hover:text-neutral-900"],
3959
+ },
3960
+ {
3961
+ selected: false,
3962
+ disabled: true,
3963
+ class: ["text-neutral-400"],
3964
+ },
3965
+ ],
3966
+ });
3967
+ const cvaToggleItemContent = cvaMerge([], {
3968
+ variants: {
3969
+ selected: {
3970
+ true: [],
3971
+ false: [],
3972
+ },
3973
+ disabled: {
3974
+ true: [],
3975
+ false: [],
3976
+ },
3907
3977
  },
3978
+ compoundVariants: [
3979
+ {
3980
+ selected: true,
3981
+ disabled: false,
3982
+ class: ["text-neutral-700"],
3983
+ },
3984
+ {
3985
+ selected: true,
3986
+ disabled: true,
3987
+ class: ["text-neutral-300"],
3988
+ },
3989
+ {
3990
+ selected: false,
3991
+ disabled: false,
3992
+ class: ["text-neutral-500", "group-hover:text-neutral-900"],
3993
+ },
3994
+ {
3995
+ selected: false,
3996
+ disabled: true,
3997
+ class: ["text-neutral-400"],
3998
+ },
3999
+ ],
3908
4000
  });
3909
4001
 
3910
4002
  /**
@@ -3914,16 +4006,53 @@ const cvaToggleItemText = cvaMerge(["text-ellipsis", "truncate", "flex-grow"], {
3914
4006
  * @returns {ReactElement} ToggleGroup component
3915
4007
  */
3916
4008
  const ToggleGroup = ({ list, selected, setSelected, onChange, disabled = false, size = "medium", isIconOnly = false, className, dataTestId, }) => {
3917
- return (jsx("div", { className: cvaToggleGroup({ className }), "data-testid": dataTestId, children: list.map((item, index) => (jsx(ToggleItem, { className: twMerge(item.className, index === 0 ? ["rounded-l-md", "border-l"] : "", index === list.length - 1 ? ["rounded-r-md", "border-r"] : ""), dataTestId: item.dataTestId, disabled: disabled, iconName: item.iconName, isIconOnly: isIconOnly, onClick: () => {
4009
+ const [isMounted, setIsMounted] = useState(false);
4010
+ const buttonRefs = useRef([]);
4011
+ const selectedIndex = list.findIndex(item => item.id === selected);
4012
+ const validIndex = selectedIndex >= 0 ? selectedIndex : 0;
4013
+ const containerPadding = 2; // p-0.5 = 2px
4014
+ const gap = 4;
4015
+ const slidingLeft = containerPadding +
4016
+ buttonRefs.current.slice(0, validIndex).reduce((sum, ref) => sum + (ref?.offsetWidth || 0) + gap, 0);
4017
+ const slidingWidth = buttonRefs.current[validIndex]?.offsetWidth || 0;
4018
+ useEffect(() => {
4019
+ setIsMounted(true);
4020
+ }, []);
4021
+ return (jsx("div", { className: twMerge(cvaToggleGroup({ className }), cvaToggleGroupWithSlidingBackground({ isMounted })), "data-testid": dataTestId, style:
4022
+ // eslint-disable-next-line local-rules/no-typescript-assertion
4023
+ {
4024
+ "--sliding-left": `${slidingLeft}px`,
4025
+ "--sliding-width": `${slidingWidth}px`,
4026
+ "--transition-duration": "200ms",
4027
+ }, children: list.map((item, index) => (jsx(ToggleItem, { className: item.className, dataTestId: item.dataTestId, disabled: disabled, iconName: item.iconName, isIconOnly: isIconOnly, onClick: () => {
3918
4028
  setSelected(item.id);
3919
4029
  onChange?.(item.id);
3920
- }, selected: selected === item.id, size: size, text: item.text, title: item.title, tooltip: item.tooltip }, item.id))) }));
4030
+ }, ref: el => (buttonRefs.current[index] = el), selected: selected === item.id, size: size, text: item.text, title: item.title, tooltip: item.tooltip }, item.id))) }));
3921
4031
  };
3922
- /**
3923
- * Individual ToggleItem to create custom ToggleGroups
3924
- */
3925
- const ToggleItem = ({ title, onClick, disabled = false, isIconOnly = false, iconName, size, className, selected = false, text, tooltip, dataTestId, }) => {
3926
- return isIconOnly ? (jsx(Tooltip, { label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsx(IconButton, { className: cvaToggleItem({ className, selected }), "data-testid": dataTestId, disabled: disabled, icon: iconName ? (jsx(Icon, { className: selected ? "text-slate-600" : "text-slate-400", name: iconName, size: "small" })) : null, onClick: onClick, size: size, title: iconName, variant: "secondary" }) })) : (jsx(Tooltip, { disabled: !tooltip?.content, label: tooltip?.content, placement: tooltip?.placement || "top", children: jsx(Button, { className: cvaToggleItem({ className, selected }), "data-testid": dataTestId, disabled: disabled, onClick: onClick, prefix: iconName ? (jsx(Icon, { className: selected ? "text-slate-600" : "text-slate-400", name: iconName, size: "small" })) : null, size: size, variant: "secondary", children: jsx("span", { className: cvaToggleItemText({ disabledAndSelected: disabled && selected, maxWidth: text?.maxWidth }), children: title }) }) }));
4032
+ const ToggleItem = ({ title, onClick, disabled, isIconOnly, iconName, size, className, selected, text, tooltip, dataTestId, ref, }) => {
4033
+ return isIconOnly ? (jsx(Tooltip, { label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsx(ToggleButton, { className: cvaToggleItem({
4034
+ className,
4035
+ selected,
4036
+ disabled,
4037
+ }), dataTestId: dataTestId, disabled: disabled, icon: iconName ? (jsx(Icon, { className: cvaToggleItemContent({ selected, disabled }), name: iconName, size: size === "large" ? "medium" : "small" })) : null, isIconOnly: isIconOnly, onClick: onClick, ref: ref, size: size, title: title }) })) : (jsx(Tooltip, { disabled: !tooltip?.content && !text?.truncate, label: tooltip?.content || title, placement: tooltip?.placement || "top", children: jsx(ToggleButton, { className: cvaToggleItem({
4038
+ className,
4039
+ selected,
4040
+ disabled,
4041
+ }), dataTestId: dataTestId, disabled: disabled, iconPrefix: iconName ? (jsx(Icon, { className: cvaToggleItemContent({ selected, disabled }), name: iconName, size: size === "large" ? "medium" : "small" })) : null, isIconOnly: isIconOnly, onClick: onClick, ref: ref, size: size, title: title, children: jsx("span", { className: cvaToggleItemText({ maxWidth: text?.maxWidth, selected, disabled }), children: title }) }) }));
4042
+ };
4043
+ const ToggleButton = ({ title, size, children, dataTestId, className, icon, iconPrefix, isIconOnly, ...rest }) => {
4044
+ const sizeClasses = {
4045
+ small: "px-2 py-1 text-xs",
4046
+ medium: "px-2 py-1 text-sm",
4047
+ large: "px-2.5 py-1.5 text-base",
4048
+ };
4049
+ const iconOnlySizeClasses = {
4050
+ small: "p-1 text-xs",
4051
+ medium: "p-1.5 text-sm",
4052
+ large: "p-2 text-base",
4053
+ };
4054
+ const paddingClasses = isIconOnly ? iconOnlySizeClasses[size] : sizeClasses[size];
4055
+ return (jsx("button", { className: twMerge("flex items-center justify-center gap-1 self-stretch", paddingClasses, className), "data-testid": dataTestId, title: isIconOnly ? title : undefined, ...rest, children: isIconOnly ? (icon) : (jsxs(Fragment, { children: [iconPrefix, children] })) }));
3927
4056
  };
3928
4057
 
3929
4058
  const cvaValueBar = cvaMerge([
@@ -4166,4 +4295,4 @@ const cvaClickable = cvaMerge([
4166
4295
  },
4167
4296
  });
4168
4297
 
4169
- export { ActionRenderer, Alert, Badge, Breadcrumb, BreadcrumbContainer, Button, Card, CardBody, CardFooter, CardHeader, Collapse, CompletionStatusIndicator, CopyableText, EmptyState, EmptyValue, ExternalLink, Heading, Highlight, Icon, IconButton, Indicator, KPI, KPICard, MenuDivider, MenuItem, MenuList, MoreMenu, Notice, PackageNameStoryComponent, Page, PageContent, PageHeader, PageHeaderKpiMetrics, PageHeaderSecondaryActions, PageHeaderTitle, Pagination, Polygon, Popover, PopoverContent, PopoverTitle, PopoverTrigger, Portal, Prompt, ROLE_CARD, SectionHeader, Sidebar, SkeletonLines, Spacer, Spinner, StarButton, Tab, TabContent, TabList, Tabs, Tag, Text, ToggleGroup, ToggleItem, Tooltip, ValueBar, VirtualizedList, ZStack, cvaButton, cvaButtonPrefixSuffix, cvaButtonSpinner, cvaButtonSpinnerContainer, cvaClickable, cvaContainerStyles, cvaIconButton, cvaImgStyles, cvaIndicator, cvaIndicatorIcon, cvaIndicatorIconBackground, cvaIndicatorLabel, cvaIndicatorPing, cvaInteractableItem, cvaMenuItem, cvaMenuItemLabel, cvaMenuItemPrefix, cvaMenuItemStyle, cvaMenuItemSuffix, cvaPageHeader, cvaPageHeaderContainer, cvaPageHeaderHeading, cvaToggleGroup, cvaToggleItem, cvaToggleItemText, cvaVirtualizedList, cvaVirtualizedListContainer, cvaVirtualizedListItem, cvaZStackContainer, cvaZStackItem, docs, getDevicePixelRatio, getValueBarColorByValue, iconColorNames, iconPalette, useClickOutside, useContainerBreakpoints, useContinuousTimeout, useDebounce, useDevicePixelRatio, useElevatedReducer, useElevatedState, useGeometry, useHover, useIsFirstRender, useIsFullscreen, useIsTextTruncated, useModifierKey, useOverflowItems, usePopoverContext, usePrompt, useResize, useScrollDetection, useSelfUpdatingRef, useTimeout, useViewportBreakpoints, useWatch, useWindowActivity };
4298
+ export { ActionRenderer, Alert, Badge, Breadcrumb, BreadcrumbContainer, Button, Card, CardBody, CardFooter, CardHeader, Collapse, CompletionStatusIndicator, CopyableText, EmptyState, EmptyValue, ExternalLink, Heading, Highlight, Icon, IconButton, Indicator, KPI, KPICard, MenuDivider, MenuItem, MenuList, MoreMenu, Notice, PackageNameStoryComponent, Page, PageContent, PageHeader, PageHeaderKpiMetrics, PageHeaderSecondaryActions, PageHeaderTitle, Pagination, Polygon, Popover, PopoverContent, PopoverTitle, PopoverTrigger, Portal, Prompt, ROLE_CARD, SectionHeader, Sidebar, SkeletonLines, Spacer, Spinner, StarButton, Tab, TabContent, TabList, Tabs, Tag, Text, ToggleGroup, Tooltip, ValueBar, VirtualizedList, ZStack, cvaButton, cvaButtonPrefixSuffix, cvaButtonSpinner, cvaButtonSpinnerContainer, cvaClickable, cvaContainerStyles, cvaIconButton, cvaImgStyles, cvaIndicator, cvaIndicatorIcon, cvaIndicatorIconBackground, cvaIndicatorLabel, cvaIndicatorPing, cvaInteractableItem, cvaMenuItem, cvaMenuItemLabel, cvaMenuItemPrefix, cvaMenuItemStyle, cvaMenuItemSuffix, cvaPageHeader, cvaPageHeaderContainer, cvaPageHeaderHeading, cvaToggleGroup, cvaToggleGroupWithSlidingBackground, cvaToggleItem, cvaToggleItemContent, cvaToggleItemText, cvaVirtualizedList, cvaVirtualizedListContainer, cvaVirtualizedListItem, cvaZStackContainer, cvaZStackItem, docs, getDevicePixelRatio, getValueBarColorByValue, iconColorNames, iconPalette, useClickOutside, useContainerBreakpoints, useContinuousTimeout, useDebounce, useDevicePixelRatio, useElevatedReducer, useElevatedState, useGeometry, useHover, useIsFirstRender, useIsFullscreen, useIsTextTruncated, useModifierKey, useOverflowItems, usePopoverContext, usePrompt, useResize, useScrollDetection, useSelfUpdatingRef, useTimeout, useViewportBreakpoints, useWatch, useWindowActivity };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/react-components",
3
- "version": "1.8.2",
3
+ "version": "1.8.8",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
@@ -17,12 +17,12 @@
17
17
  "@floating-ui/react": "^0.26.25",
18
18
  "string-ts": "^2.0.0",
19
19
  "tailwind-merge": "^2.0.0",
20
- "@trackunit/ui-design-tokens": "1.6.35",
21
- "@trackunit/css-class-variance-utilities": "1.6.34",
22
- "@trackunit/shared-utils": "1.8.34",
23
- "@trackunit/ui-icons": "1.6.33",
24
- "@trackunit/react-table-pagination": "1.6.33",
25
- "@trackunit/react-test-setup": "1.3.34",
20
+ "@trackunit/ui-design-tokens": "1.6.40",
21
+ "@trackunit/css-class-variance-utilities": "1.6.38",
22
+ "@trackunit/shared-utils": "1.8.38",
23
+ "@trackunit/ui-icons": "1.6.37",
24
+ "@trackunit/react-table-pagination": "1.6.37",
25
+ "@trackunit/react-test-setup": "1.3.38",
26
26
  "@tanstack/react-router": "1.114.29"
27
27
  },
28
28
  "module": "./index.esm.js",
@@ -98,15 +98,15 @@ export declare const iconPalette: {
98
98
  readonly 800: "31 41 55";
99
99
  };
100
100
  WORKING: {
101
- readonly 100: "219 234 254";
101
+ readonly 50: "239 246 255";
102
102
  readonly 500: "59 130 246";
103
- readonly 600: "37 99 235";
103
+ readonly 700: "29 78 216";
104
104
  readonly 900: "30 58 138";
105
105
  };
106
106
  IDLE: {
107
107
  readonly 100: "254 243 199";
108
108
  readonly 500: "245 158 11";
109
- readonly 600: "217 119 6";
109
+ readonly 700: "180 83 9";
110
110
  readonly 900: "120 53 15";
111
111
  };
112
112
  STOPPED: {
@@ -150,7 +150,7 @@ export declare const iconPalette: {
150
150
  readonly 100: "254 243 199";
151
151
  readonly 300: "252 211 77";
152
152
  readonly 500: "245 158 11";
153
- readonly 600: "217 119 6";
153
+ readonly 700: "180 83 9";
154
154
  readonly 800: "146 64 14";
155
155
  };
156
156
  CRITICAL: {
@@ -1,6 +1,7 @@
1
1
  import { VariantProps } from "@trackunit/css-class-variance-utilities";
2
2
  import { MappedOmit } from "@trackunit/shared-utils";
3
3
  import { IconName } from "@trackunit/ui-icons";
4
+ import { Dispatch, SetStateAction } from "react";
4
5
  import { CommonProps } from "../../common/CommonProps";
5
6
  import { TooltipPlacement } from "../Tooltip/Tooltip";
6
7
  import { cvaToggleGroup } from "./ToggleGroup.variants";
@@ -45,15 +46,15 @@ export type ToggleGroupProps<TSelectedId extends string = string> = CommonProps
45
46
  onChange?: (selectedId: TSelectedId) => void;
46
47
  disabled?: boolean;
47
48
  /**
48
- * ToggleGroup buttons can be one of two sizes
49
+ * ToggleGroup buttons can be one of three sizes
49
50
  */
50
- size?: "small" | "medium";
51
+ size?: "small" | "medium" | "large";
51
52
  /**
52
53
  * Enable to use toggle buttons with icons only and a tooltip on hover
53
54
  */
54
55
  isIconOnly?: boolean;
55
56
  selected: TSelectedId;
56
- setSelected: React.Dispatch<React.SetStateAction<TSelectedId>>;
57
+ setSelected: Dispatch<SetStateAction<TSelectedId>>;
57
58
  };
58
59
  /**
59
60
  * Toggle Group allows users to toggle between two or more closely related options, and immediately apply that selection.
@@ -63,13 +64,22 @@ export type ToggleGroupProps<TSelectedId extends string = string> = CommonProps
63
64
  */
64
65
  export declare const ToggleGroup: <TSelectedId extends string = string>({ list, selected, setSelected, onChange, disabled, size, isIconOnly, className, dataTestId, }: ToggleGroupProps<TSelectedId>) => import("react/jsx-runtime").JSX.Element;
65
66
  export interface ToggleItemProps extends CommonProps, MappedOmit<BasicToggleGroupListProps<string>, "id"> {
67
+ title: string;
68
+ text?: {
69
+ truncate: boolean;
70
+ maxWidth: "sm" | "md";
71
+ };
72
+ tooltip?: {
73
+ content?: string;
74
+ placement?: TooltipPlacement;
75
+ };
66
76
  onClick: (event?: React.MouseEvent<HTMLElement>) => void;
67
- disabled?: boolean;
68
- isIconOnly?: boolean;
69
- size?: "small" | "medium";
70
- selected?: boolean;
77
+ selected: boolean;
78
+ disabled: boolean;
79
+ size: "small" | "medium" | "large";
80
+ isIconOnly: boolean;
81
+ iconName?: IconName;
82
+ className?: string;
83
+ dataTestId?: string;
84
+ ref?: (el: HTMLButtonElement | null) => void;
71
85
  }
72
- /**
73
- * Individual ToggleItem to create custom ToggleGroups
74
- */
75
- export declare const ToggleItem: ({ title, onClick, disabled, isIconOnly, iconName, size, className, selected, text, tooltip, dataTestId, }: ToggleItemProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,8 +1,17 @@
1
1
  export declare const cvaToggleGroup: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
2
2
  export declare const cvaToggleItem: (props?: ({
3
3
  selected?: boolean | null | undefined;
4
+ disabled?: boolean | null | undefined;
5
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
6
+ export declare const cvaToggleGroupWithSlidingBackground: (props?: ({
7
+ isMounted?: boolean | null | undefined;
4
8
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
5
9
  export declare const cvaToggleItemText: (props?: ({
6
- disabledAndSelected?: boolean | null | undefined;
7
10
  maxWidth?: "sm" | "md" | null | undefined;
11
+ selected?: boolean | null | undefined;
12
+ disabled?: boolean | null | undefined;
13
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
14
+ export declare const cvaToggleItemContent: (props?: ({
15
+ selected?: boolean | null | undefined;
16
+ disabled?: boolean | null | undefined;
8
17
  } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;