@webex/internal-plugin-calendar 3.0.0-beta.4 → 3.0.0-beta.40

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.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["registerInternalPlugin","Calendar","config","payloadTransformer","predicates","name","direction","test","ctx","response","resolve","extract","body","items","calendarMeetingExternal","transforms","fn","array","all","map","item","transform","object","encryptionKeyUrl","decryptedParticipants","encryptedParticipants","participant","decryptedMeetingJoinInfo","meetingJoinInfo","decryptedOrganizer","encryptedOrganizer","concat"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-device';\nimport '@webex/internal-plugin-encryption';\nimport '@webex/internal-plugin-conversation';\n\nimport {registerInternalPlugin} from '@webex/webex-core';\nimport {has} from 'lodash';\n\nimport Calendar from './calendar';\nimport config from './config';\n\nregisterInternalPlugin('calendar', Calendar, {\n config,\n payloadTransformer: {\n predicates: [\n {\n name: 'transformMeetingNotes',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.encryptedNotes'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n }\n },\n {\n name: 'transformMeetingParticipants',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.encryptedParticipants'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n }\n },\n {\n name: 'transformMeetingArray',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.items[0].seriesId'));\n },\n extract(response) {\n return Promise.resolve(response.body.items);\n }\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.seriesId'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n }\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'calendarMeetingExternal'));\n },\n extract(response) {\n return Promise.resolve(response.calendarMeetingExternal);\n }\n }\n ],\n transforms: [\n {\n name: 'transformMeetingArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformMeeting', item)));\n }\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl) {\n return Promise.resolve();\n }\n\n // Decrypt participant properties if meeting object contains participants\n const decryptedParticipants = object.encryptedParticipants ? object.encryptedParticipants.map((participant) => Promise.all([\n ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, participant),\n ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, participant)\n ])) : [];\n\n // Decrypt meetingJoinInfo properties if meeting object contains meetingJoinInfo\n const decryptedMeetingJoinInfo = object.meetingJoinInfo ? Promise.all([\n ctx.transform('decryptTextProp', 'meetingJoinURI', object.encryptionKeyUrl, object.meetingJoinInfo),\n ctx.transform('decryptTextProp', 'meetingJoinURL', object.encryptionKeyUrl, object.meetingJoinInfo)\n ]) : [];\n\n const decryptedOrganizer = object.encryptedOrganizer ? Promise.all([\n ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, object.encryptedOrganizer),\n ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, object.encryptedOrganizer)\n ]) : [];\n\n return Promise.all([\n ctx.transform('decryptTextProp', 'encryptedSubject', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'encryptedLocation', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'webexURI', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'webexURL', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceMeetURL', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceURI', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceURL', object.encryptionKeyUrl, object)\n ].concat(decryptedOrganizer, decryptedParticipants, decryptedMeetingJoinInfo));\n }\n },\n {\n name: 'transformMeetingNotes',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl) {\n return Promise.resolve();\n }\n\n return Promise.all([\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object)\n ]);\n }\n },\n {\n name: 'transformMeetingParticipants',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl || !object.encryptedParticipants) {\n return Promise.resolve();\n }\n\n // Decrypt participant properties\n const decryptedParticipants = object.encryptedParticipants.map((participant) => Promise.all([\n ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, participant),\n ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, participant)\n ]));\n\n return Promise.all(decryptedParticipants);\n }\n }\n ]\n }\n});\n\nexport {default} from './calendar';\n"],"mappings":"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"}
1
+ {"version":3,"names":["registerInternalPlugin","Calendar","config","payloadTransformer","predicates","name","direction","test","ctx","response","resolve","extract","body","items","calendarMeetingExternal","transforms","fn","array","all","map","item","transform","object","encryptionKeyUrl","decryptedParticipants","encryptedParticipants","participant","decryptedMeetingJoinInfo","meetingJoinInfo","decryptedOrganizer","encryptedOrganizer","concat"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-device';\nimport '@webex/internal-plugin-encryption';\nimport '@webex/internal-plugin-conversation';\n\nimport {registerInternalPlugin} from '@webex/webex-core';\nimport {has} from 'lodash';\n\nimport Calendar from './calendar';\nimport config from './config';\n\nregisterInternalPlugin('calendar', Calendar, {\n config,\n payloadTransformer: {\n predicates: [\n {\n name: 'transformMeetingNotes',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.encryptedNotes'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n },\n },\n {\n name: 'transformMeetingParticipants',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.encryptedParticipants'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n },\n },\n {\n name: 'transformMeetingArray',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.items[0].seriesId'));\n },\n extract(response) {\n return Promise.resolve(response.body.items);\n },\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.seriesId'));\n },\n extract(response) {\n return Promise.resolve(response.body);\n },\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'calendarMeetingExternal'));\n },\n extract(response) {\n return Promise.resolve(response.calendarMeetingExternal);\n },\n },\n ],\n transforms: [\n {\n name: 'transformMeetingArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformMeeting', item)));\n },\n },\n {\n name: 'transformMeeting',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl) {\n return Promise.resolve();\n }\n\n // Decrypt participant properties if meeting object contains participants\n const decryptedParticipants = object.encryptedParticipants\n ? object.encryptedParticipants.map((participant) =>\n Promise.all([\n ctx.transform(\n 'decryptTextProp',\n 'encryptedEmailAddress',\n object.encryptionKeyUrl,\n participant\n ),\n ctx.transform(\n 'decryptTextProp',\n 'encryptedName',\n object.encryptionKeyUrl,\n participant\n ),\n ])\n )\n : [];\n\n // Decrypt meetingJoinInfo properties if meeting object contains meetingJoinInfo\n const decryptedMeetingJoinInfo = object.meetingJoinInfo\n ? Promise.all([\n ctx.transform(\n 'decryptTextProp',\n 'meetingJoinURI',\n object.encryptionKeyUrl,\n object.meetingJoinInfo\n ),\n ctx.transform(\n 'decryptTextProp',\n 'meetingJoinURL',\n object.encryptionKeyUrl,\n object.meetingJoinInfo\n ),\n ])\n : [];\n\n const decryptedOrganizer = object.encryptedOrganizer\n ? Promise.all([\n ctx.transform(\n 'decryptTextProp',\n 'encryptedEmailAddress',\n object.encryptionKeyUrl,\n object.encryptedOrganizer\n ),\n ctx.transform(\n 'decryptTextProp',\n 'encryptedName',\n object.encryptionKeyUrl,\n object.encryptedOrganizer\n ),\n ])\n : [];\n\n return Promise.all(\n [\n ctx.transform('decryptTextProp', 'encryptedSubject', object.encryptionKeyUrl, object),\n ctx.transform(\n 'decryptTextProp',\n 'encryptedLocation',\n object.encryptionKeyUrl,\n object\n ),\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'webexURI', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'webexURL', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceMeetURL', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceURI', object.encryptionKeyUrl, object),\n ctx.transform('decryptTextProp', 'spaceURL', object.encryptionKeyUrl, object),\n ].concat(decryptedOrganizer, decryptedParticipants, decryptedMeetingJoinInfo)\n );\n },\n },\n {\n name: 'transformMeetingNotes',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl) {\n return Promise.resolve();\n }\n\n return Promise.all([\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),\n ]);\n },\n },\n {\n name: 'transformMeetingParticipants',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.encryptionKeyUrl || !object.encryptedParticipants) {\n return Promise.resolve();\n }\n\n // Decrypt participant properties\n const decryptedParticipants = object.encryptedParticipants.map((participant) =>\n Promise.all([\n ctx.transform(\n 'decryptTextProp',\n 'encryptedEmailAddress',\n object.encryptionKeyUrl,\n participant\n ),\n ctx.transform(\n 'decryptTextProp',\n 'encryptedName',\n object.encryptionKeyUrl,\n participant\n ),\n ])\n );\n\n return Promise.all(decryptedParticipants);\n },\n },\n ],\n },\n});\n\nexport {default} from './calendar';\n"],"mappings":"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"}
package/dist/util.js CHANGED
@@ -1,37 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
4
-
5
4
  var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
