@atlaskit/profilecard 24.14.1 → 24.16.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.
Files changed (87) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/__tests__/vr-tests/agent-profilecard.vr.tsx +5 -5
  3. package/__tests__/vr-tests/user-profilecard.vr.tsx +30 -30
  4. package/dist/cjs/client/ProfileCardClient.js +10 -10
  5. package/dist/cjs/client/RovoAgentCardClient.js +172 -56
  6. package/dist/cjs/client/TeamProfileCardClient.js +44 -14
  7. package/dist/cjs/client/UserProfileCardClient.js +2 -9
  8. package/dist/cjs/client/errorUtils.js +83 -5
  9. package/dist/cjs/components/Agent/Actions.js +20 -9
  10. package/dist/cjs/components/Agent/ActionsCompiled.js +18 -8
  11. package/dist/cjs/components/Agent/AgentDeleteConfirmationModal.js +3 -1
  12. package/dist/cjs/components/Agent/AgentProfileCard.js +24 -14
  13. package/dist/cjs/components/Agent/AgentProfileCardCompiled.js +23 -8
  14. package/dist/cjs/components/Agent/AgentProfileCardResourced.js +8 -5
  15. package/dist/cjs/components/Agent/AgentProfileCardTrigger.js +6 -2
  16. package/dist/cjs/components/Agent/hooks/useAgentActions.js +61 -30
  17. package/dist/cjs/components/Team/TeamForbiddenErrorState.js +21 -6
  18. package/dist/cjs/components/Team/TeamLoadingState.js +21 -6
  19. package/dist/cjs/components/Team/TeamProfileCard.js +155 -60
  20. package/dist/cjs/components/Team/TeamProfileCardTrigger.js +104 -33
  21. package/dist/cjs/components/common/ProfileCardTrigger.js +3 -1
  22. package/dist/cjs/components/team-profile-card/main.js +18 -9
  23. package/dist/cjs/components/team-profile-card/team-connections/main.js +36 -17
  24. package/dist/cjs/util/analytics.js +55 -0
  25. package/dist/es2019/client/ProfileCardClient.js +10 -10
  26. package/dist/es2019/client/RovoAgentCardClient.js +186 -58
  27. package/dist/es2019/client/TeamProfileCardClient.js +49 -16
  28. package/dist/es2019/client/UserProfileCardClient.js +3 -10
  29. package/dist/es2019/client/errorUtils.js +84 -3
  30. package/dist/es2019/components/Agent/Actions.js +21 -9
  31. package/dist/es2019/components/Agent/ActionsCompiled.js +19 -8
  32. package/dist/es2019/components/Agent/AgentDeleteConfirmationModal.js +3 -1
  33. package/dist/es2019/components/Agent/AgentProfileCard.js +24 -13
  34. package/dist/es2019/components/Agent/AgentProfileCardCompiled.js +23 -9
  35. package/dist/es2019/components/Agent/AgentProfileCardResourced.js +9 -5
  36. package/dist/es2019/components/Agent/AgentProfileCardTrigger.js +7 -2
  37. package/dist/es2019/components/Agent/hooks/useAgentActions.js +62 -30
  38. package/dist/es2019/components/Team/TeamForbiddenErrorState.js +17 -6
  39. package/dist/es2019/components/Team/TeamLoadingState.js +17 -6
  40. package/dist/es2019/components/Team/TeamProfileCard.js +144 -54
  41. package/dist/es2019/components/Team/TeamProfileCardTrigger.js +74 -10
  42. package/dist/es2019/components/common/ProfileCardTrigger.js +3 -1
  43. package/dist/es2019/components/team-profile-card/main.js +19 -9
  44. package/dist/es2019/components/team-profile-card/team-connections/main.js +38 -17
  45. package/dist/es2019/util/analytics.js +55 -0
  46. package/dist/esm/client/ProfileCardClient.js +10 -10
  47. package/dist/esm/client/RovoAgentCardClient.js +174 -58
  48. package/dist/esm/client/TeamProfileCardClient.js +46 -16
  49. package/dist/esm/client/UserProfileCardClient.js +3 -10
  50. package/dist/esm/client/errorUtils.js +82 -4
  51. package/dist/esm/components/Agent/Actions.js +20 -9
  52. package/dist/esm/components/Agent/ActionsCompiled.js +18 -8
  53. package/dist/esm/components/Agent/AgentDeleteConfirmationModal.js +3 -1
  54. package/dist/esm/components/Agent/AgentProfileCard.js +25 -13
  55. package/dist/esm/components/Agent/AgentProfileCardCompiled.js +24 -9
  56. package/dist/esm/components/Agent/AgentProfileCardResourced.js +8 -5
  57. package/dist/esm/components/Agent/AgentProfileCardTrigger.js +6 -2
  58. package/dist/esm/components/Agent/hooks/useAgentActions.js +61 -30
  59. package/dist/esm/components/Team/TeamForbiddenErrorState.js +22 -7
  60. package/dist/esm/components/Team/TeamLoadingState.js +22 -7
  61. package/dist/esm/components/Team/TeamProfileCard.js +156 -61
  62. package/dist/esm/components/Team/TeamProfileCardTrigger.js +105 -34
  63. package/dist/esm/components/common/ProfileCardTrigger.js +3 -1
  64. package/dist/esm/components/team-profile-card/main.js +18 -9
  65. package/dist/esm/components/team-profile-card/team-connections/main.js +36 -17
  66. package/dist/esm/util/analytics.js +55 -0
  67. package/dist/types/client/ProfileCardClient.d.ts +5 -5
  68. package/dist/types/client/RovoAgentCardClient.d.ts +5 -4
  69. package/dist/types/client/TeamProfileCardClient.d.ts +2 -1
  70. package/dist/types/client/errorUtils.d.ts +2 -1
  71. package/dist/types/client/types.d.ts +14 -2
  72. package/dist/types/components/Team/TeamForbiddenErrorState.d.ts +2 -1
  73. package/dist/types/components/Team/TeamLoadingState.d.ts +2 -1
  74. package/dist/types/components/Team/TeamProfileCardTrigger.d.ts +7 -2
  75. package/dist/types/types.d.ts +2 -0
  76. package/dist/types/util/analytics.d.ts +46 -2
  77. package/dist/types-ts4.5/client/ProfileCardClient.d.ts +5 -5
  78. package/dist/types-ts4.5/client/RovoAgentCardClient.d.ts +5 -4
  79. package/dist/types-ts4.5/client/TeamProfileCardClient.d.ts +2 -1
  80. package/dist/types-ts4.5/client/errorUtils.d.ts +2 -1
  81. package/dist/types-ts4.5/client/types.d.ts +14 -2
  82. package/dist/types-ts4.5/components/Team/TeamForbiddenErrorState.d.ts +2 -1
  83. package/dist/types-ts4.5/components/Team/TeamLoadingState.d.ts +2 -1
  84. package/dist/types-ts4.5/components/Team/TeamProfileCardTrigger.d.ts +7 -2
  85. package/dist/types-ts4.5/types.d.ts +2 -0
  86. package/dist/types-ts4.5/util/analytics.d.ts +46 -2
  87. package/package.json +8 -8
