@atlaskit/profilecard 26.2.4 → 26.3.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # @atlaskit/profilecard
2
2
 
3
+ ## 26.3.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`cd735de700f7d`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/cd735de700f7d) -
8
+ Clean up teams_app_react_19_upgrade
9
+ - [`29c887747740d`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/29c887747740d) -
10
+ [ux] Hide conversation for Jira Coding Agent as users won't be able to use it anyway because JCA
11
+ team have not supported it. Rolling out this change under SPRT experiment gate because Jira does
12
+ not allow FG anymore
13
+
14
+ ## 26.3.0
15
+
16
+ ### Minor Changes
17
+
18
+ - [`13f4e85f3bb9c`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/13f4e85f3bb9c) -
19
+ Clean up code referencing the old team profile card
20
+
3
21
  ## 26.2.4
4
22
 
5
23
  ### Patch Changes
@@ -11,7 +11,7 @@ var _graphqlUtils = require("./graphqlUtils");
11
11
  var ORG_ID_FROM_CLOUD_ID_QUERY = "query OrgIdFromCloudId($cloudId: ID!) {\n\ttenantContexts(cloudIds: [$cloudId]) {\n\t\torgId\n\t}\n}";
12
12
  var addHeaders = function addHeaders(headers) {
13
13
  headers.append('atl-client-name', "@atlaskit/profilecard");
14
- headers.append('atl-client-version', "26.2.3");
14
+ headers.append('atl-client-version', "26.3.0");
15
15
  return headers;
16
16
  };
