@atlaskit/avatar 21.1.9 → 21.2.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/CHANGELOG.md +17 -0
- package/dist/cjs/Avatar.js +4 -5
- package/dist/cjs/IconWrapper.js +4 -1
- package/dist/cjs/Presence.js +4 -1
- package/dist/cjs/Status.js +4 -1
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/Avatar.js +5 -5
- package/dist/es2019/IconWrapper.js +4 -1
- package/dist/es2019/Presence.js +4 -1
- package/dist/es2019/Status.js +4 -1
- package/dist/es2019/version.json +1 -1
- package/dist/esm/Avatar.js +5 -6
- package/dist/esm/IconWrapper.js +4 -1
- package/dist/esm/Presence.js +4 -1
- package/dist/esm/Status.js +4 -1
- package/dist/esm/version.json +1 -1
- package/dist/types/IconWrapper.d.ts +1 -0
- package/package.json +2 -3
- package/report.api.md +13 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @atlaskit/avatar
|
|
2
2
|
|
|
3
|
+
## 21.2.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`51928bbe70c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/51928bbe70c) - [ux] Removes status/presence indicator images from the accessibility tree for the Avatar component.
|
|
8
|
+
|
|
9
|
+
### Patch Changes
|
|
10
|
+
|
|
11
|
+
- [`64f11e50567`](https://bitbucket.org/atlassian/atlassian-frontend/commits/64f11e50567) - [ux] Adds accessible name to standalone Presence and Status components.
|
|
12
|
+
- [`0ecd2a2238b`](https://bitbucket.org/atlassian/atlassian-frontend/commits/0ecd2a2238b) - Add more precision to custom component check for status and presence
|
|
13
|
+
|
|
14
|
+
## 21.1.10
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- [`5aab9bfc96c`](https://bitbucket.org/atlassian/atlassian-frontend/commits/5aab9bfc96c) - Replace gridSize in spacing values with corresponding spacing tokens
|
|
19
|
+
|
|
3
20
|
## 21.1.9
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
package/dist/cjs/Avatar.js
CHANGED
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
8
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
9
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
|
|
10
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
10
|
var _react = require("react");
|
|
12
11
|
var _react2 = require("@emotion/react");
|
|
@@ -21,7 +20,7 @@ var _templateObject;
|
|
|
21
20
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
22
21
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
23
22
|
var packageName = "@atlaskit/avatar";
|
|
24
|
-
var packageVersion = "21.
|
|
23
|
+
var packageVersion = "21.2.0";
|
|
25
24
|
var getStyles = function getStyles(css, _ref) {
|
|
26
25
|
var size = _ref.size,
|
|
27
26
|
radius = _ref.radius,
|
|
@@ -32,7 +31,7 @@ var getStyles = function getStyles(css, _ref) {
|
|
|
32
31
|
isInteractive = _ref.isInteractive,
|
|
33
32
|
isDisabled = _ref.isDisabled;
|
|
34
33
|
return (//eslint-disable-next-line @repo/internal/react/no-css-string-literals
|
|
35
|
-
css(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: ", "px;\n width: ", "px;\n align-items: stretch;\n background-color: ", ";\n border-radius: ", ";\n box-sizing: content-box;\n cursor: inherit;\n display: flex;\n flex-direction: column;\n justify-content: center;\n outline: none;\n overflow: hidden;\n position: static;\n transform: translateZ(0);\n transition: transform 200ms, opacity 200ms;\n box-shadow: 0 0 0 ", "px ", ";\n border: none;\n margin: ", "
|
|
34
|
+
css(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n height: ", "px;\n width: ", "px;\n align-items: stretch;\n background-color: ", ";\n border-radius: ", ";\n box-sizing: content-box;\n cursor: inherit;\n display: flex;\n flex-direction: column;\n justify-content: center;\n outline: none;\n overflow: hidden;\n position: static;\n transform: translateZ(0);\n transition: transform 200ms, opacity 200ms;\n box-shadow: 0 0 0 ", "px ", ";\n border: none;\n margin: ", ";\n padding: ", ";\n\n /* Added font-size and font-family styles to fix alignment issue in firefox for interactive button avatar */\n font-size: inherit;\n font-family: inherit;\n\n &::-moz-focus-inner {\n border: 0;\n margin: ", ";\n padding: ", ";\n }\n\n &::after {\n background-color: transparent;\n bottom: 0px;\n\n /* Added border-radius style to fix hover issue in safari */\n border-radius: ", ";\n content: ' ';\n left: 0px;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n right: 0px;\n top: 0px;\n transition: opacity 200ms;\n width: 100%;\n }\n\n ", "\n\n ", "\n\n ", "\n "])), size, size, borderColor, appearance === 'circle' ? '50%' : "".concat(radius, "px"), _constants.BORDER_WIDTH, borderColor, "var(--ds-space-025, 2px)", "var(--ds-space-0, 0px)", "var(--ds-space-0, 0px)", "var(--ds-space-0, 0px)", appearance === 'circle' ? '50%' : "".concat(radius, "px"), stackIndex && "position: relative;", isInteractive && "\n cursor: pointer;\n\n :focus {\n outline: none;\n box-shadow: 0 0 0 ".concat(_constants.BORDER_WIDTH, "px ", "var(--ds-border-focused, ".concat(_colors.B300, ")"), "\n }\n\n :hover {\n &::after {\n background-color: ", "var(--ds-interaction-hovered, ".concat(_colors.N70A, ")"), ";\n opacity: 1;\n }\n }\n\n :active {\n &::after {\n background-color: ", "var(--ds-interaction-pressed, ".concat(_colors.N70A, ")"), ";\n opacity: 1;\n }\n }\n\n :active {\n transform: scale(").concat(_constants.ACTIVE_SCALE_FACTOR, ");\n }\n\n @media screen and (forced-colors: active) {\n &:focus-visible {\n outline: 1px solid\n }\n }\n "), isDisabled && "\n cursor: not-allowed;\n\n &::after {\n opacity: ".concat("var(--ds-opacity-disabled, 0.7)", ";\n pointer-events: none;\n background-color: ", "var(--ds-surface, ".concat(_colors.N0, ")"), ";\n }\n "))
|
|
36
35
|
);
|
|
37
36
|
};
|
|
38
37
|
|
|
@@ -66,8 +65,8 @@ var Avatar = /*#__PURE__*/(0, _react.forwardRef)(function (_ref2, ref) {
|
|
|
66
65
|
testId = _ref2.testId;
|
|
67
66
|
var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
|
|
68
67
|
createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
|
|
69
|
-
var customPresenceNode = (0,
|
|
70
|
-
var customStatusNode = (0,
|
|
68
|
+
var customPresenceNode = /*#__PURE__*/(0, _react.isValidElement)(presence) ? presence : null;
|
|
69
|
+
var customStatusNode = /*#__PURE__*/(0, _react.isValidElement)(status) ? status : null;
|
|
71
70
|
var isValidIconSize = size !== 'xxlarge' && size !== 'xsmall';
|
|
72
71
|
var lastAnalytics = (0, _react.useRef)(analyticsContext);
|
|
73
72
|
(0, _react.useEffect)(function () {
|
package/dist/cjs/IconWrapper.js
CHANGED
|
@@ -29,9 +29,12 @@ var iconWrapperStyles = (0, _react.css)({
|
|
|
29
29
|
var IconWrapper = function IconWrapper(_ref) {
|
|
30
30
|
var _ref$bgColor = _ref.bgColor,
|
|
31
31
|
bgColor = _ref$bgColor === void 0 ? "var(--ds-surface-overlay, ".concat((0, _colors.background)(), ")") : _ref$bgColor,
|
|
32
|
-
children = _ref.children
|
|
32
|
+
children = _ref.children,
|
|
33
|
+
label = _ref.label;
|
|
33
34
|
return (0, _react.jsx)("span", {
|
|
35
|
+
"aria-label": label || undefined,
|
|
34
36
|
css: iconWrapperStyles,
|
|
37
|
+
role: label ? 'img' : 'presentation',
|
|
35
38
|
style: {
|
|
36
39
|
border: "".concat(_constants.BORDER_WIDTH, "px solid ").concat(bgColor),
|
|
37
40
|
backgroundColor: bgColor
|
package/dist/cjs/Presence.js
CHANGED
|
@@ -67,8 +67,10 @@ var AvatarPresence = function AvatarPresence(_ref) {
|
|
|
67
67
|
children = _ref.children,
|
|
68
68
|
presence = _ref.presence;
|
|
69
69
|
return /*#__PURE__*/_react.default.createElement(_IconWrapper.default, {
|
|
70
|
-
bgColor: borderColor
|
|
70
|
+
bgColor: borderColor,
|
|
71
|
+
label: typeof presence === 'string' ? presence : undefined
|
|
71
72
|
}, presence ? /*#__PURE__*/_react.default.createElement("svg", {
|
|
73
|
+
"aria-hidden": "true",
|
|
72
74
|
height: "100%",
|
|
73
75
|
version: "1.1",
|
|
74
76
|
viewBox: "0 0 8 8",
|
|
@@ -92,6 +94,7 @@ var PresenceWrapper = function PresenceWrapper(_ref2) {
|
|
|
92
94
|
testId = _ref2.testId;
|
|
93
95
|
var position = appearance === 'square' ? -4 : _constants.ICON_OFFSET[size];
|
|
94
96
|
return /*#__PURE__*/_react.default.createElement("span", {
|
|
97
|
+
"aria-hidden": "true",
|
|
95
98
|
"data-testid": testId && "".concat(testId, "--presence"),
|
|
96
99
|
style: {
|
|
97
100
|
pointerEvents: 'none',
|
package/dist/cjs/Status.js
CHANGED
|
@@ -65,8 +65,10 @@ var AvatarStatus = function AvatarStatus(_ref) {
|
|
|
65
65
|
children = _ref.children,
|
|
66
66
|
status = _ref.status;
|
|
67
67
|
return /*#__PURE__*/_react.default.createElement(_IconWrapper.default, {
|
|
68
|
-
bgColor: borderColor
|
|
68
|
+
bgColor: borderColor,
|
|
69
|
+
label: typeof status === 'string' ? status : undefined
|
|
69
70
|
}, status ? /*#__PURE__*/_react.default.createElement("svg", {
|
|
71
|
+
"aria-hidden": "true",
|
|
70
72
|
height: "100%",
|
|
71
73
|
version: "1.1",
|
|
72
74
|
viewBox: "0 0 8 8",
|
|
@@ -90,6 +92,7 @@ var StatusWrapper = function StatusWrapper(_ref2) {
|
|
|
90
92
|
testId = _ref2.testId;
|
|
91
93
|
var position = appearance === 'square' ? 0 : _constants.ICON_OFFSET[size];
|
|
92
94
|
return /*#__PURE__*/_react.default.createElement("span", {
|
|
95
|
+
"aria-hidden": "true",
|
|
93
96
|
"data-testid": testId && "".concat(testId, "--status"),
|
|
94
97
|
style: {
|
|
95
98
|
position: 'absolute',
|
package/dist/cjs/version.json
CHANGED
package/dist/es2019/Avatar.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** @jsx jsx */
|
|
2
2
|
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
3
|
-
import { createElement, forwardRef, useCallback, useEffect, useRef } from 'react';
|
|
3
|
+
import { createElement, forwardRef, isValidElement, useCallback, useEffect, useRef } from 'react';
|
|
4
4
|
import { ClassNames, jsx } from '@emotion/react';
|
|
5
5
|
import { useAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
6
6
|
import { B300, N0, N70A } from '@atlaskit/theme/colors';
|
|
@@ -10,7 +10,7 @@ import { PresenceWrapper } from './Presence';
|
|
|
10
10
|
import { StatusWrapper } from './Status';
|
|
11
11
|
import { getButtonProps, getCustomElement, getLinkProps } from './utilities';
|
|
12
12
|
const packageName = "@atlaskit/avatar";
|
|
13
|
-
const packageVersion = "21.
|
|
13
|
+
const packageVersion = "21.2.0";
|
|
14
14
|
const getStyles = (css, {
|
|
15
15
|
size,
|
|
16
16
|
radius,
|
|
@@ -39,7 +39,7 @@ css`
|
|
|
39
39
|
transition: transform 200ms, opacity 200ms;
|
|
40
40
|
box-shadow: 0 0 0 ${BORDER_WIDTH}px ${borderColor};
|
|
41
41
|
border: none;
|
|
42
|
-
margin: ${
|
|
42
|
+
margin: ${"var(--ds-space-025, 2px)"};
|
|
43
43
|
padding: ${"var(--ds-space-0, 0px)"};
|
|
44
44
|
|
|
45
45
|
/* Added font-size and font-family styles to fix alignment issue in firefox for interactive button avatar */
|
|
@@ -145,8 +145,8 @@ const Avatar = /*#__PURE__*/forwardRef(({
|
|
|
145
145
|
const {
|
|
146
146
|
createAnalyticsEvent
|
|
147
147
|
} = useAnalyticsEvents();
|
|
148
|
-
const customPresenceNode =
|
|
149
|
-
const customStatusNode =
|
|
148
|
+
const customPresenceNode = /*#__PURE__*/isValidElement(presence) ? presence : null;
|
|
149
|
+
const customStatusNode = /*#__PURE__*/isValidElement(status) ? status : null;
|
|
150
150
|
const isValidIconSize = size !== 'xxlarge' && size !== 'xsmall';
|
|
151
151
|
const lastAnalytics = useRef(analyticsContext);
|
|
152
152
|
useEffect(() => {
|
|
@@ -22,9 +22,12 @@ const iconWrapperStyles = css({
|
|
|
22
22
|
*/
|
|
23
23
|
const IconWrapper = ({
|
|
24
24
|
bgColor = `var(--ds-surface-overlay, ${background()})`,
|
|
25
|
-
children
|
|
25
|
+
children,
|
|
26
|
+
label
|
|
26
27
|
}) => jsx("span", {
|
|
28
|
+
"aria-label": label || undefined,
|
|
27
29
|
css: iconWrapperStyles,
|
|
30
|
+
role: label ? 'img' : 'presentation',
|
|
28
31
|
style: {
|
|
29
32
|
border: `${BORDER_WIDTH}px solid ${bgColor}`,
|
|
30
33
|
backgroundColor: bgColor
|
package/dist/es2019/Presence.js
CHANGED
|
@@ -56,8 +56,10 @@ const AvatarPresence = ({
|
|
|
56
56
|
children,
|
|
57
57
|
presence
|
|
58
58
|
}) => /*#__PURE__*/React.createElement(IconWrapper, {
|
|
59
|
-
bgColor: borderColor
|
|
59
|
+
bgColor: borderColor,
|
|
60
|
+
label: typeof presence === 'string' ? presence : undefined
|
|
60
61
|
}, presence ? /*#__PURE__*/React.createElement("svg", {
|
|
62
|
+
"aria-hidden": "true",
|
|
61
63
|
height: "100%",
|
|
62
64
|
version: "1.1",
|
|
63
65
|
viewBox: "0 0 8 8",
|
|
@@ -80,6 +82,7 @@ export const PresenceWrapper = ({
|
|
|
80
82
|
}) => {
|
|
81
83
|
const position = appearance === 'square' ? -4 : ICON_OFFSET[size];
|
|
82
84
|
return /*#__PURE__*/React.createElement("span", {
|
|
85
|
+
"aria-hidden": "true",
|
|
83
86
|
"data-testid": testId && `${testId}--presence`,
|
|
84
87
|
style: {
|
|
85
88
|
pointerEvents: 'none',
|
package/dist/es2019/Status.js
CHANGED
|
@@ -54,8 +54,10 @@ const AvatarStatus = ({
|
|
|
54
54
|
children,
|
|
55
55
|
status
|
|
56
56
|
}) => /*#__PURE__*/React.createElement(IconWrapper, {
|
|
57
|
-
bgColor: borderColor
|
|
57
|
+
bgColor: borderColor,
|
|
58
|
+
label: typeof status === 'string' ? status : undefined
|
|
58
59
|
}, status ? /*#__PURE__*/React.createElement("svg", {
|
|
60
|
+
"aria-hidden": "true",
|
|
59
61
|
height: "100%",
|
|
60
62
|
version: "1.1",
|
|
61
63
|
viewBox: "0 0 8 8",
|
|
@@ -78,6 +80,7 @@ export const StatusWrapper = ({
|
|
|
78
80
|
}) => {
|
|
79
81
|
const position = appearance === 'square' ? 0 : ICON_OFFSET[size];
|
|
80
82
|
return /*#__PURE__*/React.createElement("span", {
|
|
83
|
+
"aria-hidden": "true",
|
|
81
84
|
"data-testid": testId && `${testId}--status`,
|
|
82
85
|
style: {
|
|
83
86
|
position: 'absolute',
|
package/dist/es2019/version.json
CHANGED
package/dist/esm/Avatar.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
2
|
-
import _typeof from "@babel/runtime/helpers/typeof";
|
|
3
2
|
import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
|
|
4
3
|
var _templateObject;
|
|
5
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
6
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
7
6
|
/** @jsx jsx */
|
|
8
7
|
// eslint-disable-next-line @repo/internal/fs/filename-pattern-match
|
|
9
|
-
import { createElement, forwardRef, useCallback, useEffect, useRef } from 'react';
|
|
8
|
+
import { createElement, forwardRef, isValidElement, useCallback, useEffect, useRef } from 'react';
|
|
10
9
|
import { ClassNames, jsx } from '@emotion/react';
|
|
11
10
|
import { useAnalyticsEvents } from '@atlaskit/analytics-next';
|
|
12
11
|
import { B300, N0, N70A } from '@atlaskit/theme/colors';
|
|
@@ -16,7 +15,7 @@ import { PresenceWrapper } from './Presence';
|
|
|
16
15
|
import { StatusWrapper } from './Status';
|
|
17
16
|
import { getButtonProps, getCustomElement, getLinkProps } from './utilities';
|
|
18
17
|
var packageName = "@atlaskit/avatar";
|
|
19
|
-
var packageVersion = "21.
|
|
18
|
+
var packageVersion = "21.2.0";
|
|
20
19
|
var getStyles = function getStyles(css, _ref) {
|
|
21
20
|
var size = _ref.size,
|
|
22
21
|
radius = _ref.radius,
|
|
@@ -27,7 +26,7 @@ var getStyles = function getStyles(css, _ref) {
|
|
|
27
26
|
isInteractive = _ref.isInteractive,
|
|
28
27
|
isDisabled = _ref.isDisabled;
|
|
29
28
|
return (//eslint-disable-next-line @repo/internal/react/no-css-string-literals
|
|
30
|
-
css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: ", "px;\n width: ", "px;\n align-items: stretch;\n background-color: ", ";\n border-radius: ", ";\n box-sizing: content-box;\n cursor: inherit;\n display: flex;\n flex-direction: column;\n justify-content: center;\n outline: none;\n overflow: hidden;\n position: static;\n transform: translateZ(0);\n transition: transform 200ms, opacity 200ms;\n box-shadow: 0 0 0 ", "px ", ";\n border: none;\n margin: ", "
|
|
29
|
+
css(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: ", "px;\n width: ", "px;\n align-items: stretch;\n background-color: ", ";\n border-radius: ", ";\n box-sizing: content-box;\n cursor: inherit;\n display: flex;\n flex-direction: column;\n justify-content: center;\n outline: none;\n overflow: hidden;\n position: static;\n transform: translateZ(0);\n transition: transform 200ms, opacity 200ms;\n box-shadow: 0 0 0 ", "px ", ";\n border: none;\n margin: ", ";\n padding: ", ";\n\n /* Added font-size and font-family styles to fix alignment issue in firefox for interactive button avatar */\n font-size: inherit;\n font-family: inherit;\n\n &::-moz-focus-inner {\n border: 0;\n margin: ", ";\n padding: ", ";\n }\n\n &::after {\n background-color: transparent;\n bottom: 0px;\n\n /* Added border-radius style to fix hover issue in safari */\n border-radius: ", ";\n content: ' ';\n left: 0px;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n right: 0px;\n top: 0px;\n transition: opacity 200ms;\n width: 100%;\n }\n\n ", "\n\n ", "\n\n ", "\n "])), size, size, borderColor, appearance === 'circle' ? '50%' : "".concat(radius, "px"), BORDER_WIDTH, borderColor, "var(--ds-space-025, 2px)", "var(--ds-space-0, 0px)", "var(--ds-space-0, 0px)", "var(--ds-space-0, 0px)", appearance === 'circle' ? '50%' : "".concat(radius, "px"), stackIndex && "position: relative;", isInteractive && "\n cursor: pointer;\n\n :focus {\n outline: none;\n box-shadow: 0 0 0 ".concat(BORDER_WIDTH, "px ", "var(--ds-border-focused, ".concat(B300, ")"), "\n }\n\n :hover {\n &::after {\n background-color: ", "var(--ds-interaction-hovered, ".concat(N70A, ")"), ";\n opacity: 1;\n }\n }\n\n :active {\n &::after {\n background-color: ", "var(--ds-interaction-pressed, ".concat(N70A, ")"), ";\n opacity: 1;\n }\n }\n\n :active {\n transform: scale(").concat(ACTIVE_SCALE_FACTOR, ");\n }\n\n @media screen and (forced-colors: active) {\n &:focus-visible {\n outline: 1px solid\n }\n }\n "), isDisabled && "\n cursor: not-allowed;\n\n &::after {\n opacity: ".concat("var(--ds-opacity-disabled, 0.7)", ";\n pointer-events: none;\n background-color: ", "var(--ds-surface, ".concat(N0, ")"), ";\n }\n "))
|
|
31
30
|
);
|
|
32
31
|
};
|
|
33
32
|
|
|
@@ -61,8 +60,8 @@ var Avatar = /*#__PURE__*/forwardRef(function (_ref2, ref) {
|
|
|
61
60
|
testId = _ref2.testId;
|
|
62
61
|
var _useAnalyticsEvents = useAnalyticsEvents(),
|
|
63
62
|
createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
|
|
64
|
-
var customPresenceNode =
|
|
65
|
-
var customStatusNode =
|
|
63
|
+
var customPresenceNode = /*#__PURE__*/isValidElement(presence) ? presence : null;
|
|
64
|
+
var customStatusNode = /*#__PURE__*/isValidElement(status) ? status : null;
|
|
66
65
|
var isValidIconSize = size !== 'xxlarge' && size !== 'xsmall';
|
|
67
66
|
var lastAnalytics = useRef(analyticsContext);
|
|
68
67
|
useEffect(function () {
|
package/dist/esm/IconWrapper.js
CHANGED
|
@@ -23,9 +23,12 @@ var iconWrapperStyles = css({
|
|
|
23
23
|
var IconWrapper = function IconWrapper(_ref) {
|
|
24
24
|
var _ref$bgColor = _ref.bgColor,
|
|
25
25
|
bgColor = _ref$bgColor === void 0 ? "var(--ds-surface-overlay, ".concat(background(), ")") : _ref$bgColor,
|
|
26
|
-
children = _ref.children
|
|
26
|
+
children = _ref.children,
|
|
27
|
+
label = _ref.label;
|
|
27
28
|
return jsx("span", {
|
|
29
|
+
"aria-label": label || undefined,
|
|
28
30
|
css: iconWrapperStyles,
|
|
31
|
+
role: label ? 'img' : 'presentation',
|
|
29
32
|
style: {
|
|
30
33
|
border: "".concat(BORDER_WIDTH, "px solid ").concat(bgColor),
|
|
31
34
|
backgroundColor: bgColor
|
package/dist/esm/Presence.js
CHANGED
|
@@ -56,8 +56,10 @@ var AvatarPresence = function AvatarPresence(_ref) {
|
|
|
56
56
|
children = _ref.children,
|
|
57
57
|
presence = _ref.presence;
|
|
58
58
|
return /*#__PURE__*/React.createElement(IconWrapper, {
|
|
59
|
-
bgColor: borderColor
|
|
59
|
+
bgColor: borderColor,
|
|
60
|
+
label: typeof presence === 'string' ? presence : undefined
|
|
60
61
|
}, presence ? /*#__PURE__*/React.createElement("svg", {
|
|
62
|
+
"aria-hidden": "true",
|
|
61
63
|
height: "100%",
|
|
62
64
|
version: "1.1",
|
|
63
65
|
viewBox: "0 0 8 8",
|
|
@@ -80,6 +82,7 @@ export var PresenceWrapper = function PresenceWrapper(_ref2) {
|
|
|
80
82
|
testId = _ref2.testId;
|
|
81
83
|
var position = appearance === 'square' ? -4 : ICON_OFFSET[size];
|
|
82
84
|
return /*#__PURE__*/React.createElement("span", {
|
|
85
|
+
"aria-hidden": "true",
|
|
83
86
|
"data-testid": testId && "".concat(testId, "--presence"),
|
|
84
87
|
style: {
|
|
85
88
|
pointerEvents: 'none',
|
package/dist/esm/Status.js
CHANGED
|
@@ -54,8 +54,10 @@ var AvatarStatus = function AvatarStatus(_ref) {
|
|
|
54
54
|
children = _ref.children,
|
|
55
55
|
status = _ref.status;
|
|
56
56
|
return /*#__PURE__*/React.createElement(IconWrapper, {
|
|
57
|
-
bgColor: borderColor
|
|
57
|
+
bgColor: borderColor,
|
|
58
|
+
label: typeof status === 'string' ? status : undefined
|
|
58
59
|
}, status ? /*#__PURE__*/React.createElement("svg", {
|
|
60
|
+
"aria-hidden": "true",
|
|
59
61
|
height: "100%",
|
|
60
62
|
version: "1.1",
|
|
61
63
|
viewBox: "0 0 8 8",
|
|
@@ -78,6 +80,7 @@ export var StatusWrapper = function StatusWrapper(_ref2) {
|
|
|
78
80
|
testId = _ref2.testId;
|
|
79
81
|
var position = appearance === 'square' ? 0 : ICON_OFFSET[size];
|
|
80
82
|
return /*#__PURE__*/React.createElement("span", {
|
|
83
|
+
"aria-hidden": "true",
|
|
81
84
|
"data-testid": testId && "".concat(testId, "--status"),
|
|
82
85
|
style: {
|
|
83
86
|
position: 'absolute',
|
package/dist/esm/version.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/avatar",
|
|
3
|
-
"version": "21.
|
|
3
|
+
"version": "21.2.0",
|
|
4
4
|
"description": "An avatar is a visual representation of a user or entity.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -15,7 +15,6 @@
|
|
|
15
15
|
"sideEffects": false,
|
|
16
16
|
"atlaskit:src": "src/index.ts",
|
|
17
17
|
"atlassian": {
|
|
18
|
-
"disableProductCI": true,
|
|
19
18
|
"team": "Design System Team",
|
|
20
19
|
"releaseModel": "scheduled",
|
|
21
20
|
"website": {
|
|
@@ -53,7 +52,7 @@
|
|
|
53
52
|
"@atlaskit/section-message": "^6.3.0",
|
|
54
53
|
"@atlaskit/ssr": "*",
|
|
55
54
|
"@atlaskit/toggle": "^12.5.0",
|
|
56
|
-
"@atlaskit/tooltip": "^17.
|
|
55
|
+
"@atlaskit/tooltip": "^17.7.0",
|
|
57
56
|
"@atlaskit/visual-regression": "*",
|
|
58
57
|
"@atlaskit/webdriver-runner": "*",
|
|
59
58
|
"@atlassian/atlassian-frontend-prettier-config-1.0.1": "npm:@atlassian/atlassian-frontend-prettier-config@1.0.1",
|
package/report.api.md
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
### Table of contents
|
|
9
9
|
|
|
10
10
|
- [Main Entry Types](#main-entry-types)
|
|
11
|
+
- [Peer Dependencies](#peer-dependencies)
|
|
11
12
|
|
|
12
13
|
### Main Entry Types
|
|
13
14
|
|
|
@@ -192,3 +193,15 @@ export type StatusType = ('approved' | 'declined' | 'locked') | ReactNode;
|
|
|
192
193
|
```
|
|
193
194
|
|
|
194
195
|
<!--SECTION END: Main Entry Types-->
|
|
196
|
+
|
|
197
|
+
### Peer Dependencies
|
|
198
|
+
|
|
199
|
+
<!--SECTION START: Peer Dependencies-->
|
|
200
|
+
|
|
201
|
+
```json
|
|
202
|
+
{
|
|
203
|
+
"react": "^16.8.0"
|
|
204
|
+
}
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
<!--SECTION END: Peer Dependencies-->
|