@@ -19,8 +19,10 @@ var _reactIntlNext = require("react-intl-next");
19
19
  var _analyticsNext = require("@atlaskit/analytics-next");
20
20
  var _giveKudos = require("@atlaskit/give-kudos");
21
21
  var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
22
+ var _platformFeatureFlagsReact = require("@atlaskit/platform-feature-flags-react");
22
23
  var _popup = _interopRequireDefault(require("@atlaskit/popup"));
23
24
  var _compiled = require("@atlaskit/primitives/compiled");
25
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
24
26
  var _constants = require("@atlaskit/theme/constants");
25
27
  var _filterActions2 = _interopRequireDefault(require("../../internal/filterActions"));
26
28
  var _messages = _interopRequireDefault(require("../../messages"));
@@ -32,6 +34,8 @@ var _Error = require("../Error");
32
34
  var _lazyTeamProfileCard = require("./lazyTeamProfileCard");
33
35
  var _TeamLoadingState = _interopRequireDefault(require("./TeamLoadingState"));
34
36
  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); }
37
+ 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; }
38
+ 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; }
35
39
  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)); }
36
40
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
37
41
  var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureComponent) {
@@ -56,10 +60,28 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
56
60
  (0, _analytics.fireEvent)(_this.props.createAnalyticsEvent, payload);
57
61
  }
58
62
  });
63
+ (0, _defineProperty2.default)(_this, "fireAnalyticsNext", function (eventKey) {
64
+ // Don't fire any analytics if the component is unmounted
65
+ if (!_this._isMounted) {
66
+ return;
67
+ }
68
+ if (_this.props.fireEvent) {
69
+ var _this$props;
70
+ for (var _len2 = arguments.length, attributes = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
71
+ attributes[_key2 - 1] = arguments[_key2];
72
+ }
73
+ (_this$props = _this.props).fireEvent.apply(_this$props, [eventKey].concat(attributes));
74
+ }
75
+ });
59
76
  (0, _defineProperty2.default)(_this, "fireAnalyticsWithDuration", function (generator) {
60
77
  var event = generator((0, _performance.getPageTime)() - _this.openTime);
61
78
  _this.fireAnalytics(event);
62
79
  });
