@workday/canvas-kit-react 12.0.0-alpha.852-next.0 → 12.0.0-alpha.862-next.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/avatar/lib/Avatar.tsx +210 -147
- package/dist/commonjs/avatar/lib/Avatar.d.ts +149 -44
- package/dist/commonjs/avatar/lib/Avatar.d.ts.map +1 -1
- package/dist/commonjs/avatar/lib/Avatar.js +68 -80
- package/dist/commonjs/text-area/lib/TextArea.d.ts +66 -33
- package/dist/commonjs/text-area/lib/TextArea.d.ts.map +1 -1
- package/dist/commonjs/text-area/lib/TextArea.js +26 -49
- package/dist/commonjs/text-input/lib/TextInput.d.ts +37 -2
- package/dist/commonjs/text-input/lib/TextInput.d.ts.map +1 -1
- package/dist/commonjs/text-input/lib/TextInput.js +20 -48
- package/dist/es6/avatar/lib/Avatar.d.ts +149 -44
- package/dist/es6/avatar/lib/Avatar.d.ts.map +1 -1
- package/dist/es6/avatar/lib/Avatar.js +70 -79
- package/dist/es6/text-area/lib/TextArea.d.ts +66 -33
- package/dist/es6/text-area/lib/TextArea.d.ts.map +1 -1
- package/dist/es6/text-area/lib/TextArea.js +25 -48
- package/dist/es6/text-input/lib/TextInput.d.ts +37 -2
- package/dist/es6/text-input/lib/TextInput.d.ts.map +1 -1
- package/dist/es6/text-input/lib/TextInput.js +20 -48
- package/package.json +4 -4
- package/text-area/lib/TextArea.tsx +40 -80
- package/text-input/lib/TextInput.tsx +80 -58
package/avatar/lib/Avatar.tsx
CHANGED
|
@@ -1,149 +1,231 @@
|
|
|
1
1
|
import React, {useState} from 'react';
|
|
2
2
|
import {Property} from 'csstype';
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import {createComponent, focusRing} from '@workday/canvas-kit-react/common';
|
|
4
|
+
import {createStencil, calc} from '@workday/canvas-kit-styling';
|
|
5
|
+
import {mergeStyles} from '@workday/canvas-kit-react/layout';
|
|
6
|
+
import {borderRadius} from '@workday/canvas-kit-react/tokens';
|
|
7
|
+
import {SystemIcon, systemIconStencil} from '@workday/canvas-kit-react/icon';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
Dark,
|
|
12
|
-
}
|
|
9
|
+
import {userIcon} from '@workday/canvas-system-icons-web';
|
|
10
|
+
import {system} from '@workday/canvas-tokens-web';
|
|
13
11
|
|
|
14
|
-
export interface AvatarProps
|
|
12
|
+
export interface AvatarProps {
|
|
15
13
|
/**
|
|
16
|
-
* The variant of the
|
|
17
|
-
* @default
|
|
14
|
+
* The variant of the avatar. Use `light` on dark backgrounds and `dark` on light backgrounds.
|
|
15
|
+
* @default "light"
|
|
18
16
|
*/
|
|
19
|
-
variant?:
|
|
17
|
+
variant?: 'light' | 'dark';
|
|
20
18
|
/**
|
|
21
19
|
* The size of the Avatar.
|
|
22
|
-
*
|
|
20
|
+
* - `extraExtraLarge`: 7.5rem x 7.5rem (120px x 120px)
|
|
21
|
+
* - `extraLarge`: 4.5rem x 4.5rem (64px x 64px)
|
|
22
|
+
* - `large`: 2.5rem x 2.5rem (40px x 40px)
|
|
23
|
+
* - `medium`: 2rem x 2rem (32px x 32px)
|
|
24
|
+
* - `small`: 1.5rem x 1.5rem (24px x 24px)
|
|
25
|
+
* - `small`: 1rem x 1rem (16px x 16px)
|
|
26
|
+
* @default "medium"
|
|
23
27
|
*/
|
|
24
|
-
size?:
|
|
28
|
+
size?: /** size of small */
|
|
29
|
+
'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge' | 'extraExtraLarge' | (string & {});
|
|
25
30
|
/**
|
|
26
|
-
* The alt text of the Avatar image. This prop is also used for the aria-label
|
|
31
|
+
* The alt text of the Avatar image. This prop is also used for the aria-label.
|
|
27
32
|
* @default Avatar
|
|
28
33
|
*/
|
|
29
34
|
altText?: string;
|
|
30
35
|
/**
|
|
31
|
-
* The
|
|
36
|
+
* The URL of the user's photo. For best fit, use square images.
|
|
32
37
|
*/
|
|
33
38
|
url?: string;
|
|
34
39
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*/
|
|
38
|
-
as?: 'div';
|
|
39
|
-
/**
|
|
40
|
-
* The object-fit CSS property sets how the content of a replaced element,
|
|
41
|
-
* such as an `<img>` or `<video>`, should be resized to fit its container.
|
|
42
|
-
* See [object-fit](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit).
|
|
43
|
-
* If your image is not a square, you can use this property to ensure the image is rendered properly.
|
|
40
|
+
* An objectFit property that can customize how to resize your image to fit its container.
|
|
41
|
+
* @default "contain"
|
|
44
42
|
*/
|
|
45
43
|
objectFit?: Property.ObjectFit;
|
|
46
44
|
}
|
|
47
45
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Returns an overloaded functional component that uses button props by default.
|
|
56
|
-
*/
|
|
57
|
-
type AvatarOverload = {
|
|
58
|
-
(props: {as: 'div'} & AvatarDivProps & {ref?: React.Ref<HTMLElement>}): React.ReactElement;
|
|
59
|
-
(props: Omit<AvatarProps, 'as'> & {ref?: React.Ref<HTMLButtonElement>}): React.ReactElement;
|
|
60
|
-
Variant: typeof AvatarVariant;
|
|
61
|
-
Size: typeof SystemIconCircleSize;
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
const fadeTransition = 'opacity 150ms linear';
|
|
65
|
-
|
|
66
|
-
const StyledContainer = styled('button', {
|
|
67
|
-
shouldForwardProp: prop => isPropValid(prop) && prop !== 'size',
|
|
68
|
-
})<Pick<AvatarProps, 'size' | 'onClick'>>(
|
|
69
|
-
{
|
|
70
|
-
background: colors.soap200,
|
|
46
|
+
export const avatarStencil = createStencil({
|
|
47
|
+
vars: {
|
|
48
|
+
size: '',
|
|
49
|
+
},
|
|
50
|
+
base: ({size}) => ({
|
|
51
|
+
background: system.color.bg.caution.default,
|
|
71
52
|
position: 'relative',
|
|
72
53
|
display: 'flex',
|
|
73
54
|
alignItems: 'center',
|
|
74
55
|
justifyContent: 'center',
|
|
75
56
|
padding: 0,
|
|
76
57
|
border: 0,
|
|
77
|
-
boxSizing: 'border-box',
|
|
78
58
|
overflow: 'hidden',
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
'&:focus': {
|
|
82
|
-
outline: 'none',
|
|
83
|
-
...focusRing({separation: 2}),
|
|
84
|
-
},
|
|
85
|
-
},
|
|
86
|
-
...hideMouseFocus,
|
|
87
|
-
},
|
|
88
|
-
({size}) => ({
|
|
89
|
-
height: size,
|
|
59
|
+
cursor: 'default',
|
|
60
|
+
borderRadius: system.shape.round,
|
|
90
61
|
width: size,
|
|
91
|
-
}),
|
|
92
|
-
({onClick}) => ({
|
|
93
|
-
cursor: onClick ? 'pointer' : 'default',
|
|
94
|
-
})
|
|
95
|
-
);
|
|
96
|
-
|
|
97
|
-
const StyledStack = styled('span')<Pick<AvatarProps, 'size'>>(
|
|
98
|
-
{
|
|
99
|
-
position: 'absolute',
|
|
100
|
-
top: 0,
|
|
101
|
-
left: 0,
|
|
102
|
-
},
|
|
103
|
-
({size}) => ({
|
|
104
62
|
height: size,
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
)
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
|
|
63
|
+
'&:focus-visible:not([disabled]), &.focus:not([disabled])': {
|
|
64
|
+
outline: 'none',
|
|
65
|
+
...focusRing({separation: 2}),
|
|
66
|
+
},
|
|
67
|
+
':is(button)': {
|
|
68
|
+
cursor: 'pointer',
|
|
69
|
+
},
|
|
70
|
+
['& > [data-slot="avatar-icon"]']: {
|
|
71
|
+
transition: 'opacity 150ms linear',
|
|
72
|
+
display: 'flex',
|
|
73
|
+
alignItems: 'center',
|
|
74
|
+
justifyContent: 'center',
|
|
75
|
+
[systemIconStencil.vars.size]: calc.multiply(size, 0.625),
|
|
76
|
+
},
|
|
77
|
+
['& > [data-slot="avatar-image"]']: {
|
|
78
|
+
position: 'absolute',
|
|
79
|
+
width: '100%',
|
|
80
|
+
height: '100%',
|
|
81
|
+
borderRadius: borderRadius.circle,
|
|
82
|
+
transition: 'opacity 150ms linear',
|
|
83
|
+
},
|
|
84
|
+
}),
|
|
85
|
+
modifiers: {
|
|
86
|
+
variant: {
|
|
87
|
+
light: {
|
|
88
|
+
backgroundColor: system.color.bg.alt.default,
|
|
89
|
+
['& [data-slot="avatar-icon"]']: {
|
|
90
|
+
[systemIconStencil.vars.color]: system.color.fg.default,
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
dark: {
|
|
94
|
+
backgroundColor: system.color.bg.primary.default,
|
|
95
|
+
['& [data-slot="avatar-icon"]']: {
|
|
96
|
+
[systemIconStencil.vars.color]: system.color.fg.inverse,
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
size: {
|
|
101
|
+
extraSmall: {
|
|
102
|
+
width: system.space.x4,
|
|
103
|
+
height: system.space.x4,
|
|
104
|
+
['& [data-slot="avatar-icon"]']: {
|
|
105
|
+
[systemIconStencil.vars.size]: calc.multiply(system.space.x4, 0.625),
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
small: {
|
|
109
|
+
width: system.space.x6,
|
|
110
|
+
height: system.space.x6,
|
|
111
|
+
['& [data-slot="avatar-icon"]']: {
|
|
112
|
+
[systemIconStencil.vars.size]: calc.multiply(system.space.x6, 0.625),
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
medium: {
|
|
116
|
+
width: system.space.x8,
|
|
117
|
+
height: system.space.x8,
|
|
118
|
+
['& [data-slot="avatar-icon"]']: {
|
|
119
|
+
[systemIconStencil.vars.size]: calc.multiply(system.space.x8, 0.625),
|
|
120
|
+
},
|
|
121
|
+
},
|
|
122
|
+
large: {
|
|
123
|
+
width: system.space.x10,
|
|
124
|
+
height: system.space.x10,
|
|
125
|
+
['& [data-slot="avatar-icon"]']: {
|
|
126
|
+
[systemIconStencil.vars.size]: calc.multiply(system.space.x10, 0.625),
|
|
127
|
+
},
|
|
128
|
+
},
|
|
129
|
+
extraLarge: {
|
|
130
|
+
width: system.space.x16,
|
|
131
|
+
height: system.space.x16,
|
|
132
|
+
['& [data-slot="avatar-icon"]']: {
|
|
133
|
+
[systemIconStencil.vars.size]: calc.multiply(system.space.x16, 0.625),
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
extraExtraLarge: {
|
|
137
|
+
width: calc.multiply(system.space.x10, 3),
|
|
138
|
+
height: calc.multiply(system.space.x10, 3),
|
|
139
|
+
['& [data-slot="avatar-icon"]']: {
|
|
140
|
+
[systemIconStencil.vars.size]: calc.multiply(calc.multiply(system.space.x10, 3), 0.625),
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
},
|
|
144
|
+
objectFit: {
|
|
145
|
+
contain: {
|
|
146
|
+
['& [data-slot="avatar-image"]']: {
|
|
147
|
+
objectFit: 'contain',
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
fill: {
|
|
151
|
+
['& [data-slot="avatar-image"]']: {
|
|
152
|
+
objectFit: 'fill',
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
cover: {
|
|
156
|
+
['& [data-slot="avatar-image"]']: {
|
|
157
|
+
objectFit: 'cover',
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
['scale-down']: {
|
|
161
|
+
['& [data-slot="avatar-image"]']: {
|
|
162
|
+
objectFit: 'scale-down',
|
|
163
|
+
},
|
|
164
|
+
},
|
|
165
|
+
none: {
|
|
166
|
+
['& [data-slot="avatar-image"]']: {
|
|
167
|
+
objectFit: 'none',
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
['-moz-initial']: {
|
|
171
|
+
['& [data-slot="avatar-image"]']: {
|
|
172
|
+
objectFit: '-moz-initial',
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
['initial']: {
|
|
176
|
+
['& [data-slot="avatar-image"]']: {
|
|
177
|
+
objectFit: 'initial',
|
|
178
|
+
},
|
|
179
|
+
},
|
|
180
|
+
['inherit']: {
|
|
181
|
+
['& [data-slot="avatar-image"]']: {
|
|
182
|
+
objectFit: 'inherit',
|
|
183
|
+
},
|
|
184
|
+
},
|
|
185
|
+
['revert']: {
|
|
186
|
+
['& [data-slot="avatar-image"]']: {
|
|
187
|
+
objectFit: 'revert',
|
|
188
|
+
},
|
|
189
|
+
},
|
|
190
|
+
['unset']: {
|
|
191
|
+
['& [data-slot="avatar-image"]']: {
|
|
192
|
+
objectFit: 'unset',
|
|
193
|
+
},
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
isImageLoaded: {
|
|
197
|
+
true: {
|
|
198
|
+
['& [data-slot="avatar-icon"]']: {
|
|
199
|
+
opacity: 0,
|
|
200
|
+
},
|
|
201
|
+
['& [data-slot="avatar-image"]']: {
|
|
202
|
+
opacity: 1,
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
false: {
|
|
206
|
+
['& [data-slot="avatar-icon"]']: {
|
|
207
|
+
opacity: 1,
|
|
208
|
+
},
|
|
209
|
+
['& [data-slot="avatar-image"]']: {
|
|
210
|
+
opacity: 0,
|
|
211
|
+
},
|
|
212
|
+
},
|
|
213
|
+
},
|
|
114
214
|
},
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
const StyledImage = styled('img', {
|
|
121
|
-
shouldForwardProp: filterOutProps(['isLoaded', 'objectFit']),
|
|
122
|
-
})<{isLoaded: boolean; objectFit?: Property.ObjectFit}>(
|
|
123
|
-
{
|
|
124
|
-
width: '100%',
|
|
125
|
-
height: '100%',
|
|
126
|
-
borderRadius: borderRadius.circle,
|
|
127
|
-
transition: fadeTransition,
|
|
215
|
+
defaultModifiers: {
|
|
216
|
+
variant: 'light',
|
|
217
|
+
size: 'medium',
|
|
218
|
+
isImageLoaded: 'false',
|
|
219
|
+
objectFit: 'contain',
|
|
128
220
|
},
|
|
129
|
-
|
|
130
|
-
opacity: isLoaded ? 1 : 0,
|
|
131
|
-
objectFit,
|
|
132
|
-
})
|
|
133
|
-
);
|
|
221
|
+
});
|
|
134
222
|
|
|
135
|
-
export const Avatar
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
url,
|
|
142
|
-
onClick,
|
|
143
|
-
objectFit,
|
|
144
|
-
...elemProps
|
|
145
|
-
}: AvatarProps,
|
|
146
|
-
ref: React.Ref<HTMLButtonElement>
|
|
223
|
+
export const Avatar = createComponent('button')({
|
|
224
|
+
displayName: 'Avatar',
|
|
225
|
+
Component: (
|
|
226
|
+
{variant, size, altText = 'Avatar', url, objectFit, ...elemProps}: AvatarProps,
|
|
227
|
+
ref,
|
|
228
|
+
Element
|
|
147
229
|
) => {
|
|
148
230
|
const [imageLoaded, setImageLoaded] = useState(false);
|
|
149
231
|
|
|
@@ -157,41 +239,22 @@ export const Avatar: AvatarOverload = React.forwardRef(
|
|
|
157
239
|
setImageLoaded(false);
|
|
158
240
|
}, [url]);
|
|
159
241
|
|
|
160
|
-
const background = variant === AvatarVariant.Dark ? colors.blueberry400 : colors.soap300;
|
|
161
|
-
|
|
162
242
|
return (
|
|
163
|
-
<
|
|
164
|
-
size={size}
|
|
165
|
-
aria-label={altText}
|
|
166
|
-
onClick={onClick}
|
|
167
|
-
disabled={onClick ? false : true}
|
|
243
|
+
<Element
|
|
168
244
|
ref={ref}
|
|
169
|
-
{
|
|
245
|
+
aria-label={altText}
|
|
246
|
+
{...mergeStyles(elemProps, [
|
|
247
|
+
avatarStencil({
|
|
248
|
+
variant,
|
|
249
|
+
size,
|
|
250
|
+
objectFit,
|
|
251
|
+
isImageLoaded: imageLoaded,
|
|
252
|
+
}),
|
|
253
|
+
])}
|
|
170
254
|
>
|
|
171
|
-
<
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
background={background}
|
|
175
|
-
size={size}
|
|
176
|
-
isImageLoaded={imageLoaded}
|
|
177
|
-
/>
|
|
178
|
-
</StyledStack>
|
|
179
|
-
{url && (
|
|
180
|
-
<StyledStack size={size}>
|
|
181
|
-
<StyledImage
|
|
182
|
-
src={url}
|
|
183
|
-
alt={altText}
|
|
184
|
-
onLoad={loadImage}
|
|
185
|
-
isLoaded={imageLoaded}
|
|
186
|
-
objectFit={objectFit}
|
|
187
|
-
loading="lazy"
|
|
188
|
-
/>
|
|
189
|
-
</StyledStack>
|
|
190
|
-
)}
|
|
191
|
-
</StyledContainer>
|
|
255
|
+
<SystemIcon icon={userIcon} data-slot="avatar-icon" />
|
|
256
|
+
{url && <img data-slot="avatar-image" src={url} alt={altText} onLoad={loadImage} />}
|
|
257
|
+
</Element>
|
|
192
258
|
);
|
|
193
|
-
}
|
|
194
|
-
)
|
|
195
|
-
|
|
196
|
-
Avatar.Variant = AvatarVariant;
|
|
197
|
-
Avatar.Size = SystemIconCircleSize;
|
|
259
|
+
},
|
|
260
|
+
});
|
|
@@ -1,62 +1,167 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import { Property } from 'csstype';
|
|
3
|
-
|
|
4
|
-
export declare enum AvatarVariant {
|
|
5
|
-
Light = 0,
|
|
6
|
-
Dark = 1
|
|
7
|
-
}
|
|
8
|
-
export interface AvatarProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
2
|
+
export interface AvatarProps {
|
|
9
3
|
/**
|
|
10
|
-
* The variant of the
|
|
11
|
-
* @default
|
|
4
|
+
* The variant of the avatar. Use `light` on dark backgrounds and `dark` on light backgrounds.
|
|
5
|
+
* @default "light"
|
|
12
6
|
*/
|
|
13
|
-
variant?:
|
|
7
|
+
variant?: 'light' | 'dark';
|
|
14
8
|
/**
|
|
15
9
|
* The size of the Avatar.
|
|
16
|
-
*
|
|
10
|
+
* - `extraExtraLarge`: 7.5rem x 7.5rem (120px x 120px)
|
|
11
|
+
* - `extraLarge`: 4.5rem x 4.5rem (64px x 64px)
|
|
12
|
+
* - `large`: 2.5rem x 2.5rem (40px x 40px)
|
|
13
|
+
* - `medium`: 2rem x 2rem (32px x 32px)
|
|
14
|
+
* - `small`: 1.5rem x 1.5rem (24px x 24px)
|
|
15
|
+
* - `small`: 1rem x 1rem (16px x 16px)
|
|
16
|
+
* @default "medium"
|
|
17
17
|
*/
|
|
18
|
-
size?:
|
|
18
|
+
size?: /** size of small */ 'extraSmall' | 'small' | 'medium' | 'large' | 'extraLarge' | 'extraExtraLarge' | (string & {});
|
|
19
19
|
/**
|
|
20
|
-
* The alt text of the Avatar image. This prop is also used for the aria-label
|
|
20
|
+
* The alt text of the Avatar image. This prop is also used for the aria-label.
|
|
21
21
|
* @default Avatar
|
|
22
22
|
*/
|
|
23
23
|
altText?: string;
|
|
24
24
|
/**
|
|
25
|
-
* The
|
|
25
|
+
* The URL of the user's photo. For best fit, use square images.
|
|
26
26
|
*/
|
|
27
27
|
url?: string;
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*/
|
|
32
|
-
as?: 'div';
|
|
33
|
-
/**
|
|
34
|
-
* The object-fit CSS property sets how the content of a replaced element,
|
|
35
|
-
* such as an `<img>` or `<video>`, should be resized to fit its container.
|
|
36
|
-
* See [object-fit](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit).
|
|
37
|
-
* If your image is not a square, you can use this property to ensure the image is rendered properly.
|
|
29
|
+
* An objectFit property that can customize how to resize your image to fit its container.
|
|
30
|
+
* @default "contain"
|
|
38
31
|
*/
|
|
39
32
|
objectFit?: Property.ObjectFit;
|
|
40
33
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
34
|
+
export declare const avatarStencil: import("@workday/canvas-kit-styling").Stencil<{
|
|
35
|
+
variant: {
|
|
36
|
+
light: {
|
|
37
|
+
backgroundColor: "--cnvs-sys-color-bg-alt-default";
|
|
38
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
39
|
+
[x: string]: "--cnvs-sys-color-fg-default";
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
dark: {
|
|
43
|
+
backgroundColor: "--cnvs-sys-color-bg-primary-default";
|
|
44
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
45
|
+
[x: string]: "--cnvs-sys-color-fg-inverse";
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
size: {
|
|
50
|
+
extraSmall: {
|
|
51
|
+
width: "--cnvs-sys-space-x4";
|
|
52
|
+
height: "--cnvs-sys-space-x4";
|
|
53
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
54
|
+
[x: string]: string;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
small: {
|
|
58
|
+
width: "--cnvs-sys-space-x6";
|
|
59
|
+
height: "--cnvs-sys-space-x6";
|
|
60
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
61
|
+
[x: string]: string;
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
medium: {
|
|
65
|
+
width: "--cnvs-sys-space-x8";
|
|
66
|
+
height: "--cnvs-sys-space-x8";
|
|
67
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
68
|
+
[x: string]: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
large: {
|
|
72
|
+
width: "--cnvs-sys-space-x10";
|
|
73
|
+
height: "--cnvs-sys-space-x10";
|
|
74
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
75
|
+
[x: string]: string;
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
extraLarge: {
|
|
79
|
+
width: "--cnvs-sys-space-x16";
|
|
80
|
+
height: "--cnvs-sys-space-x16";
|
|
81
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
82
|
+
[x: string]: string;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
85
|
+
extraExtraLarge: {
|
|
86
|
+
width: string;
|
|
87
|
+
height: string;
|
|
88
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
89
|
+
[x: string]: string;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
};
|
|
93
|
+
objectFit: {
|
|
94
|
+
contain: {
|
|
95
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
96
|
+
objectFit: "contain";
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
fill: {
|
|
100
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
101
|
+
objectFit: "fill";
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
cover: {
|
|
105
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
106
|
+
objectFit: "cover";
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
"scale-down": {
|
|
110
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
111
|
+
objectFit: "scale-down";
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
none: {
|
|
115
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
116
|
+
objectFit: "none";
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
"-moz-initial": {
|
|
120
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
121
|
+
objectFit: "-moz-initial";
|
|
122
|
+
};
|
|
123
|
+
};
|
|
124
|
+
initial: {
|
|
125
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
126
|
+
objectFit: "initial";
|
|
127
|
+
};
|
|
128
|
+
};
|
|
129
|
+
inherit: {
|
|
130
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
131
|
+
objectFit: "inherit";
|
|
132
|
+
};
|
|
133
|
+
};
|
|
134
|
+
revert: {
|
|
135
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
136
|
+
objectFit: "revert";
|
|
137
|
+
};
|
|
138
|
+
};
|
|
139
|
+
unset: {
|
|
140
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
141
|
+
objectFit: "unset";
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
};
|
|
145
|
+
isImageLoaded: {
|
|
146
|
+
true: {
|
|
147
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
148
|
+
opacity: number;
|
|
149
|
+
};
|
|
150
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
151
|
+
opacity: number;
|
|
152
|
+
};
|
|
153
|
+
};
|
|
154
|
+
false: {
|
|
155
|
+
"& [data-slot=\"avatar-icon\"]": {
|
|
156
|
+
opacity: number;
|
|
157
|
+
};
|
|
158
|
+
"& [data-slot=\"avatar-image\"]": {
|
|
159
|
+
opacity: number;
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
}, {
|
|
164
|
+
size: string;
|
|
165
|
+
}, never, never>;
|
|
166
|
+
export declare const Avatar: import("@workday/canvas-kit-react/common").ElementComponent<"button", AvatarProps>;
|
|
62
167
|
//# sourceMappingURL=Avatar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../avatar/lib/Avatar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Avatar.d.ts","sourceRoot":"","sources":["../../../../avatar/lib/Avatar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAC,QAAQ,EAAC,MAAM,SAAS,CAAC;AAUjC,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B;;;;;;;;;OASG;IACH,IAAI,CAAC,EACL,AADO,oBAAoB,CAC3B,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,GAAG,iBAAiB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IAC/F;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,SAAS,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;CAChC;AAED,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA+KxB,CAAC;AAEH,eAAO,MAAM,MAAM,oFAqCjB,CAAC"}
|