6
-
7
5
  var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
8
-
9
6
  var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
10
-
11
7
  var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
12
-
13
8
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
14
-
15
9
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
16
-
17
10
  _Object$defineProperty(exports, "__esModule", {
18
11
  value: true
19
12
  });
20
-
21
13
  exports.default = void 0;
22
-
23
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
24
-
25
15
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
26
-
27
16
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
28
-
29
17
  var CalendarUtil = {
30
18
  // calculate the end time for the meeting based on the duration so it's stored on
31
19
  // the scheduled meeting item, that way client can display start and end without
32
20
  // calculation on their side
33
21
  // gets the start time from server, and the duration, and reformats
34
-
35
22
  /**
36
23
  * calculates the end time for meeting
37
24
  * @param {Object} item the locus.host property
package/dist/util.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["CalendarUtil","calculateEndTime","item","endTime","Date","start","getTime","durationMinutes"],"sources":["util.js"],"sourcesContent":["const CalendarUtil = {\n\n // calculate the end time for the meeting based on the duration so it's stored on\n // the scheduled meeting item, that way client can display start and end without\n // calculation on their side\n // gets the start time from server, and the duration, and reformats\n /**\n * calculates the end time for meeting\n * @param {Object} item the locus.host property\n * @param {Object} item.start start time of the meeting\n * @param {Object} item.duration duration of the meeting\n * @returns {Object} end time of the meeting\n * @memberof CalendarUtil\n */\n calculateEndTime(item) {\n return {...item, endTime: new Date(new Date(item.start).getTime() + item.durationMinutes * 60000)};\n }\n};\n\nexport default CalendarUtil;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAMA,YAAY,GAAG;EAEnB;EACA;EACA;EACA;;EACA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,gBAdmB,4BAcFC,IAdE,EAcI;IACrB,uCAAWA,IAAX;MAAiBC,OAAO,EAAE,IAAIC,IAAJ,CAAS,IAAIA,IAAJ,CAASF,IAAI,CAACG,KAAd,EAAqBC,OAArB,KAAiCJ,IAAI,CAACK,eAAL,GAAuB,KAAjE;IAA1B;EACD;AAhBkB,CAArB;eAmBeP,Y"}
1
+ {"version":3,"names":["CalendarUtil","calculateEndTime","item","endTime","Date","start","getTime","durationMinutes"],"sources":["util.js"],"sourcesContent":["const CalendarUtil = {\n // calculate the end time for the meeting based on the duration so it's stored on\n // the scheduled meeting item, that way client can display start and end without\n // calculation on their side\n // gets the start time from server, and the duration, and reformats\n /**\n * calculates the end time for meeting\n * @param {Object} item the locus.host property\n * @param {Object} item.start start time of the meeting\n * @param {Object} item.duration duration of the meeting\n * @returns {Object} end time of the meeting\n * @memberof CalendarUtil\n */\n calculateEndTime(item) {\n return {\n ...item,\n endTime: new Date(new Date(item.start).getTime() + item.durationMinutes * 60000),\n };\n },\n};\n\nexport default CalendarUtil;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,IAAMA,YAAY,GAAG;EACnB;EACA;EACA;EACA;EACA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,gBAAgB,4BAACC,IAAI,EAAE;IACrB,uCACKA,IAAI;MACPC,OAAO,EAAE,IAAIC,IAAI,CAAC,IAAIA,IAAI,CAACF,IAAI,CAACG,KAAK,CAAC,CAACC,OAAO,EAAE,GAAGJ,IAAI,CAACK,eAAe,GAAG,KAAK;IAAC;EAEpF;AACF,CAAC;AAAC,eAEaP,YAAY;AAAA"}
package/package.json CHANGED
@@ -19,20 +19,20 @@
19
19
  "envify"
20
20
  ]
