@atlaskit/profilecard 20.6.2 → 20.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/cjs/client/ProfileCardClient.js +32 -6
- package/dist/cjs/client/TeamCentralCardClient.js +28 -0
- package/dist/cjs/client/getOrgIdForCloudIdFromAGG.js +56 -0
- package/dist/cjs/client/getTeamFromAGG.js +1 -1
- package/dist/cjs/components/Agent/Actions.js +0 -1
- package/dist/cjs/components/Agent/AgentProfileCard.js +9 -3
- package/dist/cjs/components/Team/TeamProfileCardTrigger.js +7 -2
- package/dist/cjs/components/User/ProfileCardResourced.js +5 -2
- package/dist/cjs/components/User/ProfileCardTrigger.js +8 -3
- package/dist/cjs/mocks/mock-profile-client.js +2 -1
- package/dist/cjs/util/analytics.js +1 -1
- package/dist/es2019/client/ProfileCardClient.js +17 -3
- package/dist/es2019/client/TeamCentralCardClient.js +24 -0
- package/dist/es2019/client/getOrgIdForCloudIdFromAGG.js +32 -0
- package/dist/es2019/client/getTeamFromAGG.js +1 -1
- package/dist/es2019/components/Agent/Actions.js +0 -1
- package/dist/es2019/components/Agent/AgentProfileCard.js +9 -3
- package/dist/es2019/components/Team/TeamProfileCardTrigger.js +7 -2
- package/dist/es2019/components/User/ProfileCardResourced.js +5 -2
- package/dist/es2019/components/User/ProfileCardTrigger.js +8 -3
- package/dist/es2019/mocks/mock-profile-client.js +2 -1
- package/dist/es2019/util/analytics.js +1 -1
- package/dist/esm/client/ProfileCardClient.js +32 -6
- package/dist/esm/client/TeamCentralCardClient.js +28 -0
- package/dist/esm/client/getOrgIdForCloudIdFromAGG.js +49 -0
- package/dist/esm/client/getTeamFromAGG.js +1 -1
- package/dist/esm/components/Agent/Actions.js +0 -1
- package/dist/esm/components/Agent/AgentProfileCard.js +9 -3
- package/dist/esm/components/Team/TeamProfileCardTrigger.js +7 -2
- package/dist/esm/components/User/ProfileCardResourced.js +5 -2
- package/dist/esm/components/User/ProfileCardTrigger.js +8 -3
- package/dist/esm/mocks/mock-profile-client.js +2 -1
- package/dist/esm/util/analytics.js +1 -1
- package/dist/types/client/ProfileCardClient.d.ts +5 -1
- package/dist/types/client/TeamCentralCardClient.d.ts +9 -0
- package/dist/types/client/getOrgIdForCloudIdFromAGG.d.ts +1 -0
- package/dist/types/types.d.ts +5 -3
- package/dist/types-ts4.5/client/ProfileCardClient.d.ts +5 -1
- package/dist/types-ts4.5/client/TeamCentralCardClient.d.ts +9 -0
- package/dist/types-ts4.5/client/getOrgIdForCloudIdFromAGG.d.ts +1 -0
- package/dist/types-ts4.5/types.d.ts +5 -3
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,32 @@
|
|
|
1
1
|
# @atlaskit/profilecard
|
|
2
2
|
|
|
3
|
+
## 20.8.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#154365](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/154365)
|
|
8
|
+
[`6daa73332cbc2`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/6daa73332cbc2) -
|
|
9
|
+
Added type to conversation starters
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Updated dependencies
|
|
14
|
+
|
|
15
|
+
## 20.7.0
|
|
16
|
+
|
|
17
|
+
### Minor Changes
|
|
18
|
+
|
|
19
|
+
- [#155340](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/155340)
|
|
20
|
+
[`4d0a5f27783bc`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/4d0a5f27783bc) -
|
|
21
|
+
Add deep-linking for the creation of kudos, as well as for the project directory
|
|
22
|
+
|
|
23
|
+
### Patch Changes
|
|
24
|
+
|
|
25
|
+
- [#154021](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/154021)
|
|
26
|
+
[`6867203830e28`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/6867203830e28) -
|
|
27
|
+
[ux] Fix Chat button padding in agent profile card
|
|
28
|
+
- Updated dependencies
|
|
29
|
+
|
|
3
30
|
## 20.6.2
|
|
4
31
|
|
|
5
32
|
### Patch Changes
|
|
@@ -32,7 +32,7 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
32
32
|
this.userClient = (clients === null || clients === void 0 ? void 0 : clients.userClient) || new _UserProfileCardClient.default(withDefaultConfig);
|
|
33
33
|
this.teamClient = (clients === null || clients === void 0 ? void 0 : clients.teamClient) || new _TeamProfileCardClient.default(withDefaultConfig);
|
|
34
34
|
this.rovoAgentClient = (clients === null || clients === void 0 ? void 0 : clients.rovoAgentClient) || new _RovoAgentCardClient.default(withDefaultConfig);
|
|
35
|
-
this.tcClient = maybeCreateTeamCentralClient(
|
|
35
|
+
this.tcClient = maybeCreateTeamCentralClient(withDefaultConfig, clients);
|
|
36
36
|
}
|
|
37
37
|
(0, _createClass2.default)(ProfileCardClient, [{
|
|
38
38
|
key: "flushCache",
|
|
@@ -65,8 +65,8 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
65
65
|
}, {
|
|
66
66
|
key: "getTeamCentralBaseUrl",
|
|
67
67
|
value: function () {
|
|
68
|
-
var _getTeamCentralBaseUrl = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
|
|
69
|
-
var _this$tcClient3, isGlobalExperienceWorkspace;
|
|
68
|
+
var _getTeamCentralBaseUrl = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(teamCentralScopes) {
|
|
69
|
+
var _this$tcClient3, isGlobalExperienceWorkspace, suffix, orgId;
|
|
70
70
|
return _regenerator.default.wrap(function _callee$(_context) {
|
|
71
71
|
while (1) switch (_context.prev = _context.next) {
|
|
72
72
|
case 0:
|
|
@@ -86,14 +86,40 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
86
86
|
return this.tcClient.getIsGlobalExperienceWorkspace();
|
|
87
87
|
case 6:
|
|
88
88
|
isGlobalExperienceWorkspace = _context.sent;
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
if (isGlobalExperienceWorkspace) {
|
|
90
|
+
_context.next = 9;
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
return _context.abrupt("return", Promise.resolve((0, _atlassianContext.getATLContextUrl)('team')));
|
|
94
|
+
case 9:
|
|
95
|
+
suffix = '';
|
|
96
|
+
if (!(teamCentralScopes !== undefined)) {
|
|
97
|
+
_context.next = 18;
|
|
98
|
+
break;
|
|
99
|
+
}
|
|
100
|
+
_context.next = 13;
|
|
101
|
+
return this.tcClient.getOrgId();
|
|
102
|
+
case 13:
|
|
103
|
+
orgId = _context.sent;
|
|
104
|
+
if (!(orgId === null)) {
|
|
105
|
+
_context.next = 16;
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
return _context.abrupt("return", Promise.resolve(undefined));
|
|
109
|
+
case 16:
|
|
110
|
+
suffix += "/o/".concat(orgId);
|
|
111
|
+
if (teamCentralScopes.withSiteContext) {
|
|
112
|
+
suffix += "/s/".concat(this.tcClient.options.cloudId);
|
|
113
|
+
}
|
|
114
|
+
case 18:
|
|
115
|
+
return _context.abrupt("return", Promise.resolve("".concat((0, _atlassianContext.getATLContextUrl)('home')).concat(suffix)));
|
|
116
|
+
case 19:
|
|
91
117
|
case "end":
|
|
92
118
|
return _context.stop();
|
|
93
119
|
}
|
|
94
120
|
}, _callee, this);
|
|
95
121
|
}));
|
|
96
|
-
function getTeamCentralBaseUrl() {
|
|
122
|
+
function getTeamCentralBaseUrl(_x) {
|
|
97
123
|
return _getTeamCentralBaseUrl.apply(this, arguments);
|
|
98
124
|
}
|
|
99
125
|
return getTeamCentralBaseUrl;
|
|
@@ -14,6 +14,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
|
|
|
14
14
|
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
15
15
|
var _platformFeatureFlags = require("@atlaskit/platform-feature-flags");
|
|
16
16
|
var _CachingClient2 = _interopRequireDefault(require("./CachingClient"));
|
|
17
|
+
var _getOrgIdForCloudIdFromAGG = require("./getOrgIdForCloudIdFromAGG");
|
|
17
18
|
var _graphqlUtils = require("./graphqlUtils");
|
|
18
19
|
function _createSuper(t) { var r = _isNativeReflectConstruct(); return function () { var e, o = (0, _getPrototypeOf2.default)(t); if (r) { var s = (0, _getPrototypeOf2.default)(this).constructor; e = Reflect.construct(o, arguments, s); } else e = o.apply(this, arguments); return (0, _possibleConstructorReturn2.default)(this, e); }; }
|
|
19
20
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
@@ -27,6 +28,7 @@ var buildReportingLinesQuery = exports.buildReportingLinesQuery = function build
|
|
|
27
28
|
};
|
|
28
29
|
var isTCReadyPromiseMap = new Map();
|
|
29
30
|
var globalExperiencePromiseCache = new Map();
|
|
31
|
+
var orgIdPromiseCache = new Map();
|
|
30
32
|
var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
31
33
|
(0, _inherits2.default)(TeamCentralCardClient, _CachingClient);
|
|
32
34
|
var _super = _createSuper(TeamCentralCardClient);
|
|
@@ -47,6 +49,7 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
47
49
|
_this.bypassOnFailure = false;
|
|
48
50
|
_this.isTCReadyPromise = _this.createTcReadyPromise(options);
|
|
49
51
|
_this.isGlobalExperienceWorkspacePromise = _this.preloadIsGlobalExperienceWorkspace(options.cloudId);
|
|
52
|
+
_this.orgIdPromise = _this.preloadOrgId(options.gatewayGraphqlUrl, options.cloudId, options.orgId);
|
|
50
53
|
return _this;
|
|
51
54
|
}
|
|
52
55
|
(0, _createClass2.default)(TeamCentralCardClient, [{
|
|
@@ -182,6 +185,11 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
182
185
|
value: function getIsGlobalExperienceWorkspace() {
|
|
183
186
|
return this.isGlobalExperienceWorkspacePromise;
|
|
184
187
|
}
|
|
188
|
+
}, {
|
|
189
|
+
key: "getOrgId",
|
|
190
|
+
value: function getOrgId() {
|
|
191
|
+
return this.orgIdPromise;
|
|
192
|
+
}
|
|
185
193
|
}, {
|
|
186
194
|
key: "preloadIsGlobalExperienceWorkspace",
|
|
187
195
|
value: function preloadIsGlobalExperienceWorkspace(cloudId) {
|
|
@@ -253,6 +261,26 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
253
261
|
}
|
|
254
262
|
return isGlobalExperienceWorkspaceForCloudId;
|
|
255
263
|
}()
|
|
264
|
+
}, {
|
|
265
|
+
key: "preloadOrgId",
|
|
266
|
+
value: function preloadOrgId(gatewayGraphqlUrl, cloudId, orgId) {
|
|
267
|
+
if (!(0, _platformFeatureFlags.fg)('enable_ptc_sharded_townsquare_calls')) {
|
|
268
|
+
return Promise.resolve(null);
|
|
269
|
+
}
|
|
270
|
+
if (cloudId === undefined) {
|
|
271
|
+
return Promise.resolve(null);
|
|
272
|
+
}
|
|
273
|
+
if (orgId !== undefined) {
|
|
274
|
+
return Promise.resolve(orgId);
|
|
275
|
+
}
|
|
276
|
+
var maybeOrgIdForCloudIdPromise = orgIdPromiseCache.get(cloudId);
|
|
277
|
+
if (maybeOrgIdForCloudIdPromise !== undefined) {
|
|
278
|
+
return maybeOrgIdForCloudIdPromise;
|
|
279
|
+
}
|
|
280
|
+
var orgIdForCloudIdPromise = (0, _getOrgIdForCloudIdFromAGG.getOrgIdForCloudIdFromAGG)(gatewayGraphqlUrl, cloudId);
|
|
281
|
+
orgIdPromiseCache.set(cloudId, orgIdForCloudIdPromise);
|
|
282
|
+
return orgIdForCloudIdPromise;
|
|
283
|
+
}
|
|
256
284
|
}, {
|
|
257
285
|
key: "getMaybeShardedApiPath",
|
|
258
286
|
value: function getMaybeShardedApiPath(cloudId) {
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getOrgIdForCloudIdFromAGG = getOrgIdForCloudIdFromAGG;
|
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
9
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
10
|
+
var _graphqlUtils = require("./graphqlUtils");
|
|
11
|
+
var ORG_ID_FROM_CLOUD_ID_QUERY = "query OrgIdFromCloudId($cloudId: ID!) {\n\ttenantContexts(cloudIds: [$cloudId]) {\n\t\torgId\n\t}\n}";
|
|
12
|
+
var addHeaders = function addHeaders(headers) {
|
|
13
|
+
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
14
|
+
headers.append('atl-client-version', "20.8.0");
|
|
15
|
+
return headers;
|
|
16
|
+
};
|
|
17
|
+
function getOrgIdForCloudIdFromAGG(_x, _x2) {
|
|
18
|
+
return _getOrgIdForCloudIdFromAGG.apply(this, arguments);
|
|
19
|
+
}
|
|
20
|
+
function _getOrgIdForCloudIdFromAGG() {
|
|
21
|
+
_getOrgIdForCloudIdFromAGG = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(url, cloudId) {
|
|
22
|
+
var query, _yield$AGGQuery, tenantContexts;
|
|
23
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
24
|
+
while (1) switch (_context.prev = _context.next) {
|
|
25
|
+
case 0:
|
|
26
|
+
query = {
|
|
27
|
+
query: ORG_ID_FROM_CLOUD_ID_QUERY,
|
|
28
|
+
variables: {
|
|
29
|
+
cloudId: cloudId
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
_context.prev = 1;
|
|
33
|
+
_context.next = 4;
|
|
34
|
+
return (0, _graphqlUtils.AGGQuery)(url, query, addHeaders);
|
|
35
|
+
case 4:
|
|
36
|
+
_yield$AGGQuery = _context.sent;
|
|
37
|
+
tenantContexts = _yield$AGGQuery.tenantContexts;
|
|
38
|
+
if (!(!tenantContexts || tenantContexts.length === 0 || tenantContexts[0] === null)) {
|
|
39
|
+
_context.next = 8;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
return _context.abrupt("return", null);
|
|
43
|
+
case 8:
|
|
44
|
+
return _context.abrupt("return", tenantContexts[0].orgId);
|
|
45
|
+
case 11:
|
|
46
|
+
_context.prev = 11;
|
|
47
|
+
_context.t0 = _context["catch"](1);
|
|
48
|
+
return _context.abrupt("return", null);
|
|
49
|
+
case 14:
|
|
50
|
+
case "end":
|
|
51
|
+
return _context.stop();
|
|
52
|
+
}
|
|
53
|
+
}, _callee, null, [[1, 11]]);
|
|
54
|
+
}));
|
|
55
|
+
return _getOrgIdForCloudIdFromAGG.apply(this, arguments);
|
|
56
|
+
}
|
|
@@ -57,7 +57,7 @@ var addHeaders = exports.addHeaders = function addHeaders(headers) {
|
|
|
57
57
|
headers.append('X-ExperimentalApi', 'teams-beta');
|
|
58
58
|
headers.append('X-ExperimentalApi', 'team-members-beta');
|
|
59
59
|
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
60
|
-
headers.append('atl-client-version', "20.
|
|
60
|
+
headers.append('atl-client-version', "20.8.0");
|
|
61
61
|
return headers;
|
|
62
62
|
};
|
|
63
63
|
function getTeamFromAGG(_x, _x2, _x3) {
|
|
@@ -39,7 +39,7 @@ var cardContainerStyles = (0, _primitives.xcss)({
|
|
|
39
39
|
position: 'relative'
|
|
40
40
|
});
|
|
41
41
|
var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
42
|
-
var _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
42
|
+
var _agent$user_defined_c, _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
43
43
|
var agent = _ref.agent,
|
|
44
44
|
isLoading = _ref.isLoading,
|
|
45
45
|
isCreatedByViewingUser = _ref.isCreatedByViewingUser,
|
|
@@ -70,6 +70,12 @@ var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
|
70
70
|
setStarCount = _useState4[1];
|
|
71
71
|
var _useIntl = (0, _reactIntlNext.useIntl)(),
|
|
72
72
|
formatMessage = _useIntl.formatMessage;
|
|
73
|
+
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) {
|
|
74
|
+
return {
|
|
75
|
+
message: starter,
|
|
76
|
+
type: 'user-defined'
|
|
77
|
+
};
|
|
78
|
+
});
|
|
73
79
|
(0, _react.useEffect)(function () {
|
|
74
80
|
setIsStarred(!!(agent !== null && agent !== void 0 && agent.favourite));
|
|
75
81
|
setStarCount(agent === null || agent === void 0 ? void 0 : agent.favourite_count);
|
|
@@ -204,11 +210,11 @@ var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
|
204
210
|
agentDescription: agent.description
|
|
205
211
|
}), /*#__PURE__*/_react.default.createElement(_ConversationStarters.ConversationStarters, {
|
|
206
212
|
isAgentDefault: agent.is_default,
|
|
207
|
-
userDefinedConversationStarters:
|
|
213
|
+
userDefinedConversationStarters: userDefinedConversationStarters,
|
|
208
214
|
onConversationStarterClick: function onConversationStarterClick(conversationStarter) {
|
|
209
215
|
onConversationStartersClick ? onConversationStartersClick(conversationStarter) : onConversationStarter({
|
|
210
216
|
agentId: agent.id,
|
|
211
|
-
prompt: conversationStarter
|
|
217
|
+
prompt: conversationStarter.message
|
|
212
218
|
});
|
|
213
219
|
}
|
|
214
220
|
})), /*#__PURE__*/_react.default.createElement(_Actions.AgentActions, {
|
|
@@ -186,7 +186,10 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
|
|
|
186
186
|
var fireEvent = function fireEvent(event) {
|
|
187
187
|
_this.fireAnalytics(event);
|
|
188
188
|
};
|
|
189
|
-
var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl(
|
|
189
|
+
var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
|
|
190
|
+
withOrgContext: true,
|
|
191
|
+
withSiteContext: true
|
|
192
|
+
})]);
|
|
190
193
|
requests.then(function (res) {
|
|
191
194
|
var _this2;
|
|
192
195
|
return (_this2 = _this).handleClientSuccess.apply(_this2, (0, _toConsumableArray2.default)(res));
|
|
@@ -369,7 +372,9 @@ var TeamProfileCardTriggerInternal = exports.TeamProfileCardTriggerInternal = /*
|
|
|
369
372
|
return _this4.renderTrigger(triggerProps);
|
|
370
373
|
},
|
|
371
374
|
zIndex: _constants.layers.modal(),
|
|
372
|
-
shouldFlip: true
|
|
375
|
+
shouldFlip: true
|
|
376
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
377
|
+
,
|
|
373
378
|
autoFocus: this.props.trigger !== 'hover' && !this.openedByHover,
|
|
374
379
|
shouldRenderToParent: (0, _platformFeatureFlags.fg)('enable_appropriate_reading_order_in_profile_card')
|
|
375
380
|
}));
|
|
@@ -75,7 +75,10 @@ var ProfileCardResourced = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
75
75
|
hasError: false,
|
|
76
76
|
data: null
|
|
77
77
|
}, function () {
|
|
78
|
-
var requests = Promise.all([_this.props.resourceClient.getProfile(cloudId, userId, _this.fireAnalytics), _this.props.resourceClient.getReportingLines(userId), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl(
|
|
78
|
+
var requests = Promise.all([_this.props.resourceClient.getProfile(cloudId, userId, _this.fireAnalytics), _this.props.resourceClient.getReportingLines(userId), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
|
|
79
|
+
withOrgContext: true,
|
|
80
|
+
withSiteContext: true
|
|
81
|
+
})]);
|
|
79
82
|
requests.then(function (res) {
|
|
80
83
|
var _this2;
|
|
81
84
|
return (_this2 = _this).handleClientSuccess.apply(_this2, (0, _toConsumableArray2.default)(res));
|
|
@@ -196,7 +199,7 @@ var ProfileCardResourced = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
196
199
|
teamCentralBaseUrl: teamCentralBaseUrl,
|
|
197
200
|
openKudosDrawer: this.openKudosDrawer
|
|
198
201
|
});
|
|
199
|
-
return /*#__PURE__*/_react.default.createElement(_Card.CardWrapper, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isKudosEnabled && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
202
|
+
return /*#__PURE__*/_react.default.createElement(_Card.CardWrapper, null, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, isKudosEnabled && newProps.teamCentralBaseUrl && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
200
203
|
fallback: null
|
|
201
204
|
}, /*#__PURE__*/_react.default.createElement(_giveKudos.GiveKudosLauncherLazy, {
|
|
202
205
|
isOpen: this.state.kudosDrawerOpen,
|
|
@@ -226,7 +226,10 @@ function ProfilecardTriggerNext(_ref2) {
|
|
|
226
226
|
setError(null);
|
|
227
227
|
setData(null);
|
|
228
228
|
_context.prev = 6;
|
|
229
|
-
requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl(
|
|
229
|
+
requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl({
|
|
230
|
+
withOrgContext: true,
|
|
231
|
+
withSiteContext: true
|
|
232
|
+
})]);
|
|
230
233
|
_context.next = 10;
|
|
231
234
|
return requests;
|
|
232
235
|
case 10:
|
|
@@ -378,9 +381,11 @@ function ProfilecardTriggerNext(_ref2) {
|
|
|
378
381
|
}), children);
|
|
379
382
|
},
|
|
380
383
|
zIndex: _constants.layers.modal(),
|
|
381
|
-
shouldUseCaptureOnOutsideClick: true
|
|
384
|
+
shouldUseCaptureOnOutsideClick: true
|
|
385
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
386
|
+
,
|
|
382
387
|
autoFocus: autoFocus !== null && autoFocus !== void 0 ? autoFocus : trigger === 'click'
|
|
383
|
-
}), shouldShowGiveKudos && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
388
|
+
}), shouldShowGiveKudos && teamCentralBaseUrl && /*#__PURE__*/_react.default.createElement(_react.Suspense, {
|
|
384
389
|
fallback: null
|
|
385
390
|
}, /*#__PURE__*/_react.default.createElement(_giveKudos.GiveKudosLauncherLazy, {
|
|
386
391
|
isOpen: kudosDrawerOpen,
|
|
@@ -101,7 +101,8 @@ function getMockProfileClient(BaseProfileClient, modifyResponse) {
|
|
|
101
101
|
return _super3.call(this, options, _objectSpread({
|
|
102
102
|
userClient: new MockUserClient(options),
|
|
103
103
|
teamCentralClient: new MockTeamCentralClient(_objectSpread(_objectSpread({}, options), {}, {
|
|
104
|
-
teamCentralUrl: 'defaultTeamCentralUrl'
|
|
104
|
+
teamCentralUrl: 'defaultTeamCentralUrl',
|
|
105
|
+
gatewayGraphqlUrl: 'defaultGatewayGraphqlUrl'
|
|
105
106
|
}))
|
|
106
107
|
}, clients));
|
|
107
108
|
}
|
|
@@ -45,7 +45,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
|
|
|
45
45
|
actionSubjectId: actionSubjectId,
|
|
46
46
|
attributes: _objectSpread(_objectSpread({
|
|
47
47
|
packageName: "@atlaskit/profilecard",
|
|
48
|
-
packageVersion: "20.
|
|
48
|
+
packageVersion: "20.8.0"
|
|
49
49
|
}, attributes), {}, {
|
|
50
50
|
firedAt: Math.round((0, _performance.getPageTime)())
|
|
51
51
|
})
|
|
@@ -21,7 +21,7 @@ class ProfileCardClient {
|
|
|
21
21
|
this.userClient = (clients === null || clients === void 0 ? void 0 : clients.userClient) || new UserProfileCardClient(withDefaultConfig);
|
|
22
22
|
this.teamClient = (clients === null || clients === void 0 ? void 0 : clients.teamClient) || new TeamProfileCardClient(withDefaultConfig);
|
|
23
23
|
this.rovoAgentClient = (clients === null || clients === void 0 ? void 0 : clients.rovoAgentClient) || new RovoAgentCardClient(withDefaultConfig);
|
|
24
|
-
this.tcClient = maybeCreateTeamCentralClient(
|
|
24
|
+
this.tcClient = maybeCreateTeamCentralClient(withDefaultConfig, clients);
|
|
25
25
|
}
|
|
26
26
|
flushCache() {
|
|
27
27
|
var _this$tcClient, _this$rovoAgentClient;
|
|
@@ -43,7 +43,7 @@ class ProfileCardClient {
|
|
|
43
43
|
reports: []
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
|
-
async getTeamCentralBaseUrl() {
|
|
46
|
+
async getTeamCentralBaseUrl(teamCentralScopes) {
|
|
47
47
|
if (!fg('enable_ptc_sharded_townsquare_calls')) {
|
|
48
48
|
var _this$tcClient3;
|
|
49
49
|
return Promise.resolve((_this$tcClient3 = this.tcClient) === null || _this$tcClient3 === void 0 ? void 0 : _this$tcClient3.options.teamCentralBaseUrl);
|
|
@@ -52,7 +52,21 @@ class ProfileCardClient {
|
|
|
52
52
|
return Promise.resolve(undefined);
|
|
53
53
|
}
|
|
54
54
|
const isGlobalExperienceWorkspace = await this.tcClient.getIsGlobalExperienceWorkspace();
|
|
55
|
-
|
|
55
|
+
if (!isGlobalExperienceWorkspace) {
|
|
56
|
+
return Promise.resolve(getATLContextUrl('team'));
|
|
57
|
+
}
|
|
58
|
+
let suffix = '';
|
|
59
|
+
if (teamCentralScopes !== undefined) {
|
|
60
|
+
const orgId = await this.tcClient.getOrgId();
|
|
61
|
+
if (orgId === null) {
|
|
62
|
+
return Promise.resolve(undefined);
|
|
63
|
+
}
|
|
64
|
+
suffix += `/o/${orgId}`;
|
|
65
|
+
if (teamCentralScopes.withSiteContext) {
|
|
66
|
+
suffix += `/s/${this.tcClient.options.cloudId}`;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return Promise.resolve(`${getATLContextUrl('home')}${suffix}`);
|
|
56
70
|
}
|
|
57
71
|
async shouldShowGiveKudos() {
|
|
58
72
|
if (!this.tcClient || !(await this.getTeamCentralBaseUrl())) {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
2
2
|
import CachingClient from './CachingClient';
|
|
3
|
+
import { getOrgIdForCloudIdFromAGG } from './getOrgIdForCloudIdFromAGG';
|
|
3
4
|
import { directoryGraphqlQuery } from './graphqlUtils';
|
|
4
5
|
export const buildReportingLinesQuery = aaid => ({
|
|
5
6
|
query: `
|
|
@@ -33,6 +34,7 @@ export const buildReportingLinesQuery = aaid => ({
|
|
|
33
34
|
});
|
|
34
35
|
let isTCReadyPromiseMap = new Map();
|
|
35
36
|
const globalExperiencePromiseCache = new Map();
|
|
37
|
+
const orgIdPromiseCache = new Map();
|
|
36
38
|
class TeamCentralCardClient extends CachingClient {
|
|
37
39
|
/**
|
|
38
40
|
* Simple circuit breaker to avoid making unnecessary calls to Team Central on auth failures
|
|
@@ -49,6 +51,7 @@ class TeamCentralCardClient extends CachingClient {
|
|
|
49
51
|
this.bypassOnFailure = false;
|
|
50
52
|
this.isTCReadyPromise = this.createTcReadyPromise(options);
|
|
51
53
|
this.isGlobalExperienceWorkspacePromise = this.preloadIsGlobalExperienceWorkspace(options.cloudId);
|
|
54
|
+
this.orgIdPromise = this.preloadOrgId(options.gatewayGraphqlUrl, options.cloudId, options.orgId);
|
|
52
55
|
}
|
|
53
56
|
createTcReadyPromise(config) {
|
|
54
57
|
if (config.cloudId) {
|
|
@@ -139,6 +142,9 @@ class TeamCentralCardClient extends CachingClient {
|
|
|
139
142
|
getIsGlobalExperienceWorkspace() {
|
|
140
143
|
return this.isGlobalExperienceWorkspacePromise;
|
|
141
144
|
}
|
|
145
|
+
getOrgId() {
|
|
146
|
+
return this.orgIdPromise;
|
|
147
|
+
}
|
|
142
148
|
preloadIsGlobalExperienceWorkspace(cloudId) {
|
|
143
149
|
if (!fg('enable_ptc_sharded_townsquare_calls')) {
|
|
144
150
|
return Promise.resolve(false);
|
|
@@ -179,6 +185,24 @@ class TeamCentralCardClient extends CachingClient {
|
|
|
179
185
|
return Promise.resolve(false);
|
|
180
186
|
}
|
|
181
187
|
}
|
|
188
|
+
preloadOrgId(gatewayGraphqlUrl, cloudId, orgId) {
|
|
189
|
+
if (!fg('enable_ptc_sharded_townsquare_calls')) {
|
|
190
|
+
return Promise.resolve(null);
|
|
191
|
+
}
|
|
192
|
+
if (cloudId === undefined) {
|
|
193
|
+
return Promise.resolve(null);
|
|
194
|
+
}
|
|
195
|
+
if (orgId !== undefined) {
|
|
196
|
+
return Promise.resolve(orgId);
|
|
197
|
+
}
|
|
198
|
+
const maybeOrgIdForCloudIdPromise = orgIdPromiseCache.get(cloudId);
|
|
199
|
+
if (maybeOrgIdForCloudIdPromise !== undefined) {
|
|
200
|
+
return maybeOrgIdForCloudIdPromise;
|
|
201
|
+
}
|
|
202
|
+
const orgIdForCloudIdPromise = getOrgIdForCloudIdFromAGG(gatewayGraphqlUrl, cloudId);
|
|
203
|
+
orgIdPromiseCache.set(cloudId, orgIdForCloudIdPromise);
|
|
204
|
+
return orgIdForCloudIdPromise;
|
|
205
|
+
}
|
|
182
206
|
getMaybeShardedApiPath(cloudId) {
|
|
183
207
|
const maybeShardedPath = fg('enable_ptc_sharded_townsquare_calls') ? `/townsquare/s/${cloudId}` : '/watermelon';
|
|
184
208
|
return `/gateway/api${maybeShardedPath}`;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AGGQuery } from './graphqlUtils';
|
|
2
|
+
const ORG_ID_FROM_CLOUD_ID_QUERY = `query OrgIdFromCloudId($cloudId: ID!) {
|
|
3
|
+
tenantContexts(cloudIds: [$cloudId]) {
|
|
4
|
+
orgId
|
|
5
|
+
}
|
|
6
|
+
}`;
|
|
7
|
+
const addHeaders = headers => {
|
|
8
|
+
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
9
|
+
headers.append('atl-client-version', "20.8.0");
|
|
10
|
+
return headers;
|
|
11
|
+
};
|
|
12
|
+
export async function getOrgIdForCloudIdFromAGG(url, cloudId) {
|
|
13
|
+
const query = {
|
|
14
|
+
query: ORG_ID_FROM_CLOUD_ID_QUERY,
|
|
15
|
+
variables: {
|
|
16
|
+
cloudId
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
try {
|
|
20
|
+
const {
|
|
21
|
+
tenantContexts
|
|
22
|
+
} = await AGGQuery(url, query, addHeaders);
|
|
23
|
+
if (!tenantContexts || tenantContexts.length === 0 || tenantContexts[0] === null) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
return tenantContexts[0].orgId;
|
|
27
|
+
} catch (err) {
|
|
28
|
+
// don't bubble up the error, and let consumers handle it as if the cloud ID
|
|
29
|
+
// doesn't resolve to an org ID
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -67,7 +67,7 @@ export const addHeaders = headers => {
|
|
|
67
67
|
headers.append('X-ExperimentalApi', 'teams-beta');
|
|
68
68
|
headers.append('X-ExperimentalApi', 'team-members-beta');
|
|
69
69
|
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
70
|
-
headers.append('atl-client-version', "20.
|
|
70
|
+
headers.append('atl-client-version', "20.8.0");
|
|
71
71
|
return headers;
|
|
72
72
|
};
|
|
73
73
|
export async function getTeamFromAGG(url, teamId, siteId) {
|
|
@@ -38,7 +38,7 @@ const AgentProfileCard = ({
|
|
|
38
38
|
resourceClient,
|
|
39
39
|
addFlag
|
|
40
40
|
}) => {
|
|
41
|
-
var _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
41
|
+
var _agent$user_defined_c, _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
42
42
|
const {
|
|
43
43
|
onEditAgent,
|
|
44
44
|
onCopyAgent,
|
|
@@ -53,6 +53,12 @@ const AgentProfileCard = ({
|
|
|
53
53
|
const {
|
|
54
54
|
formatMessage
|
|
55
55
|
} = useIntl();
|
|
56
|
+
const userDefinedConversationStarters = agent === null || agent === void 0 ? 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(starter => {
|
|
57
|
+
return {
|
|
58
|
+
message: starter,
|
|
59
|
+
type: 'user-defined'
|
|
60
|
+
};
|
|
61
|
+
});
|
|
56
62
|
useEffect(() => {
|
|
57
63
|
setIsStarred(!!(agent !== null && agent !== void 0 && agent.favourite));
|
|
58
64
|
setStarCount(agent === null || agent === void 0 ? void 0 : agent.favourite_count);
|
|
@@ -157,11 +163,11 @@ const AgentProfileCard = ({
|
|
|
157
163
|
agentDescription: agent.description
|
|
158
164
|
}), /*#__PURE__*/React.createElement(ConversationStarters, {
|
|
159
165
|
isAgentDefault: agent.is_default,
|
|
160
|
-
userDefinedConversationStarters:
|
|
166
|
+
userDefinedConversationStarters: userDefinedConversationStarters,
|
|
161
167
|
onConversationStarterClick: conversationStarter => {
|
|
162
168
|
onConversationStartersClick ? onConversationStartersClick(conversationStarter) : onConversationStarter({
|
|
163
169
|
agentId: agent.id,
|
|
164
|
-
prompt: conversationStarter
|
|
170
|
+
prompt: conversationStarter.message
|
|
165
171
|
});
|
|
166
172
|
}
|
|
167
173
|
})), /*#__PURE__*/React.createElement(AgentActions, {
|
|
@@ -161,7 +161,10 @@ export class TeamProfileCardTriggerInternal extends React.PureComponent {
|
|
|
161
161
|
const fireEvent = event => {
|
|
162
162
|
this.fireAnalytics(event);
|
|
163
163
|
};
|
|
164
|
-
const requests = Promise.all([this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), this.props.resourceClient.shouldShowGiveKudos(), this.props.resourceClient.getTeamCentralBaseUrl(
|
|
164
|
+
const requests = Promise.all([this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), this.props.resourceClient.shouldShowGiveKudos(), this.props.resourceClient.getTeamCentralBaseUrl({
|
|
165
|
+
withOrgContext: true,
|
|
166
|
+
withSiteContext: true
|
|
167
|
+
})]);
|
|
165
168
|
requests.then(res => this.handleClientSuccess(...res), err => this.handleClientError(err)).catch(err => this.handleClientError(err));
|
|
166
169
|
});
|
|
167
170
|
});
|
|
@@ -324,7 +327,9 @@ export class TeamProfileCardTriggerInternal extends React.PureComponent {
|
|
|
324
327
|
content: this.renderProfileCard,
|
|
325
328
|
trigger: triggerProps => this.renderTrigger(triggerProps),
|
|
326
329
|
zIndex: layers.modal(),
|
|
327
|
-
shouldFlip: true
|
|
330
|
+
shouldFlip: true
|
|
331
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
332
|
+
,
|
|
328
333
|
autoFocus: this.props.trigger !== 'hover' && !this.openedByHover,
|
|
329
334
|
shouldRenderToParent: fg('enable_appropriate_reading_order_in_profile_card')
|
|
330
335
|
}));
|
|
@@ -50,7 +50,10 @@ class ProfileCardResourced extends React.PureComponent {
|
|
|
50
50
|
hasError: false,
|
|
51
51
|
data: null
|
|
52
52
|
}, () => {
|
|
53
|
-
const requests = Promise.all([this.props.resourceClient.getProfile(cloudId, userId, this.fireAnalytics), this.props.resourceClient.getReportingLines(userId), this.props.resourceClient.shouldShowGiveKudos(), this.props.resourceClient.getTeamCentralBaseUrl(
|
|
53
|
+
const requests = Promise.all([this.props.resourceClient.getProfile(cloudId, userId, this.fireAnalytics), this.props.resourceClient.getReportingLines(userId), this.props.resourceClient.shouldShowGiveKudos(), this.props.resourceClient.getTeamCentralBaseUrl({
|
|
54
|
+
withOrgContext: true,
|
|
55
|
+
withSiteContext: true
|
|
56
|
+
})]);
|
|
54
57
|
requests.then(res => this.handleClientSuccess(...res), err => this.handleClientError(err)).catch(err => this.handleClientError(err));
|
|
55
58
|
});
|
|
56
59
|
});
|
|
@@ -152,7 +155,7 @@ class ProfileCardResourced extends React.PureComponent {
|
|
|
152
155
|
teamCentralBaseUrl,
|
|
153
156
|
openKudosDrawer: this.openKudosDrawer
|
|
154
157
|
};
|
|
155
|
-
return /*#__PURE__*/React.createElement(CardWrapper, null, /*#__PURE__*/React.createElement(React.Fragment, null, isKudosEnabled && /*#__PURE__*/React.createElement(Suspense, {
|
|
158
|
+
return /*#__PURE__*/React.createElement(CardWrapper, null, /*#__PURE__*/React.createElement(React.Fragment, null, isKudosEnabled && newProps.teamCentralBaseUrl && /*#__PURE__*/React.createElement(Suspense, {
|
|
156
159
|
fallback: null
|
|
157
160
|
}, /*#__PURE__*/React.createElement(GiveKudosLauncherLazy, {
|
|
158
161
|
isOpen: this.state.kudosDrawerOpen,
|
|
@@ -171,7 +171,10 @@ export default function ProfilecardTriggerNext({
|
|
|
171
171
|
setError(null);
|
|
172
172
|
setData(null);
|
|
173
173
|
try {
|
|
174
|
-
const requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl(
|
|
174
|
+
const requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl({
|
|
175
|
+
withOrgContext: true,
|
|
176
|
+
withSiteContext: true
|
|
177
|
+
})]);
|
|
175
178
|
const responses = await requests;
|
|
176
179
|
handleClientSuccess(...responses);
|
|
177
180
|
} catch (err) {
|
|
@@ -310,9 +313,11 @@ export default function ProfilecardTriggerNext({
|
|
|
310
313
|
}), children);
|
|
311
314
|
},
|
|
312
315
|
zIndex: layers.modal(),
|
|
313
|
-
shouldUseCaptureOnOutsideClick: true
|
|
316
|
+
shouldUseCaptureOnOutsideClick: true
|
|
317
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
318
|
+
,
|
|
314
319
|
autoFocus: autoFocus !== null && autoFocus !== void 0 ? autoFocus : trigger === 'click'
|
|
315
|
-
}), shouldShowGiveKudos && /*#__PURE__*/React.createElement(Suspense, {
|
|
320
|
+
}), shouldShowGiveKudos && teamCentralBaseUrl && /*#__PURE__*/React.createElement(Suspense, {
|
|
316
321
|
fallback: null
|
|
317
322
|
}, /*#__PURE__*/React.createElement(GiveKudosLauncherLazy, {
|
|
318
323
|
isOpen: kudosDrawerOpen,
|
|
@@ -61,7 +61,8 @@ export default function getMockProfileClient(BaseProfileClient, modifyResponse)
|
|
|
61
61
|
userClient: new MockUserClient(options),
|
|
62
62
|
teamCentralClient: new MockTeamCentralClient({
|
|
63
63
|
...options,
|
|
64
|
-
teamCentralUrl: 'defaultTeamCentralUrl'
|
|
64
|
+
teamCentralUrl: 'defaultTeamCentralUrl',
|
|
65
|
+
gatewayGraphqlUrl: 'defaultGatewayGraphqlUrl'
|
|
65
66
|
}),
|
|
66
67
|
...clients
|
|
67
68
|
});
|
|
@@ -32,7 +32,7 @@ const createEvent = (eventType, action, actionSubject, actionSubjectId, attribut
|
|
|
32
32
|
actionSubjectId,
|
|
33
33
|
attributes: {
|
|
34
34
|
packageName: "@atlaskit/profilecard",
|
|
35
|
-
packageVersion: "20.
|
|
35
|
+
packageVersion: "20.8.0",
|
|
36
36
|
...attributes,
|
|
37
37
|
firedAt: Math.round(getPageTime())
|
|
38
38
|
}
|
|
@@ -25,7 +25,7 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
25
25
|
this.userClient = (clients === null || clients === void 0 ? void 0 : clients.userClient) || new UserProfileCardClient(withDefaultConfig);
|
|
26
26
|
this.teamClient = (clients === null || clients === void 0 ? void 0 : clients.teamClient) || new TeamProfileCardClient(withDefaultConfig);
|
|
27
27
|
this.rovoAgentClient = (clients === null || clients === void 0 ? void 0 : clients.rovoAgentClient) || new RovoAgentCardClient(withDefaultConfig);
|
|
28
|
-
this.tcClient = maybeCreateTeamCentralClient(
|
|
28
|
+
this.tcClient = maybeCreateTeamCentralClient(withDefaultConfig, clients);
|
|
29
29
|
}
|
|
30
30
|
_createClass(ProfileCardClient, [{
|
|
31
31
|
key: "flushCache",
|
|
@@ -58,8 +58,8 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
58
58
|
}, {
|
|
59
59
|
key: "getTeamCentralBaseUrl",
|
|
60
60
|
value: function () {
|
|
61
|
-
var _getTeamCentralBaseUrl = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
62
|
-
var _this$tcClient3, isGlobalExperienceWorkspace;
|
|
61
|
+
var _getTeamCentralBaseUrl = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(teamCentralScopes) {
|
|
62
|
+
var _this$tcClient3, isGlobalExperienceWorkspace, suffix, orgId;
|
|
63
63
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
64
64
|
while (1) switch (_context.prev = _context.next) {
|
|
65
65
|
case 0:
|
|
@@ -79,14 +79,40 @@ var ProfileCardClient = /*#__PURE__*/function () {
|
|
|
79
79
|
return this.tcClient.getIsGlobalExperienceWorkspace();
|
|
80
80
|
case 6:
|
|
81
81
|
isGlobalExperienceWorkspace = _context.sent;
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
if (isGlobalExperienceWorkspace) {
|
|
83
|
+
_context.next = 9;
|
|
84
|
+
break;
|
|
85
|
+
}
|
|
86
|
+
return _context.abrupt("return", Promise.resolve(getATLContextUrl('team')));
|
|
87
|
+
case 9:
|
|
88
|
+
suffix = '';
|
|
89
|
+
if (!(teamCentralScopes !== undefined)) {
|
|
90
|
+
_context.next = 18;
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
_context.next = 13;
|
|
94
|
+
return this.tcClient.getOrgId();
|
|
95
|
+
case 13:
|
|
96
|
+
orgId = _context.sent;
|
|
97
|
+
if (!(orgId === null)) {
|
|
98
|
+
_context.next = 16;
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
return _context.abrupt("return", Promise.resolve(undefined));
|
|
102
|
+
case 16:
|
|
103
|
+
suffix += "/o/".concat(orgId);
|
|
104
|
+
if (teamCentralScopes.withSiteContext) {
|
|
105
|
+
suffix += "/s/".concat(this.tcClient.options.cloudId);
|
|
106
|
+
}
|
|
107
|
+
case 18:
|
|
108
|
+
return _context.abrupt("return", Promise.resolve("".concat(getATLContextUrl('home')).concat(suffix)));
|
|
109
|
+
case 19:
|
|
84
110
|
case "end":
|
|
85
111
|
return _context.stop();
|
|
86
112
|
}
|
|
87
113
|
}, _callee, this);
|
|
88
114
|
}));
|
|
89
|
-
function getTeamCentralBaseUrl() {
|
|
115
|
+
function getTeamCentralBaseUrl(_x) {
|
|
90
116
|
return _getTeamCentralBaseUrl.apply(this, arguments);
|
|
91
117
|
}
|
|
92
118
|
return getTeamCentralBaseUrl;
|
|
@@ -9,6 +9,7 @@ function _createSuper(t) { var r = _isNativeReflectConstruct(); return function
|
|
|
9
9
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
10
10
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
11
11
|
import CachingClient from './CachingClient';
|
|
12
|
+
import { getOrgIdForCloudIdFromAGG } from './getOrgIdForCloudIdFromAGG';
|
|
12
13
|
import { directoryGraphqlQuery } from './graphqlUtils';
|
|
13
14
|
export var buildReportingLinesQuery = function buildReportingLinesQuery(aaid) {
|
|
14
15
|
return {
|
|
@@ -20,6 +21,7 @@ export var buildReportingLinesQuery = function buildReportingLinesQuery(aaid) {
|
|
|
20
21
|
};
|
|
21
22
|
var isTCReadyPromiseMap = new Map();
|
|
22
23
|
var globalExperiencePromiseCache = new Map();
|
|
24
|
+
var orgIdPromiseCache = new Map();
|
|
23
25
|
var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
24
26
|
_inherits(TeamCentralCardClient, _CachingClient);
|
|
25
27
|
var _super = _createSuper(TeamCentralCardClient);
|
|
@@ -40,6 +42,7 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
40
42
|
_this.bypassOnFailure = false;
|
|
41
43
|
_this.isTCReadyPromise = _this.createTcReadyPromise(options);
|
|
42
44
|
_this.isGlobalExperienceWorkspacePromise = _this.preloadIsGlobalExperienceWorkspace(options.cloudId);
|
|
45
|
+
_this.orgIdPromise = _this.preloadOrgId(options.gatewayGraphqlUrl, options.cloudId, options.orgId);
|
|
43
46
|
return _this;
|
|
44
47
|
}
|
|
45
48
|
_createClass(TeamCentralCardClient, [{
|
|
@@ -175,6 +178,11 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
175
178
|
value: function getIsGlobalExperienceWorkspace() {
|
|
176
179
|
return this.isGlobalExperienceWorkspacePromise;
|
|
177
180
|
}
|
|
181
|
+
}, {
|
|
182
|
+
key: "getOrgId",
|
|
183
|
+
value: function getOrgId() {
|
|
184
|
+
return this.orgIdPromise;
|
|
185
|
+
}
|
|
178
186
|
}, {
|
|
179
187
|
key: "preloadIsGlobalExperienceWorkspace",
|
|
180
188
|
value: function preloadIsGlobalExperienceWorkspace(cloudId) {
|
|
@@ -246,6 +254,26 @@ var TeamCentralCardClient = /*#__PURE__*/function (_CachingClient) {
|
|
|
246
254
|
}
|
|
247
255
|
return isGlobalExperienceWorkspaceForCloudId;
|
|
248
256
|
}()
|
|
257
|
+
}, {
|
|
258
|
+
key: "preloadOrgId",
|
|
259
|
+
value: function preloadOrgId(gatewayGraphqlUrl, cloudId, orgId) {
|
|
260
|
+
if (!fg('enable_ptc_sharded_townsquare_calls')) {
|
|
261
|
+
return Promise.resolve(null);
|
|
262
|
+
}
|
|
263
|
+
if (cloudId === undefined) {
|
|
264
|
+
return Promise.resolve(null);
|
|
265
|
+
}
|
|
266
|
+
if (orgId !== undefined) {
|
|
267
|
+
return Promise.resolve(orgId);
|
|
268
|
+
}
|
|
269
|
+
var maybeOrgIdForCloudIdPromise = orgIdPromiseCache.get(cloudId);
|
|
270
|
+
if (maybeOrgIdForCloudIdPromise !== undefined) {
|
|
271
|
+
return maybeOrgIdForCloudIdPromise;
|
|
272
|
+
}
|
|
273
|
+
var orgIdForCloudIdPromise = getOrgIdForCloudIdFromAGG(gatewayGraphqlUrl, cloudId);
|
|
274
|
+
orgIdPromiseCache.set(cloudId, orgIdForCloudIdPromise);
|
|
275
|
+
return orgIdForCloudIdPromise;
|
|
276
|
+
}
|
|
249
277
|
}, {
|
|
250
278
|
key: "getMaybeShardedApiPath",
|
|
251
279
|
value: function getMaybeShardedApiPath(cloudId) {
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
2
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
3
|
+
import { AGGQuery } from './graphqlUtils';
|
|
4
|
+
var ORG_ID_FROM_CLOUD_ID_QUERY = "query OrgIdFromCloudId($cloudId: ID!) {\n\ttenantContexts(cloudIds: [$cloudId]) {\n\t\torgId\n\t}\n}";
|
|
5
|
+
var addHeaders = function addHeaders(headers) {
|
|
6
|
+
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
7
|
+
headers.append('atl-client-version', "20.8.0");
|
|
8
|
+
return headers;
|
|
9
|
+
};
|
|
10
|
+
export function getOrgIdForCloudIdFromAGG(_x, _x2) {
|
|
11
|
+
return _getOrgIdForCloudIdFromAGG.apply(this, arguments);
|
|
12
|
+
}
|
|
13
|
+
function _getOrgIdForCloudIdFromAGG() {
|
|
14
|
+
_getOrgIdForCloudIdFromAGG = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(url, cloudId) {
|
|
15
|
+
var query, _yield$AGGQuery, tenantContexts;
|
|
16
|
+
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
17
|
+
while (1) switch (_context.prev = _context.next) {
|
|
18
|
+
case 0:
|
|
19
|
+
query = {
|
|
20
|
+
query: ORG_ID_FROM_CLOUD_ID_QUERY,
|
|
21
|
+
variables: {
|
|
22
|
+
cloudId: cloudId
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
_context.prev = 1;
|
|
26
|
+
_context.next = 4;
|
|
27
|
+
return AGGQuery(url, query, addHeaders);
|
|
28
|
+
case 4:
|
|
29
|
+
_yield$AGGQuery = _context.sent;
|
|
30
|
+
tenantContexts = _yield$AGGQuery.tenantContexts;
|
|
31
|
+
if (!(!tenantContexts || tenantContexts.length === 0 || tenantContexts[0] === null)) {
|
|
32
|
+
_context.next = 8;
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
return _context.abrupt("return", null);
|
|
36
|
+
case 8:
|
|
37
|
+
return _context.abrupt("return", tenantContexts[0].orgId);
|
|
38
|
+
case 11:
|
|
39
|
+
_context.prev = 11;
|
|
40
|
+
_context.t0 = _context["catch"](1);
|
|
41
|
+
return _context.abrupt("return", null);
|
|
42
|
+
case 14:
|
|
43
|
+
case "end":
|
|
44
|
+
return _context.stop();
|
|
45
|
+
}
|
|
46
|
+
}, _callee, null, [[1, 11]]);
|
|
47
|
+
}));
|
|
48
|
+
return _getOrgIdForCloudIdFromAGG.apply(this, arguments);
|
|
49
|
+
}
|
|
@@ -48,7 +48,7 @@ export var addHeaders = function addHeaders(headers) {
|
|
|
48
48
|
headers.append('X-ExperimentalApi', 'teams-beta');
|
|
49
49
|
headers.append('X-ExperimentalApi', 'team-members-beta');
|
|
50
50
|
headers.append('atl-client-name', "@atlaskit/profilecard");
|
|
51
|
-
headers.append('atl-client-version', "20.
|
|
51
|
+
headers.append('atl-client-version', "20.8.0");
|
|
52
52
|
return headers;
|
|
53
53
|
};
|
|
54
54
|
export function getTeamFromAGG(_x, _x2, _x3) {
|
|
@@ -29,7 +29,7 @@ var cardContainerStyles = xcss({
|
|
|
29
29
|
position: 'relative'
|
|
30
30
|
});
|
|
31
31
|
var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
32
|
-
var _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
32
|
+
var _agent$user_defined_c, _agent$external_confi, _agent$external_confi2, _agent$creatorInfo, _agent$creatorInfo2, _agent$creatorInfo3, _agent$creatorInfo4;
|
|
33
33
|
var agent = _ref.agent,
|
|
34
34
|
isLoading = _ref.isLoading,
|
|
35
35
|
isCreatedByViewingUser = _ref.isCreatedByViewingUser,
|
|
@@ -60,6 +60,12 @@ var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
|
60
60
|
setStarCount = _useState4[1];
|
|
61
61
|
var _useIntl = useIntl(),
|
|
62
62
|
formatMessage = _useIntl.formatMessage;
|
|
63
|
+
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) {
|
|
64
|
+
return {
|
|
65
|
+
message: starter,
|
|
66
|
+
type: 'user-defined'
|
|
67
|
+
};
|
|
68
|
+
});
|
|
63
69
|
useEffect(function () {
|
|
64
70
|
setIsStarred(!!(agent !== null && agent !== void 0 && agent.favourite));
|
|
65
71
|
setStarCount(agent === null || agent === void 0 ? void 0 : agent.favourite_count);
|
|
@@ -194,11 +200,11 @@ var AgentProfileCard = function AgentProfileCard(_ref) {
|
|
|
194
200
|
agentDescription: agent.description
|
|
195
201
|
}), /*#__PURE__*/React.createElement(ConversationStarters, {
|
|
196
202
|
isAgentDefault: agent.is_default,
|
|
197
|
-
userDefinedConversationStarters:
|
|
203
|
+
userDefinedConversationStarters: userDefinedConversationStarters,
|
|
198
204
|
onConversationStarterClick: function onConversationStarterClick(conversationStarter) {
|
|
199
205
|
onConversationStartersClick ? onConversationStartersClick(conversationStarter) : onConversationStarter({
|
|
200
206
|
agentId: agent.id,
|
|
201
|
-
prompt: conversationStarter
|
|
207
|
+
prompt: conversationStarter.message
|
|
202
208
|
});
|
|
203
209
|
}
|
|
204
210
|
})), /*#__PURE__*/React.createElement(AgentActions, {
|
|
@@ -176,7 +176,10 @@ export var TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureCo
|
|
|
176
176
|
var fireEvent = function fireEvent(event) {
|
|
177
177
|
_this.fireAnalytics(event);
|
|
178
178
|
};
|
|
179
|
-
var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl(
|
|
179
|
+
var requests = Promise.all([_this.props.resourceClient.getTeamProfile(teamId, orgId, fireEvent), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
|
|
180
|
+
withOrgContext: true,
|
|
181
|
+
withSiteContext: true
|
|
182
|
+
})]);
|
|
180
183
|
requests.then(function (res) {
|
|
181
184
|
var _this2;
|
|
182
185
|
return (_this2 = _this).handleClientSuccess.apply(_this2, _toConsumableArray(res));
|
|
@@ -359,7 +362,9 @@ export var TeamProfileCardTriggerInternal = /*#__PURE__*/function (_React$PureCo
|
|
|
359
362
|
return _this4.renderTrigger(triggerProps);
|
|
360
363
|
},
|
|
361
364
|
zIndex: layers.modal(),
|
|
362
|
-
shouldFlip: true
|
|
365
|
+
shouldFlip: true
|
|
366
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
367
|
+
,
|
|
363
368
|
autoFocus: this.props.trigger !== 'hover' && !this.openedByHover,
|
|
364
369
|
shouldRenderToParent: fg('enable_appropriate_reading_order_in_profile_card')
|
|
365
370
|
}));
|
|
@@ -65,7 +65,10 @@ var ProfileCardResourced = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
65
65
|
hasError: false,
|
|
66
66
|
data: null
|
|
67
67
|
}, function () {
|
|
68
|
-
var requests = Promise.all([_this.props.resourceClient.getProfile(cloudId, userId, _this.fireAnalytics), _this.props.resourceClient.getReportingLines(userId), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl(
|
|
68
|
+
var requests = Promise.all([_this.props.resourceClient.getProfile(cloudId, userId, _this.fireAnalytics), _this.props.resourceClient.getReportingLines(userId), _this.props.resourceClient.shouldShowGiveKudos(), _this.props.resourceClient.getTeamCentralBaseUrl({
|
|
69
|
+
withOrgContext: true,
|
|
70
|
+
withSiteContext: true
|
|
71
|
+
})]);
|
|
69
72
|
requests.then(function (res) {
|
|
70
73
|
var _this2;
|
|
71
74
|
return (_this2 = _this).handleClientSuccess.apply(_this2, _toConsumableArray(res));
|
|
@@ -186,7 +189,7 @@ var ProfileCardResourced = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
186
189
|
teamCentralBaseUrl: teamCentralBaseUrl,
|
|
187
190
|
openKudosDrawer: this.openKudosDrawer
|
|
188
191
|
});
|
|
189
|
-
return /*#__PURE__*/React.createElement(CardWrapper, null, /*#__PURE__*/React.createElement(React.Fragment, null, isKudosEnabled && /*#__PURE__*/React.createElement(Suspense, {
|
|
192
|
+
return /*#__PURE__*/React.createElement(CardWrapper, null, /*#__PURE__*/React.createElement(React.Fragment, null, isKudosEnabled && newProps.teamCentralBaseUrl && /*#__PURE__*/React.createElement(Suspense, {
|
|
190
193
|
fallback: null
|
|
191
194
|
}, /*#__PURE__*/React.createElement(GiveKudosLauncherLazy, {
|
|
192
195
|
isOpen: this.state.kudosDrawerOpen,
|
|
@@ -216,7 +216,10 @@ export default function ProfilecardTriggerNext(_ref2) {
|
|
|
216
216
|
setError(null);
|
|
217
217
|
setData(null);
|
|
218
218
|
_context.prev = 6;
|
|
219
|
-
requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl(
|
|
219
|
+
requests = Promise.all([resourceClient.getProfile(cloudId || '', userId, fireAnalytics), resourceClient.getReportingLines(userId), resourceClient.shouldShowGiveKudos(), resourceClient.getTeamCentralBaseUrl({
|
|
220
|
+
withOrgContext: true,
|
|
221
|
+
withSiteContext: true
|
|
222
|
+
})]);
|
|
220
223
|
_context.next = 10;
|
|
221
224
|
return requests;
|
|
222
225
|
case 10:
|
|
@@ -368,9 +371,11 @@ export default function ProfilecardTriggerNext(_ref2) {
|
|
|
368
371
|
}), children);
|
|
369
372
|
},
|
|
370
373
|
zIndex: layers.modal(),
|
|
371
|
-
shouldUseCaptureOnOutsideClick: true
|
|
374
|
+
shouldUseCaptureOnOutsideClick: true
|
|
375
|
+
// eslint-disable-next-line jsx-a11y/no-autofocus
|
|
376
|
+
,
|
|
372
377
|
autoFocus: autoFocus !== null && autoFocus !== void 0 ? autoFocus : trigger === 'click'
|
|
373
|
-
}), shouldShowGiveKudos && /*#__PURE__*/React.createElement(Suspense, {
|
|
378
|
+
}), shouldShowGiveKudos && teamCentralBaseUrl && /*#__PURE__*/React.createElement(Suspense, {
|
|
374
379
|
fallback: null
|
|
375
380
|
}, /*#__PURE__*/React.createElement(GiveKudosLauncherLazy, {
|
|
376
381
|
isOpen: kudosDrawerOpen,
|
|
@@ -94,7 +94,8 @@ export default function getMockProfileClient(BaseProfileClient, modifyResponse)
|
|
|
94
94
|
return _super3.call(this, options, _objectSpread({
|
|
95
95
|
userClient: new MockUserClient(options),
|
|
96
96
|
teamCentralClient: new MockTeamCentralClient(_objectSpread(_objectSpread({}, options), {}, {
|
|
97
|
-
teamCentralUrl: 'defaultTeamCentralUrl'
|
|
97
|
+
teamCentralUrl: 'defaultTeamCentralUrl',
|
|
98
|
+
gatewayGraphqlUrl: 'defaultGatewayGraphqlUrl'
|
|
98
99
|
}))
|
|
99
100
|
}, clients));
|
|
100
101
|
}
|
|
@@ -39,7 +39,7 @@ var createEvent = function createEvent(eventType, action, actionSubject, actionS
|
|
|
39
39
|
actionSubjectId: actionSubjectId,
|
|
40
40
|
attributes: _objectSpread(_objectSpread({
|
|
41
41
|
packageName: "@atlaskit/profilecard",
|
|
42
|
-
packageVersion: "20.
|
|
42
|
+
packageVersion: "20.8.0"
|
|
43
43
|
}, attributes), {}, {
|
|
44
44
|
firedAt: Math.round(getPageTime())
|
|
45
45
|
})
|
|
@@ -4,6 +4,10 @@ import RovoAgentCardClient from './RovoAgentCardClient';
|
|
|
4
4
|
import TeamCentralCardClient from './TeamCentralCardClient';
|
|
5
5
|
import TeamProfileCardClient from './TeamProfileCardClient';
|
|
6
6
|
import UserProfileCardClient from './UserProfileCardClient';
|
|
7
|
+
export type TeamCentralScopes = {
|
|
8
|
+
withOrgContext: true;
|
|
9
|
+
withSiteContext: boolean;
|
|
10
|
+
};
|
|
7
11
|
declare class ProfileCardClient implements ProfileClient {
|
|
8
12
|
userClient: UserProfileCardClient;
|
|
9
13
|
teamClient: TeamProfileCardClient;
|
|
@@ -14,7 +18,7 @@ declare class ProfileCardClient implements ProfileClient {
|
|
|
14
18
|
getProfile(cloudId: string, userId: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<any>;
|
|
15
19
|
getTeamProfile(teamId: string, orgId?: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<import("../types").Team>;
|
|
16
20
|
getReportingLines(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
17
|
-
getTeamCentralBaseUrl(): Promise<string | undefined>;
|
|
21
|
+
getTeamCentralBaseUrl(teamCentralScopes?: TeamCentralScopes): Promise<string | undefined>;
|
|
18
22
|
shouldShowGiveKudos(): Promise<boolean>;
|
|
19
23
|
getRovoAgentProfile(id: AgentIdType, analytics?: (event: AnalyticsEventPayload) => void): Promise<import("../types").RovoAgent>;
|
|
20
24
|
deleteAgent(id: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<void>;
|
|
@@ -8,6 +8,12 @@ export declare const buildReportingLinesQuery: (aaid: string) => {
|
|
|
8
8
|
};
|
|
9
9
|
export type TeamCentralCardClientOptions = CacheConfig & {
|
|
10
10
|
cloudId?: string;
|
|
11
|
+
gatewayGraphqlUrl: string;
|
|
12
|
+
/**
|
|
13
|
+
* If provided, will avoid resolving the org ID internally from the cloud ID,
|
|
14
|
+
* and use the provided org ID instead
|
|
15
|
+
*/
|
|
16
|
+
orgId?: string;
|
|
11
17
|
teamCentralDisabled?: boolean;
|
|
12
18
|
/**
|
|
13
19
|
* @deprecated
|
|
@@ -30,6 +36,7 @@ declare class TeamCentralCardClient extends CachingClient<TeamCentralReportingLi
|
|
|
30
36
|
bypassOnFailure: boolean;
|
|
31
37
|
isTCReadyPromise: Promise<boolean>;
|
|
32
38
|
private isGlobalExperienceWorkspacePromise;
|
|
39
|
+
private orgIdPromise;
|
|
33
40
|
constructor(options: TeamCentralCardClientOptions);
|
|
34
41
|
createTcReadyPromise(config: TeamCentralCardClientOptions): Promise<boolean>;
|
|
35
42
|
getReportingLines(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
@@ -39,9 +46,11 @@ declare class TeamCentralCardClient extends CachingClient<TeamCentralReportingLi
|
|
|
39
46
|
makeRequest(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
40
47
|
checkWorkspaceExists(): Promise<boolean>;
|
|
41
48
|
getIsGlobalExperienceWorkspace(): Promise<boolean>;
|
|
49
|
+
getOrgId(): Promise<string | null>;
|
|
42
50
|
private preloadIsGlobalExperienceWorkspace;
|
|
43
51
|
private hasTCWorkspace;
|
|
44
52
|
private isGlobalExperienceWorkspaceForCloudId;
|
|
53
|
+
private preloadOrgId;
|
|
45
54
|
private getMaybeShardedApiPath;
|
|
46
55
|
private filterReportingLinesUser;
|
|
47
56
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getOrgIdForCloudIdFromAGG(url: string, cloudId: string): Promise<string | null>;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import { type IntlShape } from 'react-intl-next';
|
|
3
3
|
import { type AnalyticsEventPayload, type CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
4
|
+
import { type ConversationStarter } from '@atlaskit/rovo-agent-components';
|
|
5
|
+
import { type TeamCentralScopes } from './client/ProfileCardClient';
|
|
4
6
|
import type RovoAgentCardClient from './client/RovoAgentCardClient';
|
|
5
7
|
import { type default as TeamCentralCardClient, type TeamCentralCardClientOptions } from './client/TeamCentralCardClient';
|
|
6
8
|
import type TeamProfileCardClient from './client/TeamProfileCardClient';
|
|
@@ -313,7 +315,7 @@ export interface TeamProfileCardTriggerProps extends TeamProfilecardCoreProps {
|
|
|
313
315
|
}
|
|
314
316
|
export interface AgentActionsType {
|
|
315
317
|
onChatClick?: () => void;
|
|
316
|
-
onConversationStartersClick?: (starter:
|
|
318
|
+
onConversationStartersClick?: (starter: ConversationStarter) => void;
|
|
317
319
|
}
|
|
318
320
|
export interface AgentProfileCardTriggerProps extends AgentActionsType {
|
|
319
321
|
agentId: string;
|
|
@@ -439,7 +441,7 @@ export interface ProfileClient {
|
|
|
439
441
|
getTeamProfile: (teamId: string, orgId?: string, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<Team>;
|
|
440
442
|
getReportingLines: (userId: string) => Promise<TeamCentralReportingLinesData>;
|
|
441
443
|
shouldShowGiveKudos: () => Promise<boolean>;
|
|
442
|
-
getTeamCentralBaseUrl: () => Promise<string | undefined>;
|
|
444
|
+
getTeamCentralBaseUrl: (teamCentralScopes?: TeamCentralScopes) => Promise<string | undefined>;
|
|
443
445
|
getRovoAgentProfile: (id: AgentIdType, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<RovoAgent>;
|
|
444
446
|
deleteAgent: (id: string, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<void>;
|
|
445
447
|
setFavouriteAgent: (id: string, isFavourite: boolean, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<void>;
|
|
@@ -451,7 +453,7 @@ export type ProfileCardErrorType = {
|
|
|
451
453
|
export type TeamProfileCardErrorType = {
|
|
452
454
|
reason: 'default' | 'NotFound' | 'TEAMS_FORBIDDEN';
|
|
453
455
|
} | null;
|
|
454
|
-
export interface ProfileClientOptions extends TeamCentralCardClientOptions {
|
|
456
|
+
export interface ProfileClientOptions extends Omit<TeamCentralCardClientOptions, 'gatewayGraphqlUrl'> {
|
|
455
457
|
/**
|
|
456
458
|
* pf-directory url
|
|
457
459
|
* When we clean up CloudUser migration FF, we should remove this prop
|
|
@@ -4,6 +4,10 @@ import RovoAgentCardClient from './RovoAgentCardClient';
|
|
|
4
4
|
import TeamCentralCardClient from './TeamCentralCardClient';
|
|
5
5
|
import TeamProfileCardClient from './TeamProfileCardClient';
|
|
6
6
|
import UserProfileCardClient from './UserProfileCardClient';
|
|
7
|
+
export type TeamCentralScopes = {
|
|
8
|
+
withOrgContext: true;
|
|
9
|
+
withSiteContext: boolean;
|
|
10
|
+
};
|
|
7
11
|
declare class ProfileCardClient implements ProfileClient {
|
|
8
12
|
userClient: UserProfileCardClient;
|
|
9
13
|
teamClient: TeamProfileCardClient;
|
|
@@ -14,7 +18,7 @@ declare class ProfileCardClient implements ProfileClient {
|
|
|
14
18
|
getProfile(cloudId: string, userId: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<any>;
|
|
15
19
|
getTeamProfile(teamId: string, orgId?: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<import("../types").Team>;
|
|
16
20
|
getReportingLines(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
17
|
-
getTeamCentralBaseUrl(): Promise<string | undefined>;
|
|
21
|
+
getTeamCentralBaseUrl(teamCentralScopes?: TeamCentralScopes): Promise<string | undefined>;
|
|
18
22
|
shouldShowGiveKudos(): Promise<boolean>;
|
|
19
23
|
getRovoAgentProfile(id: AgentIdType, analytics?: (event: AnalyticsEventPayload) => void): Promise<import("../types").RovoAgent>;
|
|
20
24
|
deleteAgent(id: string, analytics?: (event: AnalyticsEventPayload) => void): Promise<void>;
|
|
@@ -8,6 +8,12 @@ export declare const buildReportingLinesQuery: (aaid: string) => {
|
|
|
8
8
|
};
|
|
9
9
|
export type TeamCentralCardClientOptions = CacheConfig & {
|
|
10
10
|
cloudId?: string;
|
|
11
|
+
gatewayGraphqlUrl: string;
|
|
12
|
+
/**
|
|
13
|
+
* If provided, will avoid resolving the org ID internally from the cloud ID,
|
|
14
|
+
* and use the provided org ID instead
|
|
15
|
+
*/
|
|
16
|
+
orgId?: string;
|
|
11
17
|
teamCentralDisabled?: boolean;
|
|
12
18
|
/**
|
|
13
19
|
* @deprecated
|
|
@@ -30,6 +36,7 @@ declare class TeamCentralCardClient extends CachingClient<TeamCentralReportingLi
|
|
|
30
36
|
bypassOnFailure: boolean;
|
|
31
37
|
isTCReadyPromise: Promise<boolean>;
|
|
32
38
|
private isGlobalExperienceWorkspacePromise;
|
|
39
|
+
private orgIdPromise;
|
|
33
40
|
constructor(options: TeamCentralCardClientOptions);
|
|
34
41
|
createTcReadyPromise(config: TeamCentralCardClientOptions): Promise<boolean>;
|
|
35
42
|
getReportingLines(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
@@ -39,9 +46,11 @@ declare class TeamCentralCardClient extends CachingClient<TeamCentralReportingLi
|
|
|
39
46
|
makeRequest(userId: string): Promise<TeamCentralReportingLinesData>;
|
|
40
47
|
checkWorkspaceExists(): Promise<boolean>;
|
|
41
48
|
getIsGlobalExperienceWorkspace(): Promise<boolean>;
|
|
49
|
+
getOrgId(): Promise<string | null>;
|
|
42
50
|
private preloadIsGlobalExperienceWorkspace;
|
|
43
51
|
private hasTCWorkspace;
|
|
44
52
|
private isGlobalExperienceWorkspaceForCloudId;
|
|
53
|
+
private preloadOrgId;
|
|
45
54
|
private getMaybeShardedApiPath;
|
|
46
55
|
private filterReportingLinesUser;
|
|
47
56
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getOrgIdForCloudIdFromAGG(url: string, cloudId: string): Promise<string | null>;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type React from 'react';
|
|
2
2
|
import { type IntlShape } from 'react-intl-next';
|
|
3
3
|
import { type AnalyticsEventPayload, type CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';
|
|
4
|
+
import { type ConversationStarter } from '@atlaskit/rovo-agent-components';
|
|
5
|
+
import { type TeamCentralScopes } from './client/ProfileCardClient';
|
|
4
6
|
import type RovoAgentCardClient from './client/RovoAgentCardClient';
|
|
5
7
|
import { type default as TeamCentralCardClient, type TeamCentralCardClientOptions } from './client/TeamCentralCardClient';
|
|
6
8
|
import type TeamProfileCardClient from './client/TeamProfileCardClient';
|
|
@@ -316,7 +318,7 @@ export interface TeamProfileCardTriggerProps extends TeamProfilecardCoreProps {
|
|
|
316
318
|
}
|
|
317
319
|
export interface AgentActionsType {
|
|
318
320
|
onChatClick?: () => void;
|
|
319
|
-
onConversationStartersClick?: (starter:
|
|
321
|
+
onConversationStartersClick?: (starter: ConversationStarter) => void;
|
|
320
322
|
}
|
|
321
323
|
export interface AgentProfileCardTriggerProps extends AgentActionsType {
|
|
322
324
|
agentId: string;
|
|
@@ -445,7 +447,7 @@ export interface ProfileClient {
|
|
|
445
447
|
getTeamProfile: (teamId: string, orgId?: string, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<Team>;
|
|
446
448
|
getReportingLines: (userId: string) => Promise<TeamCentralReportingLinesData>;
|
|
447
449
|
shouldShowGiveKudos: () => Promise<boolean>;
|
|
448
|
-
getTeamCentralBaseUrl: () => Promise<string | undefined>;
|
|
450
|
+
getTeamCentralBaseUrl: (teamCentralScopes?: TeamCentralScopes) => Promise<string | undefined>;
|
|
449
451
|
getRovoAgentProfile: (id: AgentIdType, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<RovoAgent>;
|
|
450
452
|
deleteAgent: (id: string, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<void>;
|
|
451
453
|
setFavouriteAgent: (id: string, isFavourite: boolean, fireAnalytics?: (event: AnalyticsEventPayload) => void) => Promise<void>;
|
|
@@ -457,7 +459,7 @@ export type ProfileCardErrorType = {
|
|
|
457
459
|
export type TeamProfileCardErrorType = {
|
|
458
460
|
reason: 'default' | 'NotFound' | 'TEAMS_FORBIDDEN';
|
|
459
461
|
} | null;
|
|
460
|
-
export interface ProfileClientOptions extends TeamCentralCardClientOptions {
|
|
462
|
+
export interface ProfileClientOptions extends Omit<TeamCentralCardClientOptions, 'gatewayGraphqlUrl'> {
|
|
461
463
|
/**
|
|
462
464
|
* pf-directory url
|
|
463
465
|
* When we clean up CloudUser migration FF, we should remove this prop
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/profilecard",
|
|
3
|
-
"version": "20.
|
|
3
|
+
"version": "20.8.0",
|
|
4
4
|
"description": "A React component to display a card with user information.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -52,21 +52,21 @@
|
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@atlaskit/analytics-next": "^10.1.0",
|
|
54
54
|
"@atlaskit/atlassian-context": "^0.0.2",
|
|
55
|
-
"@atlaskit/avatar": "^21.
|
|
55
|
+
"@atlaskit/avatar": "^21.16.0",
|
|
56
56
|
"@atlaskit/avatar-group": "^10.0.0",
|
|
57
|
-
"@atlaskit/button": "^20.
|
|
58
|
-
"@atlaskit/dropdown-menu": "^12.
|
|
59
|
-
"@atlaskit/empty-state": "^7.
|
|
57
|
+
"@atlaskit/button": "^20.3.0",
|
|
58
|
+
"@atlaskit/dropdown-menu": "^12.21.0",
|
|
59
|
+
"@atlaskit/empty-state": "^7.12.0",
|
|
60
60
|
"@atlaskit/focus-ring": "^1.6.0",
|
|
61
61
|
"@atlaskit/give-kudos": "^2.2.0",
|
|
62
|
-
"@atlaskit/icon": "^22.
|
|
63
|
-
"@atlaskit/lozenge": "^11.
|
|
62
|
+
"@atlaskit/icon": "^22.24.0",
|
|
63
|
+
"@atlaskit/lozenge": "^11.12.0",
|
|
64
64
|
"@atlaskit/menu": "^2.13.0",
|
|
65
65
|
"@atlaskit/modal-dialog": "^12.17.0",
|
|
66
66
|
"@atlaskit/platform-feature-flags": "^0.3.0",
|
|
67
|
-
"@atlaskit/popup": "^1.
|
|
67
|
+
"@atlaskit/popup": "^1.29.0",
|
|
68
68
|
"@atlaskit/primitives": "^12.2.0",
|
|
69
|
-
"@atlaskit/rovo-agent-components": "^1.
|
|
69
|
+
"@atlaskit/rovo-agent-components": "^1.7.0",
|
|
70
70
|
"@atlaskit/spinner": "^16.3.0",
|
|
71
71
|
"@atlaskit/theme": "^14.0.0",
|
|
72
72
|
"@atlaskit/tokens": "^2.0.0",
|