@atlaskit/avatar-group 12.3.2 → 12.4.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 +13 -9
- package/dist/cjs/components/avatar-group.js +31 -5
- package/dist/cjs/components/grid.js +3 -1
- package/dist/cjs/components/internal/utiles/handle-focus.js +2 -0
- package/dist/cjs/components/stack.js +3 -1
- package/dist/es2019/components/avatar-group.js +32 -5
- package/dist/es2019/components/grid.js +2 -0
- package/dist/es2019/components/internal/utiles/handle-focus.js +2 -0
- package/dist/es2019/components/stack.js +2 -0
- package/dist/esm/components/avatar-group.js +31 -5
- package/dist/esm/components/grid.js +3 -1
- package/dist/esm/components/internal/utiles/handle-focus.js +2 -0
- package/dist/esm/components/stack.js +3 -1
- package/dist/types/components/grid.d.ts +1 -0
- package/dist/types/components/stack.d.ts +1 -0
- package/dist/types-ts4.5/components/grid.d.ts +1 -0
- package/dist/types-ts4.5/components/stack.d.ts +1 -0
- package/package.json +8 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/avatar-group
|
|
2
2
|
|
|
3
|
+
## 12.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`ac5c6b99586dc`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/ac5c6b99586dc) -
|
|
8
|
+
Add accessible name to group overflow section.
|
|
9
|
+
|
|
10
|
+
## 12.3.3
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- Updated dependencies
|
|
15
|
+
|
|
3
16
|
## 12.3.2
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -1180,7 +1193,6 @@
|
|
|
1180
1193
|
reduced bundlesize.
|
|
1181
1194
|
|
|
1182
1195
|
**Change summary:**
|
|
1183
|
-
|
|
1184
1196
|
- `name` is now a required property of the `data` attribute. This was previously not required
|
|
1185
1197
|
simply because we forwarded avatars props. Names should always be supplied so that avatars can
|
|
1186
1198
|
be differentiated in a meaningful way (although they are not required to be unique).
|
|
@@ -1188,7 +1200,6 @@
|
|
|
1188
1200
|
- AvatarGroup now uses `@emotion`
|
|
1189
1201
|
|
|
1190
1202
|
**Misc.**
|
|
1191
|
-
|
|
1192
1203
|
- Fixed broken margin styling bug with `stack` groups
|
|
1193
1204
|
- Replaced `dropdown-menu` with a lighter and more performant `popup` component
|
|
1194
1205
|
- Removed custom `dropdown-menu` styling
|
|
@@ -1358,7 +1369,6 @@
|
|
|
1358
1369
|
|
|
1359
1370
|
Remove namespace imports from React, ReactDom, and PropTypes- Updated dependencies
|
|
1360
1371
|
[6548261c9a](https://bitbucket.org/atlassian/atlassian-frontend/commits/6548261c9a):
|
|
1361
|
-
|
|
1362
1372
|
- @atlaskit/docs@8.3.2
|
|
1363
1373
|
- @atlaskit/visual-regression@0.1.9
|
|
1364
1374
|
- @atlaskit/avatar@17.1.7
|
|
@@ -1537,13 +1547,11 @@
|
|
|
1537
1547
|
## 4.0.1
|
|
1538
1548
|
|
|
1539
1549
|
- [patch][21854842b5](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/21854842b5):
|
|
1540
|
-
|
|
1541
1550
|
- Clean couple of TODO's that were already done
|
|
1542
1551
|
|
|
1543
1552
|
## 4.0.0
|
|
1544
1553
|
|
|
1545
1554
|
- [major][7c17b35107](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/7c17b35107):
|
|
1546
|
-
|
|
1547
1555
|
- Updates react and react-dom peer dependencies to react@^16.8.0 and react-dom@^16.8.0. To use
|
|
1548
1556
|
this package, please ensure you use at least this version of react and react-dom.
|
|
1549
1557
|
|
|
@@ -1579,7 +1587,6 @@
|
|
|
1579
1587
|
## 3.0.2
|
|
1580
1588
|
|
|
1581
1589
|
- [patch][ea173a3ee2](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/ea173a3ee2):
|
|
1582
|
-
|
|
1583
1590
|
- Internal changes only. Component is now SSR compatible. If server side rendered, Avatar Images
|
|
1584
1591
|
will begin to load immediately; before client bundle is ready. If this is undesired, `imageUrl`
|
|
1585
1592
|
can be passed in after component is mounted.
|
|
@@ -1600,7 +1607,6 @@
|
|
|
1600
1607
|
## 3.0.0
|
|
1601
1608
|
|
|
1602
1609
|
- [major][76299208e6](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/76299208e6):
|
|
1603
|
-
|
|
1604
1610
|
- Drop ES5 from all the flow modules
|
|
1605
1611
|
|
|
1606
1612
|
### Dropping CJS support in all @atlaskit packages
|
|
@@ -1645,13 +1651,11 @@
|
|
|
1645
1651
|
## 2.1.12
|
|
1646
1652
|
|
|
1647
1653
|
- [patch][3a9b559382](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/3a9b559382):
|
|
1648
|
-
|
|
1649
1654
|
- Stopping href from being passed down to Avatar in DropdownMenu rendered in AvatarGroup
|
|
1650
1655
|
|
|
1651
1656
|
## 2.1.11
|
|
1652
1657
|
|
|
1653
1658
|
- [patch][ed05c5c5d9](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/ed05c5c5d9):
|
|
1654
|
-
|
|
1655
1659
|
- Change border color of avatar in avatar group dropdown menu to transparent so that it does not
|
|
1656
1660
|
overlap with focus ring
|
|
1657
1661
|
|
|
@@ -16,6 +16,7 @@ var _avatar = _interopRequireDefault(require("@atlaskit/avatar"));
|
|
|
16
16
|
var _keycodes = require("@atlaskit/ds-lib/keycodes");
|
|
17
17
|
var _noop = _interopRequireDefault(require("@atlaskit/ds-lib/noop"));
|
|
18
18
|
var _useFocusEvent = _interopRequireDefault(require("@atlaskit/ds-lib/use-focus-event"));
|
|
19
|
+
var _useId = require("@atlaskit/ds-lib/use-id");
|
|
19
20
|
var _menu = require("@atlaskit/menu");
|
|
20
21
|
var _popup = _interopRequireDefault(require("@atlaskit/popup"));
|
|
21
22
|
var _tooltip = _interopRequireDefault(require("@atlaskit/tooltip"));
|
|
@@ -162,7 +163,7 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
162
163
|
};
|
|
163
164
|
return unbind;
|
|
164
165
|
}, [isFocused, isOpen, handleTriggerClicked]);
|
|
165
|
-
function renderMoreDropdown(max, total) {
|
|
166
|
+
function renderMoreDropdown(max, total, labelId) {
|
|
166
167
|
if (total <= max) {
|
|
167
168
|
return null;
|
|
168
169
|
}
|
|
@@ -220,7 +221,10 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
220
221
|
minWidth: 250,
|
|
221
222
|
maxHeight: 300,
|
|
222
223
|
setInitialFocusRef: isTriggeredUsingKeyboard ? setInitialFocusRef : undefined
|
|
223
|
-
}, /*#__PURE__*/_react.default.createElement(_menu.Section,
|
|
224
|
+
}, /*#__PURE__*/_react.default.createElement(_menu.Section, {
|
|
225
|
+
titleId: labelId,
|
|
226
|
+
testId: "".concat(testId, "--section")
|
|
227
|
+
}, data.slice(max).map(function (avatar, index) {
|
|
224
228
|
return getOverrides(overrides).AvatarGroupItem.render(_avatarGroupItem.default, {
|
|
225
229
|
avatar: avatar,
|
|
226
230
|
onAvatarClick: onAvatarClick,
|
|
@@ -243,8 +247,9 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
243
247
|
var max = maxCount === undefined || maxCount === 0 ? MAX_COUNT[appearance] : maxCount;
|
|
244
248
|
var total = data.length;
|
|
245
249
|
var maxAvatar = total > max ? max - 1 : max;
|
|
246
|
-
var
|
|
247
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
250
|
+
var groupId = (0, _useId.useId)();
|
|
251
|
+
return appearance === 'stack' ? /*#__PURE__*/_react.default.createElement(_stack.default, {
|
|
252
|
+
id: groupId,
|
|
248
253
|
testId: testId && "".concat(testId, "--avatar-group"),
|
|
249
254
|
"aria-label": label,
|
|
250
255
|
size: size
|
|
@@ -265,6 +270,27 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
265
270
|
testId: testId && "".concat(testId, "--tooltip-").concat(idx),
|
|
266
271
|
position: tooltipPosition
|
|
267
272
|
}, finalAvatar) : finalAvatar;
|
|
268
|
-
}), renderMoreDropdown(+maxAvatar, total))
|
|
273
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId)) : /*#__PURE__*/_react.default.createElement(_grid.default, {
|
|
274
|
+
id: groupId,
|
|
275
|
+
testId: testId && "".concat(testId, "--avatar-group"),
|
|
276
|
+
"aria-label": label
|
|
277
|
+
}, data.slice(0, maxAvatar).map(function (avatarData, idx) {
|
|
278
|
+
var callback = avatarData.onClick || onAvatarClick;
|
|
279
|
+
var finalAvatar = getOverrides(overrides).Avatar.render(avatar, _objectSpread(_objectSpread({}, avatarData), {}, {
|
|
280
|
+
size: size,
|
|
281
|
+
borderColor: borderColor || avatarData.borderColor,
|
|
282
|
+
testId: testId && "".concat(testId, "--avatar-").concat(idx),
|
|
283
|
+
onClick: callback ? function (event, analyticsEvent) {
|
|
284
|
+
callback(event, analyticsEvent, idx);
|
|
285
|
+
} : undefined,
|
|
286
|
+
stackIndex: max - idx
|
|
287
|
+
}), idx);
|
|
288
|
+
return !isTooltipDisabled && !avatarData.isDisabled ? /*#__PURE__*/_react.default.createElement(_tooltip.default, {
|
|
289
|
+
key: (0, _utils.composeUniqueKey)(avatarData, idx),
|
|
290
|
+
content: avatarData.name,
|
|
291
|
+
testId: testId && "".concat(testId, "--tooltip-").concat(idx),
|
|
292
|
+
position: tooltipPosition
|
|
293
|
+
}, finalAvatar) : finalAvatar;
|
|
294
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId));
|
|
269
295
|
};
|
|
270
296
|
var _default = exports.default = AvatarGroup;
|
|
@@ -17,10 +17,12 @@ var listStyles = null;
|
|
|
17
17
|
var listStylesFlagged = null;
|
|
18
18
|
var listItemStyles = null;
|
|
19
19
|
var Grid = function Grid(_ref) {
|
|
20
|
-
var
|
|
20
|
+
var id = _ref.id,
|
|
21
|
+
children = _ref.children,
|
|
21
22
|
testId = _ref.testId,
|
|
22
23
|
label = _ref['aria-label'];
|
|
23
24
|
return /*#__PURE__*/React.createElement("ul", {
|
|
25
|
+
id: id,
|
|
24
26
|
"data-testid": testId,
|
|
25
27
|
"aria-label": label,
|
|
26
28
|
className: (0, _runtime.ax)(["_1e0c1txw _1bah1y6m _1n261g80 _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2r5cr _ahbqr5cr _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", (0, _platformFeatureFlags.fg)('platform-avatar-group-spacing-fix') && "_6rth1b66 _y4tiv77o _bozgv77o"])
|
|
@@ -23,6 +23,7 @@ var getNextFocusableElement = function getNextFocusableElement(refs, currentFocu
|
|
|
23
23
|
}
|
|
24
24
|
currentFocusedIdx++;
|
|
25
25
|
}
|
|
26
|
+
return;
|
|
26
27
|
};
|
|
27
28
|
|
|
28
29
|
/**
|
|
@@ -39,6 +40,7 @@ var getPrevFocusableElement = function getPrevFocusableElement(refs, currentFocu
|
|
|
39
40
|
}
|
|
40
41
|
currentFocusedIdx--;
|
|
41
42
|
}
|
|
43
|
+
return;
|
|
42
44
|
};
|
|
43
45
|
function handleFocus(refs) {
|
|
44
46
|
return function (e) {
|
|
@@ -17,11 +17,13 @@ var listSmallStyles = null;
|
|
|
17
17
|
var listItemStyles = null;
|
|
18
18
|
var listItemSmallStyles = null;
|
|
19
19
|
var Stack = function Stack(_ref) {
|
|
20
|
-
var
|
|
20
|
+
var id = _ref.id,
|
|
21
|
+
children = _ref.children,
|
|
21
22
|
testId = _ref.testId,
|
|
22
23
|
label = _ref['aria-label'],
|
|
23
24
|
size = _ref.size;
|
|
24
25
|
return /*#__PURE__*/React.createElement("ul", {
|
|
26
|
+
id: id,
|
|
25
27
|
"data-testid": testId,
|
|
26
28
|
"aria-label": label,
|
|
27
29
|
className: (0, _runtime.ax)(["_1e0c1txw _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2u2gc _ahbqze3t _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", size === 'small' && (0, _platformFeatureFlags.fg)('platform-avatar-group-spacing-fix') && "_12l21b66"])
|
|
@@ -5,6 +5,7 @@ import Avatar from '@atlaskit/avatar';
|
|
|
5
5
|
import { KEY_DOWN } from '@atlaskit/ds-lib/keycodes';
|
|
6
6
|
import noop from '@atlaskit/ds-lib/noop';
|
|
7
7
|
import useFocus from '@atlaskit/ds-lib/use-focus-event';
|
|
8
|
+
import { useId } from '@atlaskit/ds-lib/use-id';
|
|
8
9
|
import { Section } from '@atlaskit/menu';
|
|
9
10
|
import Popup from '@atlaskit/popup';
|
|
10
11
|
import Tooltip from '@atlaskit/tooltip';
|
|
@@ -130,7 +131,7 @@ const AvatarGroup = ({
|
|
|
130
131
|
};
|
|
131
132
|
return unbind;
|
|
132
133
|
}, [isFocused, isOpen, handleTriggerClicked]);
|
|
133
|
-
function renderMoreDropdown(max, total) {
|
|
134
|
+
function renderMoreDropdown(max, total, labelId) {
|
|
134
135
|
if (total <= max) {
|
|
135
136
|
return null;
|
|
136
137
|
}
|
|
@@ -186,7 +187,10 @@ const AvatarGroup = ({
|
|
|
186
187
|
minWidth: 250,
|
|
187
188
|
maxHeight: 300,
|
|
188
189
|
setInitialFocusRef: isTriggeredUsingKeyboard ? setInitialFocusRef : undefined
|
|
189
|
-
}, /*#__PURE__*/React.createElement(Section,
|
|
190
|
+
}, /*#__PURE__*/React.createElement(Section, {
|
|
191
|
+
titleId: labelId,
|
|
192
|
+
testId: `${testId}--section`
|
|
193
|
+
}, data.slice(max).map((avatar, index) => getOverrides(overrides).AvatarGroupItem.render(AvatarGroupItem, {
|
|
190
194
|
avatar,
|
|
191
195
|
onAvatarClick,
|
|
192
196
|
testId: testId && `${testId}--avatar-group-item-${index + max}`,
|
|
@@ -206,8 +210,9 @@ const AvatarGroup = ({
|
|
|
206
210
|
const max = maxCount === undefined || maxCount === 0 ? MAX_COUNT[appearance] : maxCount;
|
|
207
211
|
const total = data.length;
|
|
208
212
|
const maxAvatar = total > max ? max - 1 : max;
|
|
209
|
-
const
|
|
210
|
-
return /*#__PURE__*/React.createElement(
|
|
213
|
+
const groupId = useId();
|
|
214
|
+
return appearance === 'stack' ? /*#__PURE__*/React.createElement(Stack, {
|
|
215
|
+
id: groupId,
|
|
211
216
|
testId: testId && `${testId}--avatar-group`,
|
|
212
217
|
"aria-label": label,
|
|
213
218
|
size: size
|
|
@@ -229,6 +234,28 @@ const AvatarGroup = ({
|
|
|
229
234
|
testId: testId && `${testId}--tooltip-${idx}`,
|
|
230
235
|
position: tooltipPosition
|
|
231
236
|
}, finalAvatar) : finalAvatar;
|
|
232
|
-
}), renderMoreDropdown(+maxAvatar, total))
|
|
237
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId)) : /*#__PURE__*/React.createElement(Grid, {
|
|
238
|
+
id: groupId,
|
|
239
|
+
testId: testId && `${testId}--avatar-group`,
|
|
240
|
+
"aria-label": label
|
|
241
|
+
}, data.slice(0, maxAvatar).map((avatarData, idx) => {
|
|
242
|
+
const callback = avatarData.onClick || onAvatarClick;
|
|
243
|
+
const finalAvatar = getOverrides(overrides).Avatar.render(avatar, {
|
|
244
|
+
...avatarData,
|
|
245
|
+
size,
|
|
246
|
+
borderColor: borderColor || avatarData.borderColor,
|
|
247
|
+
testId: testId && `${testId}--avatar-${idx}`,
|
|
248
|
+
onClick: callback ? (event, analyticsEvent) => {
|
|
249
|
+
callback(event, analyticsEvent, idx);
|
|
250
|
+
} : undefined,
|
|
251
|
+
stackIndex: max - idx
|
|
252
|
+
}, idx);
|
|
253
|
+
return !isTooltipDisabled && !avatarData.isDisabled ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
254
|
+
key: composeUniqueKey(avatarData, idx),
|
|
255
|
+
content: avatarData.name,
|
|
256
|
+
testId: testId && `${testId}--tooltip-${idx}`,
|
|
257
|
+
position: tooltipPosition
|
|
258
|
+
}, finalAvatar) : finalAvatar;
|
|
259
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId));
|
|
233
260
|
};
|
|
234
261
|
export default AvatarGroup;
|
|
@@ -9,10 +9,12 @@ const listStyles = null;
|
|
|
9
9
|
const listStylesFlagged = null;
|
|
10
10
|
const listItemStyles = null;
|
|
11
11
|
const Grid = ({
|
|
12
|
+
id,
|
|
12
13
|
children,
|
|
13
14
|
testId,
|
|
14
15
|
'aria-label': label
|
|
15
16
|
}) => /*#__PURE__*/React.createElement("ul", {
|
|
17
|
+
id: id,
|
|
16
18
|
"data-testid": testId,
|
|
17
19
|
"aria-label": label,
|
|
18
20
|
className: ax(["_1e0c1txw _1bah1y6m _1n261g80 _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2r5cr _ahbqr5cr _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", fg('platform-avatar-group-spacing-fix') && "_6rth1b66 _y4tiv77o _bozgv77o"])
|
|
@@ -20,6 +20,7 @@ const getNextFocusableElement = (refs, currentFocusedIdx) => {
|
|
|
20
20
|
}
|
|
21
21
|
currentFocusedIdx++;
|
|
22
22
|
}
|
|
23
|
+
return;
|
|
23
24
|
};
|
|
24
25
|
|
|
25
26
|
/**
|
|
@@ -36,6 +37,7 @@ const getPrevFocusableElement = (refs, currentFocusedIdx) => {
|
|
|
36
37
|
}
|
|
37
38
|
currentFocusedIdx--;
|
|
38
39
|
}
|
|
40
|
+
return;
|
|
39
41
|
};
|
|
40
42
|
export default function handleFocus(refs) {
|
|
41
43
|
return e => {
|
|
@@ -9,11 +9,13 @@ const listSmallStyles = null;
|
|
|
9
9
|
const listItemStyles = null;
|
|
10
10
|
const listItemSmallStyles = null;
|
|
11
11
|
const Stack = ({
|
|
12
|
+
id,
|
|
12
13
|
children,
|
|
13
14
|
testId,
|
|
14
15
|
'aria-label': label,
|
|
15
16
|
size
|
|
16
17
|
}) => /*#__PURE__*/React.createElement("ul", {
|
|
18
|
+
id: id,
|
|
17
19
|
"data-testid": testId,
|
|
18
20
|
"aria-label": label,
|
|
19
21
|
className: ax(["_1e0c1txw _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2u2gc _ahbqze3t _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", size === 'small' && fg('platform-avatar-group-spacing-fix') && "_12l21b66"])
|
|
@@ -11,6 +11,7 @@ import Avatar from '@atlaskit/avatar';
|
|
|
11
11
|
import { KEY_DOWN } from '@atlaskit/ds-lib/keycodes';
|
|
12
12
|
import noop from '@atlaskit/ds-lib/noop';
|
|
13
13
|
import useFocus from '@atlaskit/ds-lib/use-focus-event';
|
|
14
|
+
import { useId } from '@atlaskit/ds-lib/use-id';
|
|
14
15
|
import { Section } from '@atlaskit/menu';
|
|
15
16
|
import Popup from '@atlaskit/popup';
|
|
16
17
|
import Tooltip from '@atlaskit/tooltip';
|
|
@@ -153,7 +154,7 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
153
154
|
};
|
|
154
155
|
return unbind;
|
|
155
156
|
}, [isFocused, isOpen, handleTriggerClicked]);
|
|
156
|
-
function renderMoreDropdown(max, total) {
|
|
157
|
+
function renderMoreDropdown(max, total, labelId) {
|
|
157
158
|
if (total <= max) {
|
|
158
159
|
return null;
|
|
159
160
|
}
|
|
@@ -211,7 +212,10 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
211
212
|
minWidth: 250,
|
|
212
213
|
maxHeight: 300,
|
|
213
214
|
setInitialFocusRef: isTriggeredUsingKeyboard ? setInitialFocusRef : undefined
|
|
214
|
-
}, /*#__PURE__*/React.createElement(Section,
|
|
215
|
+
}, /*#__PURE__*/React.createElement(Section, {
|
|
216
|
+
titleId: labelId,
|
|
217
|
+
testId: "".concat(testId, "--section")
|
|
218
|
+
}, data.slice(max).map(function (avatar, index) {
|
|
215
219
|
return getOverrides(overrides).AvatarGroupItem.render(AvatarGroupItem, {
|
|
216
220
|
avatar: avatar,
|
|
217
221
|
onAvatarClick: onAvatarClick,
|
|
@@ -234,8 +238,9 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
234
238
|
var max = maxCount === undefined || maxCount === 0 ? MAX_COUNT[appearance] : maxCount;
|
|
235
239
|
var total = data.length;
|
|
236
240
|
var maxAvatar = total > max ? max - 1 : max;
|
|
237
|
-
var
|
|
238
|
-
return /*#__PURE__*/React.createElement(
|
|
241
|
+
var groupId = useId();
|
|
242
|
+
return appearance === 'stack' ? /*#__PURE__*/React.createElement(Stack, {
|
|
243
|
+
id: groupId,
|
|
239
244
|
testId: testId && "".concat(testId, "--avatar-group"),
|
|
240
245
|
"aria-label": label,
|
|
241
246
|
size: size
|
|
@@ -256,6 +261,27 @@ var AvatarGroup = function AvatarGroup(_ref) {
|
|
|
256
261
|
testId: testId && "".concat(testId, "--tooltip-").concat(idx),
|
|
257
262
|
position: tooltipPosition
|
|
258
263
|
}, finalAvatar) : finalAvatar;
|
|
259
|
-
}), renderMoreDropdown(+maxAvatar, total))
|
|
264
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId)) : /*#__PURE__*/React.createElement(Grid, {
|
|
265
|
+
id: groupId,
|
|
266
|
+
testId: testId && "".concat(testId, "--avatar-group"),
|
|
267
|
+
"aria-label": label
|
|
268
|
+
}, data.slice(0, maxAvatar).map(function (avatarData, idx) {
|
|
269
|
+
var callback = avatarData.onClick || onAvatarClick;
|
|
270
|
+
var finalAvatar = getOverrides(overrides).Avatar.render(avatar, _objectSpread(_objectSpread({}, avatarData), {}, {
|
|
271
|
+
size: size,
|
|
272
|
+
borderColor: borderColor || avatarData.borderColor,
|
|
273
|
+
testId: testId && "".concat(testId, "--avatar-").concat(idx),
|
|
274
|
+
onClick: callback ? function (event, analyticsEvent) {
|
|
275
|
+
callback(event, analyticsEvent, idx);
|
|
276
|
+
} : undefined,
|
|
277
|
+
stackIndex: max - idx
|
|
278
|
+
}), idx);
|
|
279
|
+
return !isTooltipDisabled && !avatarData.isDisabled ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
280
|
+
key: composeUniqueKey(avatarData, idx),
|
|
281
|
+
content: avatarData.name,
|
|
282
|
+
testId: testId && "".concat(testId, "--tooltip-").concat(idx),
|
|
283
|
+
position: tooltipPosition
|
|
284
|
+
}, finalAvatar) : finalAvatar;
|
|
285
|
+
}), renderMoreDropdown(+maxAvatar, total, groupId));
|
|
260
286
|
};
|
|
261
287
|
export default AvatarGroup;
|
|
@@ -9,10 +9,12 @@ var listStyles = null;
|
|
|
9
9
|
var listStylesFlagged = null;
|
|
10
10
|
var listItemStyles = null;
|
|
11
11
|
var Grid = function Grid(_ref) {
|
|
12
|
-
var
|
|
12
|
+
var id = _ref.id,
|
|
13
|
+
children = _ref.children,
|
|
13
14
|
testId = _ref.testId,
|
|
14
15
|
label = _ref['aria-label'];
|
|
15
16
|
return /*#__PURE__*/React.createElement("ul", {
|
|
17
|
+
id: id,
|
|
16
18
|
"data-testid": testId,
|
|
17
19
|
"aria-label": label,
|
|
18
20
|
className: ax(["_1e0c1txw _1bah1y6m _1n261g80 _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2r5cr _ahbqr5cr _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", fg('platform-avatar-group-spacing-fix') && "_6rth1b66 _y4tiv77o _bozgv77o"])
|
|
@@ -16,6 +16,7 @@ var getNextFocusableElement = function getNextFocusableElement(refs, currentFocu
|
|
|
16
16
|
}
|
|
17
17
|
currentFocusedIdx++;
|
|
18
18
|
}
|
|
19
|
+
return;
|
|
19
20
|
};
|
|
20
21
|
|
|
21
22
|
/**
|
|
@@ -32,6 +33,7 @@ var getPrevFocusableElement = function getPrevFocusableElement(refs, currentFocu
|
|
|
32
33
|
}
|
|
33
34
|
currentFocusedIdx--;
|
|
34
35
|
}
|
|
36
|
+
return;
|
|
35
37
|
};
|
|
36
38
|
export default function handleFocus(refs) {
|
|
37
39
|
return function (e) {
|
|
@@ -9,11 +9,13 @@ var listSmallStyles = null;
|
|
|
9
9
|
var listItemStyles = null;
|
|
10
10
|
var listItemSmallStyles = null;
|
|
11
11
|
var Stack = function Stack(_ref) {
|
|
12
|
-
var
|
|
12
|
+
var id = _ref.id,
|
|
13
|
+
children = _ref.children,
|
|
13
14
|
testId = _ref.testId,
|
|
14
15
|
label = _ref['aria-label'],
|
|
15
16
|
size = _ref.size;
|
|
16
17
|
return /*#__PURE__*/React.createElement("ul", {
|
|
18
|
+
id: id,
|
|
17
19
|
"data-testid": testId,
|
|
18
20
|
"aria-label": label,
|
|
19
21
|
className: ax(["_1e0c1txw _19121cl4 _vwz4kb7n _2mzuagmp _6rthze3t _1pfhze3t _12l2u2gc _ahbqze3t _85i5ze3t _1q51ze3t _y4tize3t _bozgze3t", size === 'small' && fg('platform-avatar-group-spacing-fix') && "_12l21b66"])
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/avatar-group",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.4.0",
|
|
4
4
|
"description": "An avatar group displays a number of avatars grouped together in a stack or grid.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -24,17 +24,17 @@
|
|
|
24
24
|
}
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@atlaskit/avatar": "^25.
|
|
27
|
+
"@atlaskit/avatar": "^25.5.0",
|
|
28
28
|
"@atlaskit/css": "^0.15.0",
|
|
29
29
|
"@atlaskit/ds-lib": "^5.1.0",
|
|
30
30
|
"@atlaskit/menu": "^8.4.0",
|
|
31
31
|
"@atlaskit/platform-feature-flags": "^1.1.0",
|
|
32
32
|
"@atlaskit/popup": "^4.4.0",
|
|
33
33
|
"@atlaskit/theme": "^21.0.0",
|
|
34
|
-
"@atlaskit/tokens": "^
|
|
35
|
-
"@atlaskit/tooltip": "^20.
|
|
34
|
+
"@atlaskit/tokens": "^7.0.0",
|
|
35
|
+
"@atlaskit/tooltip": "^20.6.0",
|
|
36
36
|
"@babel/runtime": "^7.0.0",
|
|
37
|
-
"@compiled/react": "^0.18.
|
|
37
|
+
"@compiled/react": "^0.18.6",
|
|
38
38
|
"bind-event-listener": "^3.0.0"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
@@ -46,12 +46,12 @@
|
|
|
46
46
|
"@af/visual-regression": "workspace:^",
|
|
47
47
|
"@atlaskit/analytics-next": "^11.1.0",
|
|
48
48
|
"@atlaskit/button": "^23.5.0",
|
|
49
|
-
"@atlaskit/docs": "^11.
|
|
49
|
+
"@atlaskit/docs": "^11.2.0",
|
|
50
50
|
"@atlaskit/form": "^14.2.0",
|
|
51
51
|
"@atlaskit/icon": "^28.5.0",
|
|
52
52
|
"@atlaskit/link": "^3.2.0",
|
|
53
|
-
"@atlaskit/modal-dialog": "^14.
|
|
54
|
-
"@atlaskit/primitives": "^
|
|
53
|
+
"@atlaskit/modal-dialog": "^14.6.0",
|
|
54
|
+
"@atlaskit/primitives": "^16.0.0",
|
|
55
55
|
"@atlaskit/section-message": "^8.7.0",
|
|
56
56
|
"@atlaskit/ssr": "workspace:^",
|
|
57
57
|
"@atlaskit/toggle": "^15.1.0",
|