80
+ (0, _defineProperty2.default)(_this, "fireAnalyticsWithDurationNext", function (eventKey, generator) {
81
+ var duration = (0, _performance.getPageTime)() - _this.openTime;
82
+ var attributes = generator(duration);
83
+ _this.fireAnalyticsNext(eventKey, attributes);
84
+ });
63
85
  (0, _defineProperty2.default)(_this, "hideProfilecard", function () {
64
86
  var delay = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
65
87
  clearTimeout(_this.showTimer);
@@ -101,7 +123,16 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
101
123
  _this.openedByHover = false;
102
124
  _this.showProfilecard(0);
103
125
  if (!_this.state.visible) {
104
- _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'click', _this.props.teamId));
126
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
127
+ _this.fireAnalyticsNext('ui.teamProfileCard.triggered', _objectSpread(_objectSpread({
128
+ method: 'click'
129
+ }, _analytics.PACKAGE_META_DATA), {}, {
130
+ firedAt: Math.round((0, _performance.getPageTime)()),
131
+ teamId: _this.props.teamId
132
+ }));
133
+ } else {
134
+ _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'click', _this.props.teamId));
135
+ }
105
136
  }
106
137
  }
107
138
  });
@@ -111,7 +142,16 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
111
142
  }
112
143
  if (!_this.state.visible) {
113
144
  _this.openedByHover = true;
114
- _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'hover', _this.props.teamId));
145
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
146
+ _this.fireAnalyticsNext('ui.teamProfileCard.triggered', _objectSpread(_objectSpread({
147
+ method: 'hover'
148
+ }, _analytics.PACKAGE_META_DATA), {}, {
149
+ firedAt: Math.round((0, _performance.getPageTime)()),
150
+ teamId: _this.props.teamId
151
+ }));
152
+ } else {
153
+ _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'hover', _this.props.teamId));
154
+ }
115
155
  }
116
156
  _this.showProfilecard(_config.DELAY_MS_SHOW);
117
157
  });
@@ -131,7 +171,15 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
131
171
  });
132
172
  _this.showProfilecard(0);
133
173
  if (!_this.state.visible) {
134
- _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'click', _this.props.teamId));
174
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
175
+ _this.fireAnalyticsNext('ui.teamProfileCard.triggered', _objectSpread({
176
+ method: 'click',
177
+ firedAt: Math.round((0, _performance.getPageTime)()),
178
+ teamId: _this.props.teamId
179
+ }, _analytics.PACKAGE_META_DATA));
180
+ } else {
181
+ _this.fireAnalytics((0, _analytics.cardTriggered)('team', 'click', _this.props.teamId));
182
+ }
135
183
  }
136
184
  }
137
185
  });
@@ -184,9 +232,9 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
184
232
  isTriggeredByKeyboard: false
185
233
  });
186
234
  (0, _defineProperty2.default)(_this, "clientFetchProfile", function () {
187
- var _this$props = _this.props,
188
- orgId = _this$props.orgId,
189
- teamId = _this$props.teamId;
235
+ var _this$props2 = _this.props,
236
+ orgId = _this$props2.orgId,
237
+ teamId = _this$props2.teamId;
190
238
  var isLoading = _this.state.isLoading;
191
239
  if (isLoading === true) {
192
240
  // don't fetch data when fetching is in process
@@ -199,13 +247,20 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
199
247
  var fireEvent = function fireEvent(event) {
200
248
  _this.fireAnalytics(event);
201
249
  };
202
- var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
250
+ var fireAnalyticsNext = function fireAnalyticsNext(eventKey) {
251
+ var _this2;
252
+ for (var _len3 = arguments.length, attributes = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
253
+ attributes[_key3 - 1] = arguments[_key3];
254
+ }
255
+ (_this2 = _this).fireAnalyticsNext.apply(_this2, [eventKey].concat(attributes));
256
+ };
257
+ var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent, fireAnalyticsNext), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
203
258
  withOrgContext: true,
204
259
  withSiteContext: true
205
260
  })]);
206
261
  requests.then(function (res) {
207
- var _this2;
208
- return (_this2 = _this).handleClientSuccess.apply(_this2, (0, _toConsumableArray2.default)(res));
262
+ var _this3;
263
+ return (_this3 = _this).handleClientSuccess.apply(_this3, (0, _toConsumableArray2.default)(res));
209
264
  }, function (err) {
210
265
  return _this.handleClientError(err);
211
266
  }).catch(function (err) {
@@ -214,20 +269,27 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
214
269
  });
