@trackunit/react-components 0.1.259 → 0.1.261
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 +51 -49
- package/index.esm.js +51 -49
- package/package.json +3 -3
package/index.cjs.js
CHANGED
|
@@ -198,7 +198,7 @@ const Icon = ({ name, size = "large", className, dataTestId, color, onClick, typ
|
|
|
198
198
|
useTagRef.current.setAttribute("href", href[correctIconType]);
|
|
199
199
|
}
|
|
200
200
|
}, [correctIconType, href]);
|
|
201
|
-
return (jsxRuntime.jsx("span", { className: cvaIcon({ color, size, className }),
|
|
201
|
+
return (jsxRuntime.jsx("span", { className: cvaIcon({ color, size, className }), "data-testid": dataTestId, onClick: onClick, ref: forwardedRef, children: jsxRuntime.jsxs("svg", { "data-testid": dataTestId ? `${dataTestId}-${iconName}` : iconName, role: "img", style: style, viewBox: correctIconType === "mini" ? "0 0 20 20" : "0 0 24 24", children: [jsxRuntime.jsx("title", { children: title ? title : iconName }), jsxRuntime.jsx("use", { href: href[correctIconType], ref: useTagRef })] }) }));
|
|
202
202
|
};
|
|
203
203
|
|
|
204
204
|
const cvaTag = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -280,7 +280,7 @@ const cvaTagIcon = cssClassVarianceUtilities.cvaMerge(["cursor-pointer", "transi
|
|
|
280
280
|
const Tag = React__namespace.forwardRef(({ className, dataTestId, children, size = "medium", onClose, color = "primary", disabled = false }, ref) => {
|
|
281
281
|
return (jsxRuntime.jsxs("span", { className: cvaTag({ className, size, color, layout: onClose ? "withIcon" : "default" }), "data-testid": dataTestId, ref: ref, children: [children, Boolean(onClose) && !disabled ? (
|
|
282
282
|
// a fix for multiselect deselecting tags working together with fade out animation
|
|
283
|
-
jsxRuntime.jsx("div", { className: cvaTagIconContainer(), onMouseDown: onClose, children: jsxRuntime.jsx(Icon, {
|
|
283
|
+
jsxRuntime.jsx("div", { className: cvaTagIconContainer(), onMouseDown: onClose, children: jsxRuntime.jsx(Icon, { className: cvaTagIcon(), dataTestId: dataTestId + "Icon", name: "XCircle", size: size, style: { WebkitTransition: "-webkit-transform 0.150s" }, type: "solid" }) })) : null] }));
|
|
284
284
|
});
|
|
285
285
|
Tag.displayName = "Tag";
|
|
286
286
|
|
|
@@ -461,7 +461,7 @@ const cvaSpinnerContainer = cssClassVarianceUtilities.cvaMerge(["box-border", "p
|
|
|
461
461
|
* @returns {JSX.Element} Spinner component
|
|
462
462
|
*/
|
|
463
463
|
const Spinner = ({ mode = "light", size = "medium", centering = "centered", className, containerClassName, dataTestId = "spinner", }) => {
|
|
464
|
-
return (jsxRuntime.jsx("div", { className: cvaSpinnerContainer({ centering, className: containerClassName }), children: jsxRuntime.jsx("div", {
|
|
464
|
+
return (jsxRuntime.jsx("div", { className: cvaSpinnerContainer({ centering, className: containerClassName }), children: jsxRuntime.jsx("div", { className: cvaSpinner({ size, mode, className }), "data-testid": dataTestId, role: "spinbutton" }) }));
|
|
465
465
|
};
|
|
466
466
|
|
|
467
467
|
const cvaButton = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -711,7 +711,7 @@ const Button = React__namespace.forwardRef((_a, ref) => {
|
|
|
711
711
|
type,
|
|
712
712
|
role,
|
|
713
713
|
onClick,
|
|
714
|
-
tabIndex, disabled: disabled || loading, className: cvaButton({ rounded: circular, disabled, size, square, variant, loading, fullWidth, className }), "aria-label": title, "data-testid": dataTestId }, rest), jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [loading ? (jsxRuntime.jsx(Spinner, {
|
|
714
|
+
tabIndex, disabled: disabled || loading, className: cvaButton({ rounded: circular, disabled, size, square, variant, loading, fullWidth, className }), "aria-label": title, "data-testid": dataTestId }, rest), jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [loading ? (jsxRuntime.jsx(Spinner, { centering: "vertically", className: cvaButtonSpinner({ variant }), containerClassName: cvaButtonSpinnerContainer(), size: "small" })) : null, prefix && !loading ? jsxRuntime.jsx("div", { className: cvaButtonPrefixSuffix({ size: size }), children: prefix }) : null, children, suffix && !loading ? jsxRuntime.jsx("div", { className: cvaButtonPrefixSuffix({ size: size }), children: suffix }) : null] }));
|
|
715
715
|
});
|
|
716
716
|
Button.displayName = "Button";
|
|
717
717
|
|
|
@@ -720,7 +720,9 @@ Button.displayName = "Button";
|
|
|
720
720
|
*/
|
|
721
721
|
const IconButton = React__namespace.forwardRef((_a, ref) => {
|
|
722
722
|
var { icon, size = "medium", square = true, loading, disabled, className } = _a, rest = __rest(_a, ["icon", "size", "square", "loading", "disabled", "className"]);
|
|
723
|
-
return (jsxRuntime.jsx(Button, Object.assign({
|
|
723
|
+
return (jsxRuntime.jsx(Button, Object.assign({ className: cvaIconButton({ size: size, className }), disabled: disabled || loading, loading: loading,
|
|
724
|
+
// eslint-disable-next-line local-rules/design-guideline-button-icon-size-match
|
|
725
|
+
prefix: !loading ? icon : undefined, ref: ref, size: size, square: square }, rest)));
|
|
724
726
|
});
|
|
725
727
|
IconButton.displayName = "IconButton";
|
|
726
728
|
|
|
@@ -731,7 +733,7 @@ IconButton.displayName = "IconButton";
|
|
|
731
733
|
* @returns {JSX.Element} StarButton component
|
|
732
734
|
*/
|
|
733
735
|
const StarButton = ({ starred, onClick }) => {
|
|
734
|
-
return (jsxRuntime.jsx("div", {
|
|
736
|
+
return (jsxRuntime.jsx("div", { "data-test-id": "starred-filter", onClick: onClick, children: jsxRuntime.jsx(Icon, { color: starred ? "primary" : "neutral", name: "Star", size: "medium" }) }));
|
|
735
737
|
};
|
|
736
738
|
|
|
737
739
|
const cvaAlert = cssClassVarianceUtilities.cvaMerge(["flex", "flex-col", "gap-3", "relative", "p-3", "rounded-lg", "border", "@container"], {
|
|
@@ -764,13 +766,13 @@ const Alert = ({ color = "info", title, className, children, primaryAction, seco
|
|
|
764
766
|
const getIconFromColor = () => {
|
|
765
767
|
switch (color) {
|
|
766
768
|
case "danger":
|
|
767
|
-
return jsxRuntime.jsx(Icon, {
|
|
769
|
+
return jsxRuntime.jsx(Icon, { color: "danger", name: "ExclamationTriangle" });
|
|
768
770
|
case "warning":
|
|
769
|
-
return jsxRuntime.jsx(Icon, {
|
|
771
|
+
return jsxRuntime.jsx(Icon, { color: "warning", name: "ExclamationCircle" });
|
|
770
772
|
case "success":
|
|
771
|
-
return jsxRuntime.jsx(Icon, {
|
|
773
|
+
return jsxRuntime.jsx(Icon, { color: "success", name: "CheckCircle" });
|
|
772
774
|
case "info":
|
|
773
|
-
return jsxRuntime.jsx(Icon, {
|
|
775
|
+
return jsxRuntime.jsx(Icon, { color: "info", name: "InformationCircle" });
|
|
774
776
|
default:
|
|
775
777
|
return jsxRuntime.jsx(Icon, { name: "InformationCircle" });
|
|
776
778
|
}
|
|
@@ -782,7 +784,7 @@ const Alert = ({ color = "info", title, className, children, primaryAction, seco
|
|
|
782
784
|
(_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
783
785
|
}
|
|
784
786
|
}, [ref, autoScroll]);
|
|
785
|
-
return (jsxRuntime.jsxs("div", { className: cvaAlert({ color, className }), "data-testid": dataTestId, ref: ref, role: "alert", children: [jsxRuntime.jsxs("div", { className: cvaAlertContentContainer(), children: [jsxRuntime.jsx("div", { className: cvaAlertIconContainer(), children: getIconFromColor() }), jsxRuntime.jsxs("div", { className: cvaContent(), children: [title ? (jsxRuntime.jsx(Text, { dataTestId: `${dataTestId}-title`, weight: "bold", children: title })) : null, children ? (jsxRuntime.jsx(Text, { type: typeof children === "string" || typeof children === "number" ? "p" : "span", weight: !title ? "bold" : "normal", children: children })) : null] }), onClose ? (jsxRuntime.jsx("div", { className: cvaAlertCloseButtonContainer(), children: jsxRuntime.jsx(IconButton, {
|
|
787
|
+
return (jsxRuntime.jsxs("div", { className: cvaAlert({ color, className }), "data-testid": dataTestId, ref: ref, role: "alert", children: [jsxRuntime.jsxs("div", { className: cvaAlertContentContainer(), children: [jsxRuntime.jsx("div", { className: cvaAlertIconContainer(), children: getIconFromColor() }), jsxRuntime.jsxs("div", { className: cvaContent(), children: [title ? (jsxRuntime.jsx(Text, { dataTestId: `${dataTestId}-title`, weight: "bold", children: title })) : null, children ? (jsxRuntime.jsx(Text, { type: typeof children === "string" || typeof children === "number" ? "p" : "span", weight: !title ? "bold" : "normal", children: children })) : null] }), onClose ? (jsxRuntime.jsx("div", { className: cvaAlertCloseButtonContainer(), children: jsxRuntime.jsx(IconButton, { circular: true, icon: jsxRuntime.jsx(Icon, { name: "XMark", size: "small" }), onClick: onClose, size: "small", title: "Close Alert", variant: "ghost-neutral" }) })) : null] }), primaryAction || secondaryAction ? (jsxRuntime.jsxs("div", { className: cvaAlertActionsContainer(), children: [secondaryAction ? (jsxRuntime.jsx(Button, { loading: secondaryAction.loading, onClick: secondaryAction.onClick, size: "small", variant: "ghost-neutral", children: secondaryAction.label })) : null, primaryAction ? (jsxRuntime.jsx(Button, { loading: primaryAction.loading, onClick: primaryAction.onClick, size: "small", variant: color === "danger" ? "primary-danger" : "primary", children: primaryAction.label })) : null] })) : null] }));
|
|
786
788
|
};
|
|
787
789
|
|
|
788
790
|
const cvaBadge = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -935,7 +937,7 @@ const ROLE_CARD = "region";
|
|
|
935
937
|
*/
|
|
936
938
|
const Card = (_a) => {
|
|
937
939
|
var { children, onClick, fullHeight = false, onMouseEnter, onMouseLeave, className, dataTestId } = _a, rest = __rest(_a, ["children", "onClick", "fullHeight", "onMouseEnter", "onMouseLeave", "className", "dataTestId"]);
|
|
938
|
-
return (jsxRuntime.jsx("div", Object.assign({
|
|
940
|
+
return (jsxRuntime.jsx("div", Object.assign({ className: cvaCard({ fullHeight, clickable: Boolean(onClick), className }), "data-testid": dataTestId, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, role: ROLE_CARD }, rest, { children: children })));
|
|
939
941
|
};
|
|
940
942
|
|
|
941
943
|
/**
|
|
@@ -947,7 +949,7 @@ const Card = (_a) => {
|
|
|
947
949
|
* @returns {JSX.Element} CardBody component
|
|
948
950
|
*/
|
|
949
951
|
const CardBody = ({ density = "auto", children, dataTestId, className, disableGap, id }) => {
|
|
950
|
-
return (jsxRuntime.jsx("div", {
|
|
952
|
+
return (jsxRuntime.jsx("div", { className: cvaCardBodyDensityContainer({ density, disableGap, className }), "data-testid": dataTestId, id: id, children: children }));
|
|
951
953
|
};
|
|
952
954
|
|
|
953
955
|
/**
|
|
@@ -959,11 +961,11 @@ const CardBody = ({ density = "auto", children, dataTestId, className, disableGa
|
|
|
959
961
|
* @returns {JSX.Element} CardFooter component
|
|
960
962
|
*/
|
|
961
963
|
const CardFooter = ({ dataTestId, className, children, density, hideSeparator = false }) => {
|
|
962
|
-
return (jsxRuntime.jsx("div", {
|
|
964
|
+
return (jsxRuntime.jsx("div", { className: cvaCardFooterDensityContainer({
|
|
963
965
|
density,
|
|
964
966
|
border: hideSeparator ? "borderless" : "default",
|
|
965
967
|
className,
|
|
966
|
-
}), children: children }));
|
|
968
|
+
}), "data-testid": dataTestId, children: children }));
|
|
967
969
|
};
|
|
968
970
|
|
|
969
971
|
const cvaHeading = cssClassVarianceUtilities.cvaMerge(["m-0", "leading-normal", "text-black"], {
|
|
@@ -1021,11 +1023,11 @@ const Heading = (_a) => {
|
|
|
1021
1023
|
* @returns {JSX.Element} CardHeader component
|
|
1022
1024
|
*/
|
|
1023
1025
|
const CardHeader = ({ heading, headingVariant = "primary", subHeading, onClose, dataTestId, className, children, accessories, actions, density, hideSeparator = false, }) => {
|
|
1024
|
-
return (jsxRuntime.jsx("div", {
|
|
1026
|
+
return (jsxRuntime.jsx("div", { className: cvaCardHeaderDensityContainer({
|
|
1025
1027
|
density,
|
|
1026
1028
|
border: hideSeparator ? "borderless" : "default",
|
|
1027
1029
|
className,
|
|
1028
|
-
}), children: jsxRuntime.jsxs("div", { className: cvaCardHeader(), children: [jsxRuntime.jsxs("div", { children: [jsxRuntime.jsxs("div", { className: cvaCardHeaderHeadingContainer(), children: [jsxRuntime.jsx(Heading, { className: "self-center", variant: headingVariant, children: heading }), accessories] }), subHeading ? (jsxRuntime.jsx(Heading, { subtle: true, variant: "subtitle", children: subHeading })) : null, children] }), jsxRuntime.jsxs("div", { className: "flex gap-x-2 gap-y-1", children: [actions, onClose ? (jsxRuntime.jsx(IconButton, { dataTestId: "card-header-close-button",
|
|
1030
|
+
}), "data-testid": dataTestId, children: jsxRuntime.jsxs("div", { className: cvaCardHeader(), children: [jsxRuntime.jsxs("div", { children: [jsxRuntime.jsxs("div", { className: cvaCardHeaderHeadingContainer(), children: [jsxRuntime.jsx(Heading, { className: "self-center", variant: headingVariant, children: heading }), accessories] }), subHeading ? (jsxRuntime.jsx(Heading, { subtle: true, variant: "subtitle", children: subHeading })) : null, children] }), jsxRuntime.jsxs("div", { className: "flex gap-x-2 gap-y-1", children: [actions, onClose ? (jsxRuntime.jsx(IconButton, { className: "!h-min", dataTestId: "card-header-close-button", icon: jsxRuntime.jsx(Icon, { name: "XMark", size: "small" }), onClick: onClose, variant: "ghost-neutral" })) : null] })] }) }));
|
|
1029
1031
|
};
|
|
1030
1032
|
|
|
1031
1033
|
const cvaCollapse = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -1069,7 +1071,7 @@ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, clas
|
|
|
1069
1071
|
}
|
|
1070
1072
|
setExpanded(!expanded);
|
|
1071
1073
|
}, [expanded, onToggle]);
|
|
1072
|
-
return (jsxRuntime.jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsxs("div", { className: cvaCollapseHeader({ expanded, className: headerClassName }),
|
|
1074
|
+
return (jsxRuntime.jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsxs("div", { "aria-controls": id, "aria-expanded": expanded, className: cvaCollapseHeader({ expanded, className: headerClassName }), onClick: handleClick, role: "button", children: [jsxRuntime.jsxs("div", { className: cvaCollapseLabelContainer(), children: [jsxRuntime.jsx(Text, { type: "span", weight: "bold", children: label }), jsxRuntime.jsx(IconButton, { icon: jsxRuntime.jsx(Icon, { name: "ChevronUpDown", size: "small" }), size: "medium", variant: "ghost-neutral" })] }), headerAddon ? headerAddon : null] }), jsxRuntime.jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
|
|
1073
1075
|
};
|
|
1074
1076
|
const Collapsible = ({ children, expanded, id }) => {
|
|
1075
1077
|
const [ref, { height }] = reactUse.useMeasure();
|
|
@@ -1116,7 +1118,7 @@ const CopyableText = ({ text, alternativeText, dataTestId, className }) => {
|
|
|
1116
1118
|
copyToClipboard(value);
|
|
1117
1119
|
setAnimating(true);
|
|
1118
1120
|
};
|
|
1119
|
-
return (jsxRuntime.jsx("span", { className: cvaCopyableText({ animating, className }), "data-testid": dataTestId,
|
|
1121
|
+
return (jsxRuntime.jsx("span", { className: cvaCopyableText({ animating, className }), "data-testid": dataTestId, onAnimationEnd: () => setAnimating(false), onClick: handleOnClick, title: value, children: text }));
|
|
1120
1122
|
};
|
|
1121
1123
|
|
|
1122
1124
|
const localeLookup = {
|
|
@@ -1159,7 +1161,7 @@ const useLocale = (language) => {
|
|
|
1159
1161
|
*/
|
|
1160
1162
|
const DayPicker = ({ onDaySelect, disabledDays, selectedDays, language, className, dataTestId, max, }) => {
|
|
1161
1163
|
const locale = useLocale(language);
|
|
1162
|
-
return (jsxRuntime.jsx(reactDayPicker.DayPicker, {
|
|
1164
|
+
return (jsxRuntime.jsx(reactDayPicker.DayPicker, { className: `custom-day-picker ${className !== null && className !== void 0 ? className : ""}`, disabled: disabledDays, footer: jsxRuntime.jsx("div", { "data-testid": dataTestId }), locale: locale, max: max, onDayClick: onDaySelect, selected: selectedDays }));
|
|
1163
1165
|
};
|
|
1164
1166
|
|
|
1165
1167
|
/**
|
|
@@ -1180,7 +1182,7 @@ const DayRangePicker = ({ onRangeSelect, selectedDays, disabledDays, dataTestId,
|
|
|
1180
1182
|
onRangeSelect({ from, to });
|
|
1181
1183
|
}
|
|
1182
1184
|
}, [onRangeSelect]);
|
|
1183
|
-
return (jsxRuntime.jsx(reactDayPicker.DayPicker, {
|
|
1185
|
+
return (jsxRuntime.jsx(reactDayPicker.DayPicker, { className: `custom-day-picker range-picker ${className !== null && className !== void 0 ? className : ""}`, defaultMonth: selectedDays ? selectedDays.from : undefined, disabled: disabledDays, footer: jsxRuntime.jsx("div", { "data-testid": dataTestId }), locale: locale, max: max, mode: "range", onSelect: onSelect, selected: selectedDays }));
|
|
1184
1186
|
};
|
|
1185
1187
|
|
|
1186
1188
|
const cvaDrawerOverlay = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -1228,7 +1230,7 @@ const Drawer = ({ open, onClose = () => { }, children, disableOverlay = false, p
|
|
|
1228
1230
|
window.removeEventListener("keyup", onKeyPress);
|
|
1229
1231
|
};
|
|
1230
1232
|
}, [open, onClose]);
|
|
1231
|
-
return (jsxRuntime.jsx(react.FloatingFocusManager, { context: context, children: open ? (jsxRuntime.jsxs("div", { id: "drawer", children: [!disableOverlay && (jsxRuntime.jsx("div", {
|
|
1233
|
+
return (jsxRuntime.jsx(react.FloatingFocusManager, { context: context, children: open ? (jsxRuntime.jsxs("div", { id: "drawer", children: [!disableOverlay && (jsxRuntime.jsx("div", { "aria-hidden": open, className: cvaDrawerOverlay(), id: "drawer__overlay", onClick: onClose })), jsxRuntime.jsx(Card, { "aria-hidden": open, className: cvaDrawerCard({ position, className }), "data-testid": dataTestId, id: "drawer__card", children: children })] })) : (
|
|
1232
1234
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
1233
1235
|
jsxRuntime.jsx(jsxRuntime.Fragment, {})) }));
|
|
1234
1236
|
};
|
|
@@ -1264,7 +1266,7 @@ const SkeletonLines = React.memo(({ margin = "10px 0", lines = 1, height, width
|
|
|
1264
1266
|
return height;
|
|
1265
1267
|
};
|
|
1266
1268
|
for (let i = 0; i < lines; i++) {
|
|
1267
|
-
skeletonLines.push(jsxRuntime.jsx("div", { "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "skeleton-lines", "data-type": "loading-skeleton-line",
|
|
1269
|
+
skeletonLines.push(jsxRuntime.jsx("div", { className: cvaSkeletonLine({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "skeleton-lines", "data-type": "loading-skeleton-line", style: { height: getHeight(i), width: getWidth(i), margin: lines > 1 ? margin : "" }, children: lines > 1 && jsxRuntime.jsx(jsxRuntime.Fragment, { children: "\u00A0" }) }, i));
|
|
1268
1270
|
}
|
|
1269
1271
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
1270
1272
|
return jsxRuntime.jsx(jsxRuntime.Fragment, { children: skeletonLines });
|
|
@@ -1334,7 +1336,7 @@ const EmptyState = ({ title, description, altText, image, customImageSrc, action
|
|
|
1334
1336
|
lazyLoadImage();
|
|
1335
1337
|
}
|
|
1336
1338
|
}, [customImageSrc, image]);
|
|
1337
|
-
return (jsxRuntime.jsx("div", { className: cvaContainerStyles({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "empty-state", children: loading ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Spinner, {
|
|
1339
|
+
return (jsxRuntime.jsx("div", { className: cvaContainerStyles({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "empty-state", children: loading ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Spinner, { centering: "centered", dataTestId: "spinner", size: "large" }), jsxRuntime.jsx(SkeletonLines, { dataTestId: "skeleton-lines", width: 50 })] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("img", { alt: altText, className: cvaImgStyles(), height: 200, src: customImageSrc ? customImageSrc : imageSource, width: 200 }), title ? jsxRuntime.jsx(Heading, { variant: "secondary", children: title }) : null, description ? jsxRuntime.jsx(Text, { align: "center", children: description }) : null, action] })) }));
|
|
1338
1340
|
};
|
|
1339
1341
|
|
|
1340
1342
|
const cvaExternalLink = cssClassVarianceUtilities.cvaMerge(["underline", "text-primary-600", "hover:text-primary-500"]);
|
|
@@ -1346,7 +1348,7 @@ const cvaExternalLink = cssClassVarianceUtilities.cvaMerge(["underline", "text-p
|
|
|
1346
1348
|
* @returns {JSX.Element} External Link component
|
|
1347
1349
|
*/
|
|
1348
1350
|
const ExternalLink = ({ rel = "noreferrer", target = "_blank", href, className, children = href, title = href, dataTestId, onClick, }) => {
|
|
1349
|
-
return (jsxRuntime.jsx("a", {
|
|
1351
|
+
return (jsxRuntime.jsx("a", { className: cvaExternalLink({ className }), "data-testid": dataTestId, href: href, onClick: onClick, rel: rel, target: target, title: title, children: children }));
|
|
1350
1352
|
};
|
|
1351
1353
|
|
|
1352
1354
|
/**
|
|
@@ -1451,7 +1453,7 @@ const PopoverContent = React__default["default"].forwardRef(function PopoverCont
|
|
|
1451
1453
|
var { className, dataTestId, children, portalId } = _a, props = __rest(_a, ["className", "dataTestId", "children", "portalId"]);
|
|
1452
1454
|
const _c = usePopoverContext(), { context: floatingContext, customProps } = _c, context = __rest(_c, ["context", "customProps"]);
|
|
1453
1455
|
const ref = react.useMergeRefs([context.refs.setFloating, propRef]);
|
|
1454
|
-
return (jsxRuntime.jsx(react.FloatingPortal, { id: portalId !== null && portalId !== void 0 ? portalId : "tu-floating-ui", children: context.isOpen ? (jsxRuntime.jsx(react.FloatingFocusManager, {
|
|
1456
|
+
return (jsxRuntime.jsx(react.FloatingPortal, { id: portalId !== null && portalId !== void 0 ? portalId : "tu-floating-ui", children: context.isOpen ? (jsxRuntime.jsx(react.FloatingFocusManager, { closeOnFocusOut: false, context: floatingContext, guards: false, modal: context.isModal, order: ["reference", "content"], returnFocus: false, children: jsxRuntime.jsx("div", Object.assign({ "aria-describedby": context.descriptionId, "aria-labelledby": context.labelId, className: cvaPopoverContainer({ className: className !== null && className !== void 0 ? className : customProps.className }), "data-testid": (_b = dataTestId !== null && dataTestId !== void 0 ? dataTestId : customProps.dataTestId) !== null && _b !== void 0 ? _b : "popover-content", ref: ref, style: Object.assign({ position: context.strategy, top: context.y, left: context.x, width: "max-content" }, props.style) }, context.getFloatingProps(props), { children: typeof children === "function" ? children(() => context.setIsOpen(false)) : children })) })) : null }));
|
|
1455
1457
|
});
|
|
1456
1458
|
|
|
1457
1459
|
/**
|
|
@@ -1461,7 +1463,7 @@ const PopoverContent = React__default["default"].forwardRef(function PopoverCont
|
|
|
1461
1463
|
* @returns {JSX.Element} PopoverTitle component
|
|
1462
1464
|
*/
|
|
1463
1465
|
const PopoverTitle = ({ children, action, divider = false, className, dataTestId }) => {
|
|
1464
|
-
return (jsxRuntime.jsxs("div", { className: cvaPopoverTitleContainer({ divider, className }), "data-testid": dataTestId, children: [jsxRuntime.jsx(Text, { className: cvaPopoverTitleText(),
|
|
1466
|
+
return (jsxRuntime.jsxs("div", { className: cvaPopoverTitleContainer({ divider, className }), "data-testid": dataTestId, children: [jsxRuntime.jsx(Text, { className: cvaPopoverTitleText(), size: "small", subtle: true, type: "div", uppercase: true, weight: "bold", children: children }), action] }));
|
|
1465
1467
|
};
|
|
1466
1468
|
|
|
1467
1469
|
const PopoverTrigger = React.forwardRef(function PopoverTrigger(_a, propRef) {
|
|
@@ -1474,7 +1476,7 @@ const PopoverTrigger = React.forwardRef(function PopoverTrigger(_a, propRef) {
|
|
|
1474
1476
|
return React.cloneElement(children, context.getReferenceProps(Object.assign(Object.assign(Object.assign({ ref }, props), children.props), { "data-state": context.isOpen ? "open" : "closed" })));
|
|
1475
1477
|
}
|
|
1476
1478
|
else {
|
|
1477
|
-
return (jsxRuntime.jsx(Button, Object.assign({
|
|
1479
|
+
return (jsxRuntime.jsx(Button, Object.assign({ "data-state": context.isOpen ? "open" : "closed", ref: ref, type: "button" }, context.getReferenceProps(props), { children: children })));
|
|
1478
1480
|
}
|
|
1479
1481
|
});
|
|
1480
1482
|
|
|
@@ -1537,7 +1539,7 @@ const cvaTooltipPopoverContent = cssClassVarianceUtilities.cvaMerge(["max-w-sm",
|
|
|
1537
1539
|
*/
|
|
1538
1540
|
const FloatingArrowContainer = ({ arrowRef, mode = "dark", }) => {
|
|
1539
1541
|
const { context: floatingContext } = usePopoverContext();
|
|
1540
|
-
return (jsxRuntime.jsx(react.FloatingArrow, {
|
|
1542
|
+
return (jsxRuntime.jsx(react.FloatingArrow, { className: cvaTooltipPopoverTail({ mode, placement: floatingContext.placement }), context: floatingContext, ref: arrowRef }));
|
|
1541
1543
|
};
|
|
1542
1544
|
/**
|
|
1543
1545
|
* Tooltips display additional information upon hover. The information included should be contextual, helpful, and nonessential while providing that extra ability to communicate and give clarity to a user.
|
|
@@ -1566,7 +1568,7 @@ const Tooltip = ({ children, dataTestId = "tool-tip", disabled, className, label
|
|
|
1566
1568
|
if (disabled) {
|
|
1567
1569
|
return wrappedChildren;
|
|
1568
1570
|
}
|
|
1569
|
-
return (jsxRuntime.jsxs(Popover, { className: cvaTooltipPopover(), placement: placement === "auto" ? "bottom" : placement,
|
|
1571
|
+
return (jsxRuntime.jsxs(Popover, { activation: { hover: true }, className: cvaTooltipPopover(), dataTestId: dataTestId, placement: placement === "auto" ? "bottom" : placement, children: [jsxRuntime.jsx(PopoverTrigger, { className: cvaTooltipIcon({ color: mode }), "data-testid": dataTestId ? `${dataTestId}-trigger` : null, onMouseEnter: () => setIsOpen(true), onMouseLeave: () => setIsOpen(false), ref: refs.setReference, children: children === undefined ? (jsxRuntime.jsx("div", { children: jsxRuntime.jsx(Icon, Object.assign({ dataTestId: dataTestId ? `${dataTestId}-icon` : undefined, name: "QuestionMarkCircle", size: "small" }, iconProps)) })) : (wrappedChildren) }), isMounted ? (jsxRuntime.jsx("div", { ref: refs.setFloating, style: floatingStyles, children: jsxRuntime.jsx(PopoverContent, { children: jsxRuntime.jsxs("div", { "aria-label": typeof label === "string" ? label : undefined, className: cvaTooltipPopoverContent({ color: mode }), "data-testid": `${dataTestId}-content`, children: [jsxRuntime.jsx(Text, { inverted: mode === "dark", type: contentTextType, children: label }), placement !== "auto" && jsxRuntime.jsx(FloatingArrowContainer, { arrowRef: arrowRef, mode: mode })] }) }) })) : null] }));
|
|
1570
1572
|
};
|
|
1571
1573
|
|
|
1572
1574
|
const cvaIndicator = cssClassVarianceUtilities.cvaMerge(["flex", "items-center"]);
|
|
@@ -1669,7 +1671,7 @@ const cvaIndicatorIconBackground = cssClassVarianceUtilities.cvaMerge(["rounded-
|
|
|
1669
1671
|
*/
|
|
1670
1672
|
const Indicator = (_a) => {
|
|
1671
1673
|
var { dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, className } = _a, rest = __rest(_a, ["dataTestId", "icon", "label", "color", "withBackground", "withLabel", "ping", "className"]);
|
|
1672
|
-
return (jsxRuntime.jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxRuntime.jsxs("div", Object.assign({ className: cvaIndicator(), "data-testid": dataTestId
|
|
1674
|
+
return (jsxRuntime.jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxRuntime.jsxs("div", Object.assign({ "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(), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label }) : null] })) }));
|
|
1673
1675
|
};
|
|
1674
1676
|
|
|
1675
1677
|
const cvaMenuItem = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -1747,13 +1749,13 @@ const cvaMenuItemPrefix = cssClassVarianceUtilities.cvaMerge(["self-center", "fl
|
|
|
1747
1749
|
*/
|
|
1748
1750
|
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, stopPropagation = true, id, }) => {
|
|
1749
1751
|
const containerProps = useContainerProps({ className, dataTestId: dataTestId || "menu-item" });
|
|
1750
|
-
return (jsxRuntime.jsxs("div", Object.assign({}, containerProps, {
|
|
1752
|
+
return (jsxRuntime.jsxs("div", Object.assign({}, containerProps, { className: cvaMenuItem({
|
|
1751
1753
|
selected,
|
|
1752
1754
|
focused,
|
|
1753
1755
|
disabled,
|
|
1754
1756
|
size,
|
|
1755
1757
|
className: containerProps.className,
|
|
1756
|
-
}), onClick: e => {
|
|
1758
|
+
}), id: id, onClick: e => {
|
|
1757
1759
|
stopPropagation && e.stopPropagation();
|
|
1758
1760
|
onClick && onClick(e);
|
|
1759
1761
|
}, tabIndex: 0, children: [prefix ? jsxRuntime.jsx("div", { className: cvaMenuItemPrefix({ selected }), "data-testid": dataTestId ? `${dataTestId}-prefix` : null, children: prefix }) : null, children && typeof children !== "string" ? (children) : (jsxRuntime.jsx("div", { className: cvaMenuItemLabel(), "data-testid": dataTestId ? `${dataTestId}-label` : null, children: children !== null && children !== void 0 ? children : label })), suffix ? jsxRuntime.jsx("div", { className: cvaMenuItemSuffix({ selected }), "data-testid": dataTestId ? `${dataTestId}-suffix` : null, children: suffix }) : null] })));
|
|
@@ -1784,7 +1786,7 @@ const MenuList = (_a) => {
|
|
|
1784
1786
|
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a, args = __rest(_a, ["dataTestId", "className", "children", "withStickyHeader", "showDivider"]);
|
|
1785
1787
|
const childrenArr = React.Children.toArray(children);
|
|
1786
1788
|
const isLastItem = (index) => index === childrenArr.length - 1;
|
|
1787
|
-
return (jsxRuntime.jsx("div", {
|
|
1789
|
+
return (jsxRuntime.jsx("div", { className: cvaMenuList({ stickyHeader: withStickyHeader, className }), "data-testid": dataTestId, onClick: args.onClick, role: "list", tabIndex: 0, children: React.Children.map(childrenArr, (menuItem, index) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [menuItem, showDivider && !isLastItem(index) ? jsxRuntime.jsx("hr", { className: cvaMenuListDivider() }) : null] }))) }));
|
|
1788
1790
|
};
|
|
1789
1791
|
|
|
1790
1792
|
const cvaMoreMenu = cssClassVarianceUtilities.cvaMerge(["p-4"]);
|
|
@@ -1805,7 +1807,7 @@ const MoreMenu = ({ className, dataTestId, popoverProps, iconProps = {
|
|
|
1805
1807
|
variant: "secondary",
|
|
1806
1808
|
}, customButton, customPortalId, children, }) => {
|
|
1807
1809
|
const actionMenuRef = React.useRef(null);
|
|
1808
|
-
return (jsxRuntime.jsx("div", {
|
|
1810
|
+
return (jsxRuntime.jsx("div", { className: cvaMoreMenu({ className }), "data-testid": dataTestId, ref: actionMenuRef, children: jsxRuntime.jsxs(Popover, Object.assign({}, popoverProps, { children: [jsxRuntime.jsx(PopoverTrigger, { children: customButton !== null && customButton !== void 0 ? customButton : jsxRuntime.jsx(IconButton, Object.assign({}, iconButtonProps, { icon: jsxRuntime.jsx(Icon, Object.assign({ name: "EllipsisHorizontal" }, iconProps)) })) }), jsxRuntime.jsx(PopoverContent, { portalId: customPortalId, children: close => (typeof children === "function" ? children(close) : children) })] })) }));
|
|
1809
1811
|
};
|
|
1810
1812
|
|
|
1811
1813
|
const cvaModalContainer = cssClassVarianceUtilities.cvaMerge(["h-full", "w-full", "flex", "items-center"]);
|
|
@@ -1850,12 +1852,12 @@ const cvaModalBackdrop = cssClassVarianceUtilities.cvaMerge([
|
|
|
1850
1852
|
*/
|
|
1851
1853
|
const ModalBackdrop = ({ children, isVisible, onClick, noShadow }) => {
|
|
1852
1854
|
const ref = React__namespace.useRef(null);
|
|
1853
|
-
return (jsxRuntime.jsx("div", {
|
|
1855
|
+
return (jsxRuntime.jsx("div", { className: cvaModalBackdrop({ show: isVisible, noShadow }), onMouseDown: e => {
|
|
1854
1856
|
// only react on click on backdrop - accessing first child to get around styled element element
|
|
1855
1857
|
if (ref.current !== null && e.target === ref.current.children[0]) {
|
|
1856
1858
|
onClick();
|
|
1857
1859
|
}
|
|
1858
|
-
}, children: children }));
|
|
1860
|
+
}, ref: ref, children: children }));
|
|
1859
1861
|
};
|
|
1860
1862
|
|
|
1861
1863
|
/**
|
|
@@ -1867,7 +1869,7 @@ const ModalBackdrop = ({ children, isVisible, onClick, noShadow }) => {
|
|
|
1867
1869
|
const Modal = React__namespace.forwardRef(({ isOpen, children, dataTestId, className, role = "", noBackdropShadow = false, onDismissClick = () => {
|
|
1868
1870
|
return;
|
|
1869
1871
|
}, }, ref) => {
|
|
1870
|
-
return (jsxRuntime.jsx(ModalBackdrop, { isVisible: isOpen,
|
|
1872
|
+
return (jsxRuntime.jsx(ModalBackdrop, { isVisible: isOpen, noShadow: noBackdropShadow, onClick: onDismissClick, children: isOpen ? (jsxRuntime.jsx("div", { className: cvaModalContainer(), ref: ref, role: role, children: jsxRuntime.jsx(Card, { className: cvaModalCard({ className }), dataTestId: dataTestId, children: children }) })) : null }));
|
|
1871
1873
|
});
|
|
1872
1874
|
Modal.displayName = "Modal";
|
|
1873
1875
|
|
|
@@ -1893,7 +1895,7 @@ const useModal = ({ closeOnOutsideClick } = {}) => {
|
|
|
1893
1895
|
}
|
|
1894
1896
|
},
|
|
1895
1897
|
});
|
|
1896
|
-
const PortalWrapper = (props) => (jsxRuntime.jsx(Portal, { children: jsxRuntime.jsx(Modal, Object.assign({
|
|
1898
|
+
const PortalWrapper = (props) => (jsxRuntime.jsx(Portal, { children: jsxRuntime.jsx(Modal, Object.assign({ isOpen: isOpen, ref: modalRef }, props)) }));
|
|
1897
1899
|
PortalWrapper.displayName = "Modal";
|
|
1898
1900
|
const WrappedModal = React.useCallback(PortalWrapper, [Portal, isOpen]);
|
|
1899
1901
|
return {
|
|
@@ -1957,7 +1959,7 @@ const PageHeader = ({ className, dataTestId, action, showLoading, description, l
|
|
|
1957
1959
|
return (jsxRuntime.jsxs("div", { className: cvaPageHeaderContainer({
|
|
1958
1960
|
className,
|
|
1959
1961
|
withBorder: !tabsList,
|
|
1960
|
-
}), "data-testid": dataTestId, children: [jsxRuntime.jsxs("div", { className: cvaPageHeader(), children: [jsxRuntime.jsxs("div", { className: cvaPageHeaderHeadingAccessoriesContainer(), "data-testid": dataTestId ? `${dataTestId}-heading-container` : undefined, children: [jsxRuntime.jsxs("div", { className: cvaPageHeaderHeadingContainer(), children: [backTo ? (jsxRuntime.jsx(IconButton, {
|
|
1962
|
+
}), "data-testid": dataTestId, children: [jsxRuntime.jsxs("div", { className: cvaPageHeader(), children: [jsxRuntime.jsxs("div", { className: cvaPageHeaderHeadingAccessoriesContainer(), "data-testid": dataTestId ? `${dataTestId}-heading-container` : undefined, children: [jsxRuntime.jsxs("div", { className: cvaPageHeaderHeadingContainer(), children: [backTo ? (jsxRuntime.jsx(IconButton, { icon: jsxRuntime.jsx(Icon, { name: "ArrowLeft" }), renderAs: reactRouterDom.Link, size: "small", to: backTo, variant: "ghost-neutral" })) : undefined, jsxRuntime.jsx("h1", { className: cvaPageHeaderHeading(), "data-testid": dataTestId ? `${dataTestId}-heading` : undefined, children: title }), description && !showLoading ? (jsxRuntime.jsxs("div", { className: cvaPageHeaderDescriptionAndLinkContainer(), children: [jsxRuntime.jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, iconProps: { name: "QuestionMarkCircle" }, label: description, placement: "bottom" }), link ? (jsxRuntime.jsxs(reactRouterDom.Link, { className: cvaPageHeaderLink(), "data-testid": "tooltip-link", target: "_blank", to: link, children: [linkText, jsxRuntime.jsx(Icon, { name: "ArrowTopRightOnSquare", size: "small" })] })) : undefined] })) : undefined] }), tag && !showLoading ? (jsxRuntime.jsx(Tag, { color: tagColor, dataTestId: dataTestId ? `${dataTestId}-tag` : undefined, children: tag })) : undefined, showLoading ? (jsxRuntime.jsx(Spinner, { centering: "vertically", dataTestId: dataTestId ? `${dataTestId}-spinner` : undefined })) : null, action] }), children ? jsxRuntime.jsx("div", { className: cvaPageHeaderChildContainer(), children: children }) : null] }), tabsList] }));
|
|
1961
1963
|
};
|
|
1962
1964
|
|
|
1963
1965
|
const cvaPagination = cssClassVarianceUtilities.cvaMerge(["flex", "items-center", "gap-1"]);
|
|
@@ -2006,9 +2008,9 @@ const Pagination = ({ previousPage, nextPage, canPreviousPage, canNextPage, page
|
|
|
2006
2008
|
if (loading) {
|
|
2007
2009
|
return (jsxRuntime.jsx("div", { className: cvaPagination({ className }), children: jsxRuntime.jsx(SkeletonLines, { height: 16, width: 150 }) }));
|
|
2008
2010
|
}
|
|
2009
|
-
return (jsxRuntime.jsxs("div", {
|
|
2011
|
+
return (jsxRuntime.jsxs("div", { className: cvaPagination({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsx(IconButton, { "data-testid": "prev-page", disabled: cursorBase ? !canPreviousPage || false : page !== undefined && page <= 0, icon: jsxRuntime.jsx(Icon, { name: "ChevronLeft", size: "small" }), onClick: () => handlePageChange("prev"), size: "small", variant: "ghost-neutral" }), !cursorBase && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("div", { className: cvaPaginationText(), "data-testid": "current-page", children: currentPage }), jsxRuntime.jsx("div", { className: cvaPaginationText(), "data-testid": "page-count", children: pageCount !== null && pageCount !== undefined && getTranslatedCount ? getTranslatedCount(pageCount) : null })] })), jsxRuntime.jsx(IconButton, { "data-testid": "next-page", disabled: cursorBase
|
|
2010
2012
|
? !canNextPage || false
|
|
2011
|
-
: page !== undefined && pageCount !== undefined && pageCount !== null && page >= pageCount - 1,
|
|
2013
|
+
: page !== undefined && pageCount !== undefined && pageCount !== null && page >= pageCount - 1, icon: jsxRuntime.jsx(Icon, { name: "ChevronRight", size: "small" }), onClick: () => handlePageChange("next"), size: "small", variant: "ghost-neutral" })] }));
|
|
2012
2014
|
};
|
|
2013
2015
|
|
|
2014
2016
|
function useConfirmExit(confirmExit, when = true) {
|
|
@@ -2092,7 +2094,7 @@ const cvaSpacer = cssClassVarianceUtilities.cvaMerge([], {
|
|
|
2092
2094
|
* @returns {JSX.Element} Spacer component
|
|
2093
2095
|
*/
|
|
2094
2096
|
const Spacer = ({ size = "medium", border = false, dataTestId, className }) => {
|
|
2095
|
-
return jsxRuntime.jsx("div", {
|
|
2097
|
+
return jsxRuntime.jsx("div", { className: cvaSpacer({ className, border, size }), "data-testid": dataTestId });
|
|
2096
2098
|
};
|
|
2097
2099
|
|
|
2098
2100
|
/**
|
|
@@ -2102,7 +2104,7 @@ const Spacer = ({ size = "medium", border = false, dataTestId, className }) => {
|
|
|
2102
2104
|
* @returns {JSX.Element} SectionHeader component
|
|
2103
2105
|
*/
|
|
2104
2106
|
const SectionHeader = ({ title, subtitle, dataTestId, addons }) => {
|
|
2105
|
-
return (jsxRuntime.jsxs("div", { className: "flex flex-col", children: [jsxRuntime.jsx(reactHelmetAsync.HelmetProvider, { children: jsxRuntime.jsx(reactHelmetAsync.Helmet, { title: title }) }), jsxRuntime.jsxs("div", { className: "mb-2 flex flex-row gap-2", children: [jsxRuntime.jsxs("div", { className: "flex grow flex-col gap-2", children: [jsxRuntime.jsx(Heading, { variant: "secondary",
|
|
2107
|
+
return (jsxRuntime.jsxs("div", { className: "flex flex-col", children: [jsxRuntime.jsx(reactHelmetAsync.HelmetProvider, { children: jsxRuntime.jsx(reactHelmetAsync.Helmet, { title: title }) }), jsxRuntime.jsxs("div", { className: "mb-2 flex flex-row gap-2", children: [jsxRuntime.jsxs("div", { className: "flex grow flex-col gap-2", children: [jsxRuntime.jsx(Heading, { dataTestId: dataTestId, variant: "secondary", children: title }), subtitle ? jsxRuntime.jsx(Heading, { subtle: true, variant: "subtitle", children: subtitle }) : null] }), addons ? jsxRuntime.jsx("div", { className: "flex gap-2", children: addons }) : null] }), jsxRuntime.jsx(Spacer, { size: "small" })] }));
|
|
2106
2108
|
};
|
|
2107
2109
|
|
|
2108
2110
|
const cvaSidebar = cssClassVarianceUtilities.cvaMerge(["apply", "grid", "grid-cols-fr-min", "items-center"]);
|
|
@@ -2197,7 +2199,7 @@ const Sidebar = ({ childContainerClassName, children, breakpoint = "lg", classNa
|
|
|
2197
2199
|
}
|
|
2198
2200
|
return "visible";
|
|
2199
2201
|
};
|
|
2200
|
-
return (jsxRuntime.jsxs("div", { className: cvaSidebar({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsx("div", {
|
|
2202
|
+
return (jsxRuntime.jsxs("div", { className: cvaSidebar({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsx("div", { className: cvaSidebarChildContainer({ breakpoint, className: childContainerClassName }), "data-testid": dataTestId ? `${dataTestId}-child-container` : null, ref: overflowContainerRef, children: React__default["default"].Children.map(children, child => {
|
|
2201
2203
|
return React__default["default"].cloneElement(child, {
|
|
2202
2204
|
className: `${child.props.className} ${itemVisibilityClassName(child.props.id)}`,
|
|
2203
2205
|
});
|
|
@@ -2280,7 +2282,7 @@ const Tab = (_a) => {
|
|
|
2280
2282
|
*/
|
|
2281
2283
|
const TabContent = (_a) => {
|
|
2282
2284
|
var { className, dataTestId, children } = _a, rest = __rest(_a, ["className", "dataTestId", "children"]);
|
|
2283
|
-
return (jsxRuntime.jsx(reactTabs.Content, Object.assign({ "data-testid": dataTestId ? `${dataTestId}-content` : undefined
|
|
2285
|
+
return (jsxRuntime.jsx(reactTabs.Content, Object.assign({ className: cvaTabContent({ className }), "data-testid": dataTestId ? `${dataTestId}-content` : undefined }, rest, { children: children })));
|
|
2284
2286
|
};
|
|
2285
2287
|
|
|
2286
2288
|
/**
|
|
@@ -2288,7 +2290,7 @@ const TabContent = (_a) => {
|
|
|
2288
2290
|
*/
|
|
2289
2291
|
const TabList = (_a) => {
|
|
2290
2292
|
var { className, dataTestId, children } = _a, rest = __rest(_a, ["className", "dataTestId", "children"]);
|
|
2291
|
-
return (jsxRuntime.jsx(reactTabs.List, Object.assign({
|
|
2293
|
+
return (jsxRuntime.jsx(reactTabs.List, Object.assign({ className: cvaTabList({ className }), "data-testid": dataTestId }, rest, { children: children })));
|
|
2292
2294
|
};
|
|
2293
2295
|
|
|
2294
2296
|
/**
|
|
@@ -2447,7 +2449,7 @@ const ValueBar = ({ value, min = 0, max = 100, unit, size = "small", levelColors
|
|
|
2447
2449
|
const score = getScore(value, min, max);
|
|
2448
2450
|
const barFillColor = levelColors ? getFillColor(score, levelColors) : getDefaultFillColor(score);
|
|
2449
2451
|
const barWidth = showValue && size === "small" ? 90 : 100;
|
|
2450
|
-
return (jsxRuntime.jsx("svg", { className: cvaValueBar({ size, className }), "data-testid": dataTestId, role: "img", children: jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("rect", { className: cvaValueBarProgress({ fill: "background" }),
|
|
2452
|
+
return (jsxRuntime.jsx("svg", { className: cvaValueBar({ size, className }), "data-testid": dataTestId, role: "img", children: jsxRuntime.jsxs("g", { children: [jsxRuntime.jsx("rect", { className: cvaValueBarProgress({ fill: "background" }), "data-testid": "value-bar-svg-rect-0", rx: "5", width: `${barWidth}%` }), jsxRuntime.jsx("rect", { className: cvaValueBarProgress(), "data-testid": "value-bar-svg-rect-1", fill: barFillColor, rx: "5", width: `${score * barWidth}%` }), showValue && size === "large" ? (jsxRuntime.jsxs("text", { className: cvaValueBarText({ size }), fill: valueColor !== null && valueColor !== void 0 ? valueColor : "white", x: "12", y: "23", children: [Number(value.toFixed(1)), unit || ""] })) : null, showValue && size === "small" ? (jsxRuntime.jsxs("text", { className: cvaValueBarText({ size }), fill: valueColor !== null && valueColor !== void 0 ? valueColor : uiDesignTokens.color("NEUTRAL", 400, "CSS"), x: `${barWidth + 2}%`, y: "11", children: [Number(value.toFixed(1)), unit || ""] })) : null] }) }));
|
|
2451
2453
|
};
|
|
2452
2454
|
|
|
2453
2455
|
const cvaWidgetBodyDensityContainer = cssClassVarianceUtilities.cvaMerge([
|
|
@@ -2496,7 +2498,7 @@ const cvaWidgetBodyDensityContainer = cssClassVarianceUtilities.cvaMerge([
|
|
|
2496
2498
|
* @returns {JSX.Element} WidgetBody component
|
|
2497
2499
|
*/
|
|
2498
2500
|
const WidgetBody = ({ density = "auto", children, dataTestId, className, disableGap }) => {
|
|
2499
|
-
return (jsxRuntime.jsx("div", {
|
|
2501
|
+
return (jsxRuntime.jsx("div", { className: cvaWidgetBodyDensityContainer({ density, disableGap, className }), "data-testid": dataTestId, children: children }));
|
|
2500
2502
|
};
|
|
2501
2503
|
|
|
2502
2504
|
const cvaClickable = cssClassVarianceUtilities.cvaMerge([
|
package/index.esm.js
CHANGED
|
@@ -167,7 +167,7 @@ const Icon = ({ name, size = "large", className, dataTestId, color, onClick, typ
|
|
|
167
167
|
useTagRef.current.setAttribute("href", href[correctIconType]);
|
|
168
168
|
}
|
|
169
169
|
}, [correctIconType, href]);
|
|
170
|
-
return (jsx("span", { className: cvaIcon({ color, size, className }),
|
|
170
|
+
return (jsx("span", { className: cvaIcon({ color, size, className }), "data-testid": dataTestId, onClick: onClick, ref: forwardedRef, children: jsxs("svg", { "data-testid": dataTestId ? `${dataTestId}-${iconName}` : iconName, role: "img", style: style, viewBox: correctIconType === "mini" ? "0 0 20 20" : "0 0 24 24", children: [jsx("title", { children: title ? title : iconName }), jsx("use", { href: href[correctIconType], ref: useTagRef })] }) }));
|
|
171
171
|
};
|
|
172
172
|
|
|
173
173
|
const cvaTag = cvaMerge([
|
|
@@ -249,7 +249,7 @@ const cvaTagIcon = cvaMerge(["cursor-pointer", "transition-opacity", "hover:opac
|
|
|
249
249
|
const Tag = React.forwardRef(({ className, dataTestId, children, size = "medium", onClose, color = "primary", disabled = false }, ref) => {
|
|
250
250
|
return (jsxs("span", { className: cvaTag({ className, size, color, layout: onClose ? "withIcon" : "default" }), "data-testid": dataTestId, ref: ref, children: [children, Boolean(onClose) && !disabled ? (
|
|
251
251
|
// a fix for multiselect deselecting tags working together with fade out animation
|
|
252
|
-
jsx("div", { className: cvaTagIconContainer(), onMouseDown: onClose, children: jsx(Icon, {
|
|
252
|
+
jsx("div", { className: cvaTagIconContainer(), onMouseDown: onClose, children: jsx(Icon, { className: cvaTagIcon(), dataTestId: dataTestId + "Icon", name: "XCircle", size: size, style: { WebkitTransition: "-webkit-transform 0.150s" }, type: "solid" }) })) : null] }));
|
|
253
253
|
});
|
|
254
254
|
Tag.displayName = "Tag";
|
|
255
255
|
|
|
@@ -430,7 +430,7 @@ const cvaSpinnerContainer = cvaMerge(["box-border", "p-0.5", "overflow-hidden"],
|
|
|
430
430
|
* @returns {JSX.Element} Spinner component
|
|
431
431
|
*/
|
|
432
432
|
const Spinner = ({ mode = "light", size = "medium", centering = "centered", className, containerClassName, dataTestId = "spinner", }) => {
|
|
433
|
-
return (jsx("div", { className: cvaSpinnerContainer({ centering, className: containerClassName }), children: jsx("div", {
|
|
433
|
+
return (jsx("div", { className: cvaSpinnerContainer({ centering, className: containerClassName }), children: jsx("div", { className: cvaSpinner({ size, mode, className }), "data-testid": dataTestId, role: "spinbutton" }) }));
|
|
434
434
|
};
|
|
435
435
|
|
|
436
436
|
const cvaButton = cvaMerge([
|
|
@@ -680,7 +680,7 @@ const Button = React.forwardRef((_a, ref) => {
|
|
|
680
680
|
type,
|
|
681
681
|
role,
|
|
682
682
|
onClick,
|
|
683
|
-
tabIndex, disabled: disabled || loading, className: cvaButton({ rounded: circular, disabled, size, square, variant, loading, fullWidth, className }), "aria-label": title, "data-testid": dataTestId }, rest), jsxs(Fragment, { children: [loading ? (jsx(Spinner, {
|
|
683
|
+
tabIndex, disabled: disabled || loading, className: cvaButton({ rounded: circular, disabled, size, square, variant, loading, fullWidth, className }), "aria-label": title, "data-testid": dataTestId }, rest), jsxs(Fragment, { children: [loading ? (jsx(Spinner, { centering: "vertically", className: cvaButtonSpinner({ variant }), containerClassName: cvaButtonSpinnerContainer(), size: "small" })) : null, prefix && !loading ? jsx("div", { className: cvaButtonPrefixSuffix({ size: size }), children: prefix }) : null, children, suffix && !loading ? jsx("div", { className: cvaButtonPrefixSuffix({ size: size }), children: suffix }) : null] }));
|
|
684
684
|
});
|
|
685
685
|
Button.displayName = "Button";
|
|
686
686
|
|
|
@@ -689,7 +689,9 @@ Button.displayName = "Button";
|
|
|
689
689
|
*/
|
|
690
690
|
const IconButton = React.forwardRef((_a, ref) => {
|
|
691
691
|
var { icon, size = "medium", square = true, loading, disabled, className } = _a, rest = __rest(_a, ["icon", "size", "square", "loading", "disabled", "className"]);
|
|
692
|
-
return (jsx(Button, Object.assign({
|
|
692
|
+
return (jsx(Button, Object.assign({ className: cvaIconButton({ size: size, className }), disabled: disabled || loading, loading: loading,
|
|
693
|
+
// eslint-disable-next-line local-rules/design-guideline-button-icon-size-match
|
|
694
|
+
prefix: !loading ? icon : undefined, ref: ref, size: size, square: square }, rest)));
|
|
693
695
|
});
|
|
694
696
|
IconButton.displayName = "IconButton";
|
|
695
697
|
|
|
@@ -700,7 +702,7 @@ IconButton.displayName = "IconButton";
|
|
|
700
702
|
* @returns {JSX.Element} StarButton component
|
|
701
703
|
*/
|
|
702
704
|
const StarButton = ({ starred, onClick }) => {
|
|
703
|
-
return (jsx("div", {
|
|
705
|
+
return (jsx("div", { "data-test-id": "starred-filter", onClick: onClick, children: jsx(Icon, { color: starred ? "primary" : "neutral", name: "Star", size: "medium" }) }));
|
|
704
706
|
};
|
|
705
707
|
|
|
706
708
|
const cvaAlert = cvaMerge(["flex", "flex-col", "gap-3", "relative", "p-3", "rounded-lg", "border", "@container"], {
|
|
@@ -733,13 +735,13 @@ const Alert = ({ color = "info", title, className, children, primaryAction, seco
|
|
|
733
735
|
const getIconFromColor = () => {
|
|
734
736
|
switch (color) {
|
|
735
737
|
case "danger":
|
|
736
|
-
return jsx(Icon, {
|
|
738
|
+
return jsx(Icon, { color: "danger", name: "ExclamationTriangle" });
|
|
737
739
|
case "warning":
|
|
738
|
-
return jsx(Icon, {
|
|
740
|
+
return jsx(Icon, { color: "warning", name: "ExclamationCircle" });
|
|
739
741
|
case "success":
|
|
740
|
-
return jsx(Icon, {
|
|
742
|
+
return jsx(Icon, { color: "success", name: "CheckCircle" });
|
|
741
743
|
case "info":
|
|
742
|
-
return jsx(Icon, {
|
|
744
|
+
return jsx(Icon, { color: "info", name: "InformationCircle" });
|
|
743
745
|
default:
|
|
744
746
|
return jsx(Icon, { name: "InformationCircle" });
|
|
745
747
|
}
|
|
@@ -751,7 +753,7 @@ const Alert = ({ color = "info", title, className, children, primaryAction, seco
|
|
|
751
753
|
(_b = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.scrollIntoView) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
752
754
|
}
|
|
753
755
|
}, [ref, autoScroll]);
|
|
754
|
-
return (jsxs("div", { className: cvaAlert({ color, className }), "data-testid": dataTestId, ref: ref, role: "alert", children: [jsxs("div", { className: cvaAlertContentContainer(), children: [jsx("div", { className: cvaAlertIconContainer(), children: getIconFromColor() }), jsxs("div", { className: cvaContent(), children: [title ? (jsx(Text, { dataTestId: `${dataTestId}-title`, weight: "bold", children: title })) : null, children ? (jsx(Text, { type: typeof children === "string" || typeof children === "number" ? "p" : "span", weight: !title ? "bold" : "normal", children: children })) : null] }), onClose ? (jsx("div", { className: cvaAlertCloseButtonContainer(), children: jsx(IconButton, {
|
|
756
|
+
return (jsxs("div", { className: cvaAlert({ color, className }), "data-testid": dataTestId, ref: ref, role: "alert", children: [jsxs("div", { className: cvaAlertContentContainer(), children: [jsx("div", { className: cvaAlertIconContainer(), children: getIconFromColor() }), jsxs("div", { className: cvaContent(), children: [title ? (jsx(Text, { dataTestId: `${dataTestId}-title`, weight: "bold", children: title })) : null, children ? (jsx(Text, { type: typeof children === "string" || typeof children === "number" ? "p" : "span", weight: !title ? "bold" : "normal", children: children })) : null] }), onClose ? (jsx("div", { className: cvaAlertCloseButtonContainer(), children: jsx(IconButton, { circular: true, icon: jsx(Icon, { name: "XMark", size: "small" }), onClick: onClose, size: "small", title: "Close Alert", variant: "ghost-neutral" }) })) : null] }), primaryAction || secondaryAction ? (jsxs("div", { className: cvaAlertActionsContainer(), children: [secondaryAction ? (jsx(Button, { loading: secondaryAction.loading, onClick: secondaryAction.onClick, size: "small", variant: "ghost-neutral", children: secondaryAction.label })) : null, primaryAction ? (jsx(Button, { loading: primaryAction.loading, onClick: primaryAction.onClick, size: "small", variant: color === "danger" ? "primary-danger" : "primary", children: primaryAction.label })) : null] })) : null] }));
|
|
755
757
|
};
|
|
756
758
|
|
|
757
759
|
const cvaBadge = cvaMerge([
|
|
@@ -904,7 +906,7 @@ const ROLE_CARD = "region";
|
|
|
904
906
|
*/
|
|
905
907
|
const Card = (_a) => {
|
|
906
908
|
var { children, onClick, fullHeight = false, onMouseEnter, onMouseLeave, className, dataTestId } = _a, rest = __rest(_a, ["children", "onClick", "fullHeight", "onMouseEnter", "onMouseLeave", "className", "dataTestId"]);
|
|
907
|
-
return (jsx("div", Object.assign({
|
|
909
|
+
return (jsx("div", Object.assign({ className: cvaCard({ fullHeight, clickable: Boolean(onClick), className }), "data-testid": dataTestId, onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, role: ROLE_CARD }, rest, { children: children })));
|
|
908
910
|
};
|
|
909
911
|
|
|
910
912
|
/**
|
|
@@ -916,7 +918,7 @@ const Card = (_a) => {
|
|
|
916
918
|
* @returns {JSX.Element} CardBody component
|
|
917
919
|
*/
|
|
918
920
|
const CardBody = ({ density = "auto", children, dataTestId, className, disableGap, id }) => {
|
|
919
|
-
return (jsx("div", {
|
|
921
|
+
return (jsx("div", { className: cvaCardBodyDensityContainer({ density, disableGap, className }), "data-testid": dataTestId, id: id, children: children }));
|
|
920
922
|
};
|
|
921
923
|
|
|
922
924
|
/**
|
|
@@ -928,11 +930,11 @@ const CardBody = ({ density = "auto", children, dataTestId, className, disableGa
|
|
|
928
930
|
* @returns {JSX.Element} CardFooter component
|
|
929
931
|
*/
|
|
930
932
|
const CardFooter = ({ dataTestId, className, children, density, hideSeparator = false }) => {
|
|
931
|
-
return (jsx("div", {
|
|
933
|
+
return (jsx("div", { className: cvaCardFooterDensityContainer({
|
|
932
934
|
density,
|
|
933
935
|
border: hideSeparator ? "borderless" : "default",
|
|
934
936
|
className,
|
|
935
|
-
}), children: children }));
|
|
937
|
+
}), "data-testid": dataTestId, children: children }));
|
|
936
938
|
};
|
|
937
939
|
|
|
938
940
|
const cvaHeading = cvaMerge(["m-0", "leading-normal", "text-black"], {
|
|
@@ -990,11 +992,11 @@ const Heading = (_a) => {
|
|
|
990
992
|
* @returns {JSX.Element} CardHeader component
|
|
991
993
|
*/
|
|
992
994
|
const CardHeader = ({ heading, headingVariant = "primary", subHeading, onClose, dataTestId, className, children, accessories, actions, density, hideSeparator = false, }) => {
|
|
993
|
-
return (jsx("div", {
|
|
995
|
+
return (jsx("div", { className: cvaCardHeaderDensityContainer({
|
|
994
996
|
density,
|
|
995
997
|
border: hideSeparator ? "borderless" : "default",
|
|
996
998
|
className,
|
|
997
|
-
}), children: jsxs("div", { className: cvaCardHeader(), children: [jsxs("div", { children: [jsxs("div", { className: cvaCardHeaderHeadingContainer(), children: [jsx(Heading, { className: "self-center", variant: headingVariant, children: heading }), accessories] }), subHeading ? (jsx(Heading, { subtle: true, variant: "subtitle", children: subHeading })) : null, children] }), jsxs("div", { className: "flex gap-x-2 gap-y-1", children: [actions, onClose ? (jsx(IconButton, { dataTestId: "card-header-close-button",
|
|
999
|
+
}), "data-testid": dataTestId, children: jsxs("div", { className: cvaCardHeader(), children: [jsxs("div", { children: [jsxs("div", { className: cvaCardHeaderHeadingContainer(), children: [jsx(Heading, { className: "self-center", variant: headingVariant, children: heading }), accessories] }), subHeading ? (jsx(Heading, { subtle: true, variant: "subtitle", children: subHeading })) : null, children] }), jsxs("div", { className: "flex gap-x-2 gap-y-1", children: [actions, onClose ? (jsx(IconButton, { className: "!h-min", dataTestId: "card-header-close-button", icon: jsx(Icon, { name: "XMark", size: "small" }), onClick: onClose, variant: "ghost-neutral" })) : null] })] }) }));
|
|
998
1000
|
};
|
|
999
1001
|
|
|
1000
1002
|
const cvaCollapse = cvaMerge([
|
|
@@ -1038,7 +1040,7 @@ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, clas
|
|
|
1038
1040
|
}
|
|
1039
1041
|
setExpanded(!expanded);
|
|
1040
1042
|
}, [expanded, onToggle]);
|
|
1041
|
-
return (jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxs("div", { className: cvaCollapseHeader({ expanded, className: headerClassName }),
|
|
1043
|
+
return (jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxs("div", { "aria-controls": id, "aria-expanded": expanded, className: cvaCollapseHeader({ expanded, className: headerClassName }), onClick: handleClick, role: "button", children: [jsxs("div", { className: cvaCollapseLabelContainer(), children: [jsx(Text, { type: "span", weight: "bold", children: label }), jsx(IconButton, { icon: jsx(Icon, { name: "ChevronUpDown", size: "small" }), size: "medium", variant: "ghost-neutral" })] }), headerAddon ? headerAddon : null] }), jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
|
|
1042
1044
|
};
|
|
1043
1045
|
const Collapsible = ({ children, expanded, id }) => {
|
|
1044
1046
|
const [ref, { height }] = useMeasure();
|
|
@@ -1085,7 +1087,7 @@ const CopyableText = ({ text, alternativeText, dataTestId, className }) => {
|
|
|
1085
1087
|
copyToClipboard(value);
|
|
1086
1088
|
setAnimating(true);
|
|
1087
1089
|
};
|
|
1088
|
-
return (jsx("span", { className: cvaCopyableText({ animating, className }), "data-testid": dataTestId,
|
|
1090
|
+
return (jsx("span", { className: cvaCopyableText({ animating, className }), "data-testid": dataTestId, onAnimationEnd: () => setAnimating(false), onClick: handleOnClick, title: value, children: text }));
|
|
1089
1091
|
};
|
|
1090
1092
|
|
|
1091
1093
|
const localeLookup = {
|
|
@@ -1128,7 +1130,7 @@ const useLocale = (language) => {
|
|
|
1128
1130
|
*/
|
|
1129
1131
|
const DayPicker = ({ onDaySelect, disabledDays, selectedDays, language, className, dataTestId, max, }) => {
|
|
1130
1132
|
const locale = useLocale(language);
|
|
1131
|
-
return (jsx(DayPicker$1, {
|
|
1133
|
+
return (jsx(DayPicker$1, { className: `custom-day-picker ${className !== null && className !== void 0 ? className : ""}`, disabled: disabledDays, footer: jsx("div", { "data-testid": dataTestId }), locale: locale, max: max, onDayClick: onDaySelect, selected: selectedDays }));
|
|
1132
1134
|
};
|
|
1133
1135
|
|
|
1134
1136
|
/**
|
|
@@ -1149,7 +1151,7 @@ const DayRangePicker = ({ onRangeSelect, selectedDays, disabledDays, dataTestId,
|
|
|
1149
1151
|
onRangeSelect({ from, to });
|
|
1150
1152
|
}
|
|
1151
1153
|
}, [onRangeSelect]);
|
|
1152
|
-
return (jsx(DayPicker$1, {
|
|
1154
|
+
return (jsx(DayPicker$1, { className: `custom-day-picker range-picker ${className !== null && className !== void 0 ? className : ""}`, defaultMonth: selectedDays ? selectedDays.from : undefined, disabled: disabledDays, footer: jsx("div", { "data-testid": dataTestId }), locale: locale, max: max, mode: "range", onSelect: onSelect, selected: selectedDays }));
|
|
1153
1155
|
};
|
|
1154
1156
|
|
|
1155
1157
|
const cvaDrawerOverlay = cvaMerge([
|
|
@@ -1197,7 +1199,7 @@ const Drawer = ({ open, onClose = () => { }, children, disableOverlay = false, p
|
|
|
1197
1199
|
window.removeEventListener("keyup", onKeyPress);
|
|
1198
1200
|
};
|
|
1199
1201
|
}, [open, onClose]);
|
|
1200
|
-
return (jsx(FloatingFocusManager, { context: context, children: open ? (jsxs("div", { id: "drawer", children: [!disableOverlay && (jsx("div", {
|
|
1202
|
+
return (jsx(FloatingFocusManager, { context: context, children: open ? (jsxs("div", { id: "drawer", children: [!disableOverlay && (jsx("div", { "aria-hidden": open, className: cvaDrawerOverlay(), id: "drawer__overlay", onClick: onClose })), jsx(Card, { "aria-hidden": open, className: cvaDrawerCard({ position, className }), "data-testid": dataTestId, id: "drawer__card", children: children })] })) : (
|
|
1201
1203
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
1202
1204
|
jsx(Fragment, {})) }));
|
|
1203
1205
|
};
|
|
@@ -1233,7 +1235,7 @@ const SkeletonLines = memo(({ margin = "10px 0", lines = 1, height, width = "100
|
|
|
1233
1235
|
return height;
|
|
1234
1236
|
};
|
|
1235
1237
|
for (let i = 0; i < lines; i++) {
|
|
1236
|
-
skeletonLines.push(jsx("div", { "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "skeleton-lines", "data-type": "loading-skeleton-line",
|
|
1238
|
+
skeletonLines.push(jsx("div", { className: cvaSkeletonLine({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "skeleton-lines", "data-type": "loading-skeleton-line", style: { height: getHeight(i), width: getWidth(i), margin: lines > 1 ? margin : "" }, children: lines > 1 && jsx(Fragment, { children: "\u00A0" }) }, i));
|
|
1237
1239
|
}
|
|
1238
1240
|
// eslint-disable-next-line react/jsx-no-useless-fragment
|
|
1239
1241
|
return jsx(Fragment, { children: skeletonLines });
|
|
@@ -1303,7 +1305,7 @@ const EmptyState = ({ title, description, altText, image, customImageSrc, action
|
|
|
1303
1305
|
lazyLoadImage();
|
|
1304
1306
|
}
|
|
1305
1307
|
}, [customImageSrc, image]);
|
|
1306
|
-
return (jsx("div", { className: cvaContainerStyles({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "empty-state", children: loading ? (jsxs(Fragment, { children: [jsx(Spinner, {
|
|
1308
|
+
return (jsx("div", { className: cvaContainerStyles({ className }), "data-testid": dataTestId !== null && dataTestId !== void 0 ? dataTestId : "empty-state", children: loading ? (jsxs(Fragment, { children: [jsx(Spinner, { centering: "centered", dataTestId: "spinner", size: "large" }), jsx(SkeletonLines, { dataTestId: "skeleton-lines", width: 50 })] })) : (jsxs(Fragment, { children: [jsx("img", { alt: altText, className: cvaImgStyles(), height: 200, src: customImageSrc ? customImageSrc : imageSource, width: 200 }), title ? jsx(Heading, { variant: "secondary", children: title }) : null, description ? jsx(Text, { align: "center", children: description }) : null, action] })) }));
|
|
1307
1309
|
};
|
|
1308
1310
|
|
|
1309
1311
|
const cvaExternalLink = cvaMerge(["underline", "text-primary-600", "hover:text-primary-500"]);
|
|
@@ -1315,7 +1317,7 @@ const cvaExternalLink = cvaMerge(["underline", "text-primary-600", "hover:text-p
|
|
|
1315
1317
|
* @returns {JSX.Element} External Link component
|
|
1316
1318
|
*/
|
|
1317
1319
|
const ExternalLink = ({ rel = "noreferrer", target = "_blank", href, className, children = href, title = href, dataTestId, onClick, }) => {
|
|
1318
|
-
return (jsx("a", {
|
|
1320
|
+
return (jsx("a", { className: cvaExternalLink({ className }), "data-testid": dataTestId, href: href, onClick: onClick, rel: rel, target: target, title: title, children: children }));
|
|
1319
1321
|
};
|
|
1320
1322
|
|
|
1321
1323
|
/**
|
|
@@ -1420,7 +1422,7 @@ const PopoverContent = React__default.forwardRef(function PopoverContent(_a, pro
|
|
|
1420
1422
|
var { className, dataTestId, children, portalId } = _a, props = __rest(_a, ["className", "dataTestId", "children", "portalId"]);
|
|
1421
1423
|
const _c = usePopoverContext(), { context: floatingContext, customProps } = _c, context = __rest(_c, ["context", "customProps"]);
|
|
1422
1424
|
const ref = useMergeRefs([context.refs.setFloating, propRef]);
|
|
1423
|
-
return (jsx(FloatingPortal, { id: portalId !== null && portalId !== void 0 ? portalId : "tu-floating-ui", children: context.isOpen ? (jsx(FloatingFocusManager, {
|
|
1425
|
+
return (jsx(FloatingPortal, { id: portalId !== null && portalId !== void 0 ? portalId : "tu-floating-ui", children: context.isOpen ? (jsx(FloatingFocusManager, { closeOnFocusOut: false, context: floatingContext, guards: false, modal: context.isModal, order: ["reference", "content"], returnFocus: false, children: jsx("div", Object.assign({ "aria-describedby": context.descriptionId, "aria-labelledby": context.labelId, className: cvaPopoverContainer({ className: className !== null && className !== void 0 ? className : customProps.className }), "data-testid": (_b = dataTestId !== null && dataTestId !== void 0 ? dataTestId : customProps.dataTestId) !== null && _b !== void 0 ? _b : "popover-content", ref: ref, style: Object.assign({ position: context.strategy, top: context.y, left: context.x, width: "max-content" }, props.style) }, context.getFloatingProps(props), { children: typeof children === "function" ? children(() => context.setIsOpen(false)) : children })) })) : null }));
|
|
1424
1426
|
});
|
|
1425
1427
|
|
|
1426
1428
|
/**
|
|
@@ -1430,7 +1432,7 @@ const PopoverContent = React__default.forwardRef(function PopoverContent(_a, pro
|
|
|
1430
1432
|
* @returns {JSX.Element} PopoverTitle component
|
|
1431
1433
|
*/
|
|
1432
1434
|
const PopoverTitle = ({ children, action, divider = false, className, dataTestId }) => {
|
|
1433
|
-
return (jsxs("div", { className: cvaPopoverTitleContainer({ divider, className }), "data-testid": dataTestId, children: [jsx(Text, { className: cvaPopoverTitleText(),
|
|
1435
|
+
return (jsxs("div", { className: cvaPopoverTitleContainer({ divider, className }), "data-testid": dataTestId, children: [jsx(Text, { className: cvaPopoverTitleText(), size: "small", subtle: true, type: "div", uppercase: true, weight: "bold", children: children }), action] }));
|
|
1434
1436
|
};
|
|
1435
1437
|
|
|
1436
1438
|
const PopoverTrigger = forwardRef(function PopoverTrigger(_a, propRef) {
|
|
@@ -1443,7 +1445,7 @@ const PopoverTrigger = forwardRef(function PopoverTrigger(_a, propRef) {
|
|
|
1443
1445
|
return cloneElement(children, context.getReferenceProps(Object.assign(Object.assign(Object.assign({ ref }, props), children.props), { "data-state": context.isOpen ? "open" : "closed" })));
|
|
1444
1446
|
}
|
|
1445
1447
|
else {
|
|
1446
|
-
return (jsx(Button, Object.assign({
|
|
1448
|
+
return (jsx(Button, Object.assign({ "data-state": context.isOpen ? "open" : "closed", ref: ref, type: "button" }, context.getReferenceProps(props), { children: children })));
|
|
1447
1449
|
}
|
|
1448
1450
|
});
|
|
1449
1451
|
|
|
@@ -1506,7 +1508,7 @@ const cvaTooltipPopoverContent = cvaMerge(["max-w-sm", "rounded", "p-2"], {
|
|
|
1506
1508
|
*/
|
|
1507
1509
|
const FloatingArrowContainer = ({ arrowRef, mode = "dark", }) => {
|
|
1508
1510
|
const { context: floatingContext } = usePopoverContext();
|
|
1509
|
-
return (jsx(FloatingArrow, {
|
|
1511
|
+
return (jsx(FloatingArrow, { className: cvaTooltipPopoverTail({ mode, placement: floatingContext.placement }), context: floatingContext, ref: arrowRef }));
|
|
1510
1512
|
};
|
|
1511
1513
|
/**
|
|
1512
1514
|
* Tooltips display additional information upon hover. The information included should be contextual, helpful, and nonessential while providing that extra ability to communicate and give clarity to a user.
|
|
@@ -1535,7 +1537,7 @@ const Tooltip = ({ children, dataTestId = "tool-tip", disabled, className, label
|
|
|
1535
1537
|
if (disabled) {
|
|
1536
1538
|
return wrappedChildren;
|
|
1537
1539
|
}
|
|
1538
|
-
return (jsxs(Popover, { className: cvaTooltipPopover(), placement: placement === "auto" ? "bottom" : placement,
|
|
1540
|
+
return (jsxs(Popover, { activation: { hover: true }, className: cvaTooltipPopover(), dataTestId: dataTestId, placement: placement === "auto" ? "bottom" : placement, children: [jsx(PopoverTrigger, { className: cvaTooltipIcon({ color: mode }), "data-testid": dataTestId ? `${dataTestId}-trigger` : null, onMouseEnter: () => setIsOpen(true), onMouseLeave: () => setIsOpen(false), ref: refs.setReference, children: children === undefined ? (jsx("div", { children: jsx(Icon, Object.assign({ dataTestId: dataTestId ? `${dataTestId}-icon` : undefined, name: "QuestionMarkCircle", size: "small" }, iconProps)) })) : (wrappedChildren) }), isMounted ? (jsx("div", { ref: refs.setFloating, style: floatingStyles, children: jsx(PopoverContent, { children: jsxs("div", { "aria-label": typeof label === "string" ? label : undefined, className: cvaTooltipPopoverContent({ color: mode }), "data-testid": `${dataTestId}-content`, children: [jsx(Text, { inverted: mode === "dark", type: contentTextType, children: label }), placement !== "auto" && jsx(FloatingArrowContainer, { arrowRef: arrowRef, mode: mode })] }) }) })) : null] }));
|
|
1539
1541
|
};
|
|
1540
1542
|
|
|
1541
1543
|
const cvaIndicator = cvaMerge(["flex", "items-center"]);
|
|
@@ -1638,7 +1640,7 @@ const cvaIndicatorIconBackground = cvaMerge(["rounded-full", "items-center", "ju
|
|
|
1638
1640
|
*/
|
|
1639
1641
|
const Indicator = (_a) => {
|
|
1640
1642
|
var { dataTestId, icon, label, color = "unknown", withBackground = true, withLabel = true, ping = false, className } = _a, rest = __rest(_a, ["dataTestId", "icon", "label", "color", "withBackground", "withLabel", "ping", "className"]);
|
|
1641
|
-
return (jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxs("div", Object.assign({ className: cvaIndicator(), "data-testid": dataTestId
|
|
1643
|
+
return (jsx(Tooltip, { className: className, disabled: withLabel, label: label, placement: "bottom", children: jsxs("div", Object.assign({ "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(), "data-testid": dataTestId ? `${dataTestId}-label` : "indicator-label", children: label }) : null] })) }));
|
|
1642
1644
|
};
|
|
1643
1645
|
|
|
1644
1646
|
const cvaMenuItem = cvaMerge([
|
|
@@ -1716,13 +1718,13 @@ const cvaMenuItemPrefix = cvaMerge(["self-center", "flex-grow-0", "text-slate-40
|
|
|
1716
1718
|
*/
|
|
1717
1719
|
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, stopPropagation = true, id, }) => {
|
|
1718
1720
|
const containerProps = useContainerProps({ className, dataTestId: dataTestId || "menu-item" });
|
|
1719
|
-
return (jsxs("div", Object.assign({}, containerProps, {
|
|
1721
|
+
return (jsxs("div", Object.assign({}, containerProps, { className: cvaMenuItem({
|
|
1720
1722
|
selected,
|
|
1721
1723
|
focused,
|
|
1722
1724
|
disabled,
|
|
1723
1725
|
size,
|
|
1724
1726
|
className: containerProps.className,
|
|
1725
|
-
}), onClick: e => {
|
|
1727
|
+
}), id: id, onClick: e => {
|
|
1726
1728
|
stopPropagation && e.stopPropagation();
|
|
1727
1729
|
onClick && onClick(e);
|
|
1728
1730
|
}, tabIndex: 0, children: [prefix ? jsx("div", { className: cvaMenuItemPrefix({ selected }), "data-testid": dataTestId ? `${dataTestId}-prefix` : null, children: prefix }) : null, children && typeof children !== "string" ? (children) : (jsx("div", { className: cvaMenuItemLabel(), "data-testid": dataTestId ? `${dataTestId}-label` : null, children: children !== null && children !== void 0 ? children : label })), suffix ? jsx("div", { className: cvaMenuItemSuffix({ selected }), "data-testid": dataTestId ? `${dataTestId}-suffix` : null, children: suffix }) : null] })));
|
|
@@ -1753,7 +1755,7 @@ const MenuList = (_a) => {
|
|
|
1753
1755
|
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a, args = __rest(_a, ["dataTestId", "className", "children", "withStickyHeader", "showDivider"]);
|
|
1754
1756
|
const childrenArr = Children.toArray(children);
|
|
1755
1757
|
const isLastItem = (index) => index === childrenArr.length - 1;
|
|
1756
|
-
return (jsx("div", {
|
|
1758
|
+
return (jsx("div", { className: cvaMenuList({ stickyHeader: withStickyHeader, className }), "data-testid": dataTestId, onClick: args.onClick, role: "list", tabIndex: 0, children: Children.map(childrenArr, (menuItem, index) => (jsxs(Fragment, { children: [menuItem, showDivider && !isLastItem(index) ? jsx("hr", { className: cvaMenuListDivider() }) : null] }))) }));
|
|
1757
1759
|
};
|
|
1758
1760
|
|
|
1759
1761
|
const cvaMoreMenu = cvaMerge(["p-4"]);
|
|
@@ -1774,7 +1776,7 @@ const MoreMenu = ({ className, dataTestId, popoverProps, iconProps = {
|
|
|
1774
1776
|
variant: "secondary",
|
|
1775
1777
|
}, customButton, customPortalId, children, }) => {
|
|
1776
1778
|
const actionMenuRef = useRef(null);
|
|
1777
|
-
return (jsx("div", {
|
|
1779
|
+
return (jsx("div", { className: cvaMoreMenu({ className }), "data-testid": dataTestId, ref: actionMenuRef, children: jsxs(Popover, Object.assign({}, popoverProps, { children: [jsx(PopoverTrigger, { children: customButton !== null && customButton !== void 0 ? customButton : jsx(IconButton, Object.assign({}, iconButtonProps, { icon: jsx(Icon, Object.assign({ name: "EllipsisHorizontal" }, iconProps)) })) }), jsx(PopoverContent, { portalId: customPortalId, children: close => (typeof children === "function" ? children(close) : children) })] })) }));
|
|
1778
1780
|
};
|
|
1779
1781
|
|
|
1780
1782
|
const cvaModalContainer = cvaMerge(["h-full", "w-full", "flex", "items-center"]);
|
|
@@ -1819,12 +1821,12 @@ const cvaModalBackdrop = cvaMerge([
|
|
|
1819
1821
|
*/
|
|
1820
1822
|
const ModalBackdrop = ({ children, isVisible, onClick, noShadow }) => {
|
|
1821
1823
|
const ref = React.useRef(null);
|
|
1822
|
-
return (jsx("div", {
|
|
1824
|
+
return (jsx("div", { className: cvaModalBackdrop({ show: isVisible, noShadow }), onMouseDown: e => {
|
|
1823
1825
|
// only react on click on backdrop - accessing first child to get around styled element element
|
|
1824
1826
|
if (ref.current !== null && e.target === ref.current.children[0]) {
|
|
1825
1827
|
onClick();
|
|
1826
1828
|
}
|
|
1827
|
-
}, children: children }));
|
|
1829
|
+
}, ref: ref, children: children }));
|
|
1828
1830
|
};
|
|
1829
1831
|
|
|
1830
1832
|
/**
|
|
@@ -1836,7 +1838,7 @@ const ModalBackdrop = ({ children, isVisible, onClick, noShadow }) => {
|
|
|
1836
1838
|
const Modal = React.forwardRef(({ isOpen, children, dataTestId, className, role = "", noBackdropShadow = false, onDismissClick = () => {
|
|
1837
1839
|
return;
|
|
1838
1840
|
}, }, ref) => {
|
|
1839
|
-
return (jsx(ModalBackdrop, { isVisible: isOpen,
|
|
1841
|
+
return (jsx(ModalBackdrop, { isVisible: isOpen, noShadow: noBackdropShadow, onClick: onDismissClick, children: isOpen ? (jsx("div", { className: cvaModalContainer(), ref: ref, role: role, children: jsx(Card, { className: cvaModalCard({ className }), dataTestId: dataTestId, children: children }) })) : null }));
|
|
1840
1842
|
});
|
|
1841
1843
|
Modal.displayName = "Modal";
|
|
1842
1844
|
|
|
@@ -1862,7 +1864,7 @@ const useModal = ({ closeOnOutsideClick } = {}) => {
|
|
|
1862
1864
|
}
|
|
1863
1865
|
},
|
|
1864
1866
|
});
|
|
1865
|
-
const PortalWrapper = (props) => (jsx(Portal, { children: jsx(Modal, Object.assign({
|
|
1867
|
+
const PortalWrapper = (props) => (jsx(Portal, { children: jsx(Modal, Object.assign({ isOpen: isOpen, ref: modalRef }, props)) }));
|
|
1866
1868
|
PortalWrapper.displayName = "Modal";
|
|
1867
1869
|
const WrappedModal = useCallback(PortalWrapper, [Portal, isOpen]);
|
|
1868
1870
|
return {
|
|
@@ -1926,7 +1928,7 @@ const PageHeader = ({ className, dataTestId, action, showLoading, description, l
|
|
|
1926
1928
|
return (jsxs("div", { className: cvaPageHeaderContainer({
|
|
1927
1929
|
className,
|
|
1928
1930
|
withBorder: !tabsList,
|
|
1929
|
-
}), "data-testid": dataTestId, children: [jsxs("div", { className: cvaPageHeader(), children: [jsxs("div", { className: cvaPageHeaderHeadingAccessoriesContainer(), "data-testid": dataTestId ? `${dataTestId}-heading-container` : undefined, children: [jsxs("div", { className: cvaPageHeaderHeadingContainer(), children: [backTo ? (jsx(IconButton, {
|
|
1931
|
+
}), "data-testid": dataTestId, children: [jsxs("div", { className: cvaPageHeader(), children: [jsxs("div", { className: cvaPageHeaderHeadingAccessoriesContainer(), "data-testid": dataTestId ? `${dataTestId}-heading-container` : undefined, children: [jsxs("div", { className: cvaPageHeaderHeadingContainer(), children: [backTo ? (jsx(IconButton, { icon: jsx(Icon, { name: "ArrowLeft" }), renderAs: Link, size: "small", to: backTo, variant: "ghost-neutral" })) : undefined, jsx("h1", { className: cvaPageHeaderHeading(), "data-testid": dataTestId ? `${dataTestId}-heading` : undefined, children: title }), description && !showLoading ? (jsxs("div", { className: cvaPageHeaderDescriptionAndLinkContainer(), children: [jsx(Tooltip, { dataTestId: dataTestId ? `${dataTestId}-tooltip` : undefined, iconProps: { name: "QuestionMarkCircle" }, label: description, placement: "bottom" }), link ? (jsxs(Link, { className: cvaPageHeaderLink(), "data-testid": "tooltip-link", target: "_blank", to: link, children: [linkText, jsx(Icon, { name: "ArrowTopRightOnSquare", size: "small" })] })) : undefined] })) : undefined] }), tag && !showLoading ? (jsx(Tag, { color: tagColor, dataTestId: dataTestId ? `${dataTestId}-tag` : undefined, children: tag })) : undefined, showLoading ? (jsx(Spinner, { centering: "vertically", dataTestId: dataTestId ? `${dataTestId}-spinner` : undefined })) : null, action] }), children ? jsx("div", { className: cvaPageHeaderChildContainer(), children: children }) : null] }), tabsList] }));
|
|
1930
1932
|
};
|
|
1931
1933
|
|
|
1932
1934
|
const cvaPagination = cvaMerge(["flex", "items-center", "gap-1"]);
|
|
@@ -1975,9 +1977,9 @@ const Pagination = ({ previousPage, nextPage, canPreviousPage, canNextPage, page
|
|
|
1975
1977
|
if (loading) {
|
|
1976
1978
|
return (jsx("div", { className: cvaPagination({ className }), children: jsx(SkeletonLines, { height: 16, width: 150 }) }));
|
|
1977
1979
|
}
|
|
1978
|
-
return (jsxs("div", {
|
|
1980
|
+
return (jsxs("div", { className: cvaPagination({ className }), "data-testid": dataTestId, children: [jsx(IconButton, { "data-testid": "prev-page", disabled: cursorBase ? !canPreviousPage || false : page !== undefined && page <= 0, icon: jsx(Icon, { name: "ChevronLeft", size: "small" }), onClick: () => handlePageChange("prev"), size: "small", variant: "ghost-neutral" }), !cursorBase && (jsxs(Fragment, { children: [jsx("div", { className: cvaPaginationText(), "data-testid": "current-page", children: currentPage }), jsx("div", { className: cvaPaginationText(), "data-testid": "page-count", children: pageCount !== null && pageCount !== undefined && getTranslatedCount ? getTranslatedCount(pageCount) : null })] })), jsx(IconButton, { "data-testid": "next-page", disabled: cursorBase
|
|
1979
1981
|
? !canNextPage || false
|
|
1980
|
-
: page !== undefined && pageCount !== undefined && pageCount !== null && page >= pageCount - 1,
|
|
1982
|
+
: page !== undefined && pageCount !== undefined && pageCount !== null && page >= pageCount - 1, icon: jsx(Icon, { name: "ChevronRight", size: "small" }), onClick: () => handlePageChange("next"), size: "small", variant: "ghost-neutral" })] }));
|
|
1981
1983
|
};
|
|
1982
1984
|
|
|
1983
1985
|
function useConfirmExit(confirmExit, when = true) {
|
|
@@ -2061,7 +2063,7 @@ const cvaSpacer = cvaMerge([], {
|
|
|
2061
2063
|
* @returns {JSX.Element} Spacer component
|
|
2062
2064
|
*/
|
|
2063
2065
|
const Spacer = ({ size = "medium", border = false, dataTestId, className }) => {
|
|
2064
|
-
return jsx("div", {
|
|
2066
|
+
return jsx("div", { className: cvaSpacer({ className, border, size }), "data-testid": dataTestId });
|
|
2065
2067
|
};
|
|
2066
2068
|
|
|
2067
2069
|
/**
|
|
@@ -2071,7 +2073,7 @@ const Spacer = ({ size = "medium", border = false, dataTestId, className }) => {
|
|
|
2071
2073
|
* @returns {JSX.Element} SectionHeader component
|
|
2072
2074
|
*/
|
|
2073
2075
|
const SectionHeader = ({ title, subtitle, dataTestId, addons }) => {
|
|
2074
|
-
return (jsxs("div", { className: "flex flex-col", children: [jsx(HelmetProvider, { children: jsx(Helmet, { title: title }) }), jsxs("div", { className: "mb-2 flex flex-row gap-2", children: [jsxs("div", { className: "flex grow flex-col gap-2", children: [jsx(Heading, { variant: "secondary",
|
|
2076
|
+
return (jsxs("div", { className: "flex flex-col", children: [jsx(HelmetProvider, { children: jsx(Helmet, { title: title }) }), jsxs("div", { className: "mb-2 flex flex-row gap-2", children: [jsxs("div", { className: "flex grow flex-col gap-2", children: [jsx(Heading, { dataTestId: dataTestId, variant: "secondary", children: title }), subtitle ? jsx(Heading, { subtle: true, variant: "subtitle", children: subtitle }) : null] }), addons ? jsx("div", { className: "flex gap-2", children: addons }) : null] }), jsx(Spacer, { size: "small" })] }));
|
|
2075
2077
|
};
|
|
2076
2078
|
|
|
2077
2079
|
const cvaSidebar = cvaMerge(["apply", "grid", "grid-cols-fr-min", "items-center"]);
|
|
@@ -2166,7 +2168,7 @@ const Sidebar = ({ childContainerClassName, children, breakpoint = "lg", classNa
|
|
|
2166
2168
|
}
|
|
2167
2169
|
return "visible";
|
|
2168
2170
|
};
|
|
2169
|
-
return (jsxs("div", { className: cvaSidebar({ className }), "data-testid": dataTestId, children: [jsx("div", {
|
|
2171
|
+
return (jsxs("div", { className: cvaSidebar({ className }), "data-testid": dataTestId, children: [jsx("div", { className: cvaSidebarChildContainer({ breakpoint, className: childContainerClassName }), "data-testid": dataTestId ? `${dataTestId}-child-container` : null, ref: overflowContainerRef, children: React__default.Children.map(children, child => {
|
|
2170
2172
|
return React__default.cloneElement(child, {
|
|
2171
2173
|
className: `${child.props.className} ${itemVisibilityClassName(child.props.id)}`,
|
|
2172
2174
|
});
|
|
@@ -2249,7 +2251,7 @@ const Tab = (_a) => {
|
|
|
2249
2251
|
*/
|
|
2250
2252
|
const TabContent = (_a) => {
|
|
2251
2253
|
var { className, dataTestId, children } = _a, rest = __rest(_a, ["className", "dataTestId", "children"]);
|
|
2252
|
-
return (jsx(Content, Object.assign({ "data-testid": dataTestId ? `${dataTestId}-content` : undefined
|
|
2254
|
+
return (jsx(Content, Object.assign({ className: cvaTabContent({ className }), "data-testid": dataTestId ? `${dataTestId}-content` : undefined }, rest, { children: children })));
|
|
2253
2255
|
};
|
|
2254
2256
|
|
|
2255
2257
|
/**
|
|
@@ -2257,7 +2259,7 @@ const TabContent = (_a) => {
|
|
|
2257
2259
|
*/
|
|
2258
2260
|
const TabList = (_a) => {
|
|
2259
2261
|
var { className, dataTestId, children } = _a, rest = __rest(_a, ["className", "dataTestId", "children"]);
|
|
2260
|
-
return (jsx(List, Object.assign({
|
|
2262
|
+
return (jsx(List, Object.assign({ className: cvaTabList({ className }), "data-testid": dataTestId }, rest, { children: children })));
|
|
2261
2263
|
};
|
|
2262
2264
|
|
|
2263
2265
|
/**
|
|
@@ -2416,7 +2418,7 @@ const ValueBar = ({ value, min = 0, max = 100, unit, size = "small", levelColors
|
|
|
2416
2418
|
const score = getScore(value, min, max);
|
|
2417
2419
|
const barFillColor = levelColors ? getFillColor(score, levelColors) : getDefaultFillColor(score);
|
|
2418
2420
|
const barWidth = showValue && size === "small" ? 90 : 100;
|
|
2419
|
-
return (jsx("svg", { className: cvaValueBar({ size, className }), "data-testid": dataTestId, role: "img", children: jsxs("g", { children: [jsx("rect", { className: cvaValueBarProgress({ fill: "background" }),
|
|
2421
|
+
return (jsx("svg", { className: cvaValueBar({ size, className }), "data-testid": dataTestId, role: "img", children: jsxs("g", { children: [jsx("rect", { className: cvaValueBarProgress({ fill: "background" }), "data-testid": "value-bar-svg-rect-0", rx: "5", width: `${barWidth}%` }), jsx("rect", { className: cvaValueBarProgress(), "data-testid": "value-bar-svg-rect-1", fill: barFillColor, rx: "5", width: `${score * barWidth}%` }), showValue && size === "large" ? (jsxs("text", { className: cvaValueBarText({ size }), fill: valueColor !== null && valueColor !== void 0 ? valueColor : "white", x: "12", y: "23", children: [Number(value.toFixed(1)), unit || ""] })) : null, showValue && size === "small" ? (jsxs("text", { className: cvaValueBarText({ size }), fill: valueColor !== null && valueColor !== void 0 ? valueColor : color("NEUTRAL", 400, "CSS"), x: `${barWidth + 2}%`, y: "11", children: [Number(value.toFixed(1)), unit || ""] })) : null] }) }));
|
|
2420
2422
|
};
|
|
2421
2423
|
|
|
2422
2424
|
const cvaWidgetBodyDensityContainer = cvaMerge([
|
|
@@ -2465,7 +2467,7 @@ const cvaWidgetBodyDensityContainer = cvaMerge([
|
|
|
2465
2467
|
* @returns {JSX.Element} WidgetBody component
|
|
2466
2468
|
*/
|
|
2467
2469
|
const WidgetBody = ({ density = "auto", children, dataTestId, className, disableGap }) => {
|
|
2468
|
-
return (jsx("div", {
|
|
2470
|
+
return (jsx("div", { className: cvaWidgetBodyDensityContainer({ density, disableGap, className }), "data-testid": dataTestId, children: children }));
|
|
2469
2471
|
};
|
|
2470
2472
|
|
|
2471
2473
|
const cvaClickable = cvaMerge([
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trackunit/react-components",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.261",
|
|
4
4
|
"repository": "https://github.com/Trackunit/manager",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE.txt",
|
|
6
6
|
"engines": {
|
|
@@ -13,7 +13,6 @@
|
|
|
13
13
|
"react-use": "^17.4.0",
|
|
14
14
|
"react-day-picker": "^8.9.1",
|
|
15
15
|
"date-fns": "^2.30.0",
|
|
16
|
-
"@floating-ui/react": "^0.26.6",
|
|
17
16
|
"@radix-ui/react-tabs": "^1.0.4",
|
|
18
17
|
"@trackunit/ui-icons": "*",
|
|
19
18
|
"@trackunit/shared-utils": "*",
|
|
@@ -23,7 +22,8 @@
|
|
|
23
22
|
"zod": "3.22.4",
|
|
24
23
|
"lodash": "4.17.21",
|
|
25
24
|
"jest-fetch-mock": "^3.0.3",
|
|
26
|
-
"@testing-library/react": "14.0.0"
|
|
25
|
+
"@testing-library/react": "14.0.0",
|
|
26
|
+
"@floating-ui/react": "^0.26.6"
|
|
27
27
|
},
|
|
28
28
|
"module": "./index.esm.js",
|
|
29
29
|
"main": "./index.cjs.js"
|