@oxyhq/bloom 0.8.6 → 0.9.1

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.
Files changed (102) hide show
  1. package/lib/commonjs/avatar-group/AvatarGroup.js +26 -0
  2. package/lib/commonjs/avatar-group/AvatarGroup.js.map +1 -0
  3. package/lib/commonjs/avatar-group/AvatarGroup.web.js +116 -0
  4. package/lib/commonjs/avatar-group/AvatarGroup.web.js.map +1 -0
  5. package/lib/commonjs/avatar-group/AvatarGroupBase.js +186 -0
  6. package/lib/commonjs/avatar-group/AvatarGroupBase.js.map +1 -0
  7. package/lib/commonjs/avatar-group/index.js +13 -0
  8. package/lib/commonjs/avatar-group/index.js.map +1 -0
  9. package/lib/commonjs/avatar-group/index.web.js +13 -0
  10. package/lib/commonjs/avatar-group/index.web.js.map +1 -0
  11. package/lib/commonjs/avatar-group/types.js +6 -0
  12. package/lib/commonjs/avatar-group/types.js.map +1 -0
  13. package/lib/commonjs/index.js +60 -44
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/index.web.js +74 -58
  16. package/lib/commonjs/index.web.js.map +1 -1
  17. package/lib/commonjs/user-hover-card/UserHoverCard.js +193 -0
  18. package/lib/commonjs/user-hover-card/UserHoverCard.js.map +1 -0
  19. package/lib/commonjs/user-hover-card/index.js +13 -0
  20. package/lib/commonjs/user-hover-card/index.js.map +1 -0
  21. package/lib/commonjs/user-hover-card/types.js +6 -0
  22. package/lib/commonjs/user-hover-card/types.js.map +1 -0
  23. package/lib/module/avatar-group/AvatarGroup.js +21 -0
  24. package/lib/module/avatar-group/AvatarGroup.js.map +1 -0
  25. package/lib/module/avatar-group/AvatarGroup.web.js +111 -0
  26. package/lib/module/avatar-group/AvatarGroup.web.js.map +1 -0
  27. package/lib/module/avatar-group/AvatarGroupBase.js +181 -0
  28. package/lib/module/avatar-group/AvatarGroupBase.js.map +1 -0
  29. package/lib/module/avatar-group/index.js +4 -0
  30. package/lib/module/avatar-group/index.js.map +1 -0
  31. package/lib/module/avatar-group/index.web.js +4 -0
  32. package/lib/module/avatar-group/index.web.js.map +1 -0
  33. package/lib/module/avatar-group/types.js +4 -0
  34. package/lib/module/avatar-group/types.js.map +1 -0
  35. package/lib/module/index.js +2 -0
  36. package/lib/module/index.js.map +1 -1
  37. package/lib/module/index.web.js +2 -0
  38. package/lib/module/index.web.js.map +1 -1
  39. package/lib/module/user-hover-card/UserHoverCard.js +188 -0
  40. package/lib/module/user-hover-card/UserHoverCard.js.map +1 -0
  41. package/lib/module/user-hover-card/index.js +4 -0
  42. package/lib/module/user-hover-card/index.js.map +1 -0
  43. package/lib/module/user-hover-card/types.js +4 -0
  44. package/lib/module/user-hover-card/types.js.map +1 -0
  45. package/lib/typescript/commonjs/avatar-group/AvatarGroup.d.ts +4 -0
  46. package/lib/typescript/commonjs/avatar-group/AvatarGroup.d.ts.map +1 -0
  47. package/lib/typescript/commonjs/avatar-group/AvatarGroup.web.d.ts +4 -0
  48. package/lib/typescript/commonjs/avatar-group/AvatarGroup.web.d.ts.map +1 -0
  49. package/lib/typescript/commonjs/avatar-group/AvatarGroupBase.d.ts +16 -0
  50. package/lib/typescript/commonjs/avatar-group/AvatarGroupBase.d.ts.map +1 -0
  51. package/lib/typescript/commonjs/avatar-group/index.d.ts +3 -0
  52. package/lib/typescript/commonjs/avatar-group/index.d.ts.map +1 -0
  53. package/lib/typescript/commonjs/avatar-group/index.web.d.ts +3 -0
  54. package/lib/typescript/commonjs/avatar-group/index.web.d.ts.map +1 -0
  55. package/lib/typescript/commonjs/avatar-group/types.d.ts +69 -0
  56. package/lib/typescript/commonjs/avatar-group/types.d.ts.map +1 -0
  57. package/lib/typescript/commonjs/index.d.ts +4 -0
  58. package/lib/typescript/commonjs/index.d.ts.map +1 -1
  59. package/lib/typescript/commonjs/index.web.d.ts +4 -0
  60. package/lib/typescript/commonjs/index.web.d.ts.map +1 -1
  61. package/lib/typescript/commonjs/user-hover-card/UserHoverCard.d.ts +4 -0
  62. package/lib/typescript/commonjs/user-hover-card/UserHoverCard.d.ts.map +1 -0
  63. package/lib/typescript/commonjs/user-hover-card/index.d.ts +3 -0
  64. package/lib/typescript/commonjs/user-hover-card/index.d.ts.map +1 -0
  65. package/lib/typescript/commonjs/user-hover-card/types.d.ts +39 -0
  66. package/lib/typescript/commonjs/user-hover-card/types.d.ts.map +1 -0
  67. package/lib/typescript/module/avatar-group/AvatarGroup.d.ts +4 -0
  68. package/lib/typescript/module/avatar-group/AvatarGroup.d.ts.map +1 -0
  69. package/lib/typescript/module/avatar-group/AvatarGroup.web.d.ts +4 -0
  70. package/lib/typescript/module/avatar-group/AvatarGroup.web.d.ts.map +1 -0
  71. package/lib/typescript/module/avatar-group/AvatarGroupBase.d.ts +16 -0
  72. package/lib/typescript/module/avatar-group/AvatarGroupBase.d.ts.map +1 -0
  73. package/lib/typescript/module/avatar-group/index.d.ts +3 -0
  74. package/lib/typescript/module/avatar-group/index.d.ts.map +1 -0
  75. package/lib/typescript/module/avatar-group/index.web.d.ts +3 -0
  76. package/lib/typescript/module/avatar-group/index.web.d.ts.map +1 -0
  77. package/lib/typescript/module/avatar-group/types.d.ts +69 -0
  78. package/lib/typescript/module/avatar-group/types.d.ts.map +1 -0
  79. package/lib/typescript/module/index.d.ts +4 -0
  80. package/lib/typescript/module/index.d.ts.map +1 -1
  81. package/lib/typescript/module/index.web.d.ts +4 -0
  82. package/lib/typescript/module/index.web.d.ts.map +1 -1
  83. package/lib/typescript/module/user-hover-card/UserHoverCard.d.ts +4 -0
  84. package/lib/typescript/module/user-hover-card/UserHoverCard.d.ts.map +1 -0
  85. package/lib/typescript/module/user-hover-card/index.d.ts +3 -0
  86. package/lib/typescript/module/user-hover-card/index.d.ts.map +1 -0
  87. package/lib/typescript/module/user-hover-card/types.d.ts +39 -0
  88. package/lib/typescript/module/user-hover-card/types.d.ts.map +1 -0
  89. package/package.json +30 -1
  90. package/src/avatar-group/AvatarGroup.stories.tsx +135 -0
  91. package/src/avatar-group/AvatarGroup.tsx +19 -0
  92. package/src/avatar-group/AvatarGroup.web.tsx +145 -0
  93. package/src/avatar-group/AvatarGroupBase.tsx +257 -0
  94. package/src/avatar-group/index.ts +2 -0
  95. package/src/avatar-group/index.web.tsx +2 -0
  96. package/src/avatar-group/types.ts +70 -0
  97. package/src/index.ts +4 -0
  98. package/src/index.web.ts +4 -0
  99. package/src/user-hover-card/UserHoverCard.stories.tsx +113 -0
  100. package/src/user-hover-card/UserHoverCard.tsx +204 -0
  101. package/src/user-hover-card/index.ts +2 -0
  102. package/src/user-hover-card/types.ts +40 -0
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AvatarGroup = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _AvatarGroupBase = require("./AvatarGroupBase.js");
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
+ /**
12
+ * Native `AvatarGroup` — an overlapping, ringed stack of {@link Avatar}s with a
13
+ * trailing `+N` overflow chip.
14
+ *
15
+ * Hover behavior is web-only; on native the `hoverCard` / `renderItemAction`
16
+ * props are accepted for API parity but intentionally do nothing (no hover on
17
+ * touch devices). The web fork (`AvatarGroup.web.tsx`) wires up the hover card.
18
+ */
19
+ const AvatarGroupComponent = props => {
20
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_AvatarGroupBase.AvatarGroupBase, {
21
+ ...props
22
+ });
23
+ };
24
+ const AvatarGroup = exports.AvatarGroup = /*#__PURE__*/(0, _react.memo)(AvatarGroupComponent);
25
+ AvatarGroup.displayName = 'AvatarGroup';
26
+ //# sourceMappingURL=AvatarGroup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_AvatarGroupBase","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","AvatarGroupComponent","props","jsx","AvatarGroupBase","AvatarGroup","exports","memo","displayName"],"sourceRoot":"../../../src","sources":["avatar-group/AvatarGroup.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA;AAAoD,IAAAE,WAAA,GAAAF,OAAA;AAAA,SAAAD,wBAAAI,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAN,uBAAA,YAAAA,CAAAI,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAGpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMkB,oBAAgD,GAAIC,KAAK,IAAK;EAClE,oBAAO,IAAArB,WAAA,CAAAsB,GAAA,EAACvB,gBAAA,CAAAwB,eAAe;IAAA,GAAKF;EAAK,CAAG,CAAC;AACvC,CAAC;AAEM,MAAMG,WAAW,GAAAC,OAAA,CAAAD,WAAA,gBAAG,IAAAE,WAAI,EAACN,oBAAoB,CAAC;AACrDI,WAAW,CAACG,WAAW,GAAG,aAAa","ignoreList":[]}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AvatarGroup = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _portal = require("../portal");
10
+ var _zIndex = require("../styles/z-index.js");
11
+ var _index = require("../user-hover-card/index.js");
12
+ var _AvatarGroupBase = require("./AvatarGroupBase.js");
13
+ var _jsxRuntime = require("react/jsx-runtime");
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ /** Delay before dismissing the card so the cursor can travel into it. */
16
+ const CLOSE_DELAY_MS = 120;
17
+ /** Gap between the anchored avatar and the floating card. */
18
+ const CARD_GAP = 8;
19
+ const CARD_WIDTH = 280;
20
+ function getItemName(item) {
21
+ return item.displayName ?? item.name ?? item.username ?? '';
22
+ }
23
+
24
+ /**
25
+ * Web `AvatarGroup`. Identical stack rendering to native via
26
+ * {@link AvatarGroupBase}, plus an optional hover card: when `hoverCard` is
27
+ * enabled, hovering an avatar reveals a {@link UserHoverCard} positioned beneath
28
+ * it. The card receives the per-item `renderItemAction` slot so the app can drop
29
+ * its SDK FollowButton inside.
30
+ */
31
+ const AvatarGroupWebComponent = props => {
32
+ const {
33
+ hoverCard,
34
+ renderItemAction,
35
+ onPressItem
36
+ } = props;
37
+ const [hover, setHover] = (0, _react.useState)(null);
38
+ const cellRefs = (0, _react.useRef)(new Map());
39
+ const closeTimer = (0, _react.useRef)(null);
40
+ const cancelClose = (0, _react.useCallback)(() => {
41
+ if (closeTimer.current) {
42
+ clearTimeout(closeTimer.current);
43
+ closeTimer.current = null;
44
+ }
45
+ }, []);
46
+ const scheduleClose = (0, _react.useCallback)(() => {
47
+ cancelClose();
48
+ closeTimer.current = setTimeout(() => setHover(null), CLOSE_DELAY_MS);
49
+ }, [cancelClose]);
50
+ const registerCellRef = (0, _react.useCallback)((index, node) => {
51
+ if (node) cellRefs.current.set(index, node);else cellRefs.current.delete(index);
52
+ }, []);
53
+ const handleHoverIn = (0, _react.useCallback)((item, index) => {
54
+ cancelClose();
55
+ const node = cellRefs.current.get(index);
56
+ if (!node) return;
57
+ node.measureInWindow((x, y, width, height) => {
58
+ // Center the card under the avatar, clamped to the viewport.
59
+ const viewportWidth = typeof window !== 'undefined' ? window.innerWidth : CARD_WIDTH;
60
+ let left = x + width / 2 - CARD_WIDTH / 2;
61
+ left = Math.max(CARD_GAP, Math.min(left, viewportWidth - CARD_WIDTH - CARD_GAP));
62
+ setHover({
63
+ item,
64
+ index,
65
+ top: y + height + CARD_GAP,
66
+ left
67
+ });
68
+ });
69
+ }, [cancelClose]);
70
+ const hoverHandlers = (0, _react.useMemo)(() => {
71
+ if (!hoverCard) return undefined;
72
+ return {
73
+ onHoverIn: handleHoverIn,
74
+ onHoverOut: scheduleClose,
75
+ registerCellRef
76
+ };
77
+ }, [hoverCard, handleHoverIn, scheduleClose, registerCellRef]);
78
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
79
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_AvatarGroupBase.AvatarGroupBase, {
80
+ ...props,
81
+ hoverHandlers: hoverHandlers
82
+ }), hoverCard && hover && /*#__PURE__*/(0, _jsxRuntime.jsx)(_portal.Portal, {
83
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
84
+ onHoverIn: cancelClose,
85
+ onHoverOut: scheduleClose,
86
+ accessibilityRole: "none",
87
+ pointerEvents: "auto",
88
+ style: [webStyles.floating, {
89
+ top: hover.top,
90
+ left: hover.left,
91
+ width: CARD_WIDTH
92
+ }],
93
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.UserHoverCard, {
94
+ avatar: hover.item.uri ?? undefined,
95
+ displayName: getItemName(hover.item),
96
+ username: hover.item.username,
97
+ onPressProfile: onPressItem ? () => onPressItem(hover.item, hover.index) : undefined,
98
+ action: renderItemAction?.(hover.item, hover.index),
99
+ style: webStyles.card
100
+ })
101
+ })
102
+ })]
103
+ });
104
+ };
105
+ const webStyles = _reactNative.StyleSheet.create({
106
+ floating: {
107
+ position: 'fixed',
108
+ zIndex: _zIndex.Z_INDEX.tooltip
109
+ },
110
+ card: {
111
+ width: CARD_WIDTH
112
+ }
113
+ });
114
+ const AvatarGroup = exports.AvatarGroup = /*#__PURE__*/(0, _react.memo)(AvatarGroupWebComponent);
115
+ AvatarGroup.displayName = 'AvatarGroup';
116
+ //# sourceMappingURL=AvatarGroup.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_portal","_zIndex","_index","_AvatarGroupBase","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","CLOSE_DELAY_MS","CARD_GAP","CARD_WIDTH","getItemName","item","displayName","name","username","AvatarGroupWebComponent","props","hoverCard","renderItemAction","onPressItem","hover","setHover","useState","cellRefs","useRef","Map","closeTimer","cancelClose","useCallback","current","clearTimeout","scheduleClose","setTimeout","registerCellRef","index","node","delete","handleHoverIn","measureInWindow","x","y","width","height","viewportWidth","window","innerWidth","left","Math","max","min","top","hoverHandlers","useMemo","undefined","onHoverIn","onHoverOut","jsxs","Fragment","children","jsx","AvatarGroupBase","Portal","Pressable","accessibilityRole","pointerEvents","style","webStyles","floating","UserHoverCard","avatar","uri","onPressProfile","action","card","StyleSheet","create","position","zIndex","Z_INDEX","tooltip","AvatarGroup","exports","memo"],"sourceRoot":"../../../src","sources":["avatar-group/AvatarGroup.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AvatarGroupBase = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _index = require("../avatar/index.js");
10
+ var _useTheme = require("../theme/use-theme.js");
11
+ var _tokens = require("../styles/tokens.js");
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ /** Ring (border) thickness around each avatar, in pixels. Matches the
15
+ * original Mention `AvatarStack` (a single hairline-ish 1px separator). */
16
+ const RING_WIDTH = 1;
17
+ /** Default horizontal overlap as a fraction of avatar size — the original
18
+ * stack pulled each avatar left by `size / 3`. */
19
+ const DEFAULT_OVERLAP_RATIO = 1 / 3;
20
+ function getItemName(item) {
21
+ return item.displayName ?? item.name ?? item.username;
22
+ }
23
+ function getItemKey(item, index) {
24
+ return item.id ?? item.username ?? item.uri ?? `avatar-${index}`;
25
+ }
26
+
27
+ /** Hover callbacks injected by the web fork; undefined (no-op) on native. */
28
+
29
+ const AvatarGroupBaseComponent = ({
30
+ items,
31
+ size = 32,
32
+ max = 5,
33
+ total,
34
+ overlap,
35
+ ringColor,
36
+ onPressItem,
37
+ style,
38
+ testID,
39
+ hoverHandlers
40
+ }) => {
41
+ const theme = (0, _useTheme.useTheme)();
42
+
43
+ // The ring is the thin separator drawn between overlapping avatars. It
44
+ // defaults to the page background so avatars read as cleanly punched out of
45
+ // the surface behind them — matching the original Mention stack, which used
46
+ // `theme.colors.background`, not a large `card`-colored ring cell.
47
+ const ring = ringColor ?? theme.colors.background;
48
+ const effectiveOverlap = overlap ?? Math.round(size * DEFAULT_OVERLAP_RATIO);
49
+ // Each avatar after the first is pulled left by `overlap`. The cell carries a
50
+ // 1px border on each side, so the negative margin absorbs both borders to
51
+ // keep the visual overlap equal to `effectiveOverlap`.
52
+ const negativeMargin = -(effectiveOverlap + RING_WIDTH * 2);
53
+ const shown = (0, _react.useMemo)(() => items.slice(0, Math.max(0, max)), [items, max]);
54
+ const realTotal = total ?? items.length;
55
+ const overflow = Math.max(0, realTotal - shown.length);
56
+
57
+ // Each cell is a circular, clipped container with a 1px ring border. The inner
58
+ // Avatar is inset by the border on both sides so the image fills the circle
59
+ // exactly inside the ring.
60
+ const innerSize = size - RING_WIDTH * 2;
61
+ const cellStyle = (0, _react.useMemo)(() => {
62
+ return {
63
+ width: size,
64
+ height: size,
65
+ borderRadius: size / 2,
66
+ borderWidth: RING_WIDTH,
67
+ borderColor: ring,
68
+ overflow: 'hidden',
69
+ alignItems: 'center',
70
+ justifyContent: 'center'
71
+ };
72
+ }, [size, ring]);
73
+ const overflowTextStyle = (0, _react.useMemo)(() => ({
74
+ color: '#FFFFFF',
75
+ fontSize: Math.max(_tokens.fontSize._2xs, Math.round(size * 0.36)),
76
+ fontWeight: '600'
77
+ }), [size]);
78
+ const interactive = typeof onPressItem === 'function';
79
+ const hoverable = typeof hoverHandlers?.onHoverIn === 'function' || typeof hoverHandlers?.onHoverOut === 'function';
80
+
81
+ // Pressing the "+N" circle surfaces the first hidden member (if any), so
82
+ // consumers can route it to a full member list.
83
+ const firstHidden = items[shown.length];
84
+ const overflowOnPress = interactive && firstHidden ? () => onPressItem?.(firstHidden, shown.length) : undefined;
85
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
86
+ style: [styles.row, style],
87
+ testID: testID,
88
+ children: [shown.map((item, index) => {
89
+ const name = getItemName(item);
90
+ const accessibilityLabel = item.username ? `${name ?? item.username} (@${item.username})` : name;
91
+
92
+ // The negative margin and stacking order live on the outermost
93
+ // row element so layout and hit-testing stay aligned with the visual
94
+ // overlap. Earlier siblings render on top of later ones.
95
+ const wrapperStyle = {
96
+ ...(index > 0 && {
97
+ marginLeft: negativeMargin
98
+ }),
99
+ zIndex: shown.length - index
100
+ };
101
+ const cell = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
102
+ ref: hoverHandlers?.registerCellRef ? node => hoverHandlers.registerCellRef?.(index, node) : undefined,
103
+ collapsable: false,
104
+ style: cellStyle,
105
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.Avatar, {
106
+ source: item.uri ?? undefined,
107
+ size: innerSize
108
+ })
109
+ });
110
+ if (interactive || hoverable) {
111
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
112
+ onPress: interactive ? () => onPressItem?.(item, index) : undefined,
113
+ onHoverIn: hoverHandlers?.onHoverIn ? () => hoverHandlers.onHoverIn?.(item, index) : undefined,
114
+ onHoverOut: hoverHandlers?.onHoverOut ? () => hoverHandlers.onHoverOut?.(item, index) : undefined,
115
+ accessibilityRole: interactive ? 'button' : undefined,
116
+ accessibilityLabel: accessibilityLabel,
117
+ style: wrapperStyle,
118
+ children: cell
119
+ }, getItemKey(item, index));
120
+ }
121
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
122
+ style: wrapperStyle,
123
+ children: cell
124
+ }, getItemKey(item, index));
125
+ }), overflow > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(OverflowCircle, {
126
+ count: overflow,
127
+ cellStyle: cellStyle,
128
+ negativeMargin: shown.length > 0 ? negativeMargin : 0,
129
+ textStyle: overflowTextStyle,
130
+ onPress: overflowOnPress
131
+ })]
132
+ });
133
+ };
134
+ function OverflowCircle({
135
+ count,
136
+ cellStyle,
137
+ negativeMargin,
138
+ textStyle,
139
+ onPress
140
+ }) {
141
+ const theme = (0, _useTheme.useTheme)();
142
+ // The count circle is anchored at the lowest stacking order so it tucks behind
143
+ // the last avatar's ring. The margin lives on the outer element to keep layout
144
+ // aligned with the overlap.
145
+ const wrapperStyle = {
146
+ ...(negativeMargin !== 0 && {
147
+ marginLeft: negativeMargin
148
+ }),
149
+ zIndex: 0
150
+ };
151
+
152
+ // A solid "+N" count circle: secondary-text-colored fill with white text,
153
+ // matching the original Mention `ResponsiveAvatarStack` count circle.
154
+ const circle = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
155
+ style: [cellStyle, {
156
+ backgroundColor: theme.colors.textSecondary
157
+ }],
158
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
159
+ allowFontScaling: false,
160
+ style: textStyle,
161
+ children: ["+", count]
162
+ })
163
+ });
164
+ if (onPress) {
165
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
166
+ onPress: onPress,
167
+ accessibilityRole: "button",
168
+ accessibilityLabel: `${count} more`,
169
+ style: wrapperStyle,
170
+ children: circle
171
+ });
172
+ }
173
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
174
+ style: wrapperStyle,
175
+ children: circle
176
+ });
177
+ }
178
+ const styles = _reactNative.StyleSheet.create({
179
+ row: {
180
+ flexDirection: 'row',
181
+ alignItems: 'center'
182
+ }
183
+ });
184
+ const AvatarGroupBase = exports.AvatarGroupBase = /*#__PURE__*/(0, _react.memo)(AvatarGroupBaseComponent);
185
+ AvatarGroupBase.displayName = 'AvatarGroupBase';
186
+ //# sourceMappingURL=AvatarGroupBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_index","_useTheme","_tokens","_jsxRuntime","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","RING_WIDTH","DEFAULT_OVERLAP_RATIO","getItemName","item","displayName","name","username","getItemKey","index","id","uri","AvatarGroupBaseComponent","items","size","max","total","overlap","ringColor","onPressItem","style","testID","hoverHandlers","theme","useTheme","ring","colors","background","effectiveOverlap","Math","round","negativeMargin","shown","useMemo","slice","realTotal","length","overflow","innerSize","cellStyle","width","height","borderRadius","borderWidth","borderColor","alignItems","justifyContent","overflowTextStyle","color","fontSize","_2xs","fontWeight","interactive","hoverable","onHoverIn","onHoverOut","firstHidden","overflowOnPress","undefined","jsxs","View","styles","row","children","map","accessibilityLabel","wrapperStyle","marginLeft","zIndex","cell","jsx","ref","registerCellRef","node","collapsable","Avatar","source","Pressable","onPress","accessibilityRole","OverflowCircle","count","textStyle","circle","backgroundColor","textSecondary","Text","allowFontScaling","StyleSheet","create","flexDirection","AvatarGroupBase","exports","memo"],"sourceRoot":"../../../src","sources":["avatar-group/AvatarGroupBase.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "AvatarGroup", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _AvatarGroup.AvatarGroup;
10
+ }
11
+ });
12
+ var _AvatarGroup = require("./AvatarGroup");
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AvatarGroup","require"],"sourceRoot":"../../../src","sources":["avatar-group/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "AvatarGroup", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _AvatarGroupWeb.AvatarGroup;
10
+ }
11
+ });
12
+ var _AvatarGroupWeb = require("./AvatarGroup.web.js");
13
+ //# sourceMappingURL=index.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_AvatarGroupWeb","require"],"sourceRoot":"../../../src","sources":["avatar-group/index.web.tsx"],"mappings":";;;;;;;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["avatar-group/types.ts"],"mappings":"","ignoreList":[]}