21
21
  },
22
- "version": "3.0.0-beta.4",
22
+ "version": "3.0.0-beta.40",
23
23
  "devDependencies": {
24
- "@webex/test-helper-chai": "3.0.0-beta.4",
25
- "@webex/test-helper-mock-webex": "3.0.0-beta.4",
26
- "@webex/test-helper-retry": "3.0.0-beta.4",
27
- "@webex/test-helper-test-users": "3.0.0-beta.4",
24
+ "@webex/test-helper-chai": "3.0.0-beta.40",
25
+ "@webex/test-helper-mock-webex": "3.0.0-beta.40",
26
+ "@webex/test-helper-retry": "3.0.0-beta.40",
27
+ "@webex/test-helper-test-users": "3.0.0-beta.40",
28
28
  "sinon": "^9.2.4"
29
29
  },
30
30
  "dependencies": {
31
- "@webex/internal-plugin-calendar": "3.0.0-beta.4",
32
- "@webex/internal-plugin-conversation": "3.0.0-beta.4",
33
- "@webex/internal-plugin-device": "3.0.0-beta.4",
34
- "@webex/internal-plugin-encryption": "3.0.0-beta.4",
35
- "@webex/webex-core": "3.0.0-beta.4",
31
+ "@webex/internal-plugin-calendar": "3.0.0-beta.40",
32
+ "@webex/internal-plugin-conversation": "3.0.0-beta.40",
33
+ "@webex/internal-plugin-device": "3.0.0-beta.40",
34
+ "@webex/internal-plugin-encryption": "3.0.0-beta.40",
35
+ "@webex/webex-core": "3.0.0-beta.40",
36
36
  "btoa": "^1.2.1",
37
37
  "lodash": "^4.17.21",
38
38
  "uuid": "^3.3.2"
package/src/calendar.js CHANGED
@@ -3,28 +3,28 @@
3
3
  */
4
4
 
5
5
  /**
6
- * Calendar Item Create Event
7
- * Emitted when a calendar item has been added
8
- * @event calendar:meeting:create
9
- * @instance
10
- * @memberof Calendar
11
- */
6
+ * Calendar Item Create Event
7
+ * Emitted when a calendar item has been added
8
+ * @event calendar:meeting:create
9
+ * @instance
10
+ * @memberof Calendar
11
+ */
12
12
 
13
13
  /**
14
- * Calendar Item Update Event
15
- * Emitted when a calendar item has been updated
16
- * @event calendar:meeting:update
17
- * @instance
18
- * @memberof Calendar
19
- */
14
+ * Calendar Item Update Event
15
+ * Emitted when a calendar item has been updated
16
+ * @event calendar:meeting:update
17
+ * @instance
18
+ * @memberof Calendar
19
+ */
20
20
 
21
21
  /**
22
- * Calendar Item Update Event
23
- * Emitted when a calendar item has been deleted
24
- * @event calendar:meeting:delete
25
- * @instance
26
- * @memberof Calendar
27
- */
22
+ * Calendar Item Update Event
23
+ * Emitted when a calendar item has been deleted
24
+ * @event calendar:meeting:delete
25
+ * @instance
26
+ * @memberof Calendar
27
+ */
28
28
 
29
29
  /**
30
30
  * Calendar Registered Event
@@ -46,7 +46,13 @@ import btoa from 'btoa';
46
46
  import {WebexPlugin} from '@webex/webex-core';
47
47
 
48
48
  import CalendarCollection from './collection';
49
- import {CALENDAR_REGISTERED, CALENDAR_UNREGISTERED, CALENDAR_DELETE, CALENDAR_CREATE, CALENDAR_UPDATED} from './constants';
49
+ import {
50
+ CALENDAR_REGISTERED,
51
+ CALENDAR_UNREGISTERED,
52
+ CALENDAR_DELETE,
53
+ CALENDAR_CREATE,
54
+ CALENDAR_UPDATED,
55
+ } from './constants';
50
56
 
51
57
  const Calendar = WebexPlugin.extend({
52
58
  namespace: 'Calendar',
@@ -79,7 +85,8 @@ const Calendar = WebexPlugin.extend({
79
85
  return Promise.resolve();
80
86
  }
81
87
 
82
- return this.webex.internal.device.register()
88
+ return this.webex.internal.device
89
+ .register()
83
90
  .then(() => this.webex.internal.mercury.connect())
84
91
  .then(() => {
85
92
  this.listenForEvents();
@@ -110,7 +117,8 @@ const Calendar = WebexPlugin.extend({
110
117
 
111
118
  this.stopListeningForEvents();
112
119
 
113
- return this.webex.internal.mercury.disconnect()
120
+ return this.webex.internal.mercury
121
+ .disconnect()
114
122
  .then(() => this.webex.internal.device.unregister())
115
123
  .then(() => {
116
124
  this.trigger(CALENDAR_UNREGISTERED);
@@ -233,8 +241,7 @@ const Calendar = WebexPlugin.extend({
233
241
  * @returns {Promise} Resolves with a decrypted calendar event
234
242
  */
235
243
  processMeetingEvent(event) {
236
- return this.webex.transform('inbound', event)
237
- .then(() => event);
244
+ return this.webex.transform('inbound', event).then(() => event);
238
245
  },
239
246
 
240
247
  /**
@@ -246,7 +253,7 @@ const Calendar = WebexPlugin.extend({
246
253
  return this.request({
247
254
  method: 'GET',
248
255
  service: 'calendar',
249
- resource: `calendarEvents/${btoa(id)}/participants`
256
+ resource: `calendarEvents/${btoa(id)}/participants`,
250
257
  });
251
258
  },
252
259
 
@@ -259,7 +266,7 @@ const Calendar = WebexPlugin.extend({
259
266
  return this.request({
260
267
  method: 'GET',
261
268
  service: 'calendar',
262
- resource: `calendarEvents/${btoa(id)}/notes`
269
+ resource: `calendarEvents/${btoa(id)}/notes`,
263
270
  });
264
271
  },
265
272
 
@@ -273,12 +280,13 @@ const Calendar = WebexPlugin.extend({
273
280
  list(options) {
274
281
  options = options || {};
275
282
 
276
- return this.webex.request({
277
- method: 'GET',
278
- service: 'calendar',
279
- resource: 'calendarEvents',
280
- qs: options
281
- })
283
+ return this.webex
284
+ .request({
285
+ method: 'GET',
286
+ service: 'calendar',
287
+ resource: 'calendarEvents',
288
+ qs: options,
289
+ })
282
290
  .then((res) => {
283
291
  const meetingObjects = res.body.items;
284
292
  const promises = [];
@@ -286,27 +294,24 @@ const Calendar = WebexPlugin.extend({
286
294
  meetingObjects.forEach((meeting) => {
287
295
  if (!meeting.encryptedNotes) {
288
296
  promises.push(
289
- this.getNotes(meeting.id)
290
- .then((notesResponse) => {
291
- meeting.encryptedNotes = notesResponse.body && notesResponse.body.encryptedNotes;
292
- })
297
+ this.getNotes(meeting.id).then((notesResponse) => {
298
+ meeting.encryptedNotes = notesResponse.body && notesResponse.body.encryptedNotes;
299
+ })
293
300
  );
294
301
  }
295
302
 
296
303
  if (!meeting.encryptedParticipants) {
297
304
  promises.push(
298
- this.getParticipants(meeting.id)
299
- .then((notesResponse) => {
300
- meeting.encryptedParticipants = notesResponse.body.encryptedParticipants;
301
- })
305
+ this.getParticipants(meeting.id).then((notesResponse) => {
306
+ meeting.encryptedParticipants = notesResponse.body.encryptedParticipants;
307
+ })
302
308
  );
303
309
  }
304
310
  });
305
311
 
306
- return Promise.all(promises)
307
- .then(() => meetingObjects);
312
+ return Promise.all(promises).then(() => meetingObjects);
308
313
  });
309
- }
314
+ },
310
315
  });
311
316
 
312
317
  export default Calendar;
package/src/collection.js CHANGED
@@ -27,7 +27,7 @@ const CalendarCollection = {
27
27
  */
28
28
  getBy(key, value) {
29
29
  if (key && value) {
30
- return find(this.items, (item) => (item[key] === value));
30
+ return find(this.items, (item) => item[key] === value);
31
31
  }
32
32
 
33
33
  return null;
@@ -58,7 +58,6 @@ const CalendarCollection = {
58
58
  this.items = {};
59
59
  },
60
60
 
61
-
62
61
  /**
63
62
  * @param {Id} id is the id for the calendar item to be removed
64
63
  * @returns {Any} calendar item which got removed
@@ -95,8 +94,7 @@ const CalendarCollection = {
95
94
  */
96
95
  getAll() {
97
96
  return Object.values(this.items);
98
- }
99
-
97
+ },
100
98
  };