17
17
  function getOrgIdForCloudIdFromAGG(_x, _x2) {
@@ -66,7 +66,7 @@ var addHeaders = exports.addHeaders = function addHeaders(headers) {
66
66
  headers.append('X-ExperimentalApi', 'teams-beta');
67
67
  headers.append('X-ExperimentalApi', 'team-members-beta');
68
68
  headers.append('atl-client-name', "@atlaskit/profilecard");
69
- headers.append('atl-client-version', "26.2.3");
69
+ headers.append('atl-client-version', "26.3.0");
70
70
  return headers;
71
71
  };
72
72
  function getTeamFromAGG(_x, _x2, _x3) {
@@ -15,6 +15,7 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
15
15
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
16
  var _react = _interopRequireWildcard(require("react"));
17
17
  var _reactIntl = require("react-intl");
18
+ var _featureGateJsClient = _interopRequireDefault(require("@atlaskit/feature-gate-js-client"));
18
19
  var _informationCircle = _interopRequireDefault(require("@atlaskit/icon/core/information-circle"));
19
20
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
20
21
  var _compiled = require("@atlaskit/primitives/compiled");
@@ -195,8 +196,13 @@ var AgentProfileCard = function AgentProfileCard(_ref) {
195
196
  // them - once the rename backfill runs, the JCA name becomes 'Jira Coding Agent' and
196
197
  // isRovoDev naturally becomes false, falling through to the agentNamedId avatar lookup.
197
198
  var isRovoDev = agent.creator_type === 'ROVO_DEV' && agent.name.toLowerCase() === 'rovo dev';
198
- var shouldShowConversationStarters = !isRovoDev && !((0, _platformFeatureFlags.fg)('jira_ai_hide_conversation_starters_profilecard') && hideConversationStarters);
199
- var shouldShowAgentActions = !isRovoDev && !(hideAgentActions && (0, _platformFeatureFlags.fg)('issue_view_agent_discovery_fast_follows'));
199
+
200
+ // Currently, both Jira Coding Agent and Rovo Dev does not support conversations and chat.
201
+ // We previously disabled these for Rovo Dev but we forgot to do the same changes for JCA
202
+ // They are actually the same, just different names.
203
+ var isRovoDevOrJiraCodingAgent = isRovoDev || agent.creator_type === 'ROVO_DEV' && agent.name.toLowerCase() === 'jira coding agent';
204
+ var shouldShowConversationStarters = (isRovoDevOrJiraCodingAgent && _featureGateJsClient.default.getExperimentValue('jira_hide_conversations_for_jca', 'isEnabled', false) ? false : !isRovoDev) && !((0, _platformFeatureFlags.fg)('jira_ai_hide_conversation_starters_profilecard') && hideConversationStarters);
205
+ var shouldShowAgentActions = (isRovoDevOrJiraCodingAgent && _featureGateJsClient.default.getExperimentValue('jira_hide_conversations_for_jca', 'isEnabled', false) ? false : !isRovoDev) && !(hideAgentActions && (0, _platformFeatureFlags.fg)('issue_view_agent_discovery_fast_follows'));
200
206
  return /*#__PURE__*/_react.default.createElement(_AgentProfileCardWrapper.AgentProfileCardWrapper, null, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
201
207
  xcss: (0, _platformFeatureFlags.fg)('enable_teams_t26_design_drop_core_experiences') ? styles.cardContainerStyles : styles.cardContainerStylesDEPRECATED
202
208
  }, /*#__PURE__*/_react.default.createElement(_GeneratedAvatar.AgentBanner, {
@@ -1,455 +1,19 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- var _typeof = require("@babel/runtime/helpers/typeof");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.default = exports.TeamProfileCardTriggerInternal = void 0;
9
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
- var _react = _interopRequireWildcard(require("react"));
18
- var _reactIntl = require("react-intl");
19
- var _giveKudos = require("@atlaskit/give-kudos");
20
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
- var _popup = _interopRequireDefault(require("@atlaskit/popup"));
22
- var _compiled = require("@atlaskit/primitives/compiled");
23
- var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
24
- var _constants = require("@atlaskit/theme/constants");
25
- var _filterActions2 = _interopRequireDefault(require("../../internal/filterActions"));
26
- var _messages = _interopRequireDefault(require("../../messages"));
27
- var _analytics = require("../../util/analytics");
28
- var _click = require("../../util/click");
29
- var _config = require("../../util/config");
30
- var _performance = require("../../util/performance");
31
- var _Error = require("../Error");
32
- var _lazyTeamProfileCard = require("./lazyTeamProfileCard");
33
- var _TeamLoadingState = _interopRequireDefault(require("./TeamLoadingState"));
34
- function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(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 (var _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); }
35
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
36
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
- function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
38
- function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
39
- var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureComponent) {
40
- function TeamProfileCardTriggerInternal() {
41
- var _this;
42
- (0, _classCallCheck2.default)(this, TeamProfileCardTriggerInternal);
43
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
44
- args[_key] = arguments[_key];
45
- }
46
- _this = _callSuper(this, TeamProfileCardTriggerInternal, [].concat(args));
47
- (0, _defineProperty2.default)(_this, "_isMounted", false);
48
- (0, _defineProperty2.default)(_this, "showTimer", 0);
49
- (0, _defineProperty2.default)(_this, "hideTimer", 0);
50
- (0, _defineProperty2.default)(_this, "openedByHover", false);
51
- (0, _defineProperty2.default)(_this, "openTime", 0);
52
- (0, _defineProperty2.default)(_this, "fireAnalytics", function (eventKey) {
53
- // Don't fire any analytics if the component is unmounted
54
- if (!_this._isMounted) {
55
- return;
56
- }
57
- if (_this.props.fireEvent) {
58
- var _this$props;
59
- for (var _len2 = arguments.length, attributes = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
60
- attributes[_key2 - 1] = arguments[_key2];
61
- }
62
- (_this$props = _this.props).fireEvent.apply(_this$props, [eventKey].concat(attributes));
63
- }
64
- });
65
- (0, _defineProperty2.default)(_this, "fireAnalyticsWithDuration", function (eventKey, generator) {
66
- var duration = (0, _performance.getPageTime)() - _this.openTime;
67
- var attributes = generator(duration);
68
- _this.fireAnalytics(eventKey, attributes);
69
- });
70
- (0, _defineProperty2.default)(_this, "hideProfilecard", function () {
71
- var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
72
- clearTimeout(_this.showTimer);
73
- clearTimeout(_this.hideTimer);
74
- _this.hideTimer = window.setTimeout(function () {
75
- _this.setState({
76
- visible: false
77
- });
78
- }, delay);
79
- });
80
- (0, _defineProperty2.default)(_this, "showProfilecard", function () {
81
- var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
82
- clearTimeout(_this.hideTimer);
83
- clearTimeout(_this.showTimer);
84
- _this.showTimer = window.setTimeout(function () {
85
- if (!_this.state.visible) {
86
- _this.clientFetchProfile();
87
- _this.openTime = (0, _performance.getPageTime)();
88
- _this.setState({
89
- visible: true
90
- });
91
- }
92
- }, delay);
93
- });
94
- (0, _defineProperty2.default)(_this, "onClick", function (event) {
95
- if (_this.props.triggerLinkType === 'link') {
96
- // We want to prevent navigation occurring on basic click, but it's important that
97
- // cmd+click, ctrl+click, etc. still work as expected.
98
- if ((0, _click.isBasicClick)(event)) {
99
- event.preventDefault();
100
- }
101
- }
102
- if (_this.props.triggerLinkType === 'clickable-link') {
103
- if (_this.props.viewProfileOnClick) {
104
- _this.props.viewProfileOnClick(event);
105
- }
106
- }
107
- if (_this.props.trigger !== 'hover') {
108
- _this.openedByHover = false;
109
- _this.showProfilecard(0);
110
- if (!_this.state.visible) {
111
- _this.fireAnalytics('ui.teamProfileCard.triggered', _objectSpread(_objectSpread({
112
- method: 'click'
113
- }, _analytics.PACKAGE_META_DATA), {}, {
114
- firedAt: Math.round((0, _performance.getPageTime)()),
115
- teamId: _this.props.teamId
116
- }));
117
- }
118
- }
119
- });
120
- (0, _defineProperty2.default)(_this, "onMouseEnter", function () {
121
- if (_this.props.trigger === 'click') {
122
- return;
123
- }
124
- if (!_this.state.visible) {
125
- _this.openedByHover = true;
126
- _this.fireAnalytics('ui.teamProfileCard.triggered', _objectSpread(_objectSpread({
127
- method: 'hover'
128
- }, _analytics.PACKAGE_META_DATA), {}, {
129
- firedAt: Math.round((0, _performance.getPageTime)()),
130
- teamId: _this.props.teamId
131
- }));
132
- }
133
- _this.showProfilecard(_config.DELAY_MS_SHOW);
134
- });
135
- (0, _defineProperty2.default)(_this, "onMouseLeave", function () {
136
- if (_this.props.trigger === 'click') {
137
- return;
138
- }
139
- if (_this.openedByHover) {
140
- _this.hideProfilecard(_config.DELAY_MS_HIDE);
141
- }
142
- });
143
- (0, _defineProperty2.default)(_this, "onKeyPress", function (event) {
144
- if (event.key === 'Enter' || event.key === ' ') {
145
- event.preventDefault();
146
- _this.setState({
147
- isTriggeredByKeyboard: true
148
- });
149
- _this.showProfilecard(0);
150
- if (!_this.state.visible) {
151
- _this.fireAnalytics('ui.teamProfileCard.triggered', _objectSpread({
152
- method: 'click',
153
- firedAt: Math.round((0, _performance.getPageTime)()),
154
- teamId: _this.props.teamId
155
- }, _analytics.PACKAGE_META_DATA));
156
- }
157
- }
158
- });
159
- (0, _defineProperty2.default)(_this, "onClose", function () {
160
- _this.hideProfilecard();
161
- _this.setState({
162
- isTriggeredByKeyboard: false
163
- });
164
- });
165
- (0, _defineProperty2.default)(_this, "openKudosDrawer", function () {
166
- _this.hideProfilecard(_config.DELAY_MS_HIDE);
167
- _this.setState({
168
- kudosDrawerOpen: true
169
- });
170
- });
171
- (0, _defineProperty2.default)(_this, "closeKudosDrawer", function () {
172
- _this.setState({
173
- kudosDrawerOpen: false
174
- });
175
- });
176
- (0, _defineProperty2.default)(_this, "kudosUrl", function () {
177
- var recipientId = _this.props.teamId && "&recipientId=".concat(_this.props.teamId) || '';
178
- var cloudId = _this.props.cloudId && "&cloudId=".concat(_this.props.cloudId) || '';
179
- return "".concat(_this.state.teamCentralBaseUrl, "/kudos/give?type=team").concat(recipientId).concat(cloudId);
180
- });
181
- (0, _defineProperty2.default)(_this, "stopPropagation", function (event) {
182
- // We need to stop propagation when users click on the card, so that it
183
- // doesn't trigger any special effects that occur when clicking the trigger.
184
- event.stopPropagation();
185
- });
186
- (0, _defineProperty2.default)(_this, "triggerListeners", {
187
- onClick: _this.onClick,
188
- onMouseEnter: _this.onMouseEnter,
189
- onMouseLeave: _this.onMouseLeave
190
- });
191
- (0, _defineProperty2.default)(_this, "cardListeners", {
192
- onClick: _this.stopPropagation,
193
- onMouseEnter: _this.onMouseEnter,
194
- onMouseLeave: _this.onMouseLeave
195
- });
196
- (0, _defineProperty2.default)(_this, "state", {
197
- visible: false,
198
- isLoading: undefined,
199
- hasError: false,
200
- error: null,
201
- data: null,
202
- shouldShowGiveKudos: false,
203
- teamCentralBaseUrl: undefined,
204
- kudosDrawerOpen: false,
205
- isTriggeredByKeyboard: false
206
- });
207
- (0, _defineProperty2.default)(_this, "clientFetchProfile", function () {
208
- var _this$props2 = _this.props,
209
- orgId = _this$props2.orgId,
210
- teamId = _this$props2.teamId;
211
- var isLoading = _this.state.isLoading;
212
- if (isLoading === true) {
213
- // don't fetch data when fetching is in process
214
- return;
215
- }
216
- _this.setState({
217
- isLoading: true,
218
- data: null
219
- }, function () {
220
- var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, _this.fireAnalytics), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
221
- withOrgContext: true,
222
- withSiteContext: true
223
- })]);
224
- requests.then(function (res) {
225
- var _this2;
226
- return (_this2 = _this).handleClientSuccess.apply(_this2, (0, _toConsumableArray2.default)(res));
227
- }, function (err) {
228
- return _this.handleClientError(err);
229
- }).catch(function (err) {
230
- return _this.handleClientError(err);
231
- });
232
- });
233
- });
234
- (0, _defineProperty2.default)(_this, "onErrorBoundary", function () {
235
- _this.fireAnalytics('ui.teamProfileCard.rendered.errorBoundary', _objectSpread(_objectSpread({}, _analytics.PACKAGE_META_DATA), {}, {
236
- firedAt: Math.round((0, _performance.getPageTime)()),
237
- duration: 0
238
- }));
239
- _this.setState({
240
- renderError: true
241
- });
242
- });
243
- (0, _defineProperty2.default)(_this, "renderProfileCard", function () {
244
- var _this$props3 = _this.props,
245
- generateUserLink = _this$props3.generateUserLink,
246
- onUserClick = _this$props3.onUserClick,
247
- viewingUserId = _this$props3.viewingUserId,
248
- viewProfileLink = _this$props3.viewProfileLink,
249
- viewProfileOnClick = _this$props3.viewProfileOnClick;
250
- var _this$state = _this.state,
251
- data = _this$state.data,
252
- error = _this$state.error,
253
- hasError = _this$state.hasError,
254
- isLoading = _this$state.isLoading;
255
- var newProps = {
256
- clientFetchProfile: _this.clientFetchProfile,
257
- actions: _this.filterActions(),
258
- analytics: _this.fireAnalyticsWithDuration,
259
- team: data || undefined,
260
- generateUserLink: generateUserLink,
261
- onUserClick: onUserClick,
262
- viewingUserId: viewingUserId,
263
- viewProfileLink: viewProfileLink,
264
- viewProfileOnClick: viewProfileOnClick
265
- };
266
- return /*#__PURE__*/_react.default.createElement("div", _this.cardListeners, _this.state.visible && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
267
- fallback: /*#__PURE__*/_react.default.createElement(_TeamLoadingState.default, {
268
- analytics: _this.fireAnalyticsWithDuration
269
- })
270
- }, /*#__PURE__*/_react.default.createElement(_lazyTeamProfileCard.TeamProfileCardLazy, (0, _extends2.default)({}, newProps, {
271
- isLoading: isLoading,
272
- hasError: hasError,
273
- errorType: error,
274
- isTriggeredByKeyboard: _this.state.isTriggeredByKeyboard
275
- }))));
276
- });
277
- (0, _defineProperty2.default)(_this, "renderKudosLauncher", function () {
278
- return _this.state.shouldShowGiveKudos && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
279
- fallback: null
280
- }, /*#__PURE__*/_react.default.createElement(_giveKudos.GiveKudosLauncherLazy, {
281
- isOpen: _this.state.kudosDrawerOpen,
282
- recipient: {
283
- type: _giveKudos.KudosType.TEAM,
284
- recipientId: _this.props.teamId
285
- },
286
- analyticsSource: "team-profile-card",
287
- teamCentralBaseUrl: _this.state.teamCentralBaseUrl,
288
- cloudId: _this.props.cloudId || '',
289
- addFlag: _this.props.addFlag,
290
- onClose: _this.closeKudosDrawer
291
- }));
292
- });
293
- (0, _defineProperty2.default)(_this, "renderTrigger", function (triggerProps) {
294
- var _this$props4 = _this.props,
295
- children = _this$props4.children,
296
- intl = _this$props4.intl,
297
- triggerLinkType = _this$props4.triggerLinkType,
298
- viewProfileLink = _this$props4.viewProfileLink;
299
- if (triggerLinkType === 'none') {
300
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _this.renderKudosLauncher(), /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
301
- as: "span",
302
- role: "button",
303
- testId: "team-profilecard-trigger-wrapper",
304
- tabIndex: 0,
305
- "aria-label": intl.formatMessage(_messages.default.teamProfileCardAriaLabel),
306
- onKeyUp: _this.onKeyPress
307
- }, triggerProps, _this.triggerListeners), children));
308
- }
309
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _this.renderKudosLauncher(), /*#__PURE__*/_react.default.createElement("a", (0, _extends2.default)({
310
- "data-testid": "team-profilecard-trigger-wrapper"
311
- // eslint-disable-next-line @atlaskit/ui-styling-standard/enforce-style-prop -- Ignored via go/DSP-18766
312
- ,
313
- style: {
314
- color: 'initial',
315
- textDecoration: 'none'
316
- },
317
- href: viewProfileLink
318
- }, triggerProps, {
319
- ref: triggerProps.ref
320
- }, _this.triggerListeners), children));
321
- });
322
- return _this;
323
- }
324
- (0, _inherits2.default)(TeamProfileCardTriggerInternal, _React$PureComponent);
325
- return (0, _createClass2.default)(TeamProfileCardTriggerInternal, [{
326
- key: "componentDidMount",
327
- value: function componentDidMount() {
328
- this._isMounted = true;
329
- }
330
- }, {
331
- key: "componentDidUpdate",
332
- value: function componentDidUpdate(prevProps) {
333
- var _this$props5 = this.props,
334
- orgId = _this$props5.orgId,
335
- teamId = _this$props5.teamId,
336
- resourceClient = _this$props5.resourceClient;
337
- var visible = this.state.visible;
338
-
339
- // just re-fetching data when the card opens
340
- if (visible && (teamId !== prevProps.teamId || orgId !== prevProps.orgId || resourceClient !== prevProps.resourceClient)) {
341
- this.setState({
342
- isLoading: undefined
343
- }, this.clientFetchProfile);
344
- }
345
- }
346
- }, {
347
- key: "componentWillUnmount",
348
- value: function componentWillUnmount() {
349
- this._isMounted = false;
350
- clearTimeout(this.showTimer);
351
- clearTimeout(this.hideTimer);
352
- }
353
- }, {
354
- key: "handleClientSuccess",
355
- value: function handleClientSuccess(team, shouldShowGiveKudos, teamCentralBaseUrl) {
356
- if (!this._isMounted) {
357
- return;
358
- }
359
- this.setState({
360
- isLoading: false,
361
- hasError: false,
362
- data: team,
363
- shouldShowGiveKudos: shouldShowGiveKudos,
364
- teamCentralBaseUrl: teamCentralBaseUrl
365
- });
366
- }
367
- }, {
368
- key: "handleClientError",
369
- value: function handleClientError(err) {
370
- if (!this._isMounted) {
371
- return;
372
- }
373
- this.setState({
374
- isLoading: false,
375
- hasError: true,
376
- error: err
377
- });
378
- }
379
- }, {
380
- key: "filterActions",
381
- value: function filterActions() {
382
- var _this3 = this;
383
- var actions = (0, _filterActions2.default)(this.props.actions, this.state.data);
384
- if (this.state.shouldShowGiveKudos) {
385
- var kudosAction = {
386
- label: /*#__PURE__*/_react.default.createElement(_reactIntl.FormattedMessage, _messages.default.giveKudosButton),
387
- id: 'give-kudos',
388
- callback: function callback() {
389
- _this3.openKudosDrawer();
390
- },
391
- link: this.kudosUrl()
392
- };
393
- return actions.concat([kudosAction]);
394
- }
395
- return actions;
396
- }
397
- }, {
398
- key: "renderPopup",
399
- value: function renderPopup() {
400
- var _this4 = this;
401
- if (this.state.renderError) {
402
- return this.props.children;
403
- }
404
- return /*#__PURE__*/_react.default.createElement(_Error.ErrorBoundary, {
405
- onError: this.onErrorBoundary
406
- }, /*#__PURE__*/_react.default.createElement(_popup.default, {
407
- isOpen: !!this.state.visible,
408
- onClose: this.onClose,
409
- placement: this.props.position,
410
- content: this.renderProfileCard,
411
- trigger: function trigger(triggerProps) {
412
- return _this4.renderTrigger(triggerProps);
413
- },
414
- zIndex: _constants.layers.modal(),
415
- shouldFlip: true,
416
- autoFocus: this.props.trigger !== 'hover' && !this.openedByHover,
417
- shouldRenderToParent: this.props.shouldRenderToParent
418
- }));
419
- }
420
- }, {
421
- key: "render",
422
- value: function render() {
423
- if (this.props.children) {
424
- return this.renderPopup();
425
- } else {
426
- throw new Error('Component "TeamProfileCardTrigger" must have "children" property');
427
- }
428
- }
429
- }]);
430
- }(_react.default.PureComponent);
431
- (0, _defineProperty2.default)(TeamProfileCardTriggerInternal, "defaultProps", {
432
- actions: [],
433
- trigger: 'hover',
434
- position: 'bottom-start',
435
- triggerLinkType: 'link',
436
- shouldRenderToParent: true
437
- });
438
- var TeamProfileCardTrigger = function TeamProfileCardTrigger(props) {
439
- var _useAnalyticsEvents = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
440
- fireEvent = _useAnalyticsEvents.fireEvent;
441
- if ((0, _platformFeatureFlags.fg)('people-teams-deprecate-profilecard-teams')) {
442
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, props.children);
443
- }
444
- return /*#__PURE__*/_react.default.createElement(TeamProfileCardTriggerInternal, (0, _extends2.default)({}, props, {
445
- fireEvent: fireEvent
446
- }));
447
- };
448
-
7
+ exports.default = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
449
9
  /**
10
+ * @private
450
11
  * @deprecated This component is deprecated and provides no functionality.
451
- * It now simply renders its children without any profile card behavior.
452
- * Please use `@atlassian/team-profilecard` instead for team profile card functionality.
12
+ * It simply renders its children without any profile card behavior.
13
+ * Use `@atlassian/team-profilecard` instead for team profile card functionality.
453
14
  */
