@webex/plugin-team-memberships 3.0.0-beta.9 → 3.0.0-bnr.2

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/dist/index.js CHANGED
@@ -1,22 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
5
  _Object$defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
-
11
8
  exports.default = void 0;
12
-
13
9
  var _webexCore = require("@webex/webex-core");
14
-
15
10
  var _teamMemberships = _interopRequireDefault(require("./team-memberships"));
16
-
17
11
  /*!
18
12
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
19
13
  */
14
+
20
15
  (0, _webexCore.registerPlugin)('teamMemberships', _teamMemberships.default);
21
16
  var _default = _teamMemberships.default;
22
17
  exports.default = _default;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["registerPlugin","TeamMemberships"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {registerPlugin} from '@webex/webex-core';\n\nimport TeamMemberships from './team-memberships';\n\nregisterPlugin('teamMemberships', TeamMemberships);\n\nexport default TeamMemberships;\n"],"mappings":";;;;;;;;;;;;AAIA;;AAEA;;AANA;AACA;AACA;AAMA,IAAAA,yBAAA,EAAe,iBAAf,EAAkCC,wBAAlC;eAEeA,wB"}
1
+ {"version":3,"names":["registerPlugin","TeamMemberships"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {registerPlugin} from '@webex/webex-core';\n\nimport TeamMemberships from './team-memberships';\n\nregisterPlugin('teamMemberships', TeamMemberships);\n\nexport default TeamMemberships;\n"],"mappings":";;;;;;;;AAIA;AAEA;AANA;AACA;AACA;;AAMA,IAAAA,yBAAc,EAAC,iBAAiB,EAAEC,wBAAe,CAAC;AAAC,eAEpCA,wBAAe;AAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Team Memberships represent a person's relationship to a team. Use this API to
3
+ * list members of any team that you're in or create memberships to invite
4
+ * someone to a team. Team memberships can also be updated to make someone a
5
+ * moderator or deleted to remove them from the team.
6
+ *
7
+ * Just like in the Webex app, you must be a member of the team in order to list
8
+ * its memberships or invite people.
9
+ * @class
10
+ */
11
+ declare const TeamMemberships: any;
12
+ export default TeamMemberships;
13
+
14
+ export { }
@@ -1,15 +1,11 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  _Object$defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
-
9
7
  exports.default = void 0;
10
-
11
8
  var _webexCore = require("@webex/webex-core");
12
-
13
9
  /*!
14
10
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
15
11
  */
@@ -73,7 +69,6 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
73
69
  return res.body;
74
70
  });
75
71
  },
76
-
77
72
  /**
78
73
  * Get details for a membership by ID.
79
74
  * @instance
@@ -109,7 +104,6 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
109
104
  return res.body.items || res.body;
110
105
  });
111
106
  },
112
-
113
107
  /**
114
108
  * Lists all team memberships. By default, lists memberships for teams to
115
109
  * which the authenticated user belongs.
@@ -143,7 +137,6 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
143
137
  */
144
138
  list: function list(options) {
145
139
  var _this = this;
146
-
147
140
  return this.request({
148
141
  service: 'hydra',
149
142
  resource: 'team/memberships',
@@ -152,7 +145,6 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
152
145
  return new _webexCore.Page(res, _this.webex);
153
146
  });
154
147
  },