101
99
 
102
100
  export default CalendarCollection;
package/src/config.js CHANGED
@@ -5,6 +5,6 @@
5
5
  export default {
6
6
  calendar: {
7
7
  fromDate: new Date(new Date().setDate(new Date().getDate() - 1)),
8
- toDate: new Date(new Date().setDate(new Date().getDate() + 7))
9
- }
8
+ toDate: new Date(new Date().setDate(new Date().getDate() + 7)),
9
+ },
10
10
  };
package/src/index.js CHANGED
@@ -24,7 +24,7 @@ registerInternalPlugin('calendar', Calendar, {
24
24
  },
25
25
  extract(response) {
26
26
  return Promise.resolve(response.body);
27
- }
27
+ },
28
28
  },
29
29
  {
30
30
  name: 'transformMeetingParticipants',
@@ -34,7 +34,7 @@ registerInternalPlugin('calendar', Calendar, {
34
34
  },
35
35
  extract(response) {
36
36
  return Promise.resolve(response.body);
37
- }
37
+ },
38
38
  },
39
39
  {
40
40
  name: 'transformMeetingArray',
@@ -44,7 +44,7 @@ registerInternalPlugin('calendar', Calendar, {
44
44
  },
45
45
  extract(response) {
46
46
  return Promise.resolve(response.body.items);
47
- }
47
+ },
48
48
  },
