@atlaskit/profilecard 24.23.0 → 24.24.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 (57) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/__tests__/vr-tests/agent-profilecard.vr.tsx +0 -1
  3. package/__tests__/vr-tests/user-profilecard.vr.tsx +6 -42
  4. package/dist/cjs/client/getOrgIdForCloudIdFromAGG.js +1 -1
  5. package/dist/cjs/client/getTeamFromAGG.js +1 -1
  6. package/dist/cjs/components/Agent/Actions.js +28 -49
  7. package/dist/cjs/components/Agent/AgentProfileCard.js +39 -41
  8. package/dist/cjs/components/User/ReportingLinesDetails.compiled.css +5 -0
  9. package/dist/cjs/components/User/ReportingLinesDetails.js +10 -20
  10. package/dist/cjs/util/analytics.js +2 -2
  11. package/dist/es2019/client/getOrgIdForCloudIdFromAGG.js +1 -1
  12. package/dist/es2019/client/getTeamFromAGG.js +1 -1
  13. package/dist/es2019/components/Agent/Actions.js +23 -43
  14. package/dist/es2019/components/Agent/AgentProfileCard.js +37 -40
  15. package/dist/es2019/components/User/ReportingLinesDetails.compiled.css +5 -0
  16. package/dist/es2019/components/User/ReportingLinesDetails.js +8 -19
  17. package/dist/es2019/util/analytics.js +2 -2
  18. package/dist/esm/client/getOrgIdForCloudIdFromAGG.js +1 -1
  19. package/dist/esm/client/getTeamFromAGG.js +1 -1
  20. package/dist/esm/components/Agent/Actions.js +23 -43
  21. package/dist/esm/components/Agent/AgentProfileCard.js +35 -38
  22. package/dist/esm/components/User/ReportingLinesDetails.compiled.css +5 -0
  23. package/dist/esm/components/User/ReportingLinesDetails.js +8 -19
  24. package/dist/esm/util/analytics.js +2 -2
  25. package/dist/types/components/Agent/Actions.d.ts +1 -11
  26. package/dist/types/components/Agent/AgentProfileCard.d.ts +3 -14
  27. package/dist/types/components/Agent/lazyAgentProfileCard.d.ts +1 -13
  28. package/dist/types/components/User/ReportingLinesDetails.d.ts +2 -2
  29. package/dist/types-ts4.5/components/Agent/Actions.d.ts +1 -11
  30. package/dist/types-ts4.5/components/Agent/AgentProfileCard.d.ts +3 -14
  31. package/dist/types-ts4.5/components/Agent/lazyAgentProfileCard.d.ts +1 -13
  32. package/dist/types-ts4.5/components/User/ReportingLinesDetails.d.ts +2 -2
  33. package/package.json +4 -7
  34. package/dist/cjs/components/Agent/ActionsCompiled.js +0 -148
  35. package/dist/cjs/components/Agent/AgentProfileCardCompiled.js +0 -266
  36. package/dist/cjs/components/User/ReportingLinesDetailsCompiled.compiled.css +0 -11
  37. package/dist/cjs/components/User/ReportingLinesDetailsCompiled.js +0 -109
  38. package/dist/es2019/components/Agent/ActionsCompiled.js +0 -127
  39. package/dist/es2019/components/Agent/AgentProfileCardCompiled.js +0 -209
  40. package/dist/es2019/components/User/ReportingLinesDetailsCompiled.compiled.css +0 -11
  41. package/dist/es2019/components/User/ReportingLinesDetailsCompiled.js +0 -96
  42. package/dist/esm/components/Agent/ActionsCompiled.js +0 -139
  43. package/dist/esm/components/Agent/AgentProfileCardCompiled.js +0 -257
  44. package/dist/esm/components/User/ReportingLinesDetailsCompiled.compiled.css +0 -11
  45. package/dist/esm/components/User/ReportingLinesDetailsCompiled.js +0 -102
  46. package/dist/types/components/Agent/ActionsCompiled.d.ts +0 -15
  47. package/dist/types/components/Agent/AgentProfileCardCompiled.d.ts +0 -4
  48. package/dist/types/components/User/ReportingLinesDetailsCompiled.d.ts +0 -5
  49. package/dist/types-ts4.5/components/Agent/ActionsCompiled.d.ts +0 -15
  50. package/dist/types-ts4.5/components/Agent/AgentProfileCardCompiled.d.ts +0 -4
  51. package/dist/types-ts4.5/components/User/ReportingLinesDetailsCompiled.d.ts +0 -5
  52. /package/dist/cjs/components/Agent/{ActionsCompiled.compiled.css → Actions.compiled.css} +0 -0
  53. /package/dist/cjs/components/Agent/{AgentProfileCardCompiled.compiled.css → AgentProfileCard.compiled.css} +0 -0
  54. /package/dist/es2019/components/Agent/{ActionsCompiled.compiled.css → Actions.compiled.css} +0 -0
  55. /package/dist/es2019/components/Agent/{AgentProfileCardCompiled.compiled.css → AgentProfileCard.compiled.css} +0 -0
  56. /package/dist/esm/components/Agent/{ActionsCompiled.compiled.css → Actions.compiled.css} +0 -0
  57. /package/dist/esm/components/Agent/{AgentProfileCardCompiled.compiled.css → AgentProfileCard.compiled.css} +0 -0