454
- var _default_1 = (0, _reactIntl.injectIntl)(TeamProfileCardTrigger);
455
- var _default = exports.default = _default_1;
15
+ var TeamProfileCardTrigger = function TeamProfileCardTrigger(_ref) {
16
+ var children = _ref.children;
17
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, children);
18
+ };
19
+ var _default = exports.default = TeamProfileCardTrigger;
@@ -12,7 +12,7 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
12
12
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
13
  var PACKAGE_META_DATA = exports.PACKAGE_META_DATA = {
14
14
  packageName: (_process$env$_PACKAGE = "@atlaskit/profilecard") !== null && _process$env$_PACKAGE !== void 0 ? _process$env$_PACKAGE : '',
15
- packageVersion: (_process$env$_PACKAGE2 = "26.2.3") !== null && _process$env$_PACKAGE2 !== void 0 ? _process$env$_PACKAGE2 : ''
15
+ packageVersion: (_process$env$_PACKAGE2 = "26.3.0") !== null && _process$env$_PACKAGE2 !== void 0 ? _process$env$_PACKAGE2 : ''
16
16
  };
17
17
  var TEAM_SUBJECT = 'teamProfileCard';
18
18
  var USER_SUBJECT = 'profilecard';
@@ -31,7 +31,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
31
31
  actionSubjectId: actionSubjectId,