215
270
  });
216
271
  (0, _defineProperty2.default)(_this, "onErrorBoundary", function () {
217
- _this.fireAnalytics((0, _analytics.profileCardRendered)('team', 'errorBoundary', {
218
- duration: 0
219
- }));
272
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
273
+ _this.fireAnalyticsNext('ui.teamProfileCard.rendered.errorBoundary', _objectSpread(_objectSpread({}, _analytics.PACKAGE_META_DATA), {}, {
274
+ firedAt: Math.round((0, _performance.getPageTime)()),
275
+ duration: 0
276
+ }));
277
+ } else {
278
+ _this.fireAnalytics((0, _analytics.profileCardRendered)('team', 'errorBoundary', {
279
+ duration: 0
280
+ }));
281
+ }
220
282
  _this.setState({
221
283
  renderError: true
222
284
  });
223
285
  });
224
286
  (0, _defineProperty2.default)(_this, "renderProfileCard", function () {
225
- var _this$props2 = _this.props,
226
- generateUserLink = _this$props2.generateUserLink,
227
- onUserClick = _this$props2.onUserClick,
228
- viewingUserId = _this$props2.viewingUserId,
229
- viewProfileLink = _this$props2.viewProfileLink,
230
- viewProfileOnClick = _this$props2.viewProfileOnClick;
287
+ var _this$props3 = _this.props,
288
+ generateUserLink = _this$props3.generateUserLink,
289
+ onUserClick = _this$props3.onUserClick,
290
+ viewingUserId = _this$props3.viewingUserId,
291
+ viewProfileLink = _this$props3.viewProfileLink,
292
+ viewProfileOnClick = _this$props3.viewProfileOnClick;
231
293
  var _this$state = _this.state,
232
294
  data = _this$state.data,
233
295
  error = _this$state.error,
@@ -237,6 +299,7 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
237
299
  clientFetchProfile: _this.clientFetchProfile,
238
300
  actions: _this.filterActions(),
239
301
  analytics: _this.fireAnalyticsWithDuration,
302
+ analyticsNext: _this.fireAnalyticsWithDurationNext,
240
303
  team: data || undefined,
241
304
  generateUserLink: generateUserLink,
242
305
  onUserClick: onUserClick,
@@ -246,7 +309,8 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
246
309
  };
247
310
  return /*#__PURE__*/_react.default.createElement("div", _this.cardListeners, _this.state.visible && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
248
311
  fallback: /*#__PURE__*/_react.default.createElement(_TeamLoadingState.default, {
249
- analytics: _this.fireAnalyticsWithDuration
312
+ analytics: _this.fireAnalyticsWithDuration,
313
+ analyticsNext: _this.fireAnalyticsWithDurationNext
250
314
  })
251
315
  }, /*#__PURE__*/_react.default.createElement(_lazyTeamProfileCard.TeamProfileCardLazy, (0, _extends2.default)({}, newProps, {
252
316
  isLoading: isLoading,
@@ -272,11 +336,11 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
272
336
  }));
273
337
  });
