@atlaskit/teams-public 0.16.0 → 0.18.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 (60) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/cjs/common/types.js +8 -1
  3. package/dist/cjs/common/utils/get-container-properties.compiled.css +3 -1
  4. package/dist/cjs/common/utils/get-container-properties.js +5 -4
  5. package/dist/cjs/common/utils/user-ari.js +16 -0
  6. package/dist/cjs/controllers/hooks/use-team-containers/index.js +133 -36
  7. package/dist/cjs/index.js +14 -1
  8. package/dist/cjs/services/agg-client/index.js +65 -0
  9. package/dist/cjs/services/agg-client/mocks/index.js +68 -2
  10. package/dist/cjs/services/agg-client/types.js +1 -0
  11. package/dist/cjs/services/agg-client/utils/queries/team-connected-to-container-query.js +12 -0
  12. package/dist/cjs/services/main.js +32 -7
  13. package/dist/cjs/ui/team-containers/linked-container-card/index.js +17 -5
  14. package/dist/es2019/common/types.js +2 -0
  15. package/dist/es2019/common/utils/get-container-properties.compiled.css +3 -1
  16. package/dist/es2019/common/utils/get-container-properties.js +5 -4
  17. package/dist/es2019/common/utils/user-ari.js +8 -0
  18. package/dist/es2019/controllers/hooks/use-team-containers/index.js +89 -12
  19. package/dist/es2019/index.js +3 -2
  20. package/dist/es2019/services/agg-client/index.js +47 -0
  21. package/dist/es2019/services/agg-client/mocks/index.js +67 -1
  22. package/dist/es2019/services/agg-client/types.js +0 -0
  23. package/dist/es2019/services/agg-client/utils/queries/team-connected-to-container-query.js +55 -0
  24. package/dist/es2019/services/main.js +9 -0
  25. package/dist/es2019/ui/team-containers/linked-container-card/index.js +15 -1
  26. package/dist/esm/common/types.js +2 -0
  27. package/dist/esm/common/utils/get-container-properties.compiled.css +3 -1
  28. package/dist/esm/common/utils/get-container-properties.js +5 -4
  29. package/dist/esm/common/utils/user-ari.js +10 -0
  30. package/dist/esm/controllers/hooks/use-team-containers/index.js +132 -35
  31. package/dist/esm/index.js +3 -2
  32. package/dist/esm/services/agg-client/index.js +65 -0
  33. package/dist/esm/services/agg-client/mocks/index.js +67 -1
  34. package/dist/esm/services/agg-client/types.js +0 -0
  35. package/dist/esm/services/agg-client/utils/queries/team-connected-to-container-query.js +5 -0
  36. package/dist/esm/services/main.js +32 -7
  37. package/dist/esm/ui/team-containers/linked-container-card/index.js +17 -5
  38. package/dist/types/common/types.d.ts +9 -0
  39. package/dist/types/common/utils/get-container-properties.d.ts +2 -1
  40. package/dist/types/common/utils/user-ari.d.ts +3 -0
  41. package/dist/types/controllers/hooks/use-team-containers/index.d.ts +20 -2
  42. package/dist/types/index.d.ts +2 -1
  43. package/dist/types/services/agg-client/index.d.ts +2 -0
  44. package/dist/types/services/agg-client/mocks/index.d.ts +66 -0
  45. package/dist/types/services/agg-client/types.d.ts +4 -0
  46. package/dist/types/services/agg-client/utils/queries/team-connected-to-container-query.d.ts +45 -0
  47. package/dist/types/services/main.d.ts +7 -1
  48. package/dist/types/services/types.d.ts +25 -1
  49. package/dist/types-ts4.5/common/types.d.ts +9 -0
  50. package/dist/types-ts4.5/common/utils/get-container-properties.d.ts +2 -1
  51. package/dist/types-ts4.5/common/utils/user-ari.d.ts +3 -0
  52. package/dist/types-ts4.5/controllers/hooks/use-team-containers/index.d.ts +20 -2
  53. package/dist/types-ts4.5/index.d.ts +2 -1
  54. package/dist/types-ts4.5/services/agg-client/index.d.ts +2 -0
  55. package/dist/types-ts4.5/services/agg-client/mocks/index.d.ts +66 -0
  56. package/dist/types-ts4.5/services/agg-client/types.d.ts +4 -0
  57. package/dist/types-ts4.5/services/agg-client/utils/queries/team-connected-to-container-query.d.ts +45 -0
  58. package/dist/types-ts4.5/services/main.d.ts +7 -1
  59. package/dist/types-ts4.5/services/types.d.ts +25 -1
  60. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @atlaskit/teams-public
