@conveyorhq/arrow-ds 1.138.0 → 1.139.0
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/package.json +1 -1
- package/public/components/Menu/MenuItem.d.ts +1 -0
- package/public/components/Menu/MenuItem.js +3 -2
- package/public/components/MenuRenderer/MenuRenderer.d.ts +2 -1
- package/public/components/MenuRenderer/MenuRenderer.js +2 -2
- package/public/css/styles.css +5 -0
- package/public/css/styles.min.css +1 -1
- package/public/css/styles.min.css.map +1 -1
- package/src/components/Menu/MenuItem.tsx +4 -0
- package/src/components/Menu/index.css +5 -0
- package/src/components/MenuRenderer/MenuRenderer.tsx +6 -1
package/package.json
CHANGED
|
@@ -4,6 +4,7 @@ export interface MenuItemProps {
|
|
|
4
4
|
onClick?: (event: MouseEvent) => void;
|
|
5
5
|
isSelected?: boolean;
|
|
6
6
|
isHighlighted?: boolean;
|
|
7
|
+
disabled?: boolean;
|
|
7
8
|
[key: string]: any;
|
|
8
9
|
}
|
|
9
10
|
export declare const MenuItem: React.ForwardRefExoticComponent<Pick<any, string | number | symbol> & React.RefAttributes<MenuItemProps>>;
|
|
@@ -28,7 +28,7 @@ const classnames_1 = __importDefault(require("classnames"));
|
|
|
28
28
|
const bem_1 = require("../../utilities/bem");
|
|
29
29
|
const MenuRenderer_1 = require("../MenuRenderer");
|
|
30
30
|
const cn = "Menu";
|
|
31
|
-
exports.MenuItem = react_1.forwardRef(({ children, className, isSelected = false, isHighlighted = false, as: Component = "button", onClick, ...rest }, ref) => {
|
|
31
|
+
exports.MenuItem = react_1.forwardRef(({ children, className, isSelected = false, isHighlighted = false, disabled = false, as: Component = "button", onClick, ...rest }, ref) => {
|
|
32
32
|
const { onClose, itemProps } = MenuRenderer_1.useMenuContext();
|
|
33
33
|
const clickHandler = (event) => {
|
|
34
34
|
if (typeof onClick === "function") {
|
|
@@ -42,6 +42,7 @@ exports.MenuItem = react_1.forwardRef(({ children, className, isSelected = false
|
|
|
42
42
|
bem_1.bem(cn, { e: "item" }),
|
|
43
43
|
isSelected && bem_1.bem(cn, { e: "item", m: "isSelected" }),
|
|
44
44
|
isHighlighted && bem_1.bem(cn, { e: "item", m: "isHighlighted" }),
|
|
45
|
+
disabled && bem_1.bem(cn, { e: "item", m: "isDisabled" }),
|
|
45
46
|
className,
|
|
46
|
-
]), onClick: clickHandler }, itemProps, rest), children));
|
|
47
|
+
]), onClick: clickHandler, disabled: disabled }, itemProps, rest), children));
|
|
47
48
|
});
|
|
@@ -30,6 +30,7 @@ export interface MenuProps extends BoxProps {
|
|
|
30
30
|
isMenuOpen?: boolean;
|
|
31
31
|
openMenu?: (open: boolean) => void;
|
|
32
32
|
menuDisplay?: "inline-block" | "block";
|
|
33
|
+
disableFocusLock?: boolean;
|
|
33
34
|
}
|
|
34
|
-
export declare const MenuRenderer: ({ children, className, placement, position, trigger, popperModifiers, autoFocus, hasPortal, isOpen: isOpenInitial, isMenuOpen: isOpenControlled, onClose: onCloseProp, openMenu: setOpenControlled, menuDisplay, ...rest }: MenuProps) => JSX.Element;
|
|
35
|
+
export declare const MenuRenderer: ({ children, className, placement, position, trigger, popperModifiers, autoFocus, hasPortal, isOpen: isOpenInitial, isMenuOpen: isOpenControlled, onClose: onCloseProp, openMenu: setOpenControlled, menuDisplay, disableFocusLock, ...rest }: MenuProps) => JSX.Element;
|
|
35
36
|
export {};
|
|
@@ -40,7 +40,7 @@ const TRANSITION_START = {
|
|
|
40
40
|
opacity: 0,
|
|
41
41
|
};
|
|
42
42
|
const TRANSITION_END = { transform: "translateY(0)", opacity: 1 };
|
|
43
|
-
const MenuRenderer = ({ children, className, placement = "bottom-start", position = "absolute", trigger, popperModifiers = [], autoFocus = false, hasPortal = false, isOpen: isOpenInitial = false, isMenuOpen: isOpenControlled, onClose: onCloseProp, openMenu: setOpenControlled, menuDisplay = "inline-block", ...rest }) => {
|
|
43
|
+
const MenuRenderer = ({ children, className, placement = "bottom-start", position = "absolute", trigger, popperModifiers = [], autoFocus = false, hasPortal = false, isOpen: isOpenInitial = false, isMenuOpen: isOpenControlled, onClose: onCloseProp, openMenu: setOpenControlled, menuDisplay = "inline-block", disableFocusLock = false, ...rest }) => {
|
|
44
44
|
const [isOpenUncontrolled, setOpenUncontrolled] = react_1.useState(isOpenInitial);
|
|
45
45
|
const open = isOpenControlled !== null && isOpenControlled !== void 0 ? isOpenControlled : isOpenUncontrolled;
|
|
46
46
|
const setOpen = setOpenControlled !== null && setOpenControlled !== void 0 ? setOpenControlled : setOpenUncontrolled;
|
|
@@ -152,7 +152,7 @@ const MenuRenderer = ({ children, className, placement = "bottom-start", positio
|
|
|
152
152
|
transitions.map(({ item, key, props: transitionProps }) => item && (react_1.default.createElement(PortalComponent, { key: key },
|
|
153
153
|
react_1.default.createElement(context_1.MenuContext.Provider, { value: context },
|
|
154
154
|
react_1.default.createElement(Box_1.Box, Object.assign({ className: hasPortal ? "z-toast" : "z-menu", ref: setPopperElement, style: { minWidth: `${minWidth}px`, ...styles.popper } }, attributes.popper),
|
|
155
|
-
react_1.default.createElement(react_focus_lock_1.default, { autoFocus: autoFocus },
|
|
155
|
+
react_1.default.createElement(react_focus_lock_1.default, { autoFocus: autoFocus, disabled: disableFocusLock },
|
|
156
156
|
react_1.default.createElement(react_spring_1.animated.div, { key: key, style: transitionProps, ref: menuListElement, className: menuDisplay }, typeof children === "function"
|
|
157
157
|
? children(renderProps)
|
|
158
158
|
: children)))))))));
|
package/public/css/styles.css
CHANGED
|
@@ -4768,6 +4768,11 @@ override built-in Image component classes */
|
|
|
4768
4768
|
color: rgb(32 65 86 / var(--tw-text-opacity));
|
|
4769
4769
|
}
|
|
4770
4770
|
|
|
4771
|
+
.ads-Menu-item--isDisabled {
|
|
4772
|
+
pointer-events: none;
|
|
4773
|
+
opacity: 0.5;
|
|
4774
|
+
}
|
|
4775
|
+
|
|
4771
4776
|
.ads-Menu-item:first-of-type {
|
|
4772
4777
|
border-top-left-radius: 2px;
|
|
4773
4778
|
border-top-right-radius: 2px;
|