@trackunit/react-components 0.1.193 → 0.1.194
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
|
@@ -19361,7 +19361,7 @@ const cvaMenuItemPrefix = cssClassVarianceUtilities.cvaMerge(["self-center", "fl
|
|
|
19361
19361
|
* @param {MenuItemProps} props - The props for the MenuItem component
|
|
19362
19362
|
* @returns {JSX.Element} MenuItem component
|
|
19363
19363
|
*/
|
|
19364
|
-
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, id, }) => {
|
|
19364
|
+
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, stopPropagation = true, id, }) => {
|
|
19365
19365
|
const containerProps = useContainerProps({ className, dataTestId: dataTestId || "menu-item" });
|
|
19366
19366
|
return (jsxRuntime.jsxs("div", Object.assign({}, containerProps, { id: id, className: cvaMenuItem({
|
|
19367
19367
|
selected,
|
|
@@ -19370,7 +19370,7 @@ const MenuItem = ({ className, dataTestId, label, size, children, selected, focu
|
|
|
19370
19370
|
size,
|
|
19371
19371
|
className: containerProps.className,
|
|
19372
19372
|
}), onClick: e => {
|
|
19373
|
-
e.stopPropagation();
|
|
19373
|
+
stopPropagation && e.stopPropagation();
|
|
19374
19374
|
onClick && onClick(e);
|
|
19375
19375
|
}, tabIndex: 0, children: [prefix && (jsxRuntime.jsx("div", { className: cvaMenuItemPrefix({ selected }), "data-testid": dataTestId && `${dataTestId}-prefix`, children: prefix })), children && typeof children !== "string" ? (children) : (jsxRuntime.jsx("div", { className: cvaMenuItemLabel(), "data-testid": dataTestId && `${dataTestId}-label`, children: children !== null && children !== void 0 ? children : label })), suffix && (jsxRuntime.jsx("div", { className: cvaMenuItemSuffix({ selected }), "data-testid": dataTestId && `${dataTestId}-suffix`, children: suffix }))] })));
|
|
19376
19376
|
};
|
|
@@ -19397,10 +19397,10 @@ const cvaMenuListDivider = cssClassVarianceUtilities.cvaMerge([
|
|
|
19397
19397
|
* @returns {JSX.Element} MenuList component
|
|
19398
19398
|
*/
|
|
19399
19399
|
const MenuList = (_a) => {
|
|
19400
|
-
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a
|
|
19400
|
+
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a, args = __rest$1(_a, ["dataTestId", "className", "children", "withStickyHeader", "showDivider"]);
|
|
19401
19401
|
const childrenArr = React.Children.toArray(children);
|
|
19402
19402
|
const isLastItem = (index) => index === childrenArr.length - 1;
|
|
19403
|
-
return (jsxRuntime.jsx("div", { "data-testid": dataTestId, className: cvaMenuList({ stickyHeader: withStickyHeader, className }), tabIndex: 0, role: "list", children: React.Children.map(childrenArr, (menuItem, index) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [menuItem, showDivider && !isLastItem(index) && jsxRuntime.jsx("hr", { className: cvaMenuListDivider() })] }))) }));
|
|
19403
|
+
return (jsxRuntime.jsx("div", { "data-testid": dataTestId, className: cvaMenuList({ stickyHeader: withStickyHeader, className }), tabIndex: 0, role: "list", onClick: args.onClick, children: React.Children.map(childrenArr, (menuItem, index) => (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [menuItem, showDivider && !isLastItem(index) && jsxRuntime.jsx("hr", { className: cvaMenuListDivider() })] }))) }));
|
|
19404
19404
|
};
|
|
19405
19405
|
|
|
19406
19406
|
const cvaMoreMenu = cssClassVarianceUtilities.cvaMerge(["p-4"]);
|
package/index.esm.js
CHANGED
|
@@ -19332,7 +19332,7 @@ const cvaMenuItemPrefix = cvaMerge(["self-center", "flex-grow-0", "text-slate-40
|
|
|
19332
19332
|
* @param {MenuItemProps} props - The props for the MenuItem component
|
|
19333
19333
|
* @returns {JSX.Element} MenuItem component
|
|
19334
19334
|
*/
|
|
19335
|
-
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, id, }) => {
|
|
19335
|
+
const MenuItem = ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, stopPropagation = true, id, }) => {
|
|
19336
19336
|
const containerProps = useContainerProps({ className, dataTestId: dataTestId || "menu-item" });
|
|
19337
19337
|
return (jsxs("div", Object.assign({}, containerProps, { id: id, className: cvaMenuItem({
|
|
19338
19338
|
selected,
|
|
@@ -19341,7 +19341,7 @@ const MenuItem = ({ className, dataTestId, label, size, children, selected, focu
|
|
|
19341
19341
|
size,
|
|
19342
19342
|
className: containerProps.className,
|
|
19343
19343
|
}), onClick: e => {
|
|
19344
|
-
e.stopPropagation();
|
|
19344
|
+
stopPropagation && e.stopPropagation();
|
|
19345
19345
|
onClick && onClick(e);
|
|
19346
19346
|
}, tabIndex: 0, children: [prefix && (jsx("div", { className: cvaMenuItemPrefix({ selected }), "data-testid": dataTestId && `${dataTestId}-prefix`, children: prefix })), children && typeof children !== "string" ? (children) : (jsx("div", { className: cvaMenuItemLabel(), "data-testid": dataTestId && `${dataTestId}-label`, children: children !== null && children !== void 0 ? children : label })), suffix && (jsx("div", { className: cvaMenuItemSuffix({ selected }), "data-testid": dataTestId && `${dataTestId}-suffix`, children: suffix }))] })));
|
|
19347
19347
|
};
|
|
@@ -19368,10 +19368,10 @@ const cvaMenuListDivider = cvaMerge([
|
|
|
19368
19368
|
* @returns {JSX.Element} MenuList component
|
|
19369
19369
|
*/
|
|
19370
19370
|
const MenuList = (_a) => {
|
|
19371
|
-
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a
|
|
19371
|
+
var { dataTestId, className, children, withStickyHeader = false, showDivider = false } = _a, args = __rest$1(_a, ["dataTestId", "className", "children", "withStickyHeader", "showDivider"]);
|
|
19372
19372
|
const childrenArr = Children.toArray(children);
|
|
19373
19373
|
const isLastItem = (index) => index === childrenArr.length - 1;
|
|
19374
|
-
return (jsx("div", { "data-testid": dataTestId, className: cvaMenuList({ stickyHeader: withStickyHeader, className }), tabIndex: 0, role: "list", children: Children.map(childrenArr, (menuItem, index) => (jsxs(Fragment, { children: [menuItem, showDivider && !isLastItem(index) && jsx("hr", { className: cvaMenuListDivider() })] }))) }));
|
|
19374
|
+
return (jsx("div", { "data-testid": dataTestId, className: cvaMenuList({ stickyHeader: withStickyHeader, className }), tabIndex: 0, role: "list", onClick: args.onClick, children: Children.map(childrenArr, (menuItem, index) => (jsxs(Fragment, { children: [menuItem, showDivider && !isLastItem(index) && jsx("hr", { className: cvaMenuListDivider() })] }))) }));
|
|
19375
19375
|
};
|
|
19376
19376
|
|
|
19377
19377
|
const cvaMoreMenu = cvaMerge(["p-4"]);
|
package/package.json
CHANGED
|
@@ -54,6 +54,11 @@ export interface MenuItemProps extends CommonProps {
|
|
|
54
54
|
* used in disabled select options
|
|
55
55
|
*/
|
|
56
56
|
disabled?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* A boolean prop to stop propagation of onClick event
|
|
59
|
+
* used in Menu and Select components
|
|
60
|
+
*/
|
|
61
|
+
stopPropagation?: boolean;
|
|
57
62
|
}
|
|
58
63
|
/**
|
|
59
64
|
* The MenuItem component is used to display a menu, primarily meant to be used in a list form.
|
|
@@ -61,5 +66,5 @@ export interface MenuItemProps extends CommonProps {
|
|
|
61
66
|
* @param {MenuItemProps} props - The props for the MenuItem component
|
|
62
67
|
* @returns {JSX.Element} MenuItem component
|
|
63
68
|
*/
|
|
64
|
-
export declare const MenuItem: ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, id, }: MenuItemProps) => JSX.Element;
|
|
69
|
+
export declare const MenuItem: ({ className, dataTestId, label, size, children, selected, focused, prefix, suffix, disabled, onClick, stopPropagation, id, }: MenuItemProps) => JSX.Element;
|
|
65
70
|
export {};
|
|
@@ -19,6 +19,8 @@ export interface MenuListProps extends CommonProps {
|
|
|
19
19
|
* @default false
|
|
20
20
|
*/
|
|
21
21
|
withStickyHeader?: boolean;
|
|
22
|
+
/** Click handler - typically used to trigger close action. when propagation is NOT prevented on menuItem */
|
|
23
|
+
onClick?: () => void;
|
|
22
24
|
}
|
|
23
25
|
/**
|
|
24
26
|
* The MenuList component is used for menus and selects.
|