@hh.ru/magritte-ui-avatar 7.0.10 → 8.0.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.js +45 -24
- package/Avatar.js.map +1 -1
- package/AvatarStack.js +1 -1
- package/AvatarStack.js.map +1 -1
- package/Skeleton-P_LoJXsU.js +18 -0
- package/{Skeleton-DFCBOYMh.js.map → Skeleton-P_LoJXsU.js.map} +1 -1
- package/Skeleton.js +1 -1
- package/images/city-day.png +0 -0
- package/images/city-night.png +0 -0
- package/images/female-day.png +0 -0
- package/images/female-night.png +0 -0
- package/images/male-day.png +0 -0
- package/images/male-night.png +0 -0
- package/images/undefined-day.png +0 -0
- package/images/undefined-night.png +0 -0
- package/index.css +426 -166
- package/index.js +1 -5
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/types.d.ts +10 -15
- package/utils.d.ts +3 -0
- package/utils.js +3 -0
- package/utils.js.map +1 -1
- package/Placeholder/City.d.ts +0 -3
- package/Placeholder/City.js +0 -7
- package/Placeholder/City.js.map +0 -1
- package/Placeholder/Female.d.ts +0 -3
- package/Placeholder/Female.js +0 -7
- package/Placeholder/Female.js.map +0 -1
- package/Placeholder/Male.d.ts +0 -3
- package/Placeholder/Male.js +0 -7
- package/Placeholder/Male.js.map +0 -1
- package/Placeholder/Undefined.d.ts +0 -3
- package/Placeholder/Undefined.js +0 -7
- package/Placeholder/Undefined.js.map +0 -1
- package/Placeholder/index.d.ts +0 -4
- package/Placeholder/index.js +0 -7
- package/Placeholder/index.js.map +0 -1
- package/Skeleton-DFCBOYMh.js +0 -18
package/Avatar.js
CHANGED
|
@@ -3,24 +3,20 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
|
3
3
|
import { forwardRef, useState, useRef, useLayoutEffect } from 'react';
|
|
4
4
|
import classnames from 'classnames';
|
|
5
5
|
import { useDisabled } from '@hh.ru/magritte-common-use-disabled';
|
|
6
|
-
import {
|
|
7
|
-
import { Male } from './Placeholder/Male.js';
|
|
8
|
-
import { City } from './Placeholder/City.js';
|
|
9
|
-
import { Undefined } from './Placeholder/Undefined.js';
|
|
10
|
-
import { A as AvatarSkeleton, s as styles } from './Skeleton-DFCBOYMh.js';
|
|
6
|
+
import { A as AvatarSkeleton, s as styles } from './Skeleton-P_LoJXsU.js';
|
|
11
7
|
import { AVATAR_TYPOGRAPHY_MAP, formatLetters } from './utils.js';
|
|
12
8
|
import { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';
|
|
13
9
|
import { BaseText } from '@hh.ru/magritte-ui-typography/BaseText';
|
|
14
10
|
|
|
15
|
-
const AvatarForwardRefRenderFunc = ({ mode, size = 24, 'aria-label': ariaLabel, shapeCircle = false, online = false, styleOnline = 'positive', disabled = false, letters, style, icon, image,
|
|
16
|
-
const [
|
|
17
|
-
const
|
|
11
|
+
const AvatarForwardRefRenderFunc = ({ mode, size = 24, 'aria-label': ariaLabel, shapeCircle = false, online = false, styleOnline = 'positive', disabled = false, letters, style, icon, image, placeholder = 'undefined', Element = 'div', containerDataQa = '', ...avatarProps }, ref) => {
|
|
12
|
+
const [imageState, setImageState] = useState('loading');
|
|
13
|
+
const imageRef = useRef(null);
|
|
18
14
|
const forceDisabled = useDisabled();
|
|
19
15
|
const isComponentDisabled = disabled || forceDisabled;
|
|
20
|
-
const isModeLetters = mode === 'letters'
|
|
16
|
+
const isModeLetters = mode === 'letters';
|
|
21
17
|
const isModeIcon = mode === 'icon';
|
|
22
|
-
const isModePlaceholder = mode === 'placeholder' || (mode === 'image' &&
|
|
23
|
-
const isModeImage = mode === 'image';
|
|
18
|
+
const isModePlaceholder = mode === 'placeholder' || (mode === 'image' && imageState === 'error');
|
|
19
|
+
const isModeImage = mode === 'image' && imageState !== 'error';
|
|
24
20
|
const additionalAttributes = {};
|
|
25
21
|
if (Element === 'button') {
|
|
26
22
|
additionalAttributes.type = 'button';
|
|
@@ -35,7 +31,7 @@ const AvatarForwardRefRenderFunc = ({ mode, size = 24, 'aria-label': ariaLabel,
|
|
|
35
31
|
const classNames = {
|
|
36
32
|
[styles.avatar]: true,
|
|
37
33
|
[styles.avatarShapeCircle]: shapeCircle,
|
|
38
|
-
[styles.avatarModeImage]: mode === 'image' &&
|
|
34
|
+
[styles.avatarModeImage]: mode === 'image' && imageState === 'loaded',
|
|
39
35
|
[styles.avatarModeLetters]: isModeLetters,
|
|
40
36
|
[styles.avatarModeIcon]: isModeIcon,
|
|
41
37
|
[styles.avatarModePlaceholder]: isModePlaceholder,
|
|
@@ -46,20 +42,34 @@ const AvatarForwardRefRenderFunc = ({ mode, size = 24, 'aria-label': ariaLabel,
|
|
|
46
42
|
classNames[styles[`avatar_style-${style}`]] = !!style;
|
|
47
43
|
}
|
|
48
44
|
useLayoutEffect(() => {
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if (imgRef.current && image) {
|
|
53
|
-
imgRef.current.addEventListener('load', handleOnLoad);
|
|
54
|
-
imgRef.current.addEventListener('error', handleOnError);
|
|
55
|
-
imgRef.current.src = image;
|
|
45
|
+
const imageElement = imageRef.current;
|
|
46
|
+
if (!imageElement || !image) {
|
|
47
|
+
return void 0;
|
|
56
48
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
49
|
+
const loadingStartTime = Date.now();
|
|
50
|
+
const handleOnLoad = () => {
|
|
51
|
+
// если картинка грузилась дольше 300мс, анимируем прозрачность, иначе показываем без анимации
|
|
52
|
+
if (Date.now() - loadingStartTime > 300) {
|
|
53
|
+
const handleAnimationEnd = () => {
|
|
54
|
+
imageElement.removeEventListener('animationend', handleAnimationEnd);
|
|
55
|
+
setImageState('loaded');
|
|
56
|
+
};
|
|
57
|
+
imageElement.addEventListener('animationend', handleAnimationEnd);
|
|
58
|
+
setImageState('loading-animation');
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
setImageState('loaded');
|
|
61
62
|
}
|
|
62
63
|
};
|
|
64
|
+
const handleOnError = () => setImageState('error');
|
|
65
|
+
imageRef.current.addEventListener('load', handleOnLoad);
|
|
66
|
+
imageRef.current.addEventListener('error', handleOnError);
|
|
67
|
+
imageRef.current.src = image;
|
|
68
|
+
setImageState('loading');
|
|
69
|
+
return () => {
|
|
70
|
+
imageElement.removeEventListener('load', handleOnLoad);
|
|
71
|
+
imageElement.removeEventListener('error', handleOnError);
|
|
72
|
+
};
|
|
63
73
|
}, [image]);
|
|
64
74
|
return (jsxs("div", { ...(online || isComponentDisabled
|
|
65
75
|
? {
|
|
@@ -69,7 +79,18 @@ const AvatarForwardRefRenderFunc = ({ mode, size = 24, 'aria-label': ariaLabel,
|
|
|
69
79
|
[styles[`avatar-container_size-${size}`]]: online,
|
|
70
80
|
}),
|
|
71
81
|
}
|
|
72
|
-
: {}), ...(containerDataQa ? { 'data-qa': containerDataQa } : {}), children: [jsxs(Element, { ...additionalAttributes, ...avatarProps, className: classnames(classNames), disabled: Element === 'button' ? isComponentDisabled : false, "aria-label": ariaLabel, children: [isModeLetters && (jsx(BaseText, { style: "primary", Element: "span", typography: AVATAR_TYPOGRAPHY_MAP[size], children: formatLetters(letters || '') })), isModeIcon && icon, isModePlaceholder && (
|
|
82
|
+
: {}), ...(containerDataQa ? { 'data-qa': containerDataQa } : {}), children: [jsxs(Element, { ...additionalAttributes, ...avatarProps, className: classnames(classNames), disabled: Element === 'button' ? isComponentDisabled : false, "aria-label": ariaLabel, children: [isModeLetters && (jsx(BaseText, { style: "primary", Element: "span", typography: AVATAR_TYPOGRAPHY_MAP[size], children: formatLetters(letters || '') })), isModeIcon && icon, isModePlaceholder && (jsx("div", { className: classnames({
|
|
83
|
+
[styles.female]: placeholder === 'female',
|
|
84
|
+
[styles.male]: placeholder === 'male',
|
|
85
|
+
[styles.city]: placeholder === 'city',
|
|
86
|
+
[styles.undefined]: placeholder === 'undefined',
|
|
87
|
+
}), "data-qa": `placeholder-${placeholder}`, style: { width: size, height: size } })), isModeImage && (jsxs(Fragment, { children: [(imageState === 'loading' || imageState === 'loading-animation') && (jsx("div", { className: classnames(styles.avatarImageLoading, {
|
|
88
|
+
[styles[`avatar_size-${size}`]]: size,
|
|
89
|
+
[styles.avatarShapeCircle]: shapeCircle,
|
|
90
|
+
}) })), jsx("img", { ref: imageRef, alt: ariaLabel, className: classnames(styles.avatarImage, {
|
|
91
|
+
[styles.avatarImageHidden]: imageState === 'loading',
|
|
92
|
+
[styles.avatarImageAnimation]: imageState === 'loading-animation',
|
|
93
|
+
}) })] }))] }), online && (jsxs(Fragment, { children: [jsx("div", { className: styles[`avatar-focus-border-${size}`] }), jsx("div", { className: classnames(styles[`avatar-online-badge-${size}`], styles[`avatar-online-badge_style_${styleOnline}`]) })] }))] }));
|
|
73
94
|
};
|
|
74
95
|
const AvatarComponent = forwardRef(AvatarForwardRefRenderFunc);
|
|
75
96
|
const Avatar = enrichWithSkeleton(AvatarComponent, AvatarSkeleton);
|
package/Avatar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sources":["../src/Avatar.tsx"],"sourcesContent":["import { forwardRef, useLayoutEffect, useRef, useState } from 'react';\nimport classnames from 'classnames';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { City, Female, Male, Undefined } from '@hh.ru/magritte-ui-avatar/Placeholder';\nimport { AvatarSkeleton } from '@hh.ru/magritte-ui-avatar/Skeleton';\nimport type { AvatarProps } from '@hh.ru/magritte-ui-avatar/types';\nimport { AVATAR_TYPOGRAPHY_MAP, formatLetters } from '@hh.ru/magritte-ui-avatar/utils';\nimport { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';\nimport { BaseText } from '@hh.ru/magritte-ui-typography/BaseText';\n\nimport styles from './avatar.less';\n\nconst AvatarForwardRefRenderFunc: PolymorphicForwardRefRenderFunc<AvatarProps, 'div'> = (\n {\n mode,\n size = 24,\n 'aria-label': ariaLabel,\n shapeCircle = false,\n online = false,\n styleOnline = 'positive',\n disabled = false,\n letters,\n style,\n icon,\n image,\n fallbackMode,\n placeholder = 'undefined',\n Element = 'div',\n containerDataQa = '',\n ...avatarProps\n },\n ref\n) => {\n const [isImageLoaded, setLoaded] = useState(false);\n const imgRef = useRef<HTMLImageElement>(null);\n\n const forceDisabled = useDisabled();\n\n const isComponentDisabled = disabled || forceDisabled;\n\n const isModeLetters = mode === 'letters' || (mode === 'image' && fallbackMode === 'letters' && !isImageLoaded);\n const isModeIcon = mode === 'icon';\n const isModePlaceholder =\n mode === 'placeholder' || (mode === 'image' && fallbackMode === 'placeholder' && !isImageLoaded);\n const isModeImage = mode === 'image';\n\n const additionalAttributes: Record<string, unknown> = {};\n\n if (Element === 'button') {\n additionalAttributes.type = 'button';\n }\n\n if (isComponentDisabled && Element === 'a') {\n additionalAttributes['aria-disabled'] = true;\n additionalAttributes.tabIndex = -1;\n }\n\n if (ref) {\n additionalAttributes.ref = ref;\n }\n\n const classNames = {\n [styles.avatar]: true,\n [styles.avatarShapeCircle]: shapeCircle,\n [styles.avatarModeImage]: mode === 'image' && isImageLoaded,\n [styles.avatarModeLetters]: isModeLetters,\n [styles.avatarModeIcon]: isModeIcon,\n [styles.avatarModePlaceholder]: isModePlaceholder,\n [styles[`avatar_size-${size}`]]: !!size,\n [styles[`avatar_with-online-badge-${size}`]]: online,\n };\n\n if ((isModeLetters || isModeIcon) && style) {\n classNames[styles[`avatar_style-${style}`]] = !!style;\n }\n\n useLayoutEffect(() => {\n const handleOnLoad = () => setLoaded(true);\n const handleOnError = () => setLoaded(false);\n\n const listenOn = imgRef.current;\n if (imgRef.current && image) {\n imgRef.current.addEventListener('load', handleOnLoad);\n imgRef.current.addEventListener('error', handleOnError);\n imgRef.current.src = image;\n }\n\n return () => {\n if (listenOn) {\n listenOn.removeEventListener('load', handleOnLoad);\n listenOn.removeEventListener('error', handleOnError);\n }\n };\n }, [image]);\n\n return (\n <div\n {...(online || isComponentDisabled\n ? {\n className: classnames({\n [styles.avatarContainer]: online,\n [styles.avatarContainerDisabled]: isComponentDisabled,\n [styles[`avatar-container_size-${size}`]]: online,\n }),\n }\n : {})}\n {...(containerDataQa ? { 'data-qa': containerDataQa } : {})}\n >\n <Element\n {...additionalAttributes}\n {...avatarProps}\n className={classnames(classNames)}\n disabled={Element === 'button' ? isComponentDisabled : false}\n aria-label={ariaLabel}\n >\n {isModeLetters && (\n <BaseText style=\"primary\" Element=\"span\" typography={AVATAR_TYPOGRAPHY_MAP[size]}>\n {formatLetters(letters || '')}\n </BaseText>\n )}\n {isModeIcon && icon}\n {isModePlaceholder && (\n <>\n {placeholder === 'female' && <Female role=\"img\" width={size} height={size} />}\n {placeholder === 'male' && <Male role=\"img\" width={size} height={size} />}\n {placeholder === 'city' && <City role=\"img\" width={size} height={size} />}\n {placeholder === 'undefined' && <Undefined role=\"img\" width={size} height={size} />}\n </>\n )}\n {isModeImage && (\n <img\n ref={imgRef}\n alt={ariaLabel}\n className={classnames(styles.avatarImage, { [styles.avatarImageHidden]: !isImageLoaded })}\n />\n )}\n </Element>\n {online && (\n <>\n <div className={styles[`avatar-focus-border-${size}`]} />\n <div\n className={classnames(\n styles[`avatar-online-badge-${size}`],\n styles[`avatar-online-badge_style_${styleOnline}`]\n )}\n />\n </>\n )}\n </div>\n );\n};\n\nconst AvatarComponent = forwardRef(AvatarForwardRefRenderFunc) as PolymorphicComponentWithRef<AvatarProps, 'div'>;\n\nexport const Avatar = enrichWithSkeleton(AvatarComponent, AvatarSkeleton);\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Avatar.js","sources":["../src/Avatar.tsx"],"sourcesContent":["import { forwardRef, useLayoutEffect, useRef, useState } from 'react';\nimport classnames from 'classnames';\n\nimport { useDisabled } from '@hh.ru/magritte-common-use-disabled';\nimport type { PolymorphicForwardRefRenderFunc, PolymorphicComponentWithRef } from '@hh.ru/magritte-types';\nimport { AvatarSkeleton } from '@hh.ru/magritte-ui-avatar/Skeleton';\nimport type { AvatarProps } from '@hh.ru/magritte-ui-avatar/types';\nimport { AVATAR_TYPOGRAPHY_MAP, formatLetters } from '@hh.ru/magritte-ui-avatar/utils';\nimport { enrichWithSkeleton } from '@hh.ru/magritte-ui-skeleton';\nimport { BaseText } from '@hh.ru/magritte-ui-typography/BaseText';\n\nimport styles from './avatar.less';\n\nconst AvatarForwardRefRenderFunc: PolymorphicForwardRefRenderFunc<AvatarProps, 'div'> = (\n {\n mode,\n size = 24,\n 'aria-label': ariaLabel,\n shapeCircle = false,\n online = false,\n styleOnline = 'positive',\n disabled = false,\n letters,\n style,\n icon,\n image,\n placeholder = 'undefined',\n Element = 'div',\n containerDataQa = '',\n ...avatarProps\n },\n ref\n) => {\n const [imageState, setImageState] = useState<'loading' | 'loading-animation' | 'loaded' | 'error'>('loading');\n const imageRef = useRef<HTMLImageElement>(null);\n\n const forceDisabled = useDisabled();\n\n const isComponentDisabled = disabled || forceDisabled;\n\n const isModeLetters = mode === 'letters';\n const isModeIcon = mode === 'icon';\n const isModePlaceholder = mode === 'placeholder' || (mode === 'image' && imageState === 'error');\n const isModeImage = mode === 'image' && imageState !== 'error';\n\n const additionalAttributes: Record<string, unknown> = {};\n\n if (Element === 'button') {\n additionalAttributes.type = 'button';\n }\n\n if (isComponentDisabled && Element === 'a') {\n additionalAttributes['aria-disabled'] = true;\n additionalAttributes.tabIndex = -1;\n }\n\n if (ref) {\n additionalAttributes.ref = ref;\n }\n\n const classNames = {\n [styles.avatar]: true,\n [styles.avatarShapeCircle]: shapeCircle,\n [styles.avatarModeImage]: mode === 'image' && imageState === 'loaded',\n [styles.avatarModeLetters]: isModeLetters,\n [styles.avatarModeIcon]: isModeIcon,\n [styles.avatarModePlaceholder]: isModePlaceholder,\n [styles[`avatar_size-${size}`]]: !!size,\n [styles[`avatar_with-online-badge-${size}`]]: online,\n };\n\n if ((isModeLetters || isModeIcon) && style) {\n classNames[styles[`avatar_style-${style}`]] = !!style;\n }\n\n useLayoutEffect(() => {\n const imageElement = imageRef.current;\n if (!imageElement || !image) {\n return void 0;\n }\n\n const loadingStartTime = Date.now();\n\n const handleOnLoad = () => {\n // если картинка грузилась дольше 300мс, анимируем прозрачность, иначе показываем без анимации\n if (Date.now() - loadingStartTime > 300) {\n const handleAnimationEnd = () => {\n imageElement.removeEventListener('animationend', handleAnimationEnd);\n setImageState('loaded');\n };\n imageElement.addEventListener('animationend', handleAnimationEnd);\n setImageState('loading-animation');\n } else {\n setImageState('loaded');\n }\n };\n\n const handleOnError = () => setImageState('error');\n\n imageRef.current.addEventListener('load', handleOnLoad);\n imageRef.current.addEventListener('error', handleOnError);\n imageRef.current.src = image;\n setImageState('loading');\n\n return () => {\n imageElement.removeEventListener('load', handleOnLoad);\n imageElement.removeEventListener('error', handleOnError);\n };\n }, [image]);\n\n return (\n <div\n {...(online || isComponentDisabled\n ? {\n className: classnames({\n [styles.avatarContainer]: online,\n [styles.avatarContainerDisabled]: isComponentDisabled,\n [styles[`avatar-container_size-${size}`]]: online,\n }),\n }\n : {})}\n {...(containerDataQa ? { 'data-qa': containerDataQa } : {})}\n >\n <Element\n {...additionalAttributes}\n {...avatarProps}\n className={classnames(classNames)}\n disabled={Element === 'button' ? isComponentDisabled : false}\n aria-label={ariaLabel}\n >\n {isModeLetters && (\n <BaseText style=\"primary\" Element=\"span\" typography={AVATAR_TYPOGRAPHY_MAP[size]}>\n {formatLetters(letters || '')}\n </BaseText>\n )}\n {isModeIcon && icon}\n {isModePlaceholder && (\n <div\n className={classnames({\n [styles.female]: placeholder === 'female',\n [styles.male]: placeholder === 'male',\n [styles.city]: placeholder === 'city',\n [styles.undefined]: placeholder === 'undefined',\n })}\n data-qa={`placeholder-${placeholder}`}\n style={{ width: size, height: size }}\n />\n )}\n {isModeImage && (\n <>\n {(imageState === 'loading' || imageState === 'loading-animation') && (\n <div\n className={classnames(styles.avatarImageLoading, {\n [styles[`avatar_size-${size}`]]: size,\n [styles.avatarShapeCircle]: shapeCircle,\n })}\n />\n )}\n <img\n ref={imageRef}\n alt={ariaLabel}\n className={classnames(styles.avatarImage, {\n [styles.avatarImageHidden]: imageState === 'loading',\n [styles.avatarImageAnimation]: imageState === 'loading-animation',\n })}\n />\n </>\n )}\n </Element>\n {online && (\n <>\n <div className={styles[`avatar-focus-border-${size}`]} />\n <div\n className={classnames(\n styles[`avatar-online-badge-${size}`],\n styles[`avatar-online-badge_style_${styleOnline}`]\n )}\n />\n </>\n )}\n </div>\n );\n};\n\nconst AvatarComponent = forwardRef(AvatarForwardRefRenderFunc) as PolymorphicComponentWithRef<AvatarProps, 'div'>;\n\nexport const Avatar = enrichWithSkeleton(AvatarComponent, AvatarSkeleton);\n"],"names":["_jsxs","_jsx","_Fragment"],"mappings":"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"}
|
package/AvatarStack.js
CHANGED
|
@@ -3,7 +3,7 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
3
3
|
import { forwardRef, Children, cloneElement } from 'react';
|
|
4
4
|
import classnames from 'classnames';
|
|
5
5
|
|
|
6
|
-
var styles = {"avatar-stack":"magritte-avatar-
|
|
6
|
+
var styles = {"avatar-stack":"magritte-avatar-stack___5qOCC_8-0-0","avatarStack":"magritte-avatar-stack___5qOCC_8-0-0","avatar-stack-inline":"magritte-avatar-stack-inline___aXUFe_8-0-0","avatarStackInline":"magritte-avatar-stack-inline___aXUFe_8-0-0","avatar-stack-item":"magritte-avatar-stack-item___hDdq8_8-0-0","avatarStackItem":"magritte-avatar-stack-item___hDdq8_8-0-0","avatar-stack-size-16":"magritte-avatar-stack-size-16___Yuwfu_8-0-0","avatarStackSize16":"magritte-avatar-stack-size-16___Yuwfu_8-0-0","avatar-stack-circle":"magritte-avatar-stack-circle___tQZvM_8-0-0","avatarStackCircle":"magritte-avatar-stack-circle___tQZvM_8-0-0","avatar-stack-rect":"magritte-avatar-stack-rect___Ip8L2_8-0-0","avatarStackRect":"magritte-avatar-stack-rect___Ip8L2_8-0-0","avatar-stack-size-24":"magritte-avatar-stack-size-24___oZNQA_8-0-0","avatarStackSize24":"magritte-avatar-stack-size-24___oZNQA_8-0-0","avatar-stack-size-40":"magritte-avatar-stack-size-40___oBfvX_8-0-0","avatarStackSize40":"magritte-avatar-stack-size-40___oBfvX_8-0-0","avatar-stack-size-48":"magritte-avatar-stack-size-48___KGUEt_8-0-0","avatarStackSize48":"magritte-avatar-stack-size-48___KGUEt_8-0-0","avatar-stack-size-80":"magritte-avatar-stack-size-80___JnGV-_8-0-0","avatarStackSize80":"magritte-avatar-stack-size-80___JnGV-_8-0-0","avatar-stack-size-96":"magritte-avatar-stack-size-96___1LxDK_8-0-0","avatarStackSize96":"magritte-avatar-stack-size-96___1LxDK_8-0-0"};
|
|
7
7
|
|
|
8
8
|
const AvatarStack = forwardRef(({ size = 24, shape = 'rectangle', inline = false, 'data-qa': dataQa = 'avatar-stack', children }, ref) => {
|
|
9
9
|
return (jsx("ul", { ref: ref, className: classnames(styles.avatarStack, styles[`avatarStackSize${size}`], {
|
package/AvatarStack.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AvatarStack.js","sources":["../src/AvatarStack.tsx"],"sourcesContent":["import { forwardRef, Children, cloneElement, type LegacyRef } from 'react';\nimport classNames from 'classnames';\n\nimport type { AvatarStackProps } from '@hh.ru/magritte-ui-avatar/types';\n\nimport styles from './
|
|
1
|
+
{"version":3,"file":"AvatarStack.js","sources":["../src/AvatarStack.tsx"],"sourcesContent":["import { forwardRef, Children, cloneElement, type LegacyRef } from 'react';\nimport classNames from 'classnames';\n\nimport type { AvatarStackProps } from '@hh.ru/magritte-ui-avatar/types';\n\nimport styles from './avatar-stack.less';\n\nexport const AvatarStack = forwardRef<HTMLElement, AvatarStackProps>(\n ({ size = 24, shape = 'rectangle', inline = false, 'data-qa': dataQa = 'avatar-stack', children }, ref) => {\n return (\n <ul\n ref={ref as LegacyRef<HTMLUListElement>}\n className={classNames(styles.avatarStack, styles[`avatarStackSize${size}`], {\n [styles.avatarStackInline]: inline,\n [styles.avatarStackCircle]: shape === 'circle',\n [styles.avatarStackRect]: shape === 'rectangle',\n })}\n data-qa={dataQa}\n >\n {Children.map(children, (child, index) => (\n <li key={index} className={styles.avatarStackItem}>\n {cloneElement(child, { size, shapeCircle: shape === 'circle' })}\n </li>\n ))}\n </ul>\n );\n }\n);\n\nAvatarStack.displayName = 'AvatarStack';\n"],"names":["_jsx","classNames"],"mappings":";;;;;;AAOO,MAAM,WAAW,GAAG,UAAU,CACjC,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,GAAG,WAAW,EAAE,MAAM,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,GAAG,cAAc,EAAE,QAAQ,EAAE,EAAE,GAAG,KAAI;IACtG,QACIA,YACI,GAAG,EAAE,GAAkC,EACvC,SAAS,EAAEC,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,kBAAkB,IAAI,CAAA,CAAE,CAAC,EAAE;AACxE,YAAA,CAAC,MAAM,CAAC,iBAAiB,GAAG,MAAM;AAClC,YAAA,CAAC,MAAM,CAAC,iBAAiB,GAAG,KAAK,KAAK,QAAQ;AAC9C,YAAA,CAAC,MAAM,CAAC,eAAe,GAAG,KAAK,KAAK,WAAW;SAClD,CAAC,EAAA,SAAA,EACO,MAAM,EAEd,QAAA,EAAA,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,MACjCD,GAAgB,CAAA,IAAA,EAAA,EAAA,SAAS,EAAE,MAAM,CAAC,eAAe,EAC5C,QAAA,EAAA,YAAY,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC,EAD1D,EAAA,KAAK,CAET,CACR,CAAC,EACD,CAAA,EACP;AACN,CAAC,EACH;AAEF,WAAW,CAAC,WAAW,GAAG,aAAa;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import './index.css';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
3
|
+
import classnames from 'classnames';
|
|
4
|
+
import { Skeleton } from '@hh.ru/magritte-ui-skeleton';
|
|
5
|
+
|
|
6
|
+
var styles = {"avatar-container":"magritte-avatar-container___jBkeI_8-0-0","avatarContainer":"magritte-avatar-container___jBkeI_8-0-0","avatar-container_disabled":"magritte-avatar-container_disabled___EkG4l_8-0-0","avatarContainerDisabled":"magritte-avatar-container_disabled___EkG4l_8-0-0","avatar":"magritte-avatar___x--BK_8-0-0","avatar-container_size-16":"magritte-avatar-container_size-16___bGrZk_8-0-0","avatarContainerSize16":"magritte-avatar-container_size-16___bGrZk_8-0-0","avatar-skeleton-16":"magritte-avatar-skeleton-16___Iyj5G_8-0-0","avatarSkeleton16":"magritte-avatar-skeleton-16___Iyj5G_8-0-0","avatar_size-16":"magritte-avatar_size-16___vaXSD_8-0-0","avatarSize16":"magritte-avatar_size-16___vaXSD_8-0-0","avatar-container_size-24":"magritte-avatar-container_size-24___f6DH2_8-0-0","avatarContainerSize24":"magritte-avatar-container_size-24___f6DH2_8-0-0","avatar-skeleton-24":"magritte-avatar-skeleton-24___9hUuj_8-0-0","avatarSkeleton24":"magritte-avatar-skeleton-24___9hUuj_8-0-0","avatar_size-24":"magritte-avatar_size-24___0dAId_8-0-0","avatarSize24":"magritte-avatar_size-24___0dAId_8-0-0","avatar-container_size-40":"magritte-avatar-container_size-40___mVeBD_8-0-0","avatarContainerSize40":"magritte-avatar-container_size-40___mVeBD_8-0-0","avatar-skeleton-40":"magritte-avatar-skeleton-40___ZN6a7_8-0-0","avatarSkeleton40":"magritte-avatar-skeleton-40___ZN6a7_8-0-0","avatar_size-40":"magritte-avatar_size-40___zj3fM_8-0-0","avatarSize40":"magritte-avatar_size-40___zj3fM_8-0-0","avatar-container_size-48":"magritte-avatar-container_size-48___pflud_8-0-0","avatarContainerSize48":"magritte-avatar-container_size-48___pflud_8-0-0","avatar-skeleton-48":"magritte-avatar-skeleton-48___CC-af_8-0-0","avatarSkeleton48":"magritte-avatar-skeleton-48___CC-af_8-0-0","avatar_size-48":"magritte-avatar_size-48___JzITc_8-0-0","avatarSize48":"magritte-avatar_size-48___JzITc_8-0-0","avatar-container_size-80":"magritte-avatar-container_size-80___y8zNb_8-0-0","avatarContainerSize80":"magritte-avatar-container_size-80___y8zNb_8-0-0","avatar-skeleton-80":"magritte-avatar-skeleton-80___Z0Oc8_8-0-0","avatarSkeleton80":"magritte-avatar-skeleton-80___Z0Oc8_8-0-0","avatar_size-80":"magritte-avatar_size-80___YiSBZ_8-0-0","avatarSize80":"magritte-avatar_size-80___YiSBZ_8-0-0","avatar-container_size-96":"magritte-avatar-container_size-96___Up8Hn_8-0-0","avatarContainerSize96":"magritte-avatar-container_size-96___Up8Hn_8-0-0","avatar-skeleton-96":"magritte-avatar-skeleton-96___qYG-Z_8-0-0","avatarSkeleton96":"magritte-avatar-skeleton-96___qYG-Z_8-0-0","avatar_size-96":"magritte-avatar_size-96___5SeO2_8-0-0","avatarSize96":"magritte-avatar_size-96___5SeO2_8-0-0","avatar-container_size-120":"magritte-avatar-container_size-120___gkMBo_8-0-0","avatarContainerSize120":"magritte-avatar-container_size-120___gkMBo_8-0-0","avatar-skeleton-120":"magritte-avatar-skeleton-120___KD5Za_8-0-0","avatarSkeleton120":"magritte-avatar-skeleton-120___KD5Za_8-0-0","avatar_size-120":"magritte-avatar_size-120___th2TT_8-0-0","avatarSize120":"magritte-avatar_size-120___th2TT_8-0-0","avatar-container_size-208":"magritte-avatar-container_size-208___k7SkJ_8-0-0","avatarContainerSize208":"magritte-avatar-container_size-208___k7SkJ_8-0-0","avatar-skeleton-208":"magritte-avatar-skeleton-208___ybqJw_8-0-0","avatarSkeleton208":"magritte-avatar-skeleton-208___ybqJw_8-0-0","avatar_size-208":"magritte-avatar_size-208___rzfu3_8-0-0","avatarSize208":"magritte-avatar_size-208___rzfu3_8-0-0","avatar_shape-circle":"magritte-avatar_shape-circle___kEbru_8-0-0","avatarShapeCircle":"magritte-avatar_shape-circle___kEbru_8-0-0","avatar-skeleton-circle":"magritte-avatar-skeleton-circle___rD1E0_8-0-0","avatarSkeletonCircle":"magritte-avatar-skeleton-circle___rD1E0_8-0-0","avatar_style-color-1":"magritte-avatar_style-color-1___xXtkh_8-0-0","avatarStyleColor1":"magritte-avatar_style-color-1___xXtkh_8-0-0","avatar_style-color-2":"magritte-avatar_style-color-2___JraJd_8-0-0","avatarStyleColor2":"magritte-avatar_style-color-2___JraJd_8-0-0","avatar_style-color-3":"magritte-avatar_style-color-3___g29U3_8-0-0","avatarStyleColor3":"magritte-avatar_style-color-3___g29U3_8-0-0","avatar_style-color-4":"magritte-avatar_style-color-4___pHhmj_8-0-0","avatarStyleColor4":"magritte-avatar_style-color-4___pHhmj_8-0-0","avatar_style-color-5":"magritte-avatar_style-color-5___H9Ie3_8-0-0","avatarStyleColor5":"magritte-avatar_style-color-5___H9Ie3_8-0-0","avatar_style-color-6":"magritte-avatar_style-color-6___oODXO_8-0-0","avatarStyleColor6":"magritte-avatar_style-color-6___oODXO_8-0-0","avatar_style-color-7":"magritte-avatar_style-color-7___SfUBl_8-0-0","avatarStyleColor7":"magritte-avatar_style-color-7___SfUBl_8-0-0","avatar_style-color-8":"magritte-avatar_style-color-8___rlI6h_8-0-0","avatarStyleColor8":"magritte-avatar_style-color-8___rlI6h_8-0-0","avatar_style-color-9":"magritte-avatar_style-color-9___XQO4B_8-0-0","avatarStyleColor9":"magritte-avatar_style-color-9___XQO4B_8-0-0","avatar_style-primary":"magritte-avatar_style-primary___SvqU1_8-0-0","avatarStylePrimary":"magritte-avatar_style-primary___SvqU1_8-0-0","avatar_style-secondary":"magritte-avatar_style-secondary___C6MTH_8-0-0","avatarStyleSecondary":"magritte-avatar_style-secondary___C6MTH_8-0-0","avatar_style-tertiary":"magritte-avatar_style-tertiary___3o-90_8-0-0","avatarStyleTertiary":"magritte-avatar_style-tertiary___3o-90_8-0-0","avatar_style-accent-secondary":"magritte-avatar_style-accent-secondary___vc7Lb_8-0-0","avatarStyleAccentSecondary":"magritte-avatar_style-accent-secondary___vc7Lb_8-0-0","avatar_style-accent":"magritte-avatar_style-accent___LgPSo_8-0-0","avatarStyleAccent":"magritte-avatar_style-accent___LgPSo_8-0-0","avatar_style-positive-secondary":"magritte-avatar_style-positive-secondary___aQrkm_8-0-0","avatarStylePositiveSecondary":"magritte-avatar_style-positive-secondary___aQrkm_8-0-0","avatar_style-positive":"magritte-avatar_style-positive___bDzbE_8-0-0","avatarStylePositive":"magritte-avatar_style-positive___bDzbE_8-0-0","avatar_style-negative-secondary":"magritte-avatar_style-negative-secondary___GW7rc_8-0-0","avatarStyleNegativeSecondary":"magritte-avatar_style-negative-secondary___GW7rc_8-0-0","avatar_style-negative":"magritte-avatar_style-negative___xHHQb_8-0-0","avatarStyleNegative":"magritte-avatar_style-negative___xHHQb_8-0-0","avatar_style-warning-secondary":"magritte-avatar_style-warning-secondary___LKwiW_8-0-0","avatarStyleWarningSecondary":"magritte-avatar_style-warning-secondary___LKwiW_8-0-0","avatar_style-warning":"magritte-avatar_style-warning___7kKRS_8-0-0","avatarStyleWarning":"magritte-avatar_style-warning___7kKRS_8-0-0","avatar_style-special-secondary":"magritte-avatar_style-special-secondary___J2CwS_8-0-0","avatarStyleSpecialSecondary":"magritte-avatar_style-special-secondary___J2CwS_8-0-0","avatar_style-special":"magritte-avatar_style-special___gLmS0_8-0-0","avatarStyleSpecial":"magritte-avatar_style-special___gLmS0_8-0-0","avatar_style-dreamy-secondary":"magritte-avatar_style-dreamy-secondary___WoWcK_8-0-0","avatarStyleDreamySecondary":"magritte-avatar_style-dreamy-secondary___WoWcK_8-0-0","avatar_style-dreamy":"magritte-avatar_style-dreamy___-zjx5_8-0-0","avatarStyleDreamy":"magritte-avatar_style-dreamy___-zjx5_8-0-0","avatar_style-lovely-secondary":"magritte-avatar_style-lovely-secondary___YhzZk_8-0-0","avatarStyleLovelySecondary":"magritte-avatar_style-lovely-secondary___YhzZk_8-0-0","avatar_style-lovely":"magritte-avatar_style-lovely___wy3Zg_8-0-0","avatarStyleLovely":"magritte-avatar_style-lovely___wy3Zg_8-0-0","avatar_style-vivid-secondary":"magritte-avatar_style-vivid-secondary___EcBn1_8-0-0","avatarStyleVividSecondary":"magritte-avatar_style-vivid-secondary___EcBn1_8-0-0","avatar_style-vivid":"magritte-avatar_style-vivid___pkKc5_8-0-0","avatarStyleVivid":"magritte-avatar_style-vivid___pkKc5_8-0-0","avatar_style-body":"magritte-avatar_style-body___xmokY_8-0-0","avatarStyleBody":"magritte-avatar_style-body___xmokY_8-0-0","avatar_style-overlay":"magritte-avatar_style-overlay___0yWkS_8-0-0","avatarStyleOverlay":"magritte-avatar_style-overlay___0yWkS_8-0-0","avatar_style-overlay-action":"magritte-avatar_style-overlay-action___MMxS7_8-0-0","avatarStyleOverlayAction":"magritte-avatar_style-overlay-action___MMxS7_8-0-0","avatar_style-overlay-viewer":"magritte-avatar_style-overlay-viewer___4gNO7_8-0-0","avatarStyleOverlayViewer":"magritte-avatar_style-overlay-viewer___4gNO7_8-0-0","avatar_style-overlay-toolbar":"magritte-avatar_style-overlay-toolbar___0Lvuf_8-0-0","avatarStyleOverlayToolbar":"magritte-avatar_style-overlay-toolbar___0Lvuf_8-0-0","avatar_style-transparent":"magritte-avatar_style-transparent___KtjP8_8-0-0","avatarStyleTransparent":"magritte-avatar_style-transparent___KtjP8_8-0-0","avatar_style-constant":"magritte-avatar_style-constant___HVes8_8-0-0","avatarStyleConstant":"magritte-avatar_style-constant___HVes8_8-0-0","avatar_style-constant-secondary":"magritte-avatar_style-constant-secondary___tfuOw_8-0-0","avatarStyleConstantSecondary":"magritte-avatar_style-constant-secondary___tfuOw_8-0-0","avatar_style-inverse":"magritte-avatar_style-inverse___yupyU_8-0-0","avatarStyleInverse":"magritte-avatar_style-inverse___yupyU_8-0-0","avatar_style-inverse-secondary":"magritte-avatar_style-inverse-secondary___NdawN_8-0-0","avatarStyleInverseSecondary":"magritte-avatar_style-inverse-secondary___NdawN_8-0-0","avatar_mode-image":"magritte-avatar_mode-image___02zr1_8-0-0","avatarModeImage":"magritte-avatar_mode-image___02zr1_8-0-0","avatar_mode-letters":"magritte-avatar_mode-letters___ot4qB_8-0-0","avatarModeLetters":"magritte-avatar_mode-letters___ot4qB_8-0-0","avatar_mode-icon":"magritte-avatar_mode-icon___MYrlv_8-0-0","avatarModeIcon":"magritte-avatar_mode-icon___MYrlv_8-0-0","avatar_mode-placeholder":"magritte-avatar_mode-placeholder___6hOu7_8-0-0","avatarModePlaceholder":"magritte-avatar_mode-placeholder___6hOu7_8-0-0","avatar-image":"magritte-avatar-image___05p9Z_8-0-0","avatarImage":"magritte-avatar-image___05p9Z_8-0-0","avatar-image-hidden":"magritte-avatar-image-hidden___YNZ3i_8-0-0","avatarImageHidden":"magritte-avatar-image-hidden___YNZ3i_8-0-0","avatar-image-loading":"magritte-avatar-image-loading___0QWL4_8-0-0","avatarImageLoading":"magritte-avatar-image-loading___0QWL4_8-0-0","avatar-image-animation":"magritte-avatar-image-animation___Ik79H_8-0-0","avatarImageAnimation":"magritte-avatar-image-animation___Ik79H_8-0-0","image-animation":"magritte-image-animation___6Q4Qv_8-0-0","imageAnimation":"magritte-image-animation___6Q4Qv_8-0-0","avatar_with-online-badge-16":"magritte-avatar_with-online-badge-16___rhXhS_8-0-0","avatarWithOnlineBadge16":"magritte-avatar_with-online-badge-16___rhXhS_8-0-0","avatar-online-badge-16":"magritte-avatar-online-badge-16___Xtv3l_8-0-0","avatarOnlineBadge16":"magritte-avatar-online-badge-16___Xtv3l_8-0-0","avatar-online-badge_style_positive":"magritte-avatar-online-badge_style_positive___jHyv3_8-0-0","avatarOnlineBadgeStylePositive":"magritte-avatar-online-badge_style_positive___jHyv3_8-0-0","avatar-online-badge_style_constant":"magritte-avatar-online-badge_style_constant___-TeoG_8-0-0","avatarOnlineBadgeStyleConstant":"magritte-avatar-online-badge_style_constant___-TeoG_8-0-0","avatar-focus-border-16":"magritte-avatar-focus-border-16___dnSiS_8-0-0","avatarFocusBorder16":"magritte-avatar-focus-border-16___dnSiS_8-0-0","avatar_with-online-badge-24":"magritte-avatar_with-online-badge-24___helkM_8-0-0","avatarWithOnlineBadge24":"magritte-avatar_with-online-badge-24___helkM_8-0-0","avatar-online-badge-24":"magritte-avatar-online-badge-24___mjPKB_8-0-0","avatarOnlineBadge24":"magritte-avatar-online-badge-24___mjPKB_8-0-0","avatar-focus-border-24":"magritte-avatar-focus-border-24___wnJnb_8-0-0","avatarFocusBorder24":"magritte-avatar-focus-border-24___wnJnb_8-0-0","avatar_with-online-badge-40":"magritte-avatar_with-online-badge-40___Tckho_8-0-0","avatarWithOnlineBadge40":"magritte-avatar_with-online-badge-40___Tckho_8-0-0","avatar-online-badge-40":"magritte-avatar-online-badge-40___HRNTS_8-0-0","avatarOnlineBadge40":"magritte-avatar-online-badge-40___HRNTS_8-0-0","avatar-focus-border-40":"magritte-avatar-focus-border-40___Qn9NL_8-0-0","avatarFocusBorder40":"magritte-avatar-focus-border-40___Qn9NL_8-0-0","avatar_with-online-badge-48":"magritte-avatar_with-online-badge-48___BmWaC_8-0-0","avatarWithOnlineBadge48":"magritte-avatar_with-online-badge-48___BmWaC_8-0-0","avatar-online-badge-48":"magritte-avatar-online-badge-48___qPmD8_8-0-0","avatarOnlineBadge48":"magritte-avatar-online-badge-48___qPmD8_8-0-0","avatar-focus-border-48":"magritte-avatar-focus-border-48___Bc-lN_8-0-0","avatarFocusBorder48":"magritte-avatar-focus-border-48___Bc-lN_8-0-0","avatar_with-online-badge-80":"magritte-avatar_with-online-badge-80___jvmKS_8-0-0","avatarWithOnlineBadge80":"magritte-avatar_with-online-badge-80___jvmKS_8-0-0","avatar-online-badge-80":"magritte-avatar-online-badge-80___zA5Rd_8-0-0","avatarOnlineBadge80":"magritte-avatar-online-badge-80___zA5Rd_8-0-0","avatar-focus-border-80":"magritte-avatar-focus-border-80___1X1Aa_8-0-0","avatarFocusBorder80":"magritte-avatar-focus-border-80___1X1Aa_8-0-0","avatar_with-online-badge-96":"magritte-avatar_with-online-badge-96___r4E42_8-0-0","avatarWithOnlineBadge96":"magritte-avatar_with-online-badge-96___r4E42_8-0-0","avatar-online-badge-96":"magritte-avatar-online-badge-96___d6bm-_8-0-0","avatarOnlineBadge96":"magritte-avatar-online-badge-96___d6bm-_8-0-0","avatar-focus-border-96":"magritte-avatar-focus-border-96___TVpd0_8-0-0","avatarFocusBorder96":"magritte-avatar-focus-border-96___TVpd0_8-0-0","avatar_with-online-badge-120":"magritte-avatar_with-online-badge-120___oqIED_8-0-0","avatarWithOnlineBadge120":"magritte-avatar_with-online-badge-120___oqIED_8-0-0","avatar-online-badge-120":"magritte-avatar-online-badge-120___nmWqZ_8-0-0","avatarOnlineBadge120":"magritte-avatar-online-badge-120___nmWqZ_8-0-0","avatar-focus-border-120":"magritte-avatar-focus-border-120___vHWE1_8-0-0","avatarFocusBorder120":"magritte-avatar-focus-border-120___vHWE1_8-0-0","avatar_with-online-badge-208":"magritte-avatar_with-online-badge-208___AS6Lk_8-0-0","avatarWithOnlineBadge208":"magritte-avatar_with-online-badge-208___AS6Lk_8-0-0","avatar-online-badge-208":"magritte-avatar-online-badge-208___m4hXQ_8-0-0","avatarOnlineBadge208":"magritte-avatar-online-badge-208___m4hXQ_8-0-0","avatar-focus-border-208":"magritte-avatar-focus-border-208___V6We2_8-0-0","avatarFocusBorder208":"magritte-avatar-focus-border-208___V6We2_8-0-0","female":"magritte-female___fSeyG_8-0-0","male":"magritte-male___HlZ30_8-0-0","city":"magritte-city___jNvGf_8-0-0","undefined":"magritte-undefined___E7573_8-0-0"};
|
|
7
|
+
|
|
8
|
+
const AvatarSkeleton = ({ Component: Avatar,
|
|
9
|
+
// skeleton props
|
|
10
|
+
width, height, borderRadius, inline, additionalClass, loading, ...avatarProps }) => {
|
|
11
|
+
return (jsx(Skeleton, { loading: loading, additionalClass: classnames({
|
|
12
|
+
[styles[`avatar-skeleton-${avatarProps.size}`]]: avatarProps.size,
|
|
13
|
+
[styles.avatarSkeletonCircle]: avatarProps.shapeCircle,
|
|
14
|
+
}), children: jsx(Avatar, { ...avatarProps }) }));
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export { AvatarSkeleton as A, styles as s };
|
|
18
|
+
//# sourceMappingURL=Skeleton-P_LoJXsU.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton-
|
|
1
|
+
{"version":3,"file":"Skeleton-P_LoJXsU.js","sources":["../src/Skeleton.tsx"],"sourcesContent":["import classnames from 'classnames';\n\nimport { AvatarProps } from '@hh.ru/magritte-ui-avatar/types';\nimport { IncompleteSkeletonComponent, Skeleton } from '@hh.ru/magritte-ui-skeleton';\n\nimport styles from './avatar.less';\n\nexport const AvatarSkeleton: IncompleteSkeletonComponent<AvatarProps> = ({\n Component: Avatar,\n\n // skeleton props\n width,\n height,\n borderRadius,\n inline,\n additionalClass,\n loading,\n\n ...avatarProps\n}) => {\n return (\n <Skeleton\n loading={loading}\n additionalClass={classnames({\n [styles[`avatar-skeleton-${avatarProps.size}`]]: avatarProps.size,\n [styles.avatarSkeletonCircle]: avatarProps.shapeCircle,\n })}\n >\n <Avatar {...avatarProps} />\n </Skeleton>\n );\n};\n"],"names":["_jsx"],"mappings":";;;;;;MAOa,cAAc,GAA6C,CAAC,EACrE,SAAS,EAAE,MAAM;AAEjB;AACA,KAAK,EACL,MAAM,EACN,YAAY,EACZ,MAAM,EACN,eAAe,EACf,OAAO,EAEP,GAAG,WAAW,EACjB,KAAI;IACD,QACIA,GAAC,CAAA,QAAQ,EACL,EAAA,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,UAAU,CAAC;AACxB,YAAA,CAAC,MAAM,CAAC,CAAmB,gBAAA,EAAA,WAAW,CAAC,IAAI,CAAE,CAAA,CAAC,GAAG,WAAW,CAAC,IAAI;AACjE,YAAA,CAAC,MAAM,CAAC,oBAAoB,GAAG,WAAW,CAAC,WAAW;SACzD,CAAC,EAAA,QAAA,EAEFA,IAAC,MAAM,EAAA,EAAA,GAAK,WAAW,EAAI,CAAA,EAAA,CACpB,EACb;AACN;;;;"}
|
package/Skeleton.js
CHANGED
|
@@ -2,5 +2,5 @@ import './index.css';
|
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
import 'classnames';
|
|
4
4
|
import '@hh.ru/magritte-ui-skeleton';
|
|
5
|
-
export { A as AvatarSkeleton } from './Skeleton-
|
|
5
|
+
export { A as AvatarSkeleton } from './Skeleton-P_LoJXsU.js';
|
|
6
6
|
//# sourceMappingURL=Skeleton.js.map
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|