49
49
  {
50
50
  name: 'transformMeeting',
@@ -54,7 +54,7 @@ registerInternalPlugin('calendar', Calendar, {
54
54
  },
55
55
  extract(response) {
56
56
  return Promise.resolve(response.body);
57
- }
57
+ },
58
58
  },
59
59
  {
60
60
  name: 'transformMeeting',
@@ -64,15 +64,15 @@ registerInternalPlugin('calendar', Calendar, {
64
64
  },
65
65
  extract(response) {
66
66
  return Promise.resolve(response.calendarMeetingExternal);
67
- }
68
- }
67
+ },
68
+ },
69
69
  ],
70
70
  transforms: [
71
71
  {
72
72
  name: 'transformMeetingArray',
73
73
  fn(ctx, array) {
74
74
  return Promise.all(array.map((item) => ctx.transform('transformMeeting', item)));
75
- }
75
+ },
76
76
  },
77
77
  {
78
78
  name: 'transformMeeting',
@@ -87,33 +87,78 @@ registerInternalPlugin('calendar', Calendar, {
87
87
  }
88
88
 
89
89
  // Decrypt participant properties if meeting object contains participants
90
- const decryptedParticipants = object.encryptedParticipants ? object.encryptedParticipants.map((participant) => Promise.all([
91
- ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, participant),
92
- ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, participant)
93
- ])) : [];
90
+ const decryptedParticipants = object.encryptedParticipants
91
+ ? object.encryptedParticipants.map((participant) =>
92
+ Promise.all([
93
+ ctx.transform(
94
+ 'decryptTextProp',
95
+ 'encryptedEmailAddress',
96
+ object.encryptionKeyUrl,
97
+ participant
98
+ ),
99
+ ctx.transform(
100
+ 'decryptTextProp',
101
+ 'encryptedName',
102
+ object.encryptionKeyUrl,
103
+ participant
104
+ ),
105
+ ])
106
+ )
107
+ : [];
94
108
 
