@toptal/picasso 28.2.2 → 28.3.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.
@@ -25,6 +25,8 @@ export interface Props extends BaseProps, TextLabelProps, MenuItemAttributes {
25
25
  children?: ReactNode;
26
26
  /** The additional description */
27
27
  description?: ReactNode;
28
+ /** Render an `<Icon />` */
29
+ icon?: ReactElement;
28
30
  /** Callback when item is clicked */
29
31
  onClick?: (event: React.MouseEvent<HTMLElement, MouseEvent>) => void;
30
32
  /** Callback when item is hovered */
@@ -26,7 +26,7 @@ const useStyles = makeStyles(styles, {
26
26
  name: 'PicassoMenuItem',
27
27
  });
28
28
  export const MenuItem = forwardRef(function MenuItem(props, ref) {
29
- const { as = 'li', children, description, className, disabled, disableGutters, menu, titleCase: propTitleCase, selected, checkmarked, style, value, variant = 'light', nonSelectable, onClick, onMouseEnter } = props, rest = __rest(props, ["as", "children", "description", "className", "disabled", "disableGutters", "menu", "titleCase", "selected", "checkmarked", "style", "value", "variant", "nonSelectable", "onClick", "onMouseEnter"]);
29
+ const { as = 'li', children, description, className, disabled, disableGutters, menu, titleCase: propTitleCase, selected, checkmarked, style, value, variant = 'light', nonSelectable, onClick, onMouseEnter, icon } = props, rest = __rest(props, ["as", "children", "description", "className", "disabled", "disableGutters", "menu", "titleCase", "selected", "checkmarked", "style", "value", "variant", "nonSelectable", "onClick", "onMouseEnter", "icon"]);
30
30
  const classes = useStyles();
31
31
  const anchorRef = useRef(null);
32
32
  const titleCase = useTitleCase(propTitleCase);
@@ -36,6 +36,7 @@ export const MenuItem = forwardRef(function MenuItem(props, ref) {
36
36
  onMouseEnter,
37
37
  });
38
38
  const isLink = as === Link && rest.href;
39
+ const isIconWrapperVisible = checkmarked !== undefined || icon;
39
40
  return (React.createElement(React.Fragment, null,
40
41
  React.createElement(MUIMenuItem, Object.assign({}, rest, { ref: ref,
41
42
  // replace Picasso Link with Anchor to not applying Picasso
@@ -49,7 +50,7 @@ export const MenuItem = forwardRef(function MenuItem(props, ref) {
49
50
  }), disabled: disabled, disableGutters: disableGutters, onClick: onItemClick, onMouseEnter: onItemMouseEnter, style: style, value: value, selected: selected || isOpened }),
50
51
  React.createElement(Container, { ref: anchorRef, flex: true, direction: 'column', className: classes.content },
51
52
  React.createElement(Container, { flex: true, alignItems: 'center' },
52
- checkmarked !== undefined && (React.createElement(Container, { className: classes.iconContainer, flex: true, inline: true, right: 'xsmall' }, checkmarked && React.createElement(CheckMinor16, null))),
53
+ isIconWrapperVisible && (React.createElement(Container, { className: classes.iconContainer, flex: true, inline: true, right: 'xsmall' }, checkmarked ? React.createElement(CheckMinor16, null) : icon)),
53
54
  typeof children === 'string' ? (React.createElement("span", { className: cx(classes.stringContent, {
54
55
  [classes.stringContentSemibold]: checkmarked,
55
56
  }), style: style }, titleCase ? toTitleCase(children) : children)) : (children),
@@ -57,7 +58,7 @@ export const MenuItem = forwardRef(function MenuItem(props, ref) {
57
58
  React.createElement(ChevronMinor16, { color: '' })))),
58
59
  description && (React.createElement(Container, { className: cx(classes.description, {
59
60
  [classes.descriptionDisabled]: disabled,
60
- }), left: checkmarked === undefined ? undefined : 'medium', top: 0.25 }, description)))),
61
+ }), left: isIconWrapperVisible ? 'medium' : undefined, top: 0.25 }, description)))),
61
62
  menu && isOpened && (React.createElement(Popper, { anchorEl: anchorRef.current, placement: 'right-start', open: true, autoWidth: false, enableCompactMode: true, popperOptions: {
62
63
  modifiers: {
63
64
  offset: {
@@ -1 +1 @@
1
- {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MenuItem.js","sourceRoot":"","sources":["../../src/MenuItem/MenuItem.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toptal/picasso",
3
- "version": "28.2.2",
3
+ "version": "28.3.0",
4
4
  "description": "Toptal UI components library",
5
5
  "publishConfig": {
6
6
  "access": "public",