32
32
  attributes: _objectSpread(_objectSpread({
33
33
  packageName: "@atlaskit/profilecard",
34
- packageVersion: "26.2.3"
34
+ packageVersion: "26.3.0"
35
35
  }, attributes), {}, {
36
36
  firedAt: Math.round((0, _performance.getPageTime)())
37
37
  })
@@ -15,8 +15,6 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/ge
15
15
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
17
  var _react = _interopRequireDefault(require("react"));
18
- var _reactDom = _interopRequireDefault(require("react-dom"));
19
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
20
18
  var _compiled = require("@atlaskit/primitives/compiled");
21
19
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
22
20
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
@@ -33,12 +31,10 @@ function withOuterListeners(Component) {
33
31
  }
34
32
  _this = _callSuper(this, WithOuterListeners, [].concat(args));
35
33
  (0, _defineProperty2.default)(_this, "wrapperRef", /*#__PURE__*/_react.default.createRef());
36
- (0, _defineProperty2.default)(_this, "useWrapperDiv", (0, _platformFeatureFlags.fg)('teams_app_react_19_upgrade'));
37
34
  (0, _defineProperty2.default)(_this, "handleClick", function (evt) {
38
35
  var handleClickOutside = _this.props.handleClickOutside;
39
36
  if (handleClickOutside) {
40
- var domNode = _this.useWrapperDiv ? _this.wrapperRef.current : _reactDom.default.findDOMNode(_this); // eslint-disable-line react/no-find-dom-node
41
-
37
+ var domNode = _this.wrapperRef.current;
42
38
  if (!domNode || evt.target instanceof Node && !domNode.contains(evt.target)) {
43
39
  handleClickOutside();
44
40
  }
@@ -76,13 +72,10 @@ function withOuterListeners(Component) {
76
72
  }, {
77
73
  key: "render",
78
74
  value: function render() {
79
- if (this.useWrapperDiv) {
80
- return /*#__PURE__*/_react.default.createElement(_compiled.Box, {
81
- ref: this.wrapperRef,
82
- xcss: styles.displayContents
83
- }, /*#__PURE__*/_react.default.createElement(Component, this.props));
84
- }
85
- return /*#__PURE__*/_react.default.createElement(Component, this.props);
75
+ return /*#__PURE__*/_react.default.createElement(_compiled.Box, {
76
+ ref: this.wrapperRef,
77
+ xcss: styles.displayContents
78
+ }, /*#__PURE__*/_react.default.createElement(Component, this.props));
86
79
  }
87
80
  }]);
88
81
  }(_react.default.PureComponent);
