@bitrise/bitkit 9.7.3 → 9.7.4

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@bitrise/bitkit",
3
3
  "description": "Bitrise React component library",
4
- "version": "9.7.3",
4
+ "version": "9.7.4",
5
5
  "repository": "git@github.com:bitrise-io/bitkit.git",
6
6
  "main": "src/index.ts",
7
7
  "license": "UNLICENSED",
@@ -40,11 +40,11 @@
40
40
  "@types/react-transition-group": "^4.4.4",
41
41
  "classnames": "^2.3.1",
42
42
  "clipboard": "^2.0.10",
43
- "framer-motion": "^6.3.2",
43
+ "framer-motion": "^6.3.3",
44
44
  "luxon": "^2.3.2",
45
45
  "react": "^17.0.2",
46
46
  "react-dom": "^17.0.2",
47
- "react-popper": "^2.2.5",
47
+ "react-popper": "^2.3.0",
48
48
  "react-transition-group": "^4.4.2"
49
49
  },
50
50
  "peerDependencies": {
@@ -52,12 +52,12 @@
52
52
  "react-dom": "^17.0.2"
53
53
  },
54
54
  "devDependencies": {
55
- "@babel/core": "^7.17.9",
55
+ "@babel/core": "^7.17.10",
56
56
  "@bitrise/eslint-plugin": "^2.1.0",
57
57
  "@chakra-ui/cli": "^1.9.0",
58
- "@commitlint/cli": "^16.2.3",
59
- "@commitlint/config-conventional": "^16.2.1",
60
- "@google-cloud/storage": "^5.19.3",
58
+ "@commitlint/cli": "^16.2.4",
59
+ "@commitlint/config-conventional": "^16.2.4",
60
+ "@google-cloud/storage": "^5.19.4",
61
61
  "@semantic-release/changelog": "^6.0.1",
62
62
  "@semantic-release/commit-analyzer": "^9.0.2",
63
63
  "@semantic-release/git": "^10.0.1",
@@ -89,7 +89,7 @@
89
89
  "@typescript-eslint/eslint-plugin": "^5.21.0",
90
90
  "@typescript-eslint/parser": "^5.21.0",
91
91
  "@wojtekmaj/enzyme-adapter-react-17": "^0.6.7",
92
- "axios": "^0.27.1",
92
+ "axios": "^0.27.2",
93
93
  "babel-eslint": "^10.0.1",
94
94
  "babel-loader": "^8.2.5",
95
95
  "babel-plugin-polyfill-corejs2": "^0.3.1",
@@ -103,7 +103,7 @@
103
103
  "eslint-plugin-jsx-a11y": "^6.5.1",
104
104
  "eslint-plugin-prettier": "^4.0.0",
105
105
  "eslint-plugin-react": "^7.29.4",
106
- "eslint-plugin-react-hooks": "^4.4.0",
106
+ "eslint-plugin-react-hooks": "^4.5.0",
107
107
  "eslint-plugin-storybook": "^0.5.11",
108
108
  "eslint-plugin-testing-library": "^5.3.1",
109
109
  "fscreen": "^1.2.0",
@@ -124,11 +124,11 @@
124
124
  "react-router": "^5.3.1",
125
125
  "react-router-dom": "^5.3.1",
126
126
  "semantic-release": "^19.0.2",
127
- "superstatic": "^7.1.0",
127
+ "superstatic": "^8.0.0",
128
128
  "ts-jest": "^27.1.4",
129
129
  "ts-node": "^10.7.0",
130
130
  "tsconfig-paths-webpack-plugin": "^3.5.2",
131
- "typescript": "^4.6.3",
131
+ "typescript": "^4.6.4",
132
132
  "webpack": "^5.72.0"
133
133
  },