155
-
156
148
  /**
157
149
  * Deletes a membership by ID.
158
150
  * @instance
@@ -200,11 +192,9 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
200
192
  if (res.statusCode === 204) {
201
193
  return undefined;
202
194
  }
203
-
204
195
  return res.body;
205
196
  });
206
197
  },
207
-
208
198
  /**
209
199
  * Updates properties for a membership.
210
200
  * @instance
@@ -223,9 +213,8 @@ var TeamMemberships = _webexCore.WebexPlugin.extend({
223
213
  return res.body;
224
214
  });
225
215
  },
226
- version: "3.0.0-beta.9"
216
+ version: "3.0.0-bnr.2"
227
217
  });
228
-
229
218
  var _default = TeamMemberships;
230
219
  exports.default = _default;
231
220
  //# sourceMappingURL=team-memberships.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["TeamMemberships","WebexPlugin","extend","create","membership","request","method","service","resource","body","then","res","get","id","items","list","options","qs","Page","webex","remove","statusCode","undefined","update"],"sources":["team-memberships.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin, Page} from '@webex/webex-core';\n\n/**\n * @typedef {Object} TeamMembershipObject\n * @property {string} id - (server generated) Unique identifier for the team membership\n * @property {string} teamId - The team ID\n * @property {string} personId - The person ID\n * @property {string} personEmail - The email address of the person\n * @property {boolean} isModerator - Set to `true` to make the person a team\n * moderator\n * @property {string} created - (server generated) The date and time that the team membership was created\n */\n\n/**\n * Team Memberships represent a person's relationship to a team. Use this API to\n * list members of any team that you're in or create memberships to invite\n * someone to a team. Team memberships can also be updated to make someone a\n * moderator or deleted to remove them from the team.\n *\n * Just like in the Webex app, you must be a member of the team in order to list\n * its memberships or invite people.\n * @class\n */\nconst TeamMemberships = WebexPlugin.extend({\n /**\n * Add someone to a team by Person ID or email address; optionally making them\n * a moderator.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject} membership\n * @returns {Promise<TeamMembershipObject>}\n * @example\n * webex.teams.create({name: 'Create Team Membership Example'})\n * .then(function(team) {\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(membership) {\n * var assert = require('assert');\n * assert(membership.id);\n * assert(membership.teamId);\n * assert(membership.personId);\n * assert(membership.personEmail);\n * assert('isModerator' in membership);\n * assert(membership.created);\n * return 'success';\n * });\n * // => success\n */\n create(membership) {\n return this.request({\n method: 'POST',\n service: 'hydra',\n resource: 'team/memberships',\n body: membership\n })\n .then((res) => res.body);\n },\n\n /**\n * Get details for a membership by ID.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject|string} membership\n * @returns {Promise<TeamMembershipObject>}\n * @example\n * var membership;\n * webex.teams.create({name: 'Get Team Memberships Example'})\n * .then(function(team) {\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(m) {\n * membership = m;\n * return webex.teamMemberships.get(m.id);\n * })\n * .then(function(m) {\n * var assert = require('assert');\n * assert.deepEqual(m, membership);\n * return 'success';\n * });\n * // => success\n */\n get(membership) {\n const id = membership.id || membership;\n\n return this.request({\n service: 'hydra',\n resource: `team/memberships/${id}`\n })\n .then((res) => res.body.items || res.body);\n },\n\n /**\n * Lists all team memberships. By default, lists memberships for teams to\n * which the authenticated user belongs.\n * @instance\n * @memberof TeamMemberships\n * @param {Object} options\n * @param {string} options.max\n * @returns {[type]}\n * @example\n * var team;\n * webex.teams.create({name: 'List Team Memberships Example'})\n * .then(function(t) {\n * team = t;\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function() {\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 2);\n * for (var i = 0; i < teamMemberships.length; i+= 1) {\n * assert.equal(teamMemberships.items[i].teamId, team.id);\n * }\n * return 'success';\n * });\n * // => success\n */\n list(options) {\n return this.request({\n service: 'hydra',\n resource: 'team/memberships',\n qs: options\n })\n .then((res) => new Page(res, this.webex));\n },\n\n /**\n * Deletes a membership by ID.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject|string} membership\n * @returns {Promise}\n * @example\n * var membership, team;\n * webex.teams.create({name: 'Remove Team Memberships Example'})\n * .then(function(t) {\n * team = t;\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(m) {\n * membership = m;\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 2);\n * return webex.teamMemberships.remove(membership);\n * })\n * .then(function() {\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 1);\n * return 'success';\n * });\n * // => success\n */\n remove(membership) {\n const id = membership.id || membership;\n\n return this.request({\n method: 'DELETE',\n service: 'hydra',\n resource: `team/memberships/${id}`\n })\n .then((res) => {\n // Firefox has some issues with 204s and/or DELETE. This should move to\n // http-core\n if (res.statusCode === 204) {\n return undefined;\n }\n\n return res.body;\n });\n },\n\n /**\n * Updates properties for a membership.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject} membership\n * @returns {Promise<TeamMembershipObject>}\n */\n update(membership) {\n const id = membership.id || membership;\n\n return this.request({\n method: 'PUT',\n service: 'hydra',\n resource: `team/memberships/${id}`,\n body: membership\n })\n .then((res) => res.body);\n }\n});\n\nexport default TeamMemberships;\n"],"mappings":";;;;;;;;;;AAIA;;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,eAAe,GAAGC,sBAAA,CAAYC,MAAZ,CAAmB;EACzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,MA5ByC,kBA4BlCC,UA5BkC,EA4BtB;IACjB,OAAO,KAAKC,OAAL,CAAa;MAClBC,MAAM,EAAE,MADU;MAElBC,OAAO,EAAE,OAFS;MAGlBC,QAAQ,EAAE,kBAHQ;MAIlBC,IAAI,EAAEL;IAJY,CAAb,EAMJM,IANI,CAMC,UAACC,GAAD;MAAA,OAASA,GAAG,CAACF,IAAb;IAAA,CAND,CAAP;EAOD,CApCwC;;EAsCzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEG,GAhEyC,eAgErCR,UAhEqC,EAgEzB;IACd,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAX,IAAiBT,UAA5B;IAEA,OAAO,KAAKC,OAAL,CAAa;MAClBE,OAAO,EAAE,OADS;MAElBC,QAAQ,6BAAsBK,EAAtB;IAFU,CAAb,EAIJH,IAJI,CAIC,UAACC,GAAD;MAAA,OAASA,GAAG,CAACF,IAAJ,CAASK,KAAT,IAAkBH,GAAG,CAACF,IAA/B;IAAA,CAJD,CAAP;EAKD,CAxEwC;;EA0EzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEM,IAzGyC,gBAyGpCC,OAzGoC,EAyG3B;IAAA;;IACZ,OAAO,KAAKX,OAAL,CAAa;MAClBE,OAAO,EAAE,OADS;MAElBC,QAAQ,EAAE,kBAFQ;MAGlBS,EAAE,EAAED;IAHc,CAAb,EAKJN,IALI,CAKC,UAACC,GAAD;MAAA,OAAS,IAAIO,eAAJ,CAASP,GAAT,EAAc,KAAI,CAACQ,KAAnB,CAAT;IAAA,CALD,CAAP;EAMD,CAhHwC;;EAkHzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,MArJyC,kBAqJlChB,UArJkC,EAqJtB;IACjB,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAX,IAAiBT,UAA5B;IAEA,OAAO,KAAKC,OAAL,CAAa;MAClBC,MAAM,EAAE,QADU;MAElBC,OAAO,EAAE,OAFS;MAGlBC,QAAQ,6BAAsBK,EAAtB;IAHU,CAAb,EAKJH,IALI,CAKC,UAACC,GAAD,EAAS;MACb;MACA;MACA,IAAIA,GAAG,CAACU,UAAJ,KAAmB,GAAvB,EAA4B;QAC1B,OAAOC,SAAP;MACD;;MAED,OAAOX,GAAG,CAACF,IAAX;IACD,CAbI,CAAP;EAcD,CAtKwC;;EAwKzC;AACF;AACA;AACA;AACA;AACA;AACA;EACEc,MA/KyC,kBA+KlCnB,UA/KkC,EA+KtB;IACjB,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAX,IAAiBT,UAA5B;IAEA,OAAO,KAAKC,OAAL,CAAa;MAClBC,MAAM,EAAE,KADU;MAElBC,OAAO,EAAE,OAFS;MAGlBC,QAAQ,6BAAsBK,EAAtB,CAHU;MAIlBJ,IAAI,EAAEL;IAJY,CAAb,EAMJM,IANI,CAMC,UAACC,GAAD;MAAA,OAASA,GAAG,CAACF,IAAb;IAAA,CAND,CAAP;EAOD,CAzLwC;EAAA;AAAA,CAAnB,CAAxB;;eA4LeT,e"}
1
+ {"version":3,"names":["TeamMemberships","WebexPlugin","extend","create","membership","request","method","service","resource","body","then","res","get","id","items","list","options","qs","Page","webex","remove","statusCode","undefined","update"],"sources":["team-memberships.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin, Page} from '@webex/webex-core';\n\n/**\n * @typedef {Object} TeamMembershipObject\n * @property {string} id - (server generated) Unique identifier for the team membership\n * @property {string} teamId - The team ID\n * @property {string} personId - The person ID\n * @property {string} personEmail - The email address of the person\n * @property {boolean} isModerator - Set to `true` to make the person a team\n * moderator\n * @property {string} created - (server generated) The date and time that the team membership was created\n */\n\n/**\n * Team Memberships represent a person's relationship to a team. Use this API to\n * list members of any team that you're in or create memberships to invite\n * someone to a team. Team memberships can also be updated to make someone a\n * moderator or deleted to remove them from the team.\n *\n * Just like in the Webex app, you must be a member of the team in order to list\n * its memberships or invite people.\n * @class\n */\nconst TeamMemberships = WebexPlugin.extend({\n /**\n * Add someone to a team by Person ID or email address; optionally making them\n * a moderator.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject} membership\n * @returns {Promise<TeamMembershipObject>}\n * @example\n * webex.teams.create({name: 'Create Team Membership Example'})\n * .then(function(team) {\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(membership) {\n * var assert = require('assert');\n * assert(membership.id);\n * assert(membership.teamId);\n * assert(membership.personId);\n * assert(membership.personEmail);\n * assert('isModerator' in membership);\n * assert(membership.created);\n * return 'success';\n * });\n * // => success\n */\n create(membership) {\n return this.request({\n method: 'POST',\n service: 'hydra',\n resource: 'team/memberships',\n body: membership,\n }).then((res) => res.body);\n },\n\n /**\n * Get details for a membership by ID.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject|string} membership\n * @returns {Promise<TeamMembershipObject>}\n * @example\n * var membership;\n * webex.teams.create({name: 'Get Team Memberships Example'})\n * .then(function(team) {\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(m) {\n * membership = m;\n * return webex.teamMemberships.get(m.id);\n * })\n * .then(function(m) {\n * var assert = require('assert');\n * assert.deepEqual(m, membership);\n * return 'success';\n * });\n * // => success\n */\n get(membership) {\n const id = membership.id || membership;\n\n return this.request({\n service: 'hydra',\n resource: `team/memberships/${id}`,\n }).then((res) => res.body.items || res.body);\n },\n\n /**\n * Lists all team memberships. By default, lists memberships for teams to\n * which the authenticated user belongs.\n * @instance\n * @memberof TeamMemberships\n * @param {Object} options\n * @param {string} options.max\n * @returns {[type]}\n * @example\n * var team;\n * webex.teams.create({name: 'List Team Memberships Example'})\n * .then(function(t) {\n * team = t;\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function() {\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 2);\n * for (var i = 0; i < teamMemberships.length; i+= 1) {\n * assert.equal(teamMemberships.items[i].teamId, team.id);\n * }\n * return 'success';\n * });\n * // => success\n */\n list(options) {\n return this.request({\n service: 'hydra',\n resource: 'team/memberships',\n qs: options,\n }).then((res) => new Page(res, this.webex));\n },\n\n /**\n * Deletes a membership by ID.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject|string} membership\n * @returns {Promise}\n * @example\n * var membership, team;\n * webex.teams.create({name: 'Remove Team Memberships Example'})\n * .then(function(t) {\n * team = t;\n * return webex.teamMemberships.create({\n * personEmail: 'alice@example.com',\n * teamId: team.id\n * });\n * })\n * .then(function(m) {\n * membership = m;\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 2);\n * return webex.teamMemberships.remove(membership);\n * })\n * .then(function() {\n * return webex.teamMemberships.list({teamId: team.id});\n * })\n * .then(function(teamMemberships) {\n * var assert = require('assert');\n * assert.equal(teamMemberships.length, 1);\n * return 'success';\n * });\n * // => success\n */\n remove(membership) {\n const id = membership.id || membership;\n\n return this.request({\n method: 'DELETE',\n service: 'hydra',\n resource: `team/memberships/${id}`,\n }).then((res) => {\n // Firefox has some issues with 204s and/or DELETE. This should move to\n // http-core\n if (res.statusCode === 204) {\n return undefined;\n }\n\n return res.body;\n });\n },\n\n /**\n * Updates properties for a membership.\n * @instance\n * @memberof TeamMemberships\n * @param {TeamMembershipObject} membership\n * @returns {Promise<TeamMembershipObject>}\n */\n update(membership) {\n const id = membership.id || membership;\n\n return this.request({\n method: 'PUT',\n service: 'hydra',\n resource: `team/memberships/${id}`,\n body: membership,\n }).then((res) => res.body);\n },\n});\n\nexport default TeamMemberships;\n"],"mappings":";;;;;;;AAIA;AAJA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAMA,eAAe,GAAGC,sBAAW,CAACC,MAAM,CAAC;EACzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,MAAM,kBAACC,UAAU,EAAE;IACjB,OAAO,IAAI,CAACC,OAAO,CAAC;MAClBC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE,OAAO;MAChBC,QAAQ,EAAE,kBAAkB;MAC5BC,IAAI,EAAEL;IACR,CAAC,CAAC,CAACM,IAAI,CAAC,UAACC,GAAG;MAAA,OAAKA,GAAG,CAACF,IAAI;IAAA,EAAC;EAC5B,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEG,GAAG,eAACR,UAAU,EAAE;IACd,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAE,IAAIT,UAAU;IAEtC,OAAO,IAAI,CAACC,OAAO,CAAC;MAClBE,OAAO,EAAE,OAAO;MAChBC,QAAQ,6BAAsBK,EAAE;IAClC,CAAC,CAAC,CAACH,IAAI,CAAC,UAACC,GAAG;MAAA,OAAKA,GAAG,CAACF,IAAI,CAACK,KAAK,IAAIH,GAAG,CAACF,IAAI;IAAA,EAAC;EAC9C,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEM,IAAI,gBAACC,OAAO,EAAE;IAAA;IACZ,OAAO,IAAI,CAACX,OAAO,CAAC;MAClBE,OAAO,EAAE,OAAO;MAChBC,QAAQ,EAAE,kBAAkB;MAC5BS,EAAE,EAAED;IACN,CAAC,CAAC,CAACN,IAAI,CAAC,UAACC,GAAG;MAAA,OAAK,IAAIO,eAAI,CAACP,GAAG,EAAE,KAAI,CAACQ,KAAK,CAAC;IAAA,EAAC;EAC7C,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,MAAM,kBAAChB,UAAU,EAAE;IACjB,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAE,IAAIT,UAAU;IAEtC,OAAO,IAAI,CAACC,OAAO,CAAC;MAClBC,MAAM,EAAE,QAAQ;MAChBC,OAAO,EAAE,OAAO;MAChBC,QAAQ,6BAAsBK,EAAE;IAClC,CAAC,CAAC,CAACH,IAAI,CAAC,UAACC,GAAG,EAAK;MACf;MACA;MACA,IAAIA,GAAG,CAACU,UAAU,KAAK,GAAG,EAAE;QAC1B,OAAOC,SAAS;MAClB;MAEA,OAAOX,GAAG,CAACF,IAAI;IACjB,CAAC,CAAC;EACJ,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEc,MAAM,kBAACnB,UAAU,EAAE;IACjB,IAAMS,EAAE,GAAGT,UAAU,CAACS,EAAE,IAAIT,UAAU;IAEtC,OAAO,IAAI,CAACC,OAAO,CAAC;MAClBC,MAAM,EAAE,KAAK;MACbC,OAAO,EAAE,OAAO;MAChBC,QAAQ,6BAAsBK,EAAE,CAAE;MAClCJ,IAAI,EAAEL;IACR,CAAC,CAAC,CAACM,IAAI,CAAC,UAACC,GAAG;MAAA,OAAKA,GAAG,CAACF,IAAI;IAAA,EAAC;EAC5B,CAAC;EAAA;AACH,CAAC,CAAC;AAAC,eAEYT,eAAe;AAAA"}
@@ -0,0 +1,11 @@
1
+ // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
+ // It should be published with your NPM package. It should not be tracked by Git.
3
+ {
4
+ "tsdocVersion": "0.12",
5
+ "toolPackages": [
6
+ {
7
+ "packageName": "@microsoft/api-extractor",
8
+ "packageVersion": "7.34.4"
9
+ }
10
+ ]
11
+ }
@@ -0,0 +1,2 @@
1
+ export default TeamMemberships;
2
+ import TeamMemberships from "./team-memberships";
@@ -0,0 +1,49 @@
1
+ export default TeamMemberships;
2
+ export type TeamMembershipObject = {
3
+ /**
4
+ * - (server generated) Unique identifier for the team membership
5
+ */
6
+ id: string;
7
+ /**
8
+ * - The team ID
9
+ */
10
+ teamId: string;
11
+ /**
12
+ * - The person ID
13
+ */
14
+ personId: string;
15
+ /**
16
+ * - The email address of the person
17
+ */
18
+ personEmail: string;
19
+ /**
20
+ * - Set to `true` to make the person a team
21
+ * moderator
22
+ */
23
+ isModerator: boolean;
24
+ /**
25
+ * - (server generated) The date and time that the team membership was created
26
+ */
27
+ created: string;
28
+ };
29
+ /**
30
+ * @typedef {Object} TeamMembershipObject
31
+ * @property {string} id - (server generated) Unique identifier for the team membership
32
+ * @property {string} teamId - The team ID
33
+ * @property {string} personId - The person ID
34
+ * @property {string} personEmail - The email address of the person
35
+ * @property {boolean} isModerator - Set to `true` to make the person a team
36
+ * moderator
37
+ * @property {string} created - (server generated) The date and time that the team membership was created
38
+ */
39
+ /**
40
+ * Team Memberships represent a person's relationship to a team. Use this API to
41
+ * list members of any team that you're in or create memberships to invite
42
+ * someone to a team. Team memberships can also be updated to make someone a
43
+ * moderator or deleted to remove them from the team.
44
+ *
45
+ * Just like in the Webex app, you must be a member of the team in order to list
46
+ * its memberships or invite people.
47
+ * @class
48
+ */
49
+ declare const TeamMemberships: any;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webex/plugin-team-memberships",
3
- "version": "3.0.0-beta.9",
3
+ "version": "3.0.0-bnr.2",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -20,16 +20,16 @@
20
20
  ]
21
21
  },
22
22
  "devDependencies": {
23
- "@webex/test-helper-chai": "3.0.0-beta.9",
24
- "@webex/test-helper-test-users": "3.0.0-beta.9",
23
+ "@webex/test-helper-chai": "3.0.0-bnr.2",
24
+ "@webex/test-helper-test-users": "3.0.0-bnr.2",
25
25
  "sinon": "^9.2.4"
26
26
  },
27
27
  "dependencies": {
28
- "@webex/internal-plugin-device": "3.0.0-beta.9",
29
- "@webex/plugin-logger": "3.0.0-beta.9",
30
- "@webex/plugin-rooms": "3.0.0-beta.9",
31
- "@webex/plugin-team-memberships": "3.0.0-beta.9",
32
- "@webex/plugin-teams": "3.0.0-beta.9",
33
- "@webex/webex-core": "3.0.0-beta.9"
28
+ "@webex/internal-plugin-device": "3.0.0-bnr.2",
29
+ "@webex/plugin-logger": "3.0.0-bnr.2",
30
+ "@webex/plugin-rooms": "3.0.0-bnr.2",
31
+ "@webex/plugin-team-memberships": "3.0.0-bnr.2",
32
+ "@webex/plugin-teams": "3.0.0-bnr.2",
33
+ "@webex/webex-core": "3.0.0-bnr.2"
34
34
  }
35
35
  }
@@ -58,9 +58,8 @@ const TeamMemberships = WebexPlugin.extend({
58
58
  method: 'POST',
59
59
  service: 'hydra',
60
60
  resource: 'team/memberships',
61
- body: membership
62
- })
63
- .then((res) => res.body);
61
+ body: membership,
62
+ }).then((res) => res.body);
64
63
  },