@@ -6,7 +6,7 @@ const ORG_ID_FROM_CLOUD_ID_QUERY = `query OrgIdFromCloudId($cloudId: ID!) {
6
6
  }`;
7
7
  const addHeaders = headers => {
8
8
  headers.append('atl-client-name', "@atlaskit/profilecard");
9
- headers.append('atl-client-version', "26.2.3");
9
+ headers.append('atl-client-version', "26.3.0");
10
10
  return headers;
11
11
  };
12
12
  export async function getOrgIdForCloudIdFromAGG(url, cloudId) {
@@ -78,7 +78,7 @@ export const addHeaders = headers => {
78
78
  headers.append('X-ExperimentalApi', 'teams-beta');
79
79
  headers.append('X-ExperimentalApi', 'team-members-beta');
80
80
  headers.append('atl-client-name', "@atlaskit/profilecard");
81
- headers.append('atl-client-version', "26.2.3");
81
+ headers.append('atl-client-version', "26.3.0");
82
82
  return headers;
83
83
  };
84
84
  export async function getTeamFromAGG(url, teamId, siteId) {
@@ -3,6 +3,7 @@ import "./AgentProfileCard.compiled.css";
3
3
  import { ax, ix } from "@compiled/react/runtime";
4
4
  import React, { useCallback, useEffect, useState } from 'react';
5
5
  import { useIntl } from 'react-intl';
6
+ import FeatureGates from '@atlaskit/feature-gate-js-client';
6
7
  import InformationCircleIcon from '@atlaskit/icon/core/information-circle';
7
8
  import { fg } from '@atlaskit/platform-feature-flags';
8
9
  import { Box, Flex, Stack, Text } from '@atlaskit/primitives/compiled';
@@ -145,8 +146,13 @@ const AgentProfileCard = ({
145
146
  // them - once the rename backfill runs, the JCA name becomes 'Jira Coding Agent' and
146
147
  // isRovoDev naturally becomes false, falling through to the agentNamedId avatar lookup.
147
148
  const isRovoDev = agent.creator_type === 'ROVO_DEV' && agent.name.toLowerCase() === 'rovo dev';
148
- const shouldShowConversationStarters = !isRovoDev && !(fg('jira_ai_hide_conversation_starters_profilecard') && hideConversationStarters);
149
- const shouldShowAgentActions = !isRovoDev && !(hideAgentActions && fg('issue_view_agent_discovery_fast_follows'));
149
+
150
+ // Currently, both Jira Coding Agent and Rovo Dev does not support conversations and chat.
151
+ // We previously disabled these for Rovo Dev but we forgot to do the same changes for JCA
152
+ // They are actually the same, just different names.
153
+ const isRovoDevOrJiraCodingAgent = isRovoDev || agent.creator_type === 'ROVO_DEV' && agent.name.toLowerCase() === 'jira coding agent';
154
+ const shouldShowConversationStarters = (isRovoDevOrJiraCodingAgent && FeatureGates.getExperimentValue('jira_hide_conversations_for_jca', 'isEnabled', false) ? false : !isRovoDev) && !(fg('jira_ai_hide_conversation_starters_profilecard') && hideConversationStarters);
155
+ const shouldShowAgentActions = (isRovoDevOrJiraCodingAgent && FeatureGates.getExperimentValue('jira_hide_conversations_for_jca', 'isEnabled', false) ? false : !isRovoDev) && !(hideAgentActions && fg('issue_view_agent_discovery_fast_follows'));
150
156
  return /*#__PURE__*/React.createElement(AgentProfileCardWrapper, null, /*#__PURE__*/React.createElement(Box, {
151
157
  xcss: fg('enable_teams_t26_design_drop_core_experiences') ? styles.cardContainerStyles : styles.cardContainerStylesDEPRECATED
152
158
  }, /*#__PURE__*/React.createElement(AgentBanner, {