2
2
 
3
+ ## 0.18.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#129296](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/129296)
8
+ [`deec85f688794`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/deec85f688794) -
9
+ [ux] move the team connection data to team container store
10
+
11
+ ## 0.17.0
12
+
13
+ ### Minor Changes
14
+
15
+ - [#130004](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/130004)
16
+ [`ee4fa8acc115d`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/ee4fa8acc115d) -
17
+ Add missing analytics
18
+
19
+ ### Patch Changes
20
+
21
+ - [#129972](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/pull-requests/129972)
22
+ [`b2d69a39e6687`](https://bitbucket.org/atlassian/atlassian-frontend-monorepo/commits/b2d69a39e6687) -
23
+ Update `@compiled/react` dependency for improved type checking support.
24
+ - Updated dependencies
25
+
3
26
  ## 0.16.0
4
27
 
5
28
  ### Minor Changes
@@ -1 +1,8 @@
1
- "use strict";
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.USER_ARI_PREFIX = exports.TEAM_ARI_PREFIX = void 0;
7
+ var USER_ARI_PREFIX = exports.USER_ARI_PREFIX = 'ari:cloud:identity::user/';
8
+ var TEAM_ARI_PREFIX = exports.TEAM_ARI_PREFIX = 'ari:cloud:identity::team/';
@@ -1,2 +1,4 @@
1
1
  ._1bsb1crf{width:9pt}
2
- ._4t3i1crf{height:9pt}
2
+ ._1bsb7vkz{width:1pc}
3
+ ._4t3i1crf{height:9pt}
4
+ ._4t3i7vkz{height:1pc}
@@ -15,7 +15,8 @@ var _compiled = require("@atlaskit/primitives/compiled");
15
15
  var _ConfluenceIcon = _interopRequireDefault(require("../assets/ConfluenceIcon.svg"));
16
16
  var _JiraIcon = _interopRequireDefault(require("../assets/JiraIcon.svg"));
17
17
  var styles = {
18
- iconWrapper: "_1bsb1crf _4t3i1crf"
18
+ iconWrapper: "_1bsb1crf _4t3i1crf",
19
+ mediumIconWrapper: "_1bsb7vkz _4t3i7vkz"
19
20
  };
20
21
  var messages = exports.messages = (0, _reactIntlNext.defineMessages)({
21
22
  addConfluenceContainerTitle: {
@@ -59,13 +60,13 @@ var messages = exports.messages = (0, _reactIntlNext.defineMessages)({
59
60
  description: 'Text for space type containers'
60
61
  }
61
62
  });
62
- var getContainerProperties = exports.getContainerProperties = function getContainerProperties(containerType) {
63
+ var getContainerProperties = exports.getContainerProperties = function getContainerProperties(containerType, iconSize) {
63
64
  switch (containerType) {
64
65
  case 'ConfluenceSpace':
65
66
  return {
66
67
  description: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, messages.confluenceContainerDescription),
67
68
  icon: /*#__PURE__*/_react.default.createElement(_compiled.Box, {
68
- xcss: styles.iconWrapper
69
+ xcss: iconSize === 'medium' ? styles.mediumIconWrapper : styles.iconWrapper
69
70
  }, /*#__PURE__*/_react.default.createElement(_image.default, {
70
71
  src: _ConfluenceIcon.default,
71
72
  alt: "confluence-project"
@@ -77,7 +78,7 @@ var getContainerProperties = exports.getContainerProperties = function getContai
77
78
  return {
78
79
  description: /*#__PURE__*/_react.default.createElement(_reactIntlNext.FormattedMessage, messages.jiraProjectDescription),
79
80
  icon: /*#__PURE__*/_react.default.createElement(_compiled.Box, {
80
- xcss: styles.iconWrapper
81
+ xcss: iconSize === 'medium' ? styles.mediumIconWrapper : styles.iconWrapper
81
82
  }, /*#__PURE__*/_react.default.createElement(_image.default, {
82
83
  src: _JiraIcon.default,
83
84
  alt: "jira-project"
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.toUserId = exports.isUserARI = void 0;
7
+ var _types = require("../types");
8
+ var isUserARI = exports.isUserARI = function isUserARI(ari) {
9
+ return ari.startsWith(_types.USER_ARI_PREFIX);
10
+ };
11
+ var toUserId = exports.toUserId = function toUserId(ari) {
12
+ if (isUserARI(ari)) {
13
+ return ari.replace(_types.USER_ARI_PREFIX, '');
14
+ }
15
+ throw new Error('Invalid UserARI');
16
+ };
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.useTeamContainersHook = exports.useTeamContainers = void 0;
7
+ exports.useTeamContainersHook = exports.useTeamContainers = exports.useConnectedTeams = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
@@ -15,12 +15,20 @@ var _reactSweetState = require("react-sweet-state");
15
15
  var _services = require("../../../services");
16
16
  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; }
17
17
  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; }
18
+ var initialConnectedTeamsState = {
19
+ containerId: undefined,
20
+ isLoading: false,
21
+ hasLoaded: false,
22
+ teams: undefined,
23
+ error: null
24
+ };
18
25
  var initialState = {
19
26
  teamContainers: [],
20
27
  loading: true,
21
28
  error: null,
22
29
  unlinkError: null,
23
- teamId: null
30
+ teamId: null,
31
+ connectedTeams: initialConnectedTeamsState
24
32
  };
25
33
  var actions = {
26
34
  fetchTeamContainers: function fetchTeamContainers(teamId) {
@@ -75,84 +83,161 @@ var actions = {
75
83
  };
76
84
  }();
77
85
  },
78
- unlinkTeamContainers: function unlinkTeamContainers(teamId, containerId) {
86
+ fetchConnectedTeams: function fetchConnectedTeams(containerId) {
79
87
  return /*#__PURE__*/function () {
80
88
  var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(_ref3) {
81
- var setState, getState, mutationResult, _getState2, teamContainers, newContainers;
89
+ var setState, getState, _getState2, currentContainerId, teams;
82
90
  return _regenerator.default.wrap(function _callee2$(_context2) {
83
91
  while (1) switch (_context2.prev = _context2.next) {
84
92
  case 0:
85
93
  setState = _ref3.setState, getState = _ref3.getState;
94
+ _getState2 = getState(), currentContainerId = _getState2.connectedTeams.containerId;
95
+ if (!(currentContainerId === containerId)) {
96
+ _context2.next = 4;
97
+ break;
98
+ }
99
+ return _context2.abrupt("return");
100
+ case 4:
101
+ setState({
102
+ connectedTeams: {
103
+ containerId: containerId,
104
+ isLoading: true,
105
+ hasLoaded: false,
106
+ teams: undefined,
107
+ error: null
108
+ }
109
+ });
110
+ _context2.prev = 5;
111
+ _context2.next = 8;
112
+ return _services.teamsClient.getConnectedTeams(containerId);
113
+ case 8:
114
+ teams = _context2.sent;
115
+ setState({
116
+ connectedTeams: {
117
+ containerId: containerId,
118
+ isLoading: false,
119
+ hasLoaded: true,
120
+ teams: teams,
121
+ error: null
122
+ }
123
+ });
124
+ _context2.next = 15;
125
+ break;
126
+ case 12:
127
+ _context2.prev = 12;
128
+ _context2.t0 = _context2["catch"](5);
129
+ setState({
130
+ connectedTeams: {
131
+ containerId: containerId,
132
+ isLoading: false,
133
+ hasLoaded: false,
134
+ teams: [],
135
+ error: _context2.t0
136
+ }
137
+ });
138
+ case 15:
139
+ case "end":
140
+ return _context2.stop();
141
+ }
142
+ }, _callee2, null, [[5, 12]]);
143
+ }));
144
+ return function (_x2) {
145
+ return _ref4.apply(this, arguments);
146
+ };
147
+ }();
148
+ },
149
+ unlinkTeamContainers: function unlinkTeamContainers(teamId, containerId) {
150
+ return /*#__PURE__*/function () {
151
+ var _ref6 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(_ref5) {
152
+ var setState, getState, mutationResult, _getState3, teamContainers, connectedTeams, newContainers;
153
+ return _regenerator.default.wrap(function _callee3$(_context3) {
154
+ while (1) switch (_context3.prev = _context3.next) {
155
+ case 0:
156
+ setState = _ref5.setState, getState = _ref5.getState;
86
157
  setState({
87
158
  unlinkError: null
88
159
  });
89
- _context2.prev = 2;
90
- _context2.next = 5;
160
+ _context3.prev = 2;
161
+ _context3.next = 5;
91
162
  return _services.teamsClient.unlinkTeamContainer(teamId, containerId);
92
163
  case 5:
93
- mutationResult = _context2.sent;
164
+ mutationResult = _context3.sent;
94
165
  if (mutationResult.deleteTeamConnectedToContainer.errors.length) {
95
166
  // Just handle 1 error at a time should be suffcient as we disconenct only 1 container at a time
96
167
  setState({
97
168
  unlinkError: mutationResult.deleteTeamConnectedToContainer.errors[0]
98
169
  });
99
170
  } else {
100
- _getState2 = getState(), teamContainers = _getState2.teamContainers;
171
+ _getState3 = getState(), teamContainers = _getState3.teamContainers, connectedTeams = _getState3.connectedTeams;
101
172
  newContainers = teamContainers.filter(function (container) {
102
173
  return container.id !== containerId;
103
174
  });
104
- setState({
105
- teamContainers: newContainers
106
- });
175
+ if (connectedTeams.containerId === containerId) {
176
+ setState({
177
+ teamContainers: newContainers,
178
+ connectedTeams: initialConnectedTeamsState
179
+ });
180
+ } else {
181
+ setState({
182
+ teamContainers: newContainers
183
+ });
184
+ }
107
185
  }
108
- _context2.next = 12;
186
+ _context3.next = 12;
109
187
  break;
110
188
  case 9:
111
- _context2.prev = 9;
112
- _context2.t0 = _context2["catch"](2);
189
+ _context3.prev = 9;
190
+ _context3.t0 = _context3["catch"](2);
113
191
  setState({
114
- unlinkError: _context2.t0
192
+ unlinkError: _context3.t0
115
193
  });
116
194
  case 12:
117
195
  case "end":
118
- return _context2.stop();
196
+ return _context3.stop();
119
197
  }
120
- }, _callee2, null, [[2, 9]]);
198
+ }, _callee3, null, [[2, 9]]);
121
199
  }));
122
- return function (_x2) {
123
- return _ref4.apply(this, arguments);
200
+ return function (_x3) {
201
+ return _ref6.apply(this, arguments);
124
202
  };
125
203
  }();
126
204
  },
127
205
  addTeamContainer: function addTeamContainer(teamContainer) {
128
206
  return /*#__PURE__*/function () {
129
- var _ref6 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(_ref5) {
130
- var setState, getState, _getState3, teamContainers, containerExists;
131
- return _regenerator.default.wrap(function _callee3$(_context3) {
132
- while (1) switch (_context3.prev = _context3.next) {
207
+ var _ref8 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(_ref7) {
208
+ var setState, getState, _getState4, teamContainers, connectedTeams, containerExists;
209
+ return _regenerator.default.wrap(function _callee4$(_context4) {
210
+ while (1) switch (_context4.prev = _context4.next) {
133
211
  case 0:
134
- setState = _ref5.setState, getState = _ref5.getState;
135
- _getState3 = getState(), teamContainers = _getState3.teamContainers;
212
+ setState = _ref7.setState, getState = _ref7.getState;
213
+ _getState4 = getState(), teamContainers = _getState4.teamContainers, connectedTeams = _getState4.connectedTeams;
136
214
  containerExists = teamContainers.some(function (container) {
137
215
  return container.id === teamContainer.id;
138
216
  });
139
217
  if (!containerExists) {
140
- _context3.next = 5;
218
+ _context4.next = 5;
141
219
  break;
142
220
  }
143
- return _context3.abrupt("return");
221
+ return _context4.abrupt("return");
144
222
  case 5:
145
- setState({
146
- teamContainers: [teamContainer].concat((0, _toConsumableArray2.default)(teamContainers))
147
- });
223
+ if (connectedTeams.containerId === teamContainer.id) {
224
+ setState({
225
+ teamContainers: [].concat((0, _toConsumableArray2.default)(teamContainers), [teamContainer]),
226
+ connectedTeams: initialConnectedTeamsState
227
+ });
228
+ } else {
229
+ setState({
230
+ teamContainers: [].concat((0, _toConsumableArray2.default)(teamContainers), [teamContainer])
231
+ });
232
+ }
148
233
  case 6:
149
234
  case "end":
150
- return _context3.stop();
235
+ return _context4.stop();
151
236
  }
152
- }, _callee3);
237
+ }, _callee4);
153
238
  }));
154
- return function (_x3) {
155
- return _ref6.apply(this, arguments);
239
+ return function (_x4) {
240
+ return _ref8.apply(this, arguments);
156
241
  };
157
242
  }();
158
243
  }
@@ -164,14 +249,26 @@ var Store = (0, _reactSweetState.createStore)({
164
249
  });
165
250
  var useTeamContainersHook = exports.useTeamContainersHook = (0, _reactSweetState.createHook)(Store);
166
251
  var useTeamContainers = exports.useTeamContainers = function useTeamContainers(teamId) {
252
+ var enable = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
167
253
  var _useTeamContainersHoo = useTeamContainersHook(),
168
254
  _useTeamContainersHoo2 = (0, _slicedToArray2.default)(_useTeamContainersHoo, 2),
169
255
  state = _useTeamContainersHoo2[0],
170
256
  actions = _useTeamContainersHoo2[1];
171
257
  (0, _react.useEffect)(function () {
172
- actions.fetchTeamContainers(teamId);
173
- }, [teamId, actions]);
258
+ if (enable) {
259
+ actions.fetchTeamContainers(teamId);
260
+ }
261
+ }, [teamId, actions, enable]);
174
262
  return _objectSpread(_objectSpread({}, state), {}, {
175
263
  addTeamContainer: actions.addTeamContainer
176
264
  });
265
+ };
266
+ var useConnectedTeams = exports.useConnectedTeams = function useConnectedTeams() {
267
+ var _useTeamContainersHoo3 = useTeamContainersHook(),
268
+ _useTeamContainersHoo4 = (0, _slicedToArray2.default)(_useTeamContainersHoo3, 2),
269
+ state = _useTeamContainersHoo4[0],
270
+ actions = _useTeamContainersHoo4[1];
271
+ return _objectSpread(_objectSpread({}, state.connectedTeams), {}, {
272
+ fetchConnectedTeams: actions.fetchConnectedTeams
273
+ });
177
274
  };
package/dist/cjs/index.js CHANGED
@@ -9,12 +9,24 @@ Object.defineProperty(exports, "TeamContainers", {
9
9
  return _teamContainers.TeamContainers;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "getContainerProperties", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _getContainerProperties.getContainerProperties;
16
+ }
17
+ });
12
18
  Object.defineProperty(exports, "hasProductPermission", {
13
19
  enumerable: true,
14
20
  get: function get() {
15
21
  return _utils.hasProductPermission;
16
22
  }
17
23
  });
24
+ Object.defineProperty(exports, "useConnectedTeams", {
25
+ enumerable: true,
26
+ get: function get() {
27
+ return _useTeamContainers.useConnectedTeams;
28
+ }
29
+ });
18
30
  Object.defineProperty(exports, "useProductPermissions", {
19
31
  enumerable: true,
20
32
  get: function get() {
@@ -30,4 +42,5 @@ Object.defineProperty(exports, "useTeamContainers", {
30
42
  var _teamContainers = require("./ui/team-containers");
31
43
  var _useTeamContainers = require("./controllers/hooks/use-team-containers");
32
44
  var _useProductPermission = require("./controllers/hooks/use-product-permission");
33
- var _utils = require("./controllers/product-permission/utils");
45
+ var _utils = require("./controllers/product-permission/utils");
46
+ var _getContainerProperties = require("./common/utils/get-container-properties");
@@ -13,9 +13,11 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
13
13
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
14
14
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
15
  var _teamIdToAri = require("../../common/utils/team-id-to-ari");
16
+ var _userAri = require("../../common/utils/user-ari");
16
17
  var _constants = require("../constants");
17
18
  var _graphqlClient = require("../graphql-client");
18
19
  var _unlinkContainerMutation = require("./utils/mutations/unlink-container-mutation");
20
+ var _teamConnectedToContainerQuery = require("./utils/queries/team-connected-to-container-query");
19
21
  var _teamContainersQuery = require("./utils/queries/team-containers-query");
20
22
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
21
23
  function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
@@ -106,6 +108,69 @@ var AGGClient = exports.AGGClient = /*#__PURE__*/function (_BaseGraphQlClient) {
106
108
  }
107
109
  return unlinkTeamContainer;
108
110
  }()
111
+ }, {
112
+ key: "queryTeamsConnectedToContainer",
113
+ value: function () {
114
+ var _queryTeamsConnectedToContainer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(containerId) {
115
+ var _response$graphStore;
116
+ var response;
117
+ return _regenerator.default.wrap(function _callee3$(_context3) {
118
+ while (1) switch (_context3.prev = _context3.next) {
119
+ case 0:
120
+ _context3.next = 2;
121
+ return this.makeGraphQLRequest({
122
+ query: _teamConnectedToContainerQuery.TeamConnectedToContainerQuery,
123
+ variables: {
124
+ containerId: containerId
125
+ }
126
+ }, {
127
+ operationName: 'TeamConnectedToContainerQuery'
128
+ });
129
+ case 2:
130
+ response = _context3.sent;
131
+ return _context3.abrupt("return", response === null || response === void 0 || (_response$graphStore = response.graphStore) === null || _response$graphStore === void 0 || (_response$graphStore = _response$graphStore.teamConnectedToContainerInverse) === null || _response$graphStore === void 0 || (_response$graphStore = _response$graphStore.edges) === null || _response$graphStore === void 0 ? void 0 : _response$graphStore.map(function (_ref) {
132
+ var _node$members$nodes$m, _node$members, _node$members$nodes$l, _node$members2;
133
+ var node = _ref.node;
134
+ return {
135
+ id: node.id,
136
+ displayName: node.displayName,
137
+ description: node.description,
138
+ state: node.state,
139
+ membershipSettings: node.membershipSettings,
140
+ organizationId: node.organizationId,
141
+ creatorId: node.creator.id,
142
+ isVerified: node.isVerified,
143
+ members: (_node$members$nodes$m = (_node$members = node.members) === null || _node$members === void 0 ? void 0 : _node$members.nodes.map(function (_ref2) {
144
+ var _member$name;
145
+ var member = _ref2.member;
146
+ return {
147
+ id: member !== null && member !== void 0 && member.id ? (0, _userAri.toUserId)(member === null || member === void 0 ? void 0 : member.id) : '',
148
+ fullName: (_member$name = member === null || member === void 0 ? void 0 : member.name) !== null && _member$name !== void 0 ? _member$name : '',
149
+ avatarUrl: member === null || member === void 0 ? void 0 : member.picture,
150
+ status: member === null || member === void 0 ? void 0 : member.accountStatus
151
+ };
152
+ })) !== null && _node$members$nodes$m !== void 0 ? _node$members$nodes$m : [],
153
+ includesYou: false,
154
+ // to-do - this needs to be computed - https://product-fabric.atlassian.net/browse/CCECO-4368
155
+ memberCount: (_node$members$nodes$l = (_node$members2 = node.members) === null || _node$members2 === void 0 ? void 0 : _node$members2.nodes.length) !== null && _node$members$nodes$l !== void 0 ? _node$members$nodes$l : 0,
156
+ largeAvatarImageUrl: node.largeAvatarImageUrl,
157
+ smallAvatarImageUrl: node.smallAvatarImageUrl,
158
+ largeHeaderImageUrl: node.largeHeaderImageUrl,
159
+ smallHeaderImageUrl: node.smallHeaderImageUrl,
160
+ restriction: 'ORG_MEMBERS' // to-do - figure out if this should be optional (it's deprecated) - https://product-fabric.atlassian.net/browse/CCECO-4368
161
+ };
162
+ }));
163
+ case 4:
164
+ case "end":
165
+ return _context3.stop();
166
+ }
167
+ }, _callee3, this);
168
+ }));
169
+ function queryTeamsConnectedToContainer(_x4) {
170
+ return _queryTeamsConnectedToContainer.apply(this, arguments);
171
+ }
172
+ return queryTeamsConnectedToContainer;
173
+ }()
109
174
  }]);
110
175
  }(_graphqlClient.BaseGraphQlClient);
111
176
  var aggClient = exports.aggClient = new AGGClient(_constants.DEFAULT_CONFIG.stargateRoot, {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.MOCK_TEAM_CONTAINERS = void 0;
6
+ exports.MOCK_TEAM_CONTAINERS = exports.MOCK_CONNECTED_TEAMS_RESULT = exports.MOCK_CONNECTED_TEAMS = void 0;
7
7
  var MOCK_TEAM_CONTAINERS = exports.MOCK_TEAM_CONTAINERS = {
8
8
  graphStore: {
9
9
  cypherQuery: {
@@ -49,4 +49,70 @@ var MOCK_TEAM_CONTAINERS = exports.MOCK_TEAM_CONTAINERS = {
49
49
  }]
50
50
  }
51
51
  }
52
- };
52
+ };
53
+ var MOCK_CONNECTED_TEAMS = exports.MOCK_CONNECTED_TEAMS = {
54
+ graphStore: {
55
+ teamConnectedToContainerInverse: {
56
+ edges: [{
57
+ node: {
58
+ id: 'ari:cloud:identity::team/8ee37950-7de7-41ec-aee2-2c02c95949f4',
59
+ description: "Super team's super description",
60
+ displayName: 'THE SUPER TEAM',
61
+ smallAvatarImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/teams/avatars/0.svg',
62
+ smallHeaderImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/gradients/0.svg',
63
+ largeAvatarImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/teams/avatars/0.svg',
64
+ largeHeaderImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/gradients/0.svg',
65
+ members: {
66
+ nodes: [{
67
+ role: 'ADMIN',
68
+ state: 'FULL_MEMBER',
69
+ member: {
70
+ name: 'Shrutha Kashyap',
71
+ picture: 'https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/70121:c17bdf1f-39db-4611-a700-2f8c1aff841e/cf4058fd-75f2-4824-8041-c8efa4cc0ea8/128',
72
+ accountStatus: 'active',
73
+ extendedProfile: {
74
+ jobTitle: 'Full Stack Software Engineer'
75
+ },
76
+ id: 'ari:cloud:identity::user/70121:c17bdf1f-39db-4611-a700-2f8c1aff841e'
77
+ }
78
+ }],
79
+ pageInfo: {
80
+ endCursor: null,
81
+ hasNextPage: false
82
+ }
83
+ },
84
+ organizationId: 'ari:cloud:platform::org/434kbc65-c30c-1a22-6933-d25085c532ca',
85
+ membershipSettings: 'MEMBER_INVITE',
86
+ isVerified: false,
87
+ state: 'ACTIVE',
88
+ creator: {
89
+ id: 'ari:cloud:identity::user/70121:c17bdf1f-39db-4611-a700-2f8c1aff841e'
90
+ }
91
+ }
92
+ }]
93
+ }
94
+ }
95
+ };
96
+ var MOCK_CONNECTED_TEAMS_RESULT = exports.MOCK_CONNECTED_TEAMS_RESULT = [{
97
+ id: 'ari:cloud:identity::team/8ee37950-7de7-41ec-aee2-2c02c95949f4',
98
+ displayName: 'THE SUPER TEAM',
99
+ description: "Super team's super description",
100
+ state: 'ACTIVE',
101
+ membershipSettings: 'MEMBER_INVITE',
102
+ organizationId: 'ari:cloud:platform::org/434kbc65-c30c-1a22-6933-d25085c532ca',
103
+ creatorId: 'ari:cloud:identity::user/70121:c17bdf1f-39db-4611-a700-2f8c1aff841e',
104
+ isVerified: false,
105
+ members: [{
106
+ id: '70121:c17bdf1f-39db-4611-a700-2f8c1aff841e',
107
+ fullName: 'Shrutha Kashyap',
108
+ avatarUrl: 'https://avatar-management--avatars.us-west-2.prod.public.atl-paas.net/70121:c17bdf1f-39db-4611-a700-2f8c1aff841e/cf4058fd-75f2-4824-8041-c8efa4cc0ea8/128',
109
+ status: 'active'
110
+ }],
111
+ includesYou: false,
112
+ memberCount: 1,
113
+ smallAvatarImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/teams/avatars/0.svg',
114
+ smallHeaderImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/gradients/0.svg',
115
+ largeAvatarImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/teams/avatars/0.svg',
116
+ largeHeaderImageUrl: 'https://ptc-directory-sited-static.us-east-1.prod.public.atl-paas.net/gradients/0.svg',
117
+ restriction: 'ORG_MEMBERS'
118
+ }];
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.TeamConnectedToContainerQuery = void 0;
8
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
9
+ var _graphql = require("graphql");
10
+ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
11
+ var _templateObject;
12
+ var TeamConnectedToContainerQuery = exports.TeamConnectedToContainerQuery = (0, _graphql.print)((0, _graphqlTag.default)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n\tquery getTeamsForContainer($containerId: ID!) {\n\t\tgraphStore @optIn(to: \"GraphStore\") {\n\t\t\tteamConnectedToContainerInverse(id: $containerId)\n\t\t\t\t@optIn(to: \"GraphStoreTeamConnectedToContainer\") {\n\t\t\t\tedges {\n\t\t\t\t\tnode {\n\t\t\t\t\t\t... on TeamV2 {\n\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\tdescription\n\t\t\t\t\t\t\tdisplayName\n\t\t\t\t\t\t\tcreator {\n\t\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsmallAvatarImageUrl\n\t\t\t\t\t\t\tsmallHeaderImageUrl\n\t\t\t\t\t\t\tlargeAvatarImageUrl\n\t\t\t\t\t\t\tlargeHeaderImageUrl\n\t\t\t\t\t\t\tmembers {\n\t\t\t\t\t\t\t\tnodes {\n\t\t\t\t\t\t\t\t\tmember {\n\t\t\t\t\t\t\t\t\t\tid\n\t\t\t\t\t\t\t\t\t\tname\n\t\t\t\t\t\t\t\t\t\tpicture\n\t\t\t\t\t\t\t\t\t\taccountStatus\n\t\t\t\t\t\t\t\t\t\t... on AtlassianAccountUser {\n\t\t\t\t\t\t\t\t\t\t\textendedProfile {\n\t\t\t\t\t\t\t\t\t\t\t\tjobTitle\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t... on AppUser {\n\t\t\t\t\t\t\t\t\t\t\tappType\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\trole\n\t\t\t\t\t\t\t\t\tstate\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tpageInfo {\n\t\t\t\t\t\t\t\t\tendCursor\n\t\t\t\t\t\t\t\t\thasNextPage\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\torganizationId\n\t\t\t\t\t\t\tmembershipSettings\n\t\t\t\t\t\t\tisVerified\n\t\t\t\t\t\t\tstate\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n"]))));
@@ -68,27 +68,52 @@ var TeamsClient = exports.TeamsClient = /*#__PURE__*/function () {
68
68
  return getTeamContainers;
69
69
  }()
70
70
  /**
71
- * Unlink a container from a team
72
- * @param {string} teamId
71
+ * Get teams connected to a container (Confluence space or Jira project)
73
72
  * @param {string} containerId
74
- * @returns {Promise<void>}
73
+ * @returns {Promise}
75
74
  */
76
75
  )
77
76
  }, {
78
- key: "unlinkTeamContainer",
77
+ key: "getConnectedTeams",
79
78
  value: (function () {
80
- var _unlinkTeamContainer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(teamId, containerId) {
79
+ var _getConnectedTeams = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(containerId) {
81
80
  return _regenerator.default.wrap(function _callee2$(_context2) {
82
81
  while (1) switch (_context2.prev = _context2.next) {
83
82
  case 0:
84
- return _context2.abrupt("return", this._aggClient.unlinkTeamContainer(teamId, containerId));
83
+ return _context2.abrupt("return", this._aggClient.queryTeamsConnectedToContainer(containerId));
85
84
  case 1:
86
85
  case "end":
87
86
  return _context2.stop();
88
87
  }
89
88
  }, _callee2, this);
90
89
  }));
91
- function unlinkTeamContainer(_x2, _x3) {
90
+ function getConnectedTeams(_x2) {
91
+ return _getConnectedTeams.apply(this, arguments);
92
+ }
93
+ return getConnectedTeams;
94
+ }()
95
+ /**
96
+ * Unlink a container from a team
97
+ * @param {string} teamId
98
+ * @param {string} containerId
99
+ * @returns {Promise<void>}
100
+ */
101
+ )
102
+ }, {
103
+ key: "unlinkTeamContainer",
104
+ value: (function () {
105
+ var _unlinkTeamContainer = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(teamId, containerId) {
106
+ return _regenerator.default.wrap(function _callee3$(_context3) {
107
+ while (1) switch (_context3.prev = _context3.next) {
108
+ case 0:
109
+ return _context3.abrupt("return", this._aggClient.unlinkTeamContainer(teamId, containerId));
110
+ case 1:
111
+ case "end":
112
+ return _context3.stop();
113
+ }
114
+ }, _callee3, this);
115
+ }));
116
+ function unlinkTeamContainer(_x3, _x4) {
92
117
  return _unlinkTeamContainer.apply(this, arguments);
93
118
  }
94
119
  return unlinkTeamContainer;