274
338
  (0, _defineProperty2.default)(_this, "renderTrigger", function (triggerProps) {
275
- var _this$props3 = _this.props,
276
- children = _this$props3.children,
277
- intl = _this$props3.intl,
278
- triggerLinkType = _this$props3.triggerLinkType,
279
- viewProfileLink = _this$props3.viewProfileLink;
339
+ var _this$props4 = _this.props,
340
+ children = _this$props4.children,
341
+ intl = _this$props4.intl,
342
+ triggerLinkType = _this$props4.triggerLinkType,
343
+ viewProfileLink = _this$props4.viewProfileLink;
280
344
  if (triggerLinkType === 'none') {
281
345
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, _this.renderKudosLauncher(), /*#__PURE__*/_react.default.createElement(_compiled.Box, (0, _extends2.default)({
282
346
  as: "span",
@@ -311,10 +375,10 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
311
375
  }, {
312
376
  key: "componentDidUpdate",
313
377
  value: function componentDidUpdate(prevProps) {
314
- var _this$props4 = this.props,
315
- orgId = _this$props4.orgId,
316
- teamId = _this$props4.teamId,
317
- resourceClient = _this$props4.resourceClient;
378
+ var _this$props5 = this.props,
379
+ orgId = _this$props5.orgId,
380
+ teamId = _this$props5.teamId,
381
+ resourceClient = _this$props5.resourceClient;
318
382
  var visible = this.state.visible;
319
383
 
320
384
  // just re-fetching data when the card opens
@@ -360,14 +424,14 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
360
424
  }, {
361
425
  key: "filterActions",
362
426
  value: function filterActions() {
363
- var _this3 = this;
427
+ var _this4 = this;
364
428
  var actions = (0, _filterActions2.default)(this.props.actions, this.state.data);
365
429
  if (this.state.shouldShowGiveKudos) {
366
430
  var kudosAction = {
367
431
  label: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.default.giveKudosButton),
368
432
  id: 'give-kudos',
369
433
  callback: function callback() {
370
- _this3.openKudosDrawer();
434
+ _this4.openKudosDrawer();
371
435
  },
372
436
  link: this.kudosUrl()
373
437
  };
@@ -378,7 +442,7 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
378
442
  }, {
379
443
  key: "renderPopup",
380
444
  value: function renderPopup() {
381
- var _this4 = this;
445
+ var _this5 = this;
382
446
  if (this.state.renderError) {
383
447
  return this.props.children;
384
448
  }
@@ -390,7 +454,7 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
390
454
  placement: this.props.position,
391
455
  content: this.renderProfileCard,
392
456
  trigger: function trigger(triggerProps) {
393
- return _this4.renderTrigger(triggerProps);
457
+ return _this5.renderTrigger(triggerProps);
394
458
  },
395
459
  zIndex: _constants.layers.modal(),
396
460
  shouldFlip: true,
@@ -416,4 +480,11 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
416
480
  triggerLinkType: 'link',
417
481
  shouldRenderToParent: true
418
482
  });
419
- var _default = exports.default = (0, _analyticsNext.withAnalyticsEvents)()((0, _reactIntlNext.injectIntl)(TeamProfileCardTriggerInternal));
483
+ var TeamProfileCardTriggerWithAnalytics = function TeamProfileCardTriggerWithAnalytics(props) {
484
+ var _useAnalyticsEvents = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
485
+ fireEvent = _useAnalyticsEvents.fireEvent;
486
+ return /*#__PURE__*/_react.default.createElement(TeamProfileCardTriggerInternal, (0, _extends2.default)({}, props, {
487
+ fireEvent: fireEvent
488
+ }));
489
+ };
490
+ var _default = exports.default = (0, _platformFeatureFlagsReact.componentWithFG)('ptc-enable-profile-card-analytics-refactor', (0, _reactIntlNext.injectIntl)(TeamProfileCardTriggerWithAnalytics), (0, _analyticsNext.withAnalyticsEvents)()((0, _reactIntlNext.injectIntl)(TeamProfileCardTriggerInternal)));
@@ -135,7 +135,9 @@ function ProfileCardTriggerInner(_ref, ref) {
135
135
  /*#__PURE__*/
136
136
  // eslint-disable-next-line jsx-a11y/no-static-element-interactions
137
137
  _react.default.createElement("div", {
138
- onMouseEnter: onMouseEnter,
138
+ onMouseEnter: onMouseEnter
139
+ // eslint-disable-next-line @atlassian/a11y/mouse-events-have-key-events
140
+ ,
139
141
  onMouseLeave: hideProfilecard,
140
142
  onFocus: showProfilecard,
141
143
  "data-testid": "profile-card--trigger-content"
@@ -18,7 +18,9 @@ var _avatarGroup = _interopRequireDefault(require("@atlaskit/avatar-group"));
18
18
  var _heading = _interopRequireDefault(require("@atlaskit/heading"));
19
19
  var _linkItem = _interopRequireDefault(require("@atlaskit/menu/link-item"));
20
20
  var _verifiedTeamIcon = require("@atlaskit/people-teams-ui-public/verified-team-icon");
21
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
21
22
  var _compiled = require("@atlaskit/primitives/compiled");
23
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
22
24
  var _teamsAvatar = _interopRequireDefault(require("@atlaskit/teams-avatar"));
23
25
  var _teamsPublic = require("@atlaskit/teams-public");
24
26
  var _analytics = require("../../util/analytics");
@@ -82,6 +84,8 @@ var TeamProfileCard = exports.TeamProfileCard = function TeamProfileCard(_ref3)
82
84
  loading = _useTeamContainers.loading;
83
85
  var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
84
86
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
87
+ var _useAnalyticsEventsNe = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
88
+ fireEventNext = _useAnalyticsEventsNe.fireEvent;
85
89
  // Ensure that the current container is not the only connection for this team before showing the "Where we work" section
86
90
  var hasOtherTeamConnections = (0, _react.useMemo)(function () {
87
91
  return teamContainers.filter(function (tc) {
@@ -92,18 +96,22 @@ var TeamProfileCard = exports.TeamProfileCard = function TeamProfileCard(_ref3)
92
96
  // TODO: set isNewLayout to be true when clean up 'team-bi-directional-container-connection' experiment
93
97
  var isNewLayout = Boolean(props.isKudosEnabled || props.otherActions);
94
98
  var onClick = (0, _react.useCallback)(function () {
95
- if (createAnalyticsEvent) {
96
- (0, _analytics.fireEvent)(createAnalyticsEvent, {
97
- action: 'clicked',
98
- actionSubject: 'button',
99
- actionSubjectId: 'viewTeamProfileButton',
100
- attributes: {}
101
- });
99
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
100
+ fireEventNext('ui.button.clicked.viewTeamProfileButton', {});
101
+ } else {
102
+ if (createAnalyticsEvent) {
103
+ (0, _analytics.fireEvent)(createAnalyticsEvent, {
104
+ action: 'clicked',
105
+ actionSubject: 'button',
106
+ actionSubjectId: 'viewTeamProfileButton',
107
+ attributes: {}
108
+ });
109
+ }
102
110
  }
103
111
  if (!isNewLayout) {
104
112
  window.open(teamProfileUrl, '_blank');
105
113
  }
106
- }, [createAnalyticsEvent, teamProfileUrl, isNewLayout]);
114
+ }, [createAnalyticsEvent, teamProfileUrl, isNewLayout, fireEventNext]);
107
115
  if (isNewLayout) {
108
116
  return /*#__PURE__*/_react.default.createElement(_compiled.Box, {
109
117
  xcss: styles.wrapperStyles,
@@ -188,7 +196,8 @@ var TeamProfileCard = exports.TeamProfileCard = function TeamProfileCard(_ref3)
188
196
  testId: "team-app-tile",
189
197
  alt: "team-app-tile",
190
198
  xcss: styles.teamAppTileStyles
191
- })
199
+ }),
200
+ testId: "team-profile-card-profile-link-item"
192
201
  }, /*#__PURE__*/_react.default.createElement(_compiled.Text, {
193
202
  maxLines: 1,
194
203
  color: "color.text"
@@ -11,7 +11,9 @@ var _runtime = require("@compiled/react/runtime");
11
11
  var _react = _interopRequireWildcard(require("react"));
12
12
  var _analyticsNext = require("@atlaskit/analytics-next");
13
13
  var _menu = require("@atlaskit/menu");
14
+ var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
14
15
  var _compiled = require("@atlaskit/primitives/compiled");
16
+ var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
15
17
  var _teamsPublic = require("@atlaskit/teams-public");
16
18
  var _analytics = require("../../../util/analytics");
17
19
  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,16 +37,24 @@ var TeamConnections = exports.TeamConnections = function TeamConnections(_ref) {
35
37
  containerTypeText = _getContainerProperti.containerTypeText;
36
38
  var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
37
39
  createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
40
+ var _useAnalyticsEventsNe = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
41
+ fireEventNext = _useAnalyticsEventsNe.fireEvent;
38
42
  var onClick = (0, _react.useCallback)(function () {
39
- (0, _analytics.fireEvent)(createAnalyticsEvent, {
40
- action: 'clicked',
41
- actionSubject: 'teamConnectionItem',
42
- actionSubjectId: 'teamProfileCard',
43
- attributes: {
43
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
44
+ fireEventNext('ui.teamConnectionItem.clicked.teamProfileCard', {
44
45
  container: containerType
45
- }
46
- });
47
- }, [containerType, createAnalyticsEvent]);
46
+ });
47
+ } else {
48
+ (0, _analytics.fireEvent)(createAnalyticsEvent, {
49
+ action: 'clicked',
50
+ actionSubject: 'teamConnectionItem',
51
+ actionSubjectId: 'teamProfileCard',
52
+ attributes: {
53
+ container: containerType
54
+ }
55
+ });
56
+ }
57
+ }, [containerType, createAnalyticsEvent, fireEventNext]);
48
58
  return /*#__PURE__*/_react.default.createElement(_menu.LinkItem, {
49
59
  href: link,
50
60
  onClick: onClick,
@@ -89,16 +99,24 @@ var NewTeamConnections = exports.NewTeamConnections = function NewTeamConnection
89
99
  containerTypeText = _getContainerProperti2.containerTypeText;
90
100
  var _useAnalyticsEvents2 = (0, _analyticsNext.useAnalyticsEvents)(),
91
101
  createAnalyticsEvent = _useAnalyticsEvents2.createAnalyticsEvent;
102
+ var _useAnalyticsEventsNe2 = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
103
+ fireEventNext = _useAnalyticsEventsNe2.fireEvent;
92
104
  var onClick = (0, _react.useCallback)(function () {
93
- (0, _analytics.fireEvent)(createAnalyticsEvent, {
94
- action: 'clicked',
95
- actionSubject: 'teamConnectionItem',
96
- actionSubjectId: 'teamProfileCard',
97
- attributes: {
105
+ if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
106
+ fireEventNext('ui.teamConnectionItem.clicked.teamProfileCard', {
98
107
  container: containerType
99
- }
100
- });
101
- }, [containerType, createAnalyticsEvent]);
108
+ });
109
+ } else {
110
+ (0, _analytics.fireEvent)(createAnalyticsEvent, {
111
+ action: 'clicked',
112
+ actionSubject: 'teamConnectionItem',
113
+ actionSubjectId: 'teamProfileCard',
114
+ attributes: {
115
+ container: containerType
116
+ }
117
+ });
118
+ }
119
+ }, [containerType, createAnalyticsEvent, fireEventNext]);
102
120
  return /*#__PURE__*/_react.default.createElement(_menu.LinkItem, {
103
121
  href: link,
104
122
  onClick: onClick,
@@ -122,7 +140,8 @@ var NewTeamConnections = exports.NewTeamConnections = function NewTeamConnection
122
140
  backgroundColor: 'color.background.neutral.subtle',
123
141
  xcss: styles.containerTypeIconButtonStyles,
124
142
  testId: "container-type-icon"
125
- }, icon)
143
+ }, icon),
144
+ testId: "team-connection-item"
126
145
  }, /*#__PURE__*/_react.default.createElement(_compiled.Text, {
127
146
  maxLines: 1,
128
147
  color: "color.text"
@@ -76,6 +76,11 @@ var getActionSubject = exports.getActionSubject = function getActionSubject(type
76
76
  return 'user';
77
77
  }
78
78
  };
79
+
80
+ /**
81
+ * @private
82
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
83
+ */
79
84
  var cardTriggered = exports.cardTriggered = function cardTriggered(type, method, teamId) {
80
85
  return createEvent('ui', 'triggered', getActionSubject(type), undefined, _objectSpread({
81
86
  method: method
@@ -83,33 +88,83 @@ var cardTriggered = exports.cardTriggered = function cardTriggered(type, method,
83
88
  teamId: teamId
84
89
  } : {}));
85
90
  };
91
+
92
+ /**
93
+ * @private
94
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
95
+ */
86
96
  var teamRequestAnalytics = exports.teamRequestAnalytics = function teamRequestAnalytics(action, attributes) {
87
97
  return createEvent('operational', action, TEAM_SUBJECT, 'request', attributes);
88
98
  };
99
+
100
+ /**
101
+ * @private
102
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
103
+ */
89
104
  var userRequestAnalytics = exports.userRequestAnalytics = function userRequestAnalytics(action, attributes) {
90
105
  return createEvent('operational', action, USER_SUBJECT, 'request', attributes);
91
106
  };
107
+
108
+ /**
109
+ * @private
110
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
111
+ */
92
112
  var profileCardRendered = exports.profileCardRendered = function profileCardRendered(type, actionSubjectId, attributes) {
93
113
  return createEvent('ui', 'rendered', getActionSubject(type), actionSubjectId, attributes);
94
114
  };
115
+
116
+ /**
117
+ * @private
118
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
119
+ */
95
120
  var actionClicked = exports.actionClicked = function actionClicked(type, attributes) {
96
121
  return createEvent('ui', 'clicked', getActionSubject(type), 'action', attributes);
97
122
  };
123
+
124
+ /**
125
+ * @private
126
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
127
+ */
98
128
  var reportingLinesClicked = exports.reportingLinesClicked = function reportingLinesClicked(attributes) {
99
129
  return createEvent('ui', 'clicked', USER_SUBJECT, 'reportingLines', attributes);
100
130
  };
131
+
132
+ /**
133
+ * @private
134
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
135
+ */
101
136
  var moreActionsClicked = exports.moreActionsClicked = function moreActionsClicked(type, attributes) {
102
137
  return createEvent('ui', 'clicked', getActionSubject(type), 'moreActions', attributes);
103
138
  };
139
+
140
+ /**
141
+ * @private
142
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
143
+ */
104
144
  var teamAvatarClicked = exports.teamAvatarClicked = function teamAvatarClicked(attributes) {
105
145
  return createEvent('ui', 'clicked', TEAM_SUBJECT, 'avatar', attributes);
106
146
  };
147
+
148
+ /**
149
+ * @private
150
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
151
+ */
107
152
  var moreMembersClicked = exports.moreMembersClicked = function moreMembersClicked(attributes) {
108
153
  return createEvent('ui', 'clicked', TEAM_SUBJECT, 'moreMembers', attributes);
109
154
  };
155
+
156
+ /**
157
+ * @private
158
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
159
+ */
110
160
  var errorRetryClicked = exports.errorRetryClicked = function errorRetryClicked(attributes) {
111
161
  return createEvent('ui', 'clicked', TEAM_SUBJECT, 'errorRetry', attributes);
112
162
  };
163
+
164
+ /**
165
+ * @private
166
+ * @deprecated Analytics events should be fired using the `@atlaskit/teams-app-internal-analytics` package.
167
+ */
113
168
  var agentRequestAnalytics = exports.agentRequestAnalytics = function agentRequestAnalytics(action, actionSubjectId, attributes) {
114
169
  return createEvent('operational', action, AGENT_SUBJECT, actionSubjectId || 'request', attributes);
115
170
  };
@@ -32,8 +32,8 @@ class ProfileCardClient {
32
32
  getProfile(cloudId, userId, analytics, analyticsNext) {
33
33
  return this.userClient.getProfile(cloudId, userId, analytics, analyticsNext);
34
34
  }
35
- getTeamProfile(teamId, orgId, analytics) {
36
- return this.teamClient.getProfile(teamId, orgId, analytics);
35
+ getTeamProfile(teamId, orgId, analytics, analyticsNext) {
36
+ return this.teamClient.getProfile(teamId, orgId, analytics, analyticsNext);
37
37
  }
38
38
  getReportingLines(userId) {
39
39
  var _this$tcClient2;
@@ -69,21 +69,21 @@ class ProfileCardClient {
69
69
  }
70
70
  return this.tcClient.checkWorkspaceExists();
71
71
  }
72
- getRovoAgentProfile(id, analytics) {
72
+ getRovoAgentProfile(id, analytics, analyticsNext) {
73
73
  var _this$rovoAgentClient2;
74
- return (_this$rovoAgentClient2 = this.rovoAgentClient) === null || _this$rovoAgentClient2 === void 0 ? void 0 : _this$rovoAgentClient2.getProfile(id, analytics);
74
+ return (_this$rovoAgentClient2 = this.rovoAgentClient) === null || _this$rovoAgentClient2 === void 0 ? void 0 : _this$rovoAgentClient2.getProfile(id, analytics, analyticsNext);
75
75
  }
76
- getRovoAgentPermissions(id, fireAnalytics) {
76
+ getRovoAgentPermissions(id, fireAnalytics, analyticsNext) {
77
77
  var _this$rovoAgentClient3;
78
- return (_this$rovoAgentClient3 = this.rovoAgentClient) === null || _this$rovoAgentClient3 === void 0 ? void 0 : _this$rovoAgentClient3.getPermissions(id, fireAnalytics);
78
+ return (_this$rovoAgentClient3 = this.rovoAgentClient) === null || _this$rovoAgentClient3 === void 0 ? void 0 : _this$rovoAgentClient3.getPermissions(id, fireAnalytics, analyticsNext);
79
79
  }
80
- deleteAgent(id, analytics) {
80
+ deleteAgent(id, analytics, analyticsNext) {
81
81
  var _this$rovoAgentClient4;
82
- return (_this$rovoAgentClient4 = this.rovoAgentClient) === null || _this$rovoAgentClient4 === void 0 ? void 0 : _this$rovoAgentClient4.deleteAgent(id, analytics);
82
+ return (_this$rovoAgentClient4 = this.rovoAgentClient) === null || _this$rovoAgentClient4 === void 0 ? void 0 : _this$rovoAgentClient4.deleteAgent(id, analytics, analyticsNext);
83
83
  }
84
- setFavouriteAgent(id, isFavourite, analytics) {
84
+ setFavouriteAgent(id, isFavourite, analytics, analyticsNext) {
85
85
  var _this$rovoAgentClient5;
86
- return (_this$rovoAgentClient5 = this.rovoAgentClient) === null || _this$rovoAgentClient5 === void 0 ? void 0 : _this$rovoAgentClient5.setFavouriteAgent(id, isFavourite, analytics);
86
+ return (_this$rovoAgentClient5 = this.rovoAgentClient) === null || _this$rovoAgentClient5 === void 0 ? void 0 : _this$rovoAgentClient5.setFavouriteAgent(id, isFavourite, analytics, analyticsNext);
87
87
  }
88
88
  }
89
89
  function maybeCreateTeamCentralClient(config, clients) {