95
109
  // Decrypt meetingJoinInfo properties if meeting object contains meetingJoinInfo
96
- const decryptedMeetingJoinInfo = object.meetingJoinInfo ? Promise.all([
97
- ctx.transform('decryptTextProp', 'meetingJoinURI', object.encryptionKeyUrl, object.meetingJoinInfo),
98
- ctx.transform('decryptTextProp', 'meetingJoinURL', object.encryptionKeyUrl, object.meetingJoinInfo)
99
- ]) : [];
110
+ const decryptedMeetingJoinInfo = object.meetingJoinInfo
111
+ ? Promise.all([
112
+ ctx.transform(
113
+ 'decryptTextProp',
114
+ 'meetingJoinURI',
115
+ object.encryptionKeyUrl,
116
+ object.meetingJoinInfo
117
+ ),
118
+ ctx.transform(
119
+ 'decryptTextProp',
120
+ 'meetingJoinURL',
121
+ object.encryptionKeyUrl,
122
+ object.meetingJoinInfo
123
+ ),
124
+ ])
125
+ : [];
100
126
 
101
- const decryptedOrganizer = object.encryptedOrganizer ? Promise.all([
102
- ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, object.encryptedOrganizer),
103
- ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, object.encryptedOrganizer)
104
- ]) : [];
127
+ const decryptedOrganizer = object.encryptedOrganizer
128
+ ? Promise.all([
129
+ ctx.transform(
130
+ 'decryptTextProp',
131
+ 'encryptedEmailAddress',
132
+ object.encryptionKeyUrl,
133
+ object.encryptedOrganizer
134
+ ),
135
+ ctx.transform(
136
+ 'decryptTextProp',
137
+ 'encryptedName',
138
+ object.encryptionKeyUrl,
139
+ object.encryptedOrganizer
140
+ ),
141
+ ])
142
+ : [];
105
143
 
