@toptal/picasso-button 1.0.10-alpha-dependabot-npm-and-yarn-debounce-2.0.0-7bd37151a.8 → 1.0.10-alpha-feature-migrate-buttons-638be38bb.19
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/dist-package/src/Button/Button.d.ts.map +1 -1
- package/dist-package/src/Button/Button.js +39 -47
- package/dist-package/src/Button/Button.js.map +1 -1
- package/dist-package/src/Button/styles.d.ts +19 -45
- package/dist-package/src/Button/styles.d.ts.map +1 -1
- package/dist-package/src/Button/styles.js +160 -178
- package/dist-package/src/Button/styles.js.map +1 -1
- package/dist-package/src/ButtonAction/ButtonAction.d.ts.map +1 -1
- package/dist-package/src/ButtonAction/ButtonAction.js +20 -28
- package/dist-package/src/ButtonAction/ButtonAction.js.map +1 -1
- package/dist-package/src/ButtonAction/styles.d.ts +11 -3
- package/dist-package/src/ButtonAction/styles.d.ts.map +1 -1
- package/dist-package/src/ButtonAction/styles.js +36 -55
- package/dist-package/src/ButtonAction/styles.js.map +1 -1
- package/dist-package/src/ButtonBase/ButtonBase.d.ts +29 -0
- package/dist-package/src/ButtonBase/ButtonBase.d.ts.map +1 -0
- package/dist-package/src/ButtonBase/ButtonBase.js +77 -0
- package/dist-package/src/ButtonBase/ButtonBase.js.map +1 -0
- package/dist-package/src/ButtonBase/index.d.ts +5 -0
- package/dist-package/src/ButtonBase/index.d.ts.map +1 -0
- package/dist-package/src/ButtonBase/index.js +2 -0
- package/dist-package/src/ButtonBase/index.js.map +1 -0
- package/dist-package/src/ButtonBase/styles.d.ts +8 -0
- package/dist-package/src/ButtonBase/styles.d.ts.map +1 -0
- package/dist-package/src/ButtonBase/styles.js +29 -0
- package/dist-package/src/ButtonBase/styles.js.map +1 -0
- package/dist-package/src/ButtonCircular/ButtonCircular.d.ts.map +1 -1
- package/dist-package/src/ButtonCircular/ButtonCircular.js +12 -26
- package/dist-package/src/ButtonCircular/ButtonCircular.js.map +1 -1
- package/dist-package/src/ButtonCircular/styles.d.ts +15 -3
- package/dist-package/src/ButtonCircular/styles.d.ts.map +1 -1
- package/dist-package/src/ButtonCircular/styles.js +92 -57
- package/dist-package/src/ButtonCircular/styles.js.map +1 -1
- package/dist-package/src/ButtonCompound/index.d.ts +1 -1
- package/dist-package/src/ButtonControlLabel/styles.d.ts +1 -1
- package/dist-package/src/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/dist-package/src/ButtonGroup/ButtonGroup.d.ts.map +1 -1
- package/dist-package/src/ButtonGroup/ButtonGroup.js +5 -27
- package/dist-package/src/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist-package/src/ButtonGroup/styles.d.ts +1 -2
- package/dist-package/src/ButtonGroup/styles.d.ts.map +1 -1
- package/dist-package/src/ButtonGroup/styles.js +20 -47
- package/dist-package/src/ButtonGroup/styles.js.map +1 -1
- package/dist-package/src/ButtonGroupItem/ButtonGroupItem.d.ts +1 -1
- package/dist-package/src/ButtonGroupItem/ButtonGroupItem.d.ts.map +1 -1
- package/dist-package/src/ButtonGroupItem/ButtonGroupItem.js +17 -12
- package/dist-package/src/ButtonGroupItem/ButtonGroupItem.js.map +1 -1
- package/dist-package/src/ButtonGroupItem/styles.d.ts +13 -3
- package/dist-package/src/ButtonGroupItem/styles.d.ts.map +1 -1
- package/dist-package/src/ButtonGroupItem/styles.js +39 -17
- package/dist-package/src/ButtonGroupItem/styles.js.map +1 -1
- package/dist-package/src/ButtonSplit/ButtonSplit.d.ts.map +1 -1
- package/dist-package/src/ButtonSplit/ButtonSplit.js +28 -24
- package/dist-package/src/ButtonSplit/ButtonSplit.js.map +1 -1
- package/dist-package/src/ButtonSplit/styles.d.ts +9 -3
- package/dist-package/src/ButtonSplit/styles.d.ts.map +1 -1
- package/dist-package/src/ButtonSplit/styles.js +13 -50
- package/dist-package/src/ButtonSplit/styles.js.map +1 -1
- package/package.json +19 -15
- package/src/Button/Button.tsx +69 -100
- package/src/Button/__snapshots__/test.tsx.snap +6 -5
- package/src/Button/styles.ts +213 -221
- package/src/Button/test.tsx +3 -1
- package/src/ButtonAction/ButtonAction.tsx +36 -48
- package/src/ButtonAction/styles.ts +57 -57
- package/src/ButtonBase/ButtonBase.tsx +177 -0
- package/src/ButtonBase/index.ts +5 -0
- package/src/ButtonBase/styles.ts +38 -0
- package/src/ButtonCheckbox/__snapshots__/test.tsx.snap +3 -3
- package/src/ButtonCircular/ButtonCircular.tsx +22 -34
- package/src/ButtonCircular/styles.ts +127 -75
- package/src/ButtonGroup/ButtonGroup.tsx +9 -44
- package/src/ButtonGroup/__snapshots__/test.tsx.snap +7 -7
- package/src/ButtonGroup/styles.ts +21 -63
- package/src/ButtonGroupItem/ButtonGroupItem.tsx +24 -15
- package/src/ButtonGroupItem/styles.ts +62 -28
- package/src/ButtonRadio/__snapshots__/test.tsx.snap +3 -3
- package/src/ButtonSplit/ButtonSplit.tsx +46 -42
- package/src/ButtonSplit/__snapshots__/test.tsx.snap +9 -9
- package/src/ButtonSplit/styles.ts +37 -56
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
declare const
|
|
3
|
-
|
|
1
|
+
import type { SizeType } from '@toptal/picasso-shared';
|
|
2
|
+
export declare const createActionButtonClassNames: ({ variant, }: {
|
|
3
|
+
variant?: "primary" | "secondary" | undefined;
|
|
4
|
+
}) => string;
|
|
5
|
+
export declare const createMenuButtonClassNames: ({ variant, size, disabled, }: {
|
|
6
|
+
variant?: "primary" | "secondary" | undefined;
|
|
7
|
+
size: SizeType<'small' | 'medium' | 'large'>;
|
|
8
|
+
disabled?: boolean | undefined;
|
|
9
|
+
}) => string;
|
|
4
10
|
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/ButtonSplit/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/ButtonSplit/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AAGtD,eAAO,MAAM,4BAA4B;;YAUxC,CAAA;AAWD,eAAO,MAAM,0BAA0B;;UAM/B,SAAS,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;;YAS7C,CAAA"}
|
|
@@ -1,51 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
},
|
|
15
|
-
primaryVariant: {
|
|
16
|
-
'&$actionButton': {
|
|
17
|
-
borderRight: `1px solid ${palette.blue.darker}`,
|
|
18
|
-
},
|
|
19
|
-
'&$menuButton': {
|
|
20
|
-
borderLeft: `1px solid ${palette.blue.darker}`,
|
|
21
|
-
'&$disabled': {
|
|
22
|
-
borderLeftColor: palette.grey.main,
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
smallSize: {
|
|
27
|
-
minWidth: '1.5em',
|
|
28
|
-
paddingLeft: '0.25em',
|
|
29
|
-
paddingRight: '0.25em',
|
|
30
|
-
},
|
|
31
|
-
mediumSize: {},
|
|
32
|
-
largeSize: {
|
|
33
|
-
minWidth: '3em',
|
|
34
|
-
paddingLeft: '0.75em',
|
|
35
|
-
paddingRight: '0.75em',
|
|
36
|
-
},
|
|
37
|
-
dropdown: {
|
|
38
|
-
display: 'block',
|
|
39
|
-
cursor: 'pointer',
|
|
40
|
-
},
|
|
41
|
-
disabled: {
|
|
42
|
-
// override dropdown anchor styles
|
|
43
|
-
'& > div': {
|
|
44
|
-
cursor: 'auto',
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
rotated: {
|
|
48
|
-
transform: 'rotate(180deg)',
|
|
49
|
-
},
|
|
50
|
-
});
|
|
1
|
+
import { twMerge } from 'tailwind-merge';
|
|
2
|
+
export const createActionButtonClassNames = ({ variant, }) => {
|
|
3
|
+
return twMerge('transition-[color,background]', variant === 'primary' &&
|
|
4
|
+
'border-r border-l-0 border-y-0 border-solid border-blue-700');
|
|
5
|
+
};
|
|
6
|
+
const menuButtonSizeClassNames = {
|
|
7
|
+
small: 'min-w-[1.5em] px-[0.25em]',
|
|
8
|
+
medium: 'min-w-[2em] px-[0.5em]',
|
|
9
|
+
large: 'min-w-[3em] px-[0.75em]',
|
|
10
|
+
};
|
|
11
|
+
export const createMenuButtonClassNames = ({ variant, size, disabled, }) => {
|
|
12
|
+
return twMerge(menuButtonSizeClassNames[size], variant === 'primary' && 'border-l border-r-0 border-y-0 border-solid', variant === 'primary' && disabled && 'border-gray-500', variant === 'primary' && !disabled && 'border-blue-700');
|
|
13
|
+
};
|
|
51
14
|
//# sourceMappingURL=styles.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/ButtonSplit/styles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../src/ButtonSplit/styles.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAExC,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,EAC3C,OAAO,GAGR,EAAE,EAAE;IACH,OAAO,OAAO,CACZ,+BAA+B,EAC/B,OAAO,KAAK,SAAS;QACnB,6DAA6D,CAChE,CAAA;AACH,CAAC,CAAA;AAED,MAAM,wBAAwB,GAG1B;IACF,KAAK,EAAE,2BAA2B;IAClC,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,yBAAyB;CACjC,CAAA;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EACzC,OAAO,EACP,IAAI,EACJ,QAAQ,GAKT,EAAE,EAAE;IACH,OAAO,OAAO,CACZ,wBAAwB,CAAC,IAAI,CAAC,EAC9B,OAAO,KAAK,SAAS,IAAI,6CAA6C,EACtE,OAAO,KAAK,SAAS,IAAI,QAAQ,IAAI,iBAAiB,EACtD,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ,IAAI,iBAAiB,CACxD,CAAA;AACH,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@toptal/picasso-button",
|
|
3
|
-
"version": "1.0.10-alpha-
|
|
3
|
+
"version": "1.0.10-alpha-feature-migrate-buttons-638be38bb.19+638be38bb",
|
|
4
4
|
"description": "Toptal UI components library - Button",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -22,17 +22,19 @@
|
|
|
22
22
|
},
|
|
23
23
|
"homepage": "https://github.com/toptal/picasso/tree/master/packages/picasso#readme",
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@
|
|
26
|
-
"@toptal/picasso-
|
|
27
|
-
"@toptal/picasso-
|
|
28
|
-
"@toptal/picasso-
|
|
29
|
-
"@toptal/picasso-
|
|
30
|
-
"@toptal/picasso-
|
|
31
|
-
"@toptal/picasso-
|
|
32
|
-
"@toptal/picasso-
|
|
33
|
-
"@toptal/picasso-
|
|
25
|
+
"@mui/base": "5.0.0-beta.40",
|
|
26
|
+
"@toptal/picasso-checkbox": "1.0.7-alpha-feature-migrate-buttons-638be38bb.27+638be38bb",
|
|
27
|
+
"@toptal/picasso-container": "1.0.3-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
28
|
+
"@toptal/picasso-dropdown": "2.0.1-alpha-feature-migrate-buttons-638be38bb.30+638be38bb",
|
|
29
|
+
"@toptal/picasso-icons": "1.0.3-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
30
|
+
"@toptal/picasso-link": "1.0.3-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
31
|
+
"@toptal/picasso-loader": "1.0.3-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
32
|
+
"@toptal/picasso-radio": "1.0.7-alpha-feature-migrate-buttons-638be38bb.27+638be38bb",
|
|
33
|
+
"@toptal/picasso-shared": "14.0.2-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
34
|
+
"@toptal/picasso-utils": "1.0.3-alpha-feature-migrate-buttons-638be38bb.56+638be38bb",
|
|
34
35
|
"ap-style-title-case": "^1.1.2",
|
|
35
|
-
"classnames": "^2.5.1"
|
|
36
|
+
"classnames": "^2.5.1",
|
|
37
|
+
"tailwind-merge": "^2.2.2"
|
|
36
38
|
},
|
|
37
39
|
"sideEffects": [
|
|
38
40
|
"**/styles.ts",
|
|
@@ -41,19 +43,21 @@
|
|
|
41
43
|
"peerDependencies": {
|
|
42
44
|
"@material-ui/core": "4.12.4",
|
|
43
45
|
"@toptal/picasso-provider": "*",
|
|
44
|
-
"
|
|
46
|
+
"@toptal/picasso-tailwind": ">=2.0.1",
|
|
47
|
+
"react": ">=16.12.0 < 19.0.0",
|
|
48
|
+
"tailwindcss": ">=3"
|
|
45
49
|
},
|
|
46
50
|
"exports": {
|
|
47
51
|
".": "./dist-package/src/index.js"
|
|
48
52
|
},
|
|
49
53
|
"devDependencies": {
|
|
50
|
-
"@toptal/picasso-provider": "4.2.1-alpha-
|
|
51
|
-
"@toptal/picasso-test-utils": "1.1.1-alpha-
|
|
54
|
+
"@toptal/picasso-provider": "4.2.1-alpha-feature-migrate-buttons-638be38bb.27+638be38bb",
|
|
55
|
+
"@toptal/picasso-test-utils": "1.1.1-alpha-feature-migrate-buttons-638be38bb.48+638be38bb"
|
|
52
56
|
},
|
|
53
57
|
"files": [
|
|
54
58
|
"dist-package/**",
|
|
55
59
|
"!dist-package/tsconfig.tsbuildinfo",
|
|
56
60
|
"src"
|
|
57
61
|
],
|
|
58
|
-
"gitHead": "
|
|
62
|
+
"gitHead": "638be38bbb5e1095513af25c72019abc933e7a6c"
|
|
59
63
|
}
|
package/src/Button/Button.tsx
CHANGED
|
@@ -1,29 +1,26 @@
|
|
|
1
1
|
import type { ReactNode, ReactElement, MouseEvent, ElementType } from 'react'
|
|
2
2
|
import React, { forwardRef } from 'react'
|
|
3
3
|
import cx from 'classnames'
|
|
4
|
+
import { twMerge } from 'tailwind-merge'
|
|
4
5
|
import type {
|
|
5
6
|
StandardProps,
|
|
6
7
|
SizeType,
|
|
7
8
|
ButtonOrAnchorProps,
|
|
8
9
|
OverridableComponent,
|
|
9
10
|
TextLabelProps,
|
|
10
|
-
Classes,
|
|
11
11
|
} from '@toptal/picasso-shared'
|
|
12
|
-
import {
|
|
13
|
-
import type { Theme } from '@material-ui/core'
|
|
14
|
-
import { makeStyles, ButtonBase } from '@material-ui/core'
|
|
15
|
-
import { Loader } from '@toptal/picasso-loader'
|
|
16
|
-
import { Container } from '@toptal/picasso-container'
|
|
17
|
-
import { noop, toTitleCase } from '@toptal/picasso-utils'
|
|
12
|
+
import { noop } from '@toptal/picasso-utils'
|
|
18
13
|
// we need to ensure the correct order of styles import
|
|
19
14
|
// @TODO: to be removed when the component is migrated in FX-4614
|
|
20
15
|
import '@toptal/picasso-link'
|
|
21
16
|
|
|
22
|
-
import
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
import { ButtonBase } from '../ButtonBase'
|
|
18
|
+
import {
|
|
19
|
+
createVariantClassNames,
|
|
20
|
+
createCoreClassNames,
|
|
21
|
+
createSizeClassNames,
|
|
22
|
+
createIconClassNames,
|
|
23
|
+
} from './styles'
|
|
27
24
|
|
|
28
25
|
export type VariantType =
|
|
29
26
|
| 'primary'
|
|
@@ -70,31 +67,28 @@ export interface Props
|
|
|
70
67
|
type?: 'button' | 'reset' | 'submit'
|
|
71
68
|
}
|
|
72
69
|
|
|
73
|
-
const
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
70
|
+
const getIcon = ({
|
|
71
|
+
children,
|
|
72
|
+
icon,
|
|
73
|
+
iconPosition,
|
|
74
|
+
size,
|
|
75
|
+
}: {
|
|
76
|
+
children: ReactNode
|
|
77
|
+
icon?: ReactElement
|
|
80
78
|
iconPosition?: IconPositionType
|
|
81
|
-
|
|
79
|
+
size: SizeType<'small' | 'medium' | 'large'>
|
|
80
|
+
}) => {
|
|
82
81
|
if (!icon) {
|
|
83
|
-
return
|
|
82
|
+
return undefined
|
|
84
83
|
}
|
|
85
84
|
|
|
86
|
-
const {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
} = classes
|
|
85
|
+
const iconClassNames = createIconClassNames({
|
|
86
|
+
size,
|
|
87
|
+
iconPosition: children && iconPosition ? iconPosition : undefined,
|
|
88
|
+
})
|
|
91
89
|
|
|
92
90
|
return React.cloneElement(icon, {
|
|
93
|
-
className:
|
|
94
|
-
[iconLeftClass]: children && iconPosition === 'left',
|
|
95
|
-
[iconRightClass]: children && iconPosition === 'right',
|
|
96
|
-
}),
|
|
97
|
-
key: 'button-icon',
|
|
91
|
+
className: twMerge(iconClassNames, icon.props.className),
|
|
98
92
|
})
|
|
99
93
|
}
|
|
100
94
|
|
|
@@ -106,9 +100,7 @@ export const Button: OverridableComponent<Props> = forwardRef<
|
|
|
106
100
|
icon,
|
|
107
101
|
iconPosition,
|
|
108
102
|
loading,
|
|
109
|
-
children,
|
|
110
103
|
className,
|
|
111
|
-
style,
|
|
112
104
|
fullWidth,
|
|
113
105
|
variant = 'primary',
|
|
114
106
|
size = 'medium',
|
|
@@ -116,86 +108,63 @@ export const Button: OverridableComponent<Props> = forwardRef<
|
|
|
116
108
|
hovered,
|
|
117
109
|
disabled,
|
|
118
110
|
active,
|
|
119
|
-
onClick,
|
|
120
|
-
title,
|
|
121
|
-
value,
|
|
122
|
-
type,
|
|
123
|
-
as = 'button',
|
|
124
|
-
titleCase: propsTitleCase,
|
|
125
111
|
...rest
|
|
126
112
|
} = props
|
|
127
|
-
const classes = useStyles(props)
|
|
128
113
|
|
|
129
|
-
const {
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
114
|
+
const iconComponent = getIcon({
|
|
115
|
+
children: rest.children,
|
|
116
|
+
icon,
|
|
117
|
+
iconPosition,
|
|
118
|
+
size,
|
|
119
|
+
})
|
|
120
|
+
const coreClassNames = createCoreClassNames({
|
|
121
|
+
disabled,
|
|
122
|
+
focused,
|
|
123
|
+
hovered,
|
|
124
|
+
active,
|
|
125
|
+
})
|
|
126
|
+
const variantClassNames = createVariantClassNames(variant, {
|
|
127
|
+
disabled,
|
|
128
|
+
focused,
|
|
129
|
+
hovered,
|
|
130
|
+
active,
|
|
131
|
+
})
|
|
132
|
+
const sizeClassNames = createSizeClassNames(size)
|
|
133
|
+
|
|
134
|
+
const finalClassName = twMerge(
|
|
135
|
+
coreClassNames,
|
|
136
|
+
variantClassNames,
|
|
137
|
+
sizeClassNames,
|
|
138
|
+
fullWidth ? 'w-full' : '',
|
|
139
|
+
className
|
|
140
|
+
)
|
|
142
141
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
142
|
+
const contentSizeClassNames: Record<
|
|
143
|
+
SizeType<'small' | 'medium' | 'large'>,
|
|
144
|
+
string[]
|
|
145
|
+
> = {
|
|
146
|
+
small: ['text-button-small'],
|
|
147
|
+
medium: ['text-button-medium'],
|
|
148
|
+
large: ['text-button-large'],
|
|
148
149
|
}
|
|
149
150
|
|
|
150
|
-
const
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
{
|
|
155
|
-
[classes.fullWidth]: fullWidth,
|
|
156
|
-
[classes.active]: active,
|
|
157
|
-
[classes.focused]: focused,
|
|
158
|
-
[classes.hovered]: hovered,
|
|
159
|
-
[classes.disabled]: disabled,
|
|
160
|
-
},
|
|
161
|
-
sizeClassName,
|
|
162
|
-
variantClassName,
|
|
163
|
-
rootClass
|
|
151
|
+
const contentClassName = cx(
|
|
152
|
+
'font-semibold whitespace-nowrap',
|
|
153
|
+
contentSizeClassNames[size],
|
|
154
|
+
loading ? 'opacity-0' : ''
|
|
164
155
|
)
|
|
165
156
|
|
|
166
157
|
return (
|
|
167
158
|
<ButtonBase
|
|
168
159
|
{...rest}
|
|
169
160
|
ref={ref}
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
className={className}
|
|
176
|
-
style={style}
|
|
161
|
+
className={finalClassName}
|
|
162
|
+
contentClassName={contentClassName}
|
|
163
|
+
icon={iconComponent}
|
|
164
|
+
iconPosition={iconPosition}
|
|
165
|
+
loading={loading}
|
|
177
166
|
disabled={disabled}
|
|
178
|
-
|
|
179
|
-
value={value}
|
|
180
|
-
type={type}
|
|
181
|
-
component={as}
|
|
182
|
-
data-component-type='button'
|
|
183
|
-
>
|
|
184
|
-
<Container
|
|
185
|
-
as='span'
|
|
186
|
-
inline
|
|
187
|
-
flex
|
|
188
|
-
direction='row'
|
|
189
|
-
alignItems='center'
|
|
190
|
-
className={cx({ [hiddenClass]: loading }, contentClass)}
|
|
191
|
-
>
|
|
192
|
-
{finalChildren}
|
|
193
|
-
</Container>
|
|
194
|
-
|
|
195
|
-
{loading && (
|
|
196
|
-
<Loader variant='inherit' className={loaderClass} inline size='small' />
|
|
197
|
-
)}
|
|
198
|
-
</ButtonBase>
|
|
167
|
+
/>
|
|
199
168
|
)
|
|
200
169
|
})
|
|
201
170
|
|
|
@@ -7,13 +7,14 @@ exports[`Button disabled button as link renders disabled version 1`] = `
|
|
|
7
7
|
>
|
|
8
8
|
<a
|
|
9
9
|
aria-disabled="true"
|
|
10
|
-
class="MuiTypography-root MuiLink-root MuiLink-underlineHover PicassoLink-root
|
|
10
|
+
class="MuiTypography-root MuiLink-root MuiLink-underlineHover PicassoLink-root base-Button base- text-lg inline-flex items-center justify-center select-none appearance-none m-0 relative normal-case align-middle transition-colors duration-350 ease-out shrink-0 outline-none [&+&]:ml-4 cursor-default pointer-events no-underline rounded-sm shadow-none border-none text-white visited:text-white bg-gray min-w h-8 py-0 px-4 PicassoLink-blue MuiTypography-colorPrimary"
|
|
11
11
|
data-component-type="button"
|
|
12
|
-
|
|
12
|
+
href="URL"
|
|
13
13
|
tabindex="-1"
|
|
14
|
+
type="button"
|
|
14
15
|
>
|
|
15
16
|
<span
|
|
16
|
-
class="PicassoContainer-centerAlignItems PicassoContainer-flex PicassoContainer-inline
|
|
17
|
+
class="PicassoContainer-centerAlignItems PicassoContainer-flex PicassoContainer-inline font-semibold whitespace-nowrap text-button"
|
|
17
18
|
>
|
|
18
19
|
Click me!
|
|
19
20
|
</span>
|
|
@@ -28,14 +29,14 @@ exports[`Button disabled button renders disabled version 1`] = `
|
|
|
28
29
|
class="Picasso-root"
|
|
29
30
|
>
|
|
30
31
|
<button
|
|
31
|
-
class="
|
|
32
|
+
class="base-Button base- text-lg inline-flex items-center justify-center select-none appearance-none m-0 relative normal-case align-middle transition-colors duration-350 ease-out shrink-0 outline-none [&+&]:ml-4 cursor-default pointer-events no-underline rounded-sm shadow-none border-none text-white visited:text-white bg-gray min-w h-8 py-0 px-4"
|
|
32
33
|
data-component-type="button"
|
|
33
34
|
disabled=""
|
|
34
35
|
tabindex="-1"
|
|
35
36
|
type="button"
|
|
36
37
|
>
|
|
37
38
|
<span
|
|
38
|
-
class="PicassoContainer-centerAlignItems PicassoContainer-flex PicassoContainer-inline
|
|
39
|
+
class="PicassoContainer-centerAlignItems PicassoContainer-flex PicassoContainer-inline font-semibold whitespace-nowrap text-button"
|
|
39
40
|
>
|
|
40
41
|
Click me!
|
|
41
42
|
</span>
|