65
64
 
66
65
  /**
@@ -94,9 +93,8 @@ const TeamMemberships = WebexPlugin.extend({
94
93
 
95
94
  return this.request({
96
95
  service: 'hydra',
97
- resource: `team/memberships/${id}`
98
- })
99
- .then((res) => res.body.items || res.body);
96
+ resource: `team/memberships/${id}`,
97
+ }).then((res) => res.body.items || res.body);
100
98
  },
101
99
 
102
100
  /**
@@ -134,9 +132,8 @@ const TeamMemberships = WebexPlugin.extend({
134
132
  return this.request({
135
133
  service: 'hydra',
136
134
  resource: 'team/memberships',
137
- qs: options
138
- })
139
- .then((res) => new Page(res, this.webex));
135
+ qs: options,
136
+ }).then((res) => new Page(res, this.webex));
140
137
  },
141
138
 
142
139
  /**
@@ -180,17 +177,16 @@ const TeamMemberships = WebexPlugin.extend({
180
177
  return this.request({
181
178
  method: 'DELETE',
182
179
  service: 'hydra',
183
- resource: `team/memberships/${id}`
184
- })
185
- .then((res) => {
186
- // Firefox has some issues with 204s and/or DELETE. This should move to
187
- // http-core
188
- if (res.statusCode === 204) {
189
- return undefined;
190
- }
180
+ resource: `team/memberships/${id}`,
181
+ }).then((res) => {
182
+ // Firefox has some issues with 204s and/or DELETE. This should move to
183
+ // http-core
184
+ if (res.statusCode === 204) {
185
+ return undefined;
186
+ }
191
187
 
192
- return res.body;
193
- });
188
+ return res.body;
189
+ });
194
190
  },
195
191
 
196
192
  /**
@@ -207,10 +203,9 @@ const TeamMemberships = WebexPlugin.extend({
207
203
  method: 'PUT',
208
204
  service: 'hydra',
209
205
  resource: `team/memberships/${id}`,
210
- body: membership
211
- })
212
- .then((res) => res.body);
213
- }
206
+ body: membership,
207
+ }).then((res) => res.body);
208
+ },
214
209
  });
215
210
 
216
211
  export default TeamMemberships;
@@ -17,10 +17,11 @@ describe('plugin-team-memberships', function () {
17
17
 
18
18
  let webex;
19
19
 
20
- before(() => testUsers.create({count: 1})
21
- .then(([user]) => {
20
+ before(() =>
21
+ testUsers.create({count: 1}).then(([user]) => {
22
22
  webex = new WebexCore({credentials: user.token});
23
- }));
23
+ })
24
+ );
24
25
 
25
26
  describe('#teams', () => {
26
27
  describe('#memberships', () => {
@@ -30,179 +31,209 @@ describe('plugin-team-memberships', function () {
30
31
 
31
32
  let user1;
32
33
 
33
- before(() => testUsers.create({count: 1})
34
- .then((users) => {
34
+ before(() =>
35
+ testUsers.create({count: 1}).then((users) => {
35
36
  user1 = users[0];
36
- }));
37
-
38
- before(() => webex.teams.create({
39
- name: 'Webex Team Test'
40
- })
41
- .then((t) => {
42
- team = t;
43
-
44
- return webex.rooms.create({
45
- title: 'Webex Team Room Test',
46
- teamId: team.id
47
- });
48
- }));
49
-
50
- afterEach(() => Promise.all(memberships.map((membership) => webex.teamMemberships.remove(membership)
51
- .catch((reason) => {
52
- console.error('Failed to delete membership', reason);
53
- })))
54
- .then(() => {
37
+ })
38
+ );
39
+
40
+ before(() =>
41
+ webex.teams
42
+ .create({
43
+ name: 'Webex Team Test',
44
+ })
45
+ .then((t) => {
46
+ team = t;
47
+
48
+ return webex.rooms.create({
49
+ title: 'Webex Team Room Test',
50
+ teamId: team.id,
51
+ });
52
+ })
53
+ );
54
+
55
+ afterEach(() =>
56
+ Promise.all(
57
+ memberships.map((membership) =>
58
+ webex.teamMemberships.remove(membership).catch((reason) => {
59
+ console.error('Failed to delete membership', reason);
60
+ })
61
+ )
62
+ ).then(() => {
55
63
  while (memberships.length) {
56
64
  memberships.pop();
57
65
  }
58
- }));
66
+ })
67
+ );
59
68
 
60
69
  describe('#create()', () => {
61
- it('adds a person to a team by user id', () => webex.teamMemberships.create({
62
- personId: user1.id,
63
- teamId: team.id
64
- })
65
- .then((membership) => {
66
- memberships.push(membership);
67
- assert.isTeamMembership(membership);
68
- assert.equal(membership.teamId, team.id);
69
- }));
70
-
71
- it('adds a person to a team by user email', () => webex.teamMemberships.create({
72
- personEmail: user1.email,
73
- teamId: team.id
74
- })
75
- .then((membership) => {
76
- memberships.push(membership);
77
- assert.isTeamMembership(membership);
78
- assert.equal(membership.teamId, team.id);
79
- }));
80
-
81
- it('adds a person to a team as a moderator', () => webex.teamMemberships.create({
82
- personId: user1.id,
83
- teamId: team.id,
84
- isModerator: true
85
- })
86
- .then((membership) => {
87
- memberships.push(membership);
88
- assert.isTeamMembership(membership);
89
- assert.equal(membership.teamId, team.id);
90
- assert.isTrue(membership.isModerator);
70
+ it('adds a person to a team by user id', () =>
71
+ webex.teamMemberships
72
+ .create({
73
+ personId: user1.id,
74
+ teamId: team.id,
75
+ })
76
+ .then((membership) => {
77
+ memberships.push(membership);
78
+ assert.isTeamMembership(membership);
79
+ assert.equal(membership.teamId, team.id);
80
+ }));
91
81
 
92
- // prevent this test from breaking other tests
93
- membership.isModerator = false;
82
+ it('adds a person to a team by user email', () =>
83
+ webex.teamMemberships
84
+ .create({
85
+ personEmail: user1.email,
86
+ teamId: team.id,
87
+ })
88
+ .then((membership) => {
89
+ memberships.push(membership);
90
+ assert.isTeamMembership(membership);
91
+ assert.equal(membership.teamId, team.id);
92
+ }));
93
+
94
+ it('adds a person to a team as a moderator', () =>
95
+ webex.teamMemberships
96
+ .create({
97
+ personId: user1.id,
98
+ teamId: team.id,
99
+ isModerator: true,
100
+ })
101
+ .then((membership) => {
102
+ memberships.push(membership);
103
+ assert.isTeamMembership(membership);
104
+ assert.equal(membership.teamId, team.id);
105
+ assert.isTrue(membership.isModerator);
106
+
107
+ // prevent this test from breaking other tests
108
+ membership.isModerator = false;
94
109
 
95
- return webex.teamMemberships.update(membership);
96
- }));
110
+ return webex.teamMemberships.update(membership);
111
+ }));
97
112
  });
98
113
 
99
114
  describe('#get()', () => {
100
- it('retrieves a single team membership', () => webex.teamMemberships.create({
101
- personId: user1.id,
102
- teamId: team.id
103
- })
104
- .then((membership) => webex.teamMemberships.get(membership)
105
- .then((m) => {
106
- memberships.push(m);
107
- assert.isTeamMembership(m);
108
- // Skipping equality assertiong for now due to create date
109
- // mismatch
110
- // assert.deepEqual(m, membership);
111
- })));
115
+ it('retrieves a single team membership', () =>
116
+ webex.teamMemberships
117
+ .create({
118
+ personId: user1.id,
119
+ teamId: team.id,
120
+ })
121
+ .then((membership) =>
122
+ webex.teamMemberships.get(membership).then((m) => {
123
+ memberships.push(m);
124
+ assert.isTeamMembership(m);
125
+ // Skipping equality assertiong for now due to create date
126
+ // mismatch
127
+ // assert.deepEqual(m, membership);
128
+ })
129
+ ));
112
130
  });
113
131
 
114
132
  describe('#list()', () => {
115
133
  let user2, user3;
116
134
 
117
- before(() => testUsers.create({count: 3})
118
- .then((users) => {
135
+ before(() =>
136
+ testUsers.create({count: 3}).then((users) => {
119
137
  [user2, user3] = users;
120
- }));
121
-
122
- before(() => Promise.all([
123
- webex.teamMemberships.create({
124
- personId: user2.id,
125
- teamId: team.id
126
- }),
127
- webex.teamMemberships.create({
128
- personId: user3.id,
129
- teamId: team.id
130
138
  })
131
- ]));
139
+ );
140
+
141
+ before(() =>
142
+ Promise.all([
143
+ webex.teamMemberships.create({
144
+ personId: user2.id,
145
+ teamId: team.id,
146
+ }),
147
+ webex.teamMemberships.create({
148
+ personId: user3.id,
149
+ teamId: team.id,
150
+ }),
151
+ ])
152
+ );
153
+
154
+ it('retrieves all memberships for a team', () =>
155
+ webex.teamMemberships
156
+ .list({
157
+ teamId: team.id,
158
+ })
159
+ .then((memberships) => {
160
+ assert.isAbove(memberships.length, 2);
161
+ for (const membership of memberships) {
162
+ assert.isTeamMembership(membership);
163
+ assert.equal(membership.teamId, team.id);
164
+ }
165
+ }));
132
166
 
133
- it('retrieves all memberships for a team', () => webex.teamMemberships.list({
134
- teamId: team.id
135
- })
136
- .then((memberships) => {
137
- assert.isAbove(memberships.length, 2);
138
- for (const membership of memberships) {
139
- assert.isTeamMembership(membership);
140
- assert.equal(membership.teamId, team.id);
141
- }
142
- }));
167
+ it('retrieves a bounded set of memberships for a team', () =>
168
+ webex.teamMemberships
169
+ .list({
170
+ max: 1,
171
+ teamId: team.id,
172
+ })
173
+ .then((memberships) => {
174
+ const spy = sinon.spy();
143
175
 
144
- it('retrieves a bounded set of memberships for a team', () => webex.teamMemberships.list({
145
- max: 1,
146
- teamId: team.id
147
- })
148
- .then((memberships) => {
149
- const spy = sinon.spy();
176
+ assert.lengthOf(memberships, 1);
150
177
 
151
- assert.lengthOf(memberships, 1);
178
+ return (function f(page) {
179
+ for (const membership of page) {
180
+ assert.isTeamMembership(membership);
181
+ spy(membership.id);
182
+ }
152
183
 
153
- return (function f(page) {
154
- for (const membership of page) {
155
- assert.isTeamMembership(membership);
156
- spy(membership.id);
157
- }
184
+ if (page.hasNext()) {
185
+ return page.next().then(f);
186
+ }
158
187
 
159
- if (page.hasNext()) {
160
- return page.next().then(f);
161
- }
162
-
163
- return Promise.resolve();
164
- }(memberships))
165
- .then(() => {
188
+ return Promise.resolve();
189
+ })(memberships).then(() => {
166
190
  assert.calledThrice(spy);
167
191
  });
168
- }));
192
+ }));
169
193
  });
170
194
 
171
195
  describe('#update()', () => {
172
- it('updates the membership\'s moderator status', () => webex.teamMemberships.create({
173
- personId: user1.id,
174
- teamId: team.id
175
- })
176
- .then((membership) => {
177
- memberships.push(membership);
178
- assert.notOk(membership.isModerator);
179
- membership.isModerator = true;
196
+ it("updates the membership's moderator status", () =>
197
+ webex.teamMemberships
198
+ .create({
199
+ personId: user1.id,
200
+ teamId: team.id,
201
+ })
202
+ .then((membership) => {
203
+ memberships.push(membership);
204
+ assert.notOk(membership.isModerator);
205
+ membership.isModerator = true;
180
206
 
181
- return webex.teamMemberships.update(membership);
182
- })
183
- .then((membership) => {
184
- assert.isTrue(membership.isModerator);
185
- membership.isModerator = false;
207
+ return webex.teamMemberships.update(membership);
208
+ })
209
+ .then((membership) => {
210
+ assert.isTrue(membership.isModerator);
211
+ membership.isModerator = false;
186
212
 
187
- return webex.teamMemberships.update(membership);
188
- })
189
- .then((membership) => assert.isFalse(membership.isModerator)));
213
+ return webex.teamMemberships.update(membership);
214
+ })
215
+ .then((membership) => assert.isFalse(membership.isModerator)));
190
216
  });
191
217
 
192
218
  describe('#remove()', () => {
193
- it('deletes a single membership', () => webex.teamMemberships.create({
194
- personId: user1.id,
195
- teamId: team.id
196
- })
197
- .then((membership) => webex.teamMemberships.remove(membership)
198
- .then((body) => {
199
- assert.notOk(body);
200
-
201
- return webex.teamMemberships.list({teamId: team.id});
219
+ it('deletes a single membership', () =>
220
+ webex.teamMemberships
221
+ .create({
222
+ personId: user1.id,
223
+ teamId: team.id,
202
224
  })
203
- .then((memberships) => {
204
- assert.notInclude(memberships, membership);
205
- })));
225
+ .then((membership) =>
226
+ webex.teamMemberships
227
+ .remove(membership)
228
+ .then((body) => {
229
+ assert.notOk(body);
230
+
231
+ return webex.teamMemberships.list({teamId: team.id});
232
+ })
233
+ .then((memberships) => {
234
+ assert.notInclude(memberships, membership);
235
+ })
236
+ ));
206
237
  });
207
238
  });
208
239
  });