106
- return Promise.all([
107
- ctx.transform('decryptTextProp', 'encryptedSubject', object.encryptionKeyUrl, object),
108
- ctx.transform('decryptTextProp', 'encryptedLocation', object.encryptionKeyUrl, object),
109
- ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),
110
- ctx.transform('decryptTextProp', 'webexURI', object.encryptionKeyUrl, object),
111
- ctx.transform('decryptTextProp', 'webexURL', object.encryptionKeyUrl, object),
112
- ctx.transform('decryptTextProp', 'spaceMeetURL', object.encryptionKeyUrl, object),
113
- ctx.transform('decryptTextProp', 'spaceURI', object.encryptionKeyUrl, object),
114
- ctx.transform('decryptTextProp', 'spaceURL', object.encryptionKeyUrl, object)
115
- ].concat(decryptedOrganizer, decryptedParticipants, decryptedMeetingJoinInfo));
116
- }
144
+ return Promise.all(
145
+ [
146
+ ctx.transform('decryptTextProp', 'encryptedSubject', object.encryptionKeyUrl, object),
147
+ ctx.transform(
148
+ 'decryptTextProp',
149
+ 'encryptedLocation',
150
+ object.encryptionKeyUrl,
151
+ object
152
+ ),
153
+ ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),
154
+ ctx.transform('decryptTextProp', 'webexURI', object.encryptionKeyUrl, object),
155
+ ctx.transform('decryptTextProp', 'webexURL', object.encryptionKeyUrl, object),
156
+ ctx.transform('decryptTextProp', 'spaceMeetURL', object.encryptionKeyUrl, object),
157
+ ctx.transform('decryptTextProp', 'spaceURI', object.encryptionKeyUrl, object),
158
+ ctx.transform('decryptTextProp', 'spaceURL', object.encryptionKeyUrl, object),
159
+ ].concat(decryptedOrganizer, decryptedParticipants, decryptedMeetingJoinInfo)
160
+ );
161
+ },
117
162
  },
118
163
  {
119
164
  name: 'transformMeetingNotes',
@@ -128,9 +173,9 @@ registerInternalPlugin('calendar', Calendar, {
128
173
  }
129
174
 
130
175
  return Promise.all([
131
- ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object)
176
+ ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),
132
177
  ]);
133
- }
178
+ },
134
179
  },
135
180
  {
136
181
  name: 'transformMeetingParticipants',
@@ -145,16 +190,28 @@ registerInternalPlugin('calendar', Calendar, {
145
190
  }
146
191
 
147
192
  // Decrypt participant properties
148
- const decryptedParticipants = object.encryptedParticipants.map((participant) => Promise.all([
149
- ctx.transform('decryptTextProp', 'encryptedEmailAddress', object.encryptionKeyUrl, participant),
150
- ctx.transform('decryptTextProp', 'encryptedName', object.encryptionKeyUrl, participant)
151
- ]));
193
+ const decryptedParticipants = object.encryptedParticipants.map((participant) =>
194
+ Promise.all([
195
+ ctx.transform(
196
+ 'decryptTextProp',
197
+ 'encryptedEmailAddress',
198
+ object.encryptionKeyUrl,
199
+ participant
200
+ ),
201
+ ctx.transform(
202
+ 'decryptTextProp',
203
+ 'encryptedName',
204
+ object.encryptionKeyUrl,
205
+ participant
206
+ ),
207
+ ])
208
+ );
152
209
 
153
210
  return Promise.all(decryptedParticipants);
154
- }
155
- }
156
- ]
157
- }
211
+ },
212
+ },
213
+ ],
214
+ },
158
215
  });
159
216
 
160
217
  export {default} from './calendar';
package/src/util.js CHANGED
@@ -1,5 +1,4 @@
1
1
  const CalendarUtil = {
2
-
3
2
  // calculate the end time for the meeting based on the duration so it's stored on
4
3
  // the scheduled meeting item, that way client can display start and end without
5
4
  // calculation on their side
@@ -13,8 +12,11 @@ const CalendarUtil = {
13
12
  * @memberof CalendarUtil
14
13
  */
15
14
  calculateEndTime(item) {
16
- return {...item, endTime: new Date(new Date(item.start).getTime() + item.durationMinutes * 60000)};
17
- }
15
+ return {
16
+ ...item,
17
+ endTime: new Date(new Date(item.start).getTime() + item.durationMinutes * 60000),
18
+ };
19
+ },
18
20
  };
19
21
 
20
22
  export default CalendarUtil;