134
134
  "files": [
@@ -9,15 +9,12 @@ export default {
9
9
  const Template: ComponentStory<typeof Box> = ({ ...props }) => <Box {...props} />;
10
10
 
11
11
  export const WithProps = Template.bind({});
12
- const sx = {
13
- backgroundColor: 'brand.primary',
14
- color: 'neutral.95',
15
- padding: '12',
16
- width: '100%',
17
- };
18
12
  WithProps.args = {
19
13
  as: 'div',
20
14
  className: '',
21
15
  children: 'This is the Box',
22
- sx,
16
+ backgroundColor: 'brand.primary',
17
+ color: 'neutral.95',
18
+ padding: '12',
19
+ width: '100%',
23
20
  };
@@ -1,19 +1,14 @@
1
1
  import { Box as ChakraBox, BoxProps } from '@chakra-ui/react';
2
2
 
3
- export interface Props {
4
- as?: BoxProps['as'];
5
- children?: BoxProps['children'];
6
- className?: BoxProps['className'];
7
- sx?: BoxProps['sx'];
8
- }
9
-
10
3
  /**
11
4
  * Box is the most abstract component on top of which all other components are built. By default, it renders a div element.
12
5
  *
13
- * And this is our CSS-in-JS component, you can use this with `sx` prop to style anything.
6
+ * And this is our CSS-in-JS component, you can use this with style props.
14
7
  */
15
- const Box = (props: Props) => {
8
+ const Box = (props: BoxProps) => {
16
9
  return <ChakraBox {...props} />;
17
10
  };
18
11
 
12
+ export { BoxProps } from '@chakra-ui/react';
13
+
19
14
  export default Box;
@@ -3,7 +3,7 @@ import { sortObjectByKey } from '../../utils/storyUtils';
3
3
  import Button from './Button';
4
4
 
5
5
  export default {
6
- title: 'Components/Button (WIP)',
6
+ title: 'Components/Button',
7
7
  component: Button,
8
8
  } as ComponentMeta<typeof Button>;
9
9
 
@@ -12,12 +12,10 @@ const Template: ComponentStory<typeof Button> = (props) => <Button {...props} />
12
12
  export const WithProps = Template.bind({});
13
13
  WithProps.args = sortObjectByKey({
14
14
  ...Button.defaultProps,
15
- as: 'button',
16
- className: '',
15
+ children: 'Button',
17
16
  isDanger: false,
18
17
  isDisabled: false,
19
- href: '',
18
+ href: '#',
20
19
  target: '_self',
21
20
  type: 'button',
22
- children: 'Button',
23
21
  });
@@ -2,10 +2,7 @@ const ButtonTheme = {
2
2
  baseStyle: {
3
3
  border: '0.0625rem solid',
4
4
  borderRadius: '4',
5
- fontWeight: 'normal',
6
- lineHeight: 3,
7
5
  _disabled: {
8
- cursor: 'not-allowed',
9
6
  pointerEvents: 'none',
10
7
  },
11
8
  },
@@ -17,10 +14,6 @@ const ButtonTheme = {
17
14
  fontWeight: 'bold',
18
15
  _hover: {
19
16
  bgGradient: 'linear(to-b, purple.30, purple.10)',
20
- _disabled: {
21
- bgGradient: 'linear(to-b, neutral.80, neutral.70)',
22
- borderColor: 'neutral.70',
23
- },
24
17
  },
25
18
  _active: {
26
19
  bgGradient: 'linear(to-b, purple.10, purple.10)',
@@ -31,20 +24,15 @@ const ButtonTheme = {
31
24
  },
32
25
  },
33
26
  secondary: {
34
- bgGradient: 'linear(to-b, neutral.100, neutral.95)',
27
+ bgGradient: 'linear(to-b, neutral.100, neutral.93)',
35
28
  borderColor: 'neutral.90',
36
29
  color: 'purple.10',
37
30
  _hover: {
38
- bgGradient: 'linear(to-b, neutral.95, neutral.93)',
39
- _disabled: {
40
- bgGradient: 'linear(to-b, neutral.100, neutral.95)',
41
- borderColor: 'neutral.90',
42
- color: 'neutral.70',
43
- },
31
+ bgGradient: 'linear(to-b, neutral.93, neutral.93)',
44
32
  },
45
33
  _active: {
46
- bgGradient: 'linear(to-b, purple.10, purple.10)',
47
- color: 'neutral.95',
34
+ bgGradient: 'linear(to-b, neutral.90, neutral.90)',
35
+ borderColor: 'neutral.80',
48
36
  },
49
37
  _disabled: {
50
38
  color: 'neutral.70',
@@ -53,39 +41,31 @@ const ButtonTheme = {
53
41
  tertiary: {
54
42
  background: 'transparent',
55
43
  borderColor: 'transparent',
56
- color: 'purple.50',
44
+ color: 'purple.10',
57
45
  _hover: {
58
- background: 'purple.95',
59
- _disabled: {
60
- background: 'transparent',
61
- borderColor: 'transparent',
62
- },
46
+ background: 'neutral.93',
47
+ borderColor: 'neutral.93',
63
48
  },
64
49
  _active: {
65
- background: 'purple.10',
66
- color: 'neutral.95',
67
- _disabled: {
68
- color: 'neutral.70',
69
- },
50
+ background: 'neutral.90',
51
+ borderColor: 'neutral.90',
70
52
  },
71
53
  _disabled: {
72
54
  color: 'neutral.70',
73
55
  },
74
56
  },
75
57
  'primary--danger': {
76
- bgGradient: 'linear(to-b, red.40, red.30)',
77
- borderColor: 'red.30',
78
- color: 'neutral.100',
58
+ bgGradient: 'linear(to-b, red.50, red.30)',
59
+ borderColor: 'red.50',
60
+ color: 'neutral.95',
79
61
  fontWeight: 'bold',
80
62
  _hover: {
81
- bgGradient: 'linear(to-b, red.30, red.20)',
82
- _disabled: {
83
- bgGradient: 'linear(to-b, neutral.80, neutral.70)',
84
- borderColor: 'neutral.70',
85
- },
63
+ bgGradient: 'linear(to-b, red.40, red.20)',
64
+ borderColor: 'red.40',
86
65
  },
87
66
  _active: {
88
67
  bgGradient: 'linear(to-b, red.20, red.20)',
68
+ borderColor: 'red.20',
89
69
  },
90
70
  _disabled: {
91
71
  bgGradient: 'linear(to-b, neutral.80, neutral.70)',
@@ -93,21 +73,16 @@ const ButtonTheme = {
93
73
  },
94
74
  },
95
75
  'secondary--danger': {
96
- bgGradient: 'linear(to-b, neutral.95, neutral.100)',
76
+ bgGradient: 'linear(to-b, neutral.100, neutral.93)',
97
77
  borderColor: 'neutral.90',
98
78
  color: 'red.50',
99
79
  _hover: {
100
80
  bgGradient: 'linear(to-b, red.93, red.93)',
101
81
  borderColor: 'red.70',
102
- _disabled: {
103
- bgGradient: 'linear(to-b, neutral.95, neutral.100)',
104
- borderColor: 'neutral.90',
105
- color: 'neutral.70',
106
- },
107
82
  },
108
83
  _active: {
109
- bgGradient: 'linear(to-b, red.30, red.30)',
110
- color: 'neutral.100',
84
+ bgGradient: 'linear(to-b, red.90, red.90)',
85
+ borderColor: 'red.70',
111
86
  },
112
87
  _disabled: {
113
88
  color: 'neutral.70',
@@ -119,14 +94,11 @@ const ButtonTheme = {
119
94
  color: 'red.50',
120
95
  _hover: {
121
96
  background: 'red.93',
122
- _disabled: {
123
- background: 'transparent',
124
- color: 'neutral.70',
125
- },
97
+ borderColor: 'red.93',
126
98
  },
127
99
  _active: {
128
- background: 'red.30',
129
- color: 'neutral.100',
100
+ background: 'red.90',
101
+ borderColor: 'red.90',
130
102
  },
131
103
  _disabled: {
132
104
  color: 'neutral.70',
@@ -137,13 +109,13 @@ const ButtonTheme = {
137
109
  small: {
138
110
  minWidth: '32',
139
111
  height: '32',
140
- fontSize: 2,
112
+ fontSize: '2',
141
113
  paddingX: '12',
142
114
  },
143
115
  medium: {
144
116
  minWidth: '48',
145
117
  height: '48',
146
- fontSize: 3,
118
+ fontSize: '3',
147
119
  paddingX: '16',
148
120
  },
149
121
  },
@@ -1,38 +1,41 @@
1
- /* eslint-disable @typescript-eslint/ban-ts-comment */
2
- import { forwardRef } from 'react';
3
- import { Button as ChakraButton, ButtonProps } from '@chakra-ui/react';
1
+ import { forwardRef, HTMLAttributeAnchorTarget } from 'react';
2
+ import { Button as ChakraButton, ButtonProps as ChackraButtonProps } from '@chakra-ui/react';
4
3
  import Icon from '../../Old/Icon/Icon';
5
4
  import { TypeIconName } from '../../Old/Icon/tsx';
6
5
 
7
- export interface Props {
8
- as?: 'a' | 'button';
6
+ export interface LinkProps extends ChackraButtonProps {
7
+ as: 'a';
8
+ target?: HTMLAttributeAnchorTarget;
9
+ }
10
+
11
+ export interface ButtonProps extends ChackraButtonProps {
12
+ as?: 'button';
13
+ }
14
+
15
+ export type Props = {
9
16
  children: string;
10
17
  className?: string;
11
- href?: string;
12
18
  isDanger?: boolean;
13
19
  isDisabled?: boolean;
14
20
  leftIconName?: TypeIconName;
15
21
  onClick?: (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
16
- ref?: ButtonProps['itemRef'];
22
+ ref?: ChackraButtonProps['itemRef'];
17
23
  rightIconName?: TypeIconName;
18
24
  size?: 'small' | 'medium';
19
- sx?: ButtonProps['sx'];
20
- target?: '_blank' | '_parent' | '_self' | '_top';
21
- type?: ButtonProps['type'];
22
25
  variant?: 'primary' | 'secondary' | 'tertiary';
23
- }
26
+ } & (LinkProps | ButtonProps);
24
27
 
25
28
  /**
26
29
  * The Button component is used to trigger an action or event, such as submitting a form, opening a dialog, canceling an action, or performing a delete operation.
27
- *
28
- * TODO:
29
- * - Change to Chakra powered Icon component
30
- * - ColorButtons
31
30
  */
32
31
  const Button = forwardRef<HTMLButtonElement, Props>((props: Props, ref) => {
33
32
  const { as, isDanger, leftIconName, rightIconName, size, variant, ...rest } = props;
34
- const properties: ButtonProps = { as, size, ...rest };
35
- properties.variant = isDanger ? `${variant}--danger` : variant;
33
+ const properties: ChackraButtonProps = {
34
+ as,
35
+ size,
36
+ variant: isDanger ? `${variant}--danger` : variant,
37
+ ...rest,
38
+ };
36
39
  if (leftIconName) {
37
40
  properties.leftIcon = <Icon name={leftIconName} />;
38
41
  }
@@ -42,18 +45,12 @@ const Button = forwardRef<HTMLButtonElement, Props>((props: Props, ref) => {
42
45
  if (leftIconName || rightIconName) {
43
46
  properties.iconSpacing = size === 'medium' ? '0.625rem' : '0.375rem';
44
47
  }
45
- if (as === 'a') {
46
- delete properties.type;
47
- } else {
48
- /* @ts-ignore */
49
- delete properties.href;
50
- /* @ts-ignore */
51
- delete properties.target;
52
- }
48
+
53
49
  return <ChakraButton ref={ref} {...properties} />;
54
50
  });
55
51
 
56
52
  Button.defaultProps = {
53
+ // eslint-disable-next-line react/default-props-match-prop-types
57
54
  as: 'button',
58
55
  size: 'medium',
59
56
  variant: 'primary',
@@ -1,40 +1,25 @@
1
- import { Box, BoxProps } from '@chakra-ui/react';
2
1
  import { Radii } from '../../Foundations/Radii/Radii';
3
2
  import { Shadows } from '../../Foundations/Shadows/Shadows';
4
3
  import { Sizes } from '../../Foundations/Sizes/Sizes';
4
+ import Box, { BoxProps } from '../Box/Box';
5
5
 
6
- export interface Props {
6
+ export interface CardProps extends BoxProps {
7
7
  borderRadius?: keyof Radii;
8
8
  boxShadow?: keyof Shadows;
9
- children?: BoxProps['children'];
10
- className?: string;
11
9
  padding?: keyof Sizes;
12
- sx?: BoxProps['sx'];
13
10
  }
14
11
 
15
12
  /**
16
13
  * Basic container element with default box shadow, border radius and padding.
17
14
  */
18
- const Card = (props: Props) => {
19
- const { borderRadius, boxShadow, children, className, padding, sx } = props;
20
- const style = {
21
- backgroundColor: 'neutral.100',
22
- borderRadius,
23
- boxShadow,
24
- padding,
25
- ...sx,
26
- };
27
- return (
28
- <Box className={className} sx={style}>
29
- {children}
30
- </Box>
31
- );
15
+ const Card = (props: CardProps) => {
16
+ return <Box {...props} />;
32
17
  };
33
18
 
34
19
  Card.defaultProps = {
35
20
  borderRadius: '12',
36
21
  boxShadow: 'medium',
37
22
  padding: '24',
38
- } as Props;
23
+ } as CardProps;
39
24
 
40
25
  export default Card;
@@ -1,6 +1,6 @@
1
1
  import { ComponentStory, ComponentMeta } from '@storybook/react';
2
- import { Box } from '@chakra-ui/react';
3
2
  import { sortObjectByKey } from '../../utils/storyUtils';
3
+ import Box from '../Box/Box';
4
4
  import Divider from './Divider';
5
5
 
6
6
  export default {
@@ -9,7 +9,7 @@ export default {
9
9
  } as ComponentMeta<typeof Divider>;
10
10
 
11
11
  const Template: ComponentStory<typeof Divider> = ({ ...props }) => (
12
- <Box sx={{ height: '64' }}>
12
+ <Box height="64">
13
13
  <Divider {...props} />
14
14
  </Box>
15
15
  );
@@ -1,18 +1,17 @@
1
- import { Divider as ChakraDivider, DividerProps } from '@chakra-ui/react';
1
+ import { Divider as ChakraDivider, DividerProps as ChakraDividerProps } from '@chakra-ui/react';
2
2
 
3
- export interface Props {
4
- orientation?: DividerProps['orientation'];
3
+ export interface DividerProps extends ChakraDividerProps {
4
+ orientation: 'horizontal' | 'vertical';
5
5
  size?: '1' | '2';
6
- sx?: DividerProps['sx'];
7
6
  variant?: 'dashed' | 'dotted' | 'solid';
8
7
  }
9
8
 
10
9
  /**
11
10
  * Dividers are used to visually separate content in a list or group.
12
11
  */
13
- const Divider = (props: Props) => {
12
+ const Divider = (props: DividerProps) => {
14
13
  const { orientation, size, ...rest } = props;
15
- const properties: DividerProps = { ...rest, orientation };
14
+ const properties: ChakraDividerProps = { ...rest, orientation };
16
15
  if (orientation === 'horizontal') {
17
16
  properties.borderBottomWidth = `${size}px`;
18
17
  } else {
@@ -22,9 +21,10 @@ const Divider = (props: Props) => {
22
21
  };
23
22
 
24
23
  Divider.defaultProps = {
24
+ as: 'hr',
25
25
  orientation: 'horizontal',
26
26
  size: '1',
27
27
  variant: 'solid',
28
- } as Props;
28
+ } as DividerProps;
29
29
 
30
30
  export default Divider;
@@ -12,6 +12,8 @@ const Template: ComponentStory<typeof IconButton> = ({ ...props }) => <IconButto
12
12
  export const WithProps = Template.bind({});
13
13
  WithProps.args = sortObjectByKey({
14
14
  ...IconButton.defaultProps,
15
+ 'aria-label': 'This is the label',
15
16
  iconName: 'AddOns',
16
- label: 'This is the label',
17
+ isDanger: false,
18
+ isDisabled: false,
17
19
  });
@@ -3,13 +3,14 @@ import { IconButton as ChakraIconButton, IconButtonProps } from '@chakra-ui/reac
3
3
  import Icon from '../../Old/Icon/Icon';
4
4
  import { TypeIconName } from '../../Old/Icon/tsx';
5
5
 
6
- export interface Props {
6
+ export interface Props extends IconButtonProps {
7
+ className?: string;
7
8
  iconName: TypeIconName;
8
- label: IconButtonProps['aria-label'];
9
+ isDanger?: boolean;
10
+ isDisabled?: boolean;
9
11
  onClick?: (e: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
10
12
  size?: 'small' | 'medium';
11
- sx?: IconButtonProps['sx'];
12
- variant?: 'primary' | 'secondary' | 'tertiary' | 'dangerPrimary' | 'dangerSecondary' | 'tertiaryDanger';
13
+ variant?: 'primary' | 'secondary' | 'tertiary';
13
14
  }
14
15
 
15
16
  /**
@@ -19,10 +20,10 @@ export interface Props {
19
20
  * - Change to Chakra powered Icon component
20
21
  */
21
22
  const IconButton = forwardRef<HTMLButtonElement, Props>((props: Props, ref) => {
22
- const { iconName, label, ...rest } = props;
23
+ const { iconName, isDanger, variant, ...rest } = props;
23
24
  const properties: IconButtonProps = {
24
- 'aria-label': label,
25
25
  icon: <Icon name={iconName} />,
26
+ variant: isDanger ? `${variant}--danger` : variant,
26
27
  ...rest,
27
28
  };
28
29
  return <ChakraIconButton ref={ref} {...properties} />;
@@ -1,21 +1,19 @@
1
- import { Link as ChakraLink, LinkProps } from '@chakra-ui/react';
2
- import { TextSizes } from '../Text/Text';
1
+ import { HTMLAttributeAnchorTarget } from 'react';
2
+ import { Link as ChakraLink, LinkProps as ChakraLinkProps } from '@chakra-ui/react';
3
+ import { TextSizes } from '../../Foundations/Typography/Typography';
3
4
 
4
- export interface Props {
5
- children: LinkProps['children'];
6
- href: string;
5
+ export interface LinkProps extends ChakraLinkProps {
7
6
  isUnderlined?: boolean;
8
7
  size?: TextSizes;
9
- sx?: LinkProps['sx'];
10
- target?: '_blank' | '_parent' | '_self' | '_top';
8
+ target?: HTMLAttributeAnchorTarget;
11
9
  }
12
10
 
13
11
  /**
14
12
  * Links are accessible elements used primarily for navigation. This component is styled to resemble a hyperlink and semantically renders an `<a>`
15
13
  */
16
- const Link = (props: Props) => {
14
+ const Link = (props: LinkProps) => {
17
15
  const { isUnderlined, ...rest } = props;
18
- const properties: LinkProps = { ...rest };
16
+ const properties: ChakraLinkProps = { ...rest };
19
17
  properties.as = 'a';
20
18
  if (isUnderlined) {
21
19
  properties.textDecoration = 'underline';
@@ -25,6 +23,6 @@ const Link = (props: Props) => {
25
23
 
26
24
  Link.defaultProps = {
27
25
  isUnderlined: true,
28
- } as Props;
26
+ } as LinkProps;
29
27
 
30
28
  export default Link;
@@ -30,7 +30,7 @@ export const WithButton: ComponentStory<typeof Menu> = () => (
30
30
 
31
31
  export const WithIconButton: ComponentStory<typeof Menu> = () => (
32
32
  <Menu>
33
- <MenuButton as={IconButton} iconName="AddOnsColorTuorqouise" label="Open menu" />
33
+ <MenuButton as={IconButton} iconName="AddOnsColorTuorqouise" aria-label="Open menu" />
34
34
  <List />
35
35
  </Menu>
36
36
  );
@@ -40,14 +40,14 @@ export const WithButtonGroup: ComponentStory<typeof Menu> = () => (
40
40
  <ButtonGroup isAttached>
41
41
  <Button>Button</Button>
42
42
  <Menu>
43
- <MenuButton as={IconButton} iconName="AddOnsColorTuorqouise" label="Open menu" />
43
+ <MenuButton as={IconButton} iconName="AddOnsColorTuorqouise" aria-label="Open menu" />
44
44
  <List />
45
45
  </Menu>
46
46
  </ButtonGroup>
47
47
  </HStack>
48
48
  );
49
49
 
50
- const Asd = (props: any) => {
50
+ const CustomItem = (props: any) => {
51
51
  const menuProps = useMenuItem(props);
52
52
  const { item } = useStyleConfig('Menu') as any;
53
53
 
@@ -60,11 +60,11 @@ const Asd = (props: any) => {
60
60
  );
61
61
  };
62
62
 
63
- export const WithdCustomList: ComponentStory<typeof Menu> = () => (
63
+ export const WithCustomListWIP: ComponentStory<typeof Menu> = () => (
64
64
  <Menu>
65
65
  <MenuButton as={Button}>Actions</MenuButton>
66
66
  <MenuList>
67
- <Asd />
67
+ <CustomItem />
68
68
  <MenuItem iconName="AddOnsColorTuorqouise">Create a Copy</MenuItem>
69
69
  <MenuItem iconName="AddOnsColorTuorqouise">Mark as Draft</MenuItem>
70
70
  <MenuItem iconName="AddOnsColorTuorqouise">Delete</MenuItem>
@@ -9,7 +9,8 @@ const MenuTheme: SystemStyleObject = {
9
9
  paddingY: '16',
10
10
  },
11
11
  item: {
12
- padding: '12 32',
12
+ paddingY: '12',
13
+ paddingX: '16',
13
14
  _focus: {
14
15
  backgroundColor: 'neutral.95',
15
16
  },
@@ -1,7 +1,7 @@
1
- import { Menu as ChakraMenu, MenuProps } from '@chakra-ui/react';
1
+ import { Menu as ChakraMenu, MenuProps as ChakraMenuProps } from '@chakra-ui/react';
2
2
 
3
- export type Props = MenuProps;
3
+ export type MenuProps = ChakraMenuProps;
4
4
 
5
- const Menu = (props: Props) => <ChakraMenu {...props} />;
5
+ const Menu = (props: MenuProps) => <ChakraMenu {...props} />;
6
6
 
7
7
  export default Menu;