@@ -1,266 +0,0 @@
1
- /* AgentProfileCardCompiled.tsx generated by @compiled/babel-plugin v0.38.1 */
2
- "use strict";
3
-
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
- var _typeof = require("@babel/runtime/helpers/typeof");
6
- Object.defineProperty(exports, "__esModule", {
7
- value: true
8
- });
9
- exports.default = void 0;
10
- require("./AgentProfileCardCompiled.compiled.css");
11
- var _runtime = require("@compiled/react/runtime");
12
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
- var _react = _interopRequireWildcard(require("react"));
17
- var _reactIntlNext = require("react-intl-next");
18
- var _analyticsNext = require("@atlaskit/analytics-next");
19
- var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
20
- var _compiled = require("@atlaskit/primitives/compiled");
21
- var _rovoAgentComponents = require("@atlaskit/rovo-agent-components");
22
- var _teamsAppInternalAnalytics = require("@atlaskit/teams-app-internal-analytics");
23
- var _analytics = require("../../util/analytics");
24
- var _performance = require("../../util/performance");
25
- var _LoadingState = require("../common/LoadingState");
26
- var _Error = require("../Error");
27
- var _Actions = require("./Actions");
28
- var _AgentProfileCardWrapper = require("./AgentProfileCardWrapper");
29
- var _ConversationStarters = require("./ConversationStarters");
30
- var _useAgentActions = require("./hooks/useAgentActions");
31
- var _messages = require("./messages");
32
- 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); }
33
- 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; }
34
- 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
- var styles = {
36
- detailWrapper: "_18zrpxbi _1q51xy5q",
37
- detailWrapperRefresh: "_1q511ejb",
38
- avatarStyles: "_kqswstnw _154i1ejb _1ltvpxbi",
39
- cardContainerStyles: "_2rko1mok _16qs130s _kqswh2mm",
40
- agentProfileInfoWrapper: "_18zrpxbi",
41
- conversationStartersWrapper: "_18zrutpp"
42
- };
43
- var AgentProfileCard = function AgentProfileCard(_ref) {
44
- var _agent$user_defined_c, _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
45
- var agent = _ref.agent,
46
- isLoading = _ref.isLoading,
47
- cloudId = _ref.cloudId,
48
- onChatClick = _ref.onChatClick,
49
- hasError = _ref.hasError,
50
- errorType = _ref.errorType,
51
- onConversationStartersClick = _ref.onConversationStartersClick,
52
- resourceClient = _ref.resourceClient,
53
- addFlag = _ref.addFlag,
54
- onDeleteAgent = _ref.onDeleteAgent,
55
- hideMoreActions = _ref.hideMoreActions;
56
- var _useAgentUrlActions = (0, _useAgentActions.useAgentUrlActions)({
57
- cloudId: cloudId || '',
58
- source: 'agentProfileCard'
59
- }),
60
- _onEditAgent = _useAgentUrlActions.onEditAgent,
61
- _onCopyAgent = _useAgentUrlActions.onCopyAgent,
62
- _onDuplicateAgent = _useAgentUrlActions.onDuplicateAgent,
63
- onOpenChatFullScreen = _useAgentUrlActions.onOpenChat,
64
- onConversationStarter = _useAgentUrlActions.onConversationStarter,
65
- onViewFullProfile = _useAgentUrlActions.onViewFullProfile;
66
- var _useState = (0, _react.useState)(false),
67
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
68
- isStarred = _useState2[0],
69
- setIsStarred = _useState2[1];
70
- var _useState3 = (0, _react.useState)(),
71
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
72
- starCount = _useState4[0],
73
- setStarCount = _useState4[1];
74
- var _useIntl = (0, _reactIntlNext.useIntl)(),
75
- formatMessage = _useIntl.formatMessage;
76
- var _useAnalyticsEventsNe = (0, _teamsAppInternalAnalytics.useAnalyticsEvents)(),
77
- fireAnalyticsNext = _useAnalyticsEventsNe.fireEvent;
78
- var userDefinedConversationStarters = agent === null || agent === void 0 || (_agent$user_defined_c = agent.user_defined_conversation_starters) === null || _agent$user_defined_c === void 0 ? void 0 : _agent$user_defined_c.map(function (starter) {
79
- return {
80
- message: starter,
81
- type: 'user-defined'
82
- };
83
- });
84
- (0, _react.useEffect)(function () {
85
- setIsStarred(!!(agent !== null && agent !== void 0 && agent.favourite));
86
- setStarCount(agent === null || agent === void 0 ? void 0 : agent.favourite_count);
87
- }, [agent === null || agent === void 0 ? void 0 : agent.favourite, agent === null || agent === void 0 ? void 0 : agent.favourite_count]);
88
- var _useAnalyticsEvents = (0, _analyticsNext.useAnalyticsEvents)(),
89
- createAnalyticsEvent = _useAnalyticsEvents.createAnalyticsEvent;
90
- var fireAnalytics = (0, _react.useCallback)(function (payload) {
91
- if (createAnalyticsEvent) {
92
- (0, _analytics.fireEvent)(createAnalyticsEvent, payload);
93
- }
94
- }, [createAnalyticsEvent]);
95
- var handleSetFavourite = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
96
- return _regenerator.default.wrap(function _callee$(_context) {
97
- while (1) switch (_context.prev = _context.next) {
98
- case 0:
99
- if (!(agent !== null && agent !== void 0 && agent.id)) {
100
- _context.next = 10;
101
- break;
102
- }
103
- _context.prev = 1;
104
- _context.next = 4;
105
- return resourceClient.setFavouriteAgent(agent.id, !isStarred, fireAnalytics, fireAnalyticsNext);
106
- case 4:
107
- if (isStarred) {
108
- setStarCount(starCount ? starCount - 1 : 0);
109
- } else {
110
- setStarCount((starCount || 0) + 1);
111
- }
112
- setIsStarred(!isStarred);
113
- _context.next = 10;
114
- break;
115
- case 8:
116
- _context.prev = 8;
117
- _context.t0 = _context["catch"](1);
118
- case 10:
119
- case "end":
120
- return _context.stop();
121
- }
122
- }, _callee, null, [[1, 8]]);
123
- })), [agent === null || agent === void 0 ? void 0 : agent.id, fireAnalytics, fireAnalyticsNext, isStarred, resourceClient, starCount]);
124
- var handleOnDelete = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
125
- var _onDeleteAgent, restore;
126
- return _regenerator.default.wrap(function _callee2$(_context2) {
127
- while (1) switch (_context2.prev = _context2.next) {
128
- case 0:
129
- if (!(agent && onDeleteAgent)) {
130
- _context2.next = 12;
131
- break;
132
- }
133
- // Optimistically remove from cache
134
- _onDeleteAgent = onDeleteAgent(agent.id), restore = _onDeleteAgent.restore;
135
- _context2.prev = 2;
136
- _context2.next = 5;
137
- return resourceClient.deleteAgent(agent.id, fireAnalytics, fireAnalyticsNext);
138
- case 5:
139
- addFlag === null || addFlag === void 0 || addFlag({
140
- title: formatMessage(_messages.messages.agentDeletedSuccessFlagTitle),
141
- description: formatMessage(_messages.messages.agentDeletedSuccessFlagDescription, {
142
- agentName: agent.name
143
- }),
144
- type: 'success',
145
- id: 'ptc-directory.agent-profile.delete-agent-success'
146
- });
147
- _context2.next = 12;
148
- break;
149
- case 8:
150
- _context2.prev = 8;
151
- _context2.t0 = _context2["catch"](2);
152
- // Restore agent to cache on error
153
- restore();
154
- addFlag === null || addFlag === void 0 || addFlag({
155
- title: formatMessage(_messages.messages.agentDeletedErrorFlagTitle),
156
- description: formatMessage(_messages.messages.agentDeletedErrorFlagDescription),
157
- type: 'error',
158
- id: 'ptc-directory.agent-profile.delete-agent-error'
159
- });
160
- case 12:
161
- case "end":
162
- return _context2.stop();
163
- }
164
- }, _callee2, null, [[2, 8]]);
165
- })), [addFlag, agent, formatMessage, onDeleteAgent, resourceClient, fireAnalytics, fireAnalyticsNext]);
166
- (0, _react.useEffect)(function () {
167
- if (!isLoading && agent) {
168
- if ((0, _platformFeatureFlags.fg)('ptc-enable-profile-card-analytics-refactor')) {
169
- fireAnalyticsNext("ui.rovoAgentProfilecard.rendered.content", _objectSpread(_objectSpread({}, _analytics.PACKAGE_META_DATA), {}, {
170
- firedAt: Math.round((0, _performance.getPageTime)())
171
- }));
172
- } else {
173
- fireAnalytics((0, _analytics.profileCardRendered)('agent', 'content'));
174
- }
175
- }
176
- }, [agent, fireAnalytics, isLoading, fireAnalyticsNext]);
177
- if (isLoading) {
178
- return /*#__PURE__*/_react.default.createElement(_AgentProfileCardWrapper.AgentProfileCardWrapper, null, /*#__PURE__*/_react.default.createElement(_LoadingState.LoadingState, {
179
- profileType: "agent",
180
- fireAnalytics: fireAnalytics,
181
- fireAnalyticsNext: fireAnalyticsNext
182
- }));
183
- }
184
- if (hasError || !agent) {
185
- return /*#__PURE__*/_react.default.createElement(_AgentProfileCardWrapper.AgentProfileCardWrapper, null, /*#__PURE__*/_react.default.createElement(_Error.ErrorMessage, {
186
- fireAnalyticsNext: fireAnalyticsNext,
187
- errorType: errorType,
188
- fireAnalytics: fireAnalytics
189
- }));
190
- }
191
- return /*#__PURE__*/_react.default.createElement(_AgentProfileCardWrapper.AgentProfileCardWrapper, null, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
192
- xcss: styles.cardContainerStyles
193
- }, /*#__PURE__*/_react.default.createElement(_rovoAgentComponents.AgentBanner, {
194
- agentId: agent.id,
195
- agentNamedId: (_agent$external_confi = agent.external_config_reference) !== null && _agent$external_confi !== void 0 ? _agent$external_confi : agent.named_id,
196
- height: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? 48 : 96,
197
- agentIdentityAccountId: agent.identity_account_id
198
- }), /*#__PURE__*/_react.default.createElement(_compiled.Box, {
199
- xcss: styles.avatarStyles
200
- }, /*#__PURE__*/_react.default.createElement(_rovoAgentComponents.AgentAvatar, {
201
- agentId: agent.id,
202
- agentNamedId: (_agent$external_confi2 = agent.external_config_reference) !== null && _agent$external_confi2 !== void 0 ? _agent$external_confi2 : agent.named_id,
203
- agentIdentityAccountId: agent.identity_account_id,
204
- size: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? 'large' : 'xlarge',
205
- isForgeAgent: agent.creator_type === 'FORGE' || agent.creator_type === 'THIRD_PARTY',
206
- forgeAgentIconUrl: agent.icon
207
- })), /*#__PURE__*/_react.default.createElement(_compiled.Stack, {
208
- space: "space.100",
209
- xcss: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? styles.detailWrapperRefresh : styles.detailWrapper
210
- }, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
211
- xcss: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? styles.agentProfileInfoWrapper : null
212
- }, /*#__PURE__*/_react.default.createElement(_rovoAgentComponents.AgentProfileInfo, {
213
- agentName: agent.name,
214
- isStarred: isStarred,
215
- onStarToggle: handleSetFavourite,
216
- isHidden: agent.visibility === 'PRIVATE',
217
- creatorRender: ((_agent$creatorInfo = agent.creatorInfo) === null || _agent$creatorInfo === void 0 ? void 0 : _agent$creatorInfo.type) && /*#__PURE__*/_react.default.createElement(_rovoAgentComponents.AgentProfileCreator, {
218
- creator: {
219
- type: (_agent$creatorInfo2 = agent.creatorInfo) === null || _agent$creatorInfo2 === void 0 ? void 0 : _agent$creatorInfo2.type,
220
- name: ((_agent$creatorInfo3 = agent.creatorInfo) === null || _agent$creatorInfo3 === void 0 ? void 0 : _agent$creatorInfo3.name) || '',
221
- profileLink: ((_agent$creatorInfo4 = agent.creatorInfo) === null || _agent$creatorInfo4 === void 0 ? void 0 : _agent$creatorInfo4.profileLink) || ''
222
- },
223
- isLoading: false,
224
- onCreatorLinkClick: function onCreatorLinkClick() {}
225
- }),
226
- starCountRender: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? null : /*#__PURE__*/_react.default.createElement(_rovoAgentComponents.AgentStarCount, {
227
- starCount: starCount,
228
- isLoading: false
229
- }),
230
- agentDescription: agent.description
231
- })), /*#__PURE__*/_react.default.createElement(_compiled.Box, {
232
- xcss: (0, _platformFeatureFlags.fg)('rovo_agent_empty_state_refresh') ? styles.conversationStartersWrapper : null
233
- }, /*#__PURE__*/_react.default.createElement(_ConversationStarters.ConversationStarters, {
234
- isAgentDefault: agent.is_default,
235
- userDefinedConversationStarters: userDefinedConversationStarters,
236
- onConversationStarterClick: function onConversationStarterClick(conversationStarter) {
237
- onConversationStartersClick ? onConversationStartersClick(conversationStarter) : onConversationStarter({
238
- agentId: agent.id,
239
- prompt: conversationStarter.message
240
- });
241
- }
242
- }))), /*#__PURE__*/_react.default.createElement(_Actions.AgentActions, {
243
- agent: agent,
244
- onEditAgent: function onEditAgent() {
245
- return _onEditAgent(agent.id);
246
- },
247
- onCopyAgent: function onCopyAgent() {
248
- return _onCopyAgent(agent.id);
249
- },
250
- onDuplicateAgent: function onDuplicateAgent() {
251
- return _onDuplicateAgent(agent.id);
252
- },
253
- onDeleteAgent: handleOnDelete,
254
- onChatClick: onChatClick ? function (event) {
255
- return onChatClick(event);
256
- } : function () {
257
- return onOpenChatFullScreen(agent.id, agent.name);
258
- },
259
- resourceClient: resourceClient,
260
- onViewFullProfileClick: function onViewFullProfileClick() {
261
- return onViewFullProfile(agent.id);
262
- },
263
- hideMoreActions: hideMoreActions
264
- })));
265
- };
266
- var _default = exports.default = AgentProfileCard;
@@ -1,11 +0,0 @@
1
- ._11c81vhk{font:var(--ds-font-heading-xxsmall,normal 600 9pt/1pc ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Ubuntu,"Helvetica Neue",sans-serif)}
2
- ._19bvze3t{padding-left:var(--ds-space-0,0)}
3
- ._bfhksm61{background-color:var(--ds-background-neutral-subtle,#00000000)}
4
- ._ca0qze3t{padding-top:var(--ds-space-0,0)}
5
- ._k48p1pd9{font-weight:var(--ds-font-weight-semibold,600)}
6
- ._n3tdze3t{padding-bottom:var(--ds-space-0,0)}
7
- ._otyru2gc{margin-bottom:var(--ds-space-100,8px)}
8
- ._otyrze3t{margin-bottom:var(--ds-space-0,0)}
9
- ._syazi7uo{color:var(--ds-text,#292a2e)}
10
- ._u5f3ze3t{padding-right:var(--ds-space-0,0)}
11
- ._irr31dpa:hover{background-color:var(--ds-background-neutral-subtle-hovered,#0515240f)}
@@ -1,109 +0,0 @@
1
- /* ReportingLinesDetailsCompiled.tsx generated by @compiled/babel-plugin v0.38.1 */
2
- "use strict";
3
-
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
- require("./ReportingLinesDetailsCompiled.compiled.css");
10
- var _runtime = require("@compiled/react/runtime");
11
- var _react = _interopRequireDefault(require("react"));
12
- var _reactIntlNext = require("react-intl-next");
13
- var _avatar = _interopRequireDefault(require("@atlaskit/avatar"));
14
- var _avatarGroup = _interopRequireDefault(require("@atlaskit/avatar-group"));
15
- var _css = require("@atlaskit/css");
16
- var _compiled = require("@atlaskit/primitives/compiled");
17
- var _messages = _interopRequireDefault(require("../../messages"));
18
- var _ReportingLines = require("../../styled/ReportingLines");
19
- var _analytics = require("../../util/analytics");
20
- function getProfileHref(userId, profileUrl) {
21
- return profileUrl ? profileUrl + userId : undefined;
22
- }
23
- var styles = {
24
- reportingLinesButton: "_ca0qze3t _u5f3ze3t _n3tdze3t _19bvze3t _bfhksm61 _irr31dpa",
25
- reportingLinesHeadingDefaultStyles: "_11c81vhk _syazi7uo _k48p1pd9 _otyru2gc",
26
- reportingLinesHeadingStyles: "_otyrze3t"
27
- };
28
- var avatarGroupMaxCount = 5;
29
- var ReportingLinesDetails = function ReportingLinesDetails(props) {
30
- var _manager$pii, _manager$pii2;
31
- var _useIntl = (0, _reactIntlNext.useIntl)(),
32
- formatMessage = _useIntl.formatMessage;
33
- var fireAnalyticsWithDuration = props.fireAnalyticsWithDuration,
34
- _props$reportingLines = props.reportingLines,
35
- reportingLines = _props$reportingLines === void 0 ? {} : _props$reportingLines,
36
- reportingLinesProfileUrl = props.reportingLinesProfileUrl,
37
- onReportingLinesClick = props.onReportingLinesClick;
38
- var _reportingLines$manag = reportingLines.managers,
39
- managers = _reportingLines$manag === void 0 ? [] : _reportingLines$manag,
40
- _reportingLines$repor = reportingLines.reports,
41
- reports = _reportingLines$repor === void 0 ? [] : _reportingLines$repor;
42
- var manager = managers.length >= 1 ? managers[0] : undefined;
43
- var hasReports = reports.length > 0;
44
- var getReportingLinesOnClick = function getReportingLinesOnClick(user, userType) {
45
- return onReportingLinesClick ? function () {
46
- fireAnalyticsWithDuration(function (duration) {
47
- return (0, _analytics.reportingLinesClicked)({
48
- duration: duration,
49
- userType: userType
50
- });
51
- });
52
- onReportingLinesClick(user);
53
- } : undefined;
54
- };
55
- var onReportingLinksClick = function onReportingLinksClick(user, userType, href) {
56
- var shouldPreventDefault = false;
57
- if (onReportingLinesClick) {
58
- shouldPreventDefault = onReportingLinesClick(user) === false;
59
- }
60
- fireAnalyticsWithDuration(function (duration) {
61
- return (0, _analytics.reportingLinesClicked)({
62
- duration: duration,
63
- userType: userType
64
- });
65
- });
66
- if (shouldPreventDefault) {
67
- return;
68
- }
69
- if (href) {
70
- window.location.href = href;
71
- }
72
- };
73
- var showMoreButtonProps = {
74
- 'aria-label': formatMessage(_messages.default.profileCardMoreReportingLinesLabel, {
75
- count: reports.length - avatarGroupMaxCount + 1
76
- })
77
- };
78
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, manager && /*#__PURE__*/_react.default.createElement(_ReportingLines.ReportingLinesSection, null, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
79
- xcss: (0, _css.cx)(styles.reportingLinesHeadingDefaultStyles, styles.reportingLinesHeadingStyles)
80
- }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.default.managerSectionHeading)), /*#__PURE__*/_react.default.createElement(_ReportingLines.OffsetWrapper, null, /*#__PURE__*/_react.default.createElement(_compiled.Pressable, {
81
- onClick: function onClick() {
82
- return onReportingLinksClick(manager, 'manager', getProfileHref(manager.accountIdentifier, reportingLinesProfileUrl));
83
- },
84
- isDisabled: !onReportingLinesClick,
85
- xcss: styles.reportingLinesButton
86
- }, /*#__PURE__*/_react.default.createElement(_ReportingLines.ManagerSection, null, /*#__PURE__*/_react.default.createElement(_avatar.default, {
87
- size: "xsmall",
88
- src: (_manager$pii = manager.pii) === null || _manager$pii === void 0 ? void 0 : _manager$pii.picture
89
- }), /*#__PURE__*/_react.default.createElement(_ReportingLines.ManagerName, null, (_manager$pii2 = manager.pii) === null || _manager$pii2 === void 0 ? void 0 : _manager$pii2.name))))), hasReports && /*#__PURE__*/_react.default.createElement(_ReportingLines.ReportingLinesSection, null, /*#__PURE__*/_react.default.createElement(_compiled.Box, {
90
- xcss: styles.reportingLinesHeadingDefaultStyles
91
- }, /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, _messages.default.directReportsSectionHeading)), /*#__PURE__*/_react.default.createElement(_avatarGroup.default, {
92
- appearance: "stack",
93
- size: "small",
94
- data: reports.map(function (member) {
95
- var _member$pii, _member$pii2;
96
- return {
97
- key: member.accountIdentifier,
98
- name: ((_member$pii = member.pii) === null || _member$pii === void 0 ? void 0 : _member$pii.name) || '',
99
- src: (_member$pii2 = member.pii) === null || _member$pii2 === void 0 ? void 0 : _member$pii2.picture,
100
- href: getProfileHref(member.accountIdentifier, reportingLinesProfileUrl),
101
- onClick: getReportingLinesOnClick(member, 'direct-report')
102
- };
103
- }),
104
- maxCount: avatarGroupMaxCount,
105
- testId: "profilecard-reports-avatar-group",
106
- showMoreButtonProps: showMoreButtonProps
107
- })));
108
- };
109
- var _default = exports.default = ReportingLinesDetails;
@@ -1,127 +0,0 @@
1
- /* ActionsCompiled.tsx generated by @compiled/babel-plugin v0.38.1 */
2
- import "./ActionsCompiled.compiled.css";
3
- import { ax, ix } from "@compiled/react/runtime";
4
- import React, { useCallback, useState } from 'react';
5
- import { defineMessages, useIntl } from 'react-intl-next';
6
- import { useAnalyticsEvents } from '@atlaskit/analytics-next';
7
- import Button from '@atlaskit/button/new';
8
- import { fg } from '@atlaskit/platform-feature-flags';
9
- import { Box, Inline } from '@atlaskit/primitives/compiled';
10
- import { AgentDropdownMenu, ChatPillIcon } from '@atlaskit/rovo-agent-components';
11
- import { useAnalyticsEvents as useAnalyticsEventsNext } from '@atlaskit/teams-app-internal-analytics';
12
- import { fireEvent } from '../../util/analytics';
13
- import { AgentDeleteConfirmationModal } from './AgentDeleteConfirmationModal';
14
- const styles = {
15
- chatToAgentButtonContainer: "_1bsb1osq",
16
- chatToAgentButtonWrapper: "_1e0c1txw _1bah1h6o _k48p1wq8 _4t3igktf",
17
- chatPillButtonInlineStyles: "_18zrv77o",
18
- chatPillTextStyles: "_1nmz1hna _y3gn1e5h _o5721jtm",
19
- chatPillIconWrapper: "_1ul9gktf _4t3igktf",
20
- actionsWrapperStyles: "_189ee4h9 _1h6d1l7x _15a5nqa1 _ca0qpxbi _u5f3pxbi _n3tdpxbi _19bvpxbi _1pfhpxbi _syazi7uo",
21
- actionsWrapperStylesRefresh: "_ca0qutpp _u5f3utpp _n3tdutpp _19bvutpp _syazi7uo"
22
- };
23
- export const AgentActions = ({
24
- onEditAgent,
25
- onDeleteAgent,
26
- onDuplicateAgent,
27
- onCopyAgent,
28
- onChatClick,
29
- onViewFullProfileClick,
30
- agent,
31
- resourceClient,
32
- hideMoreActions
33
- }) => {
34
- const {
35
- formatMessage
36
- } = useIntl();
37
- const {
38
- createAnalyticsEvent
39
- } = useAnalyticsEvents();
40
- const {
41
- fireEvent: fireEventNext
42
- } = useAnalyticsEventsNext();
43
- const [isDeleteModalOpen, setIsDeleteModalOpen] = useState(false);
44
- const isForgeAgent = agent.creator_type === 'FORGE' || agent.creator_type === 'THIRD_PARTY';
45
- const loadAgentPermissions = useCallback(async () => {
46
- const {
47
- permissions: {
48
- AGENT_CREATE,
49
- AGENT_UPDATE,
50
- AGENT_DEACTIVATE
51
- }
52
- } = await resourceClient.getRovoAgentPermissions(agent.id);
53
- return {
54
- isCreateEnabled: AGENT_CREATE.permitted,
55
- isEditEnabled: AGENT_UPDATE.permitted,
56
- isDeleteEnabled: AGENT_DEACTIVATE.permitted
57
- };
58
- }, [agent.id, resourceClient]);
59
- const handleDeleteAgent = useCallback(() => {
60
- if (fg('ptc-enable-profile-card-analytics-refactor')) {
61
- fireEventNext('ui.button.clicked.deleteAgentButton', {
62
- agentId: agent.id,
63
- source: 'agentProfileCard'
64
- });
65
- } else {
66
- fireEvent(createAnalyticsEvent, {
67
- action: 'clicked',
68
- actionSubject: 'button',
69
- actionSubjectId: 'deleteAgentButton',
70
- attributes: {
71
- agentId: agent.id,
72
- source: 'agentProfileCard'
73
- }
74
- });
75
- }
76
- setIsDeleteModalOpen(true);
77
- }, [agent.id, createAnalyticsEvent, fireEventNext]);
78
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Inline, {
79
- space: "space.100",
80
- xcss: fg('rovo_agent_empty_state_refresh') ? styles.actionsWrapperStylesRefresh : styles.actionsWrapperStyles
81
- }, /*#__PURE__*/React.createElement(Box, {
82
- xcss: styles.chatToAgentButtonContainer
83
- }, /*#__PURE__*/React.createElement(Button, {
84
- shouldFitContainer: true,
85
- onClick: e => {
86
- e.stopPropagation();
87
- onChatClick(e);
88
- }
89
- }, /*#__PURE__*/React.createElement(Box, {
90
- xcss: styles.chatToAgentButtonWrapper
91
- }, /*#__PURE__*/React.createElement(Inline, {
92
- space: "space.050",
93
- xcss: fg('rovo_agent_empty_state_refresh') ? null : styles.chatPillButtonInlineStyles,
94
- alignBlock: "center"
95
- }, !fg('rovo_agent_empty_state_refresh') && /*#__PURE__*/React.createElement(Box, {
96
- xcss: styles.chatPillIconWrapper
97
- }, /*#__PURE__*/React.createElement(ChatPillIcon, null)), /*#__PURE__*/React.createElement(Box, {
98
- xcss: styles.chatPillTextStyles
99
- }, formatMessage(messages.actionChatToAgent)))))), !hideMoreActions && /*#__PURE__*/React.createElement(AgentDropdownMenu, {
100
- agentId: agent.id,
101
- onDeleteAgent: handleDeleteAgent,
102
- onEditAgent: onEditAgent,
103
- onDuplicateAgent: onDuplicateAgent,
104
- onCopyAgent: onCopyAgent,
105
- isForgeAgent: isForgeAgent,
106
- loadAgentPermissions: loadAgentPermissions,
107
- loadPermissionsOnMount: true,
108
- onViewAgentFullProfileClick: onViewFullProfileClick,
109
- doesAgentHaveIdentityAccountId: !!agent.identity_account_id,
110
- shouldTriggerStopPropagation: true
111
- })), /*#__PURE__*/React.createElement(AgentDeleteConfirmationModal, {
112
- isOpen: isDeleteModalOpen,
113
- onClose: () => {
114
- setIsDeleteModalOpen(false);
115
- },
116
- onSubmit: onDeleteAgent,
117
- agentId: agent.id,
118
- agentName: agent.name
119
- }));
120
- };
121
- const messages = defineMessages({
122
- actionChatToAgent: {
123
- id: 'ptc-directory.agent-profile.action.dropdown.chat-with-agent',
124
- defaultMessage: 'Chat with Agent',
125
- description: 'Text for the "chat with agent" action to chat to the agent'
126
- }
127
- });