@webex/internal-plugin-calendar 2.59.3-next.1 → 2.59.4-next.1
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/.eslintrc.js +6 -6
- package/README.md +42 -42
- package/babel.config.js +3 -3
- package/dist/calendar.decrypt.helper.js +10 -10
- package/dist/calendar.decrypt.helper.js.map +1 -1
- package/dist/calendar.encrypt.helper.js +17 -17
- package/dist/calendar.encrypt.helper.js.map +1 -1
- package/dist/calendar.js +177 -133
- package/dist/calendar.js.map +1 -1
- package/dist/collection.js +42 -42
- package/dist/collection.js.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/constants.js.map +1 -1
- package/dist/index.js +8 -8
- package/dist/index.js.map +1 -1
- package/dist/util.js +7 -7
- package/dist/util.js.map +1 -1
- package/jest.config.js +3 -3
- package/package.json +10 -10
- package/process +1 -1
- package/src/calendar.decrypt.helper.js +121 -121
- package/src/calendar.encrypt.helper.js +98 -98
- package/src/calendar.js +490 -490
- package/src/collection.js +100 -100
- package/src/config.js +10 -10
- package/src/constants.js +6 -6
- package/src/index.js +241 -241
- package/src/util.js +22 -22
- package/test/integration/spec/calendar.js +624 -624
- package/test/unit/spec/calendar.decrypt.helper.js +145 -145
- package/test/unit/spec/calendar.encrypt.helper.js +52 -52
- package/test/unit/spec/calendar.js +446 -446
- package/test/unit/spec/utils.js +16 -16
package/dist/collection.js
CHANGED
|
@@ -7,44 +7,44 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports.default = void 0;
|
|
9
9
|
var _values = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/values"));
|
|
10
|
-
var
|
|
10
|
+
var _lodash = require("lodash");
|
|
11
11
|
var _util = _interopRequireDefault(require("./util"));
|
|
12
12
|
var _constants = require("./constants");
|
|
13
|
-
/**
|
|
14
|
-
* @class CalendarCollection
|
|
13
|
+
/**
|
|
14
|
+
* @class CalendarCollection
|
|
15
15
|
*/
|
|
16
16
|
var CalendarCollection = {
|
|
17
17
|
namespace: _constants.CALENDAR,
|
|
18
18
|
items: {},
|
|
19
|
-
/**
|
|
20
|
-
* @param {String} id calendar ID
|
|
21
|
-
* @returns {Any} Calendar Item specifc to that id
|
|
22
|
-
* @private
|
|
23
|
-
* @memberof CalendarCollection
|
|
19
|
+
/**
|
|
20
|
+
* @param {String} id calendar ID
|
|
21
|
+
* @returns {Any} Calendar Item specifc to that id
|
|
22
|
+
* @private
|
|
23
|
+
* @memberof CalendarCollection
|
|
24
24
|
*/
|
|
25
25
|
get: function get(id) {
|
|
26
26
|
return this.items[id];
|
|
27
27
|
},
|
|
28
|
-
/**
|
|
29
|
-
* @param {String} key any key and the corresponding calendar Item
|
|
30
|
-
* @param {String} value any values corresponding to calendar item
|
|
31
|
-
* @returns {Any} returns whatever is being stuffed into the collection
|
|
32
|
-
* @private
|
|
33
|
-
* @memberof CalendarCollection
|
|
28
|
+
/**
|
|
29
|
+
* @param {String} key any key and the corresponding calendar Item
|
|
30
|
+
* @param {String} value any values corresponding to calendar item
|
|
31
|
+
* @returns {Any} returns whatever is being stuffed into the collection
|
|
32
|
+
* @private
|
|
33
|
+
* @memberof CalendarCollection
|
|
34
34
|
*/
|
|
35
35
|
getBy: function getBy(key, value) {
|
|
36
36
|
if (key && value) {
|
|
37
|
-
return (0,
|
|
37
|
+
return (0, _lodash.find)(this.items, function (item) {
|
|
38
38
|
return item[key] === value;
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
41
|
return null;
|
|
42
42
|
},
|
|
43
|
-
/**
|
|
44
|
-
* @param {Object} item CalendarObject passed to the collection
|
|
45
|
-
* @returns {Any} returns calender id whats get set
|
|
46
|
-
* @private
|
|
47
|
-
* @memberof CalendarCollection
|
|
43
|
+
/**
|
|
44
|
+
* @param {Object} item CalendarObject passed to the collection
|
|
45
|
+
* @returns {Any} returns calender id whats get set
|
|
46
|
+
* @private
|
|
47
|
+
* @memberof CalendarCollection
|
|
48
48
|
*/
|
|
49
49
|
set: function set(item) {
|
|
50
50
|
var itemId = item.id;
|
|
@@ -52,32 +52,32 @@ var CalendarCollection = {
|
|
|
52
52
|
this.items[itemId] = meeting;
|
|
53
53
|
return itemId;
|
|
54
54
|
},
|
|
55
|
-
/**
|
|
56
|
-
* resets all the values in the calendarcollection
|
|
57
|
-
* @returns {undefined}
|
|
58
|
-
* @private
|
|
59
|
-
* @memberof CalendarCollection
|
|
55
|
+
/**
|
|
56
|
+
* resets all the values in the calendarcollection
|
|
57
|
+
* @returns {undefined}
|
|
58
|
+
* @private
|
|
59
|
+
* @memberof CalendarCollection
|
|
60
60
|
*/
|
|
61
61
|
reset: function reset() {
|
|
62
62
|
this.items = {};
|
|
63
63
|
},
|
|
64
|
-
/**
|
|
65
|
-
* @param {Id} id is the id for the calendar item to be removed
|
|
66
|
-
* @returns {Any} calendar item which got removed
|
|
67
|
-
* @private
|
|
68
|
-
* @memberof CalendarCollection
|
|
64
|
+
/**
|
|
65
|
+
* @param {Id} id is the id for the calendar item to be removed
|
|
66
|
+
* @returns {Any} calendar item which got removed
|
|
67
|
+
* @private
|
|
68
|
+
* @memberof CalendarCollection
|
|
69
69
|
*/
|
|
70
70
|
remove: function remove(id) {
|
|
71
71
|
var meeting = this.get(id);
|
|
72
72
|
delete this.items[id];
|
|
73
73
|
return meeting;
|
|
74
74
|
},
|
|
75
|
-
/**
|
|
76
|
-
* sets all the item passed to the collection
|
|
77
|
-
* @param {Array} items array of calendar items
|
|
78
|
-
* @private
|
|
79
|
-
* @returns {undefined}
|
|
80
|
-
* @memberof CalendarCollection
|
|
75
|
+
/**
|
|
76
|
+
* sets all the item passed to the collection
|
|
77
|
+
* @param {Array} items array of calendar items
|
|
78
|
+
* @private
|
|
79
|
+
* @returns {undefined}
|
|
80
|
+
* @memberof CalendarCollection
|
|
81
81
|
*/
|
|
82
82
|
setAll: function setAll(items) {
|
|
83
83
|
var _this = this;
|
|
@@ -85,12 +85,12 @@ var CalendarCollection = {
|
|
|
85
85
|
_this.set(item);
|
|
86
86
|
});
|
|
87
87
|
},
|
|
88
|
-
/**
|
|
89
|
-
* gets all the calendar stored in the collection
|
|
90
|
-
* @param {Array} items array of calendar items
|
|
91
|
-
* @private
|
|
92
|
-
* @returns {Array} returns an array of calendar items
|
|
93
|
-
* @memberof CalendarCollection
|
|
88
|
+
/**
|
|
89
|
+
* gets all the calendar stored in the collection
|
|
90
|
+
* @param {Array} items array of calendar items
|
|
91
|
+
* @private
|
|
92
|
+
* @returns {Array} returns an array of calendar items
|
|
93
|
+
* @memberof CalendarCollection
|
|
94
94
|
*/
|
|
95
95
|
getAll: function getAll() {
|
|
96
96
|
return (0, _values.default)(this.items);
|
package/dist/collection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_lodash","require","_util","_interopRequireDefault","_constants","CalendarCollection","namespace","CALENDAR","items","get","id","getBy","key","value","find","item","set","itemId","meeting","CalendarUtil","calculateEndTime","reset","remove","setAll","_this","forEach","getAll","_values","default","_default","exports"],"sources":["collection.js"],"sourcesContent":["import {find} from 'lodash';\n\nimport CalendarUtil from './util';\nimport {CALENDAR} from './constants';\n/**\n * @class CalendarCollection\n */\nconst CalendarCollection = {\n namespace: CALENDAR,\n items: {},\n /**\n * @param {String} id calendar ID\n * @returns {Any} Calendar Item specifc to that id\n * @private\n * @memberof CalendarCollection\n */\n get(id) {\n return this.items[id];\n },\n\n /**\n * @param {String} key any key and the corresponding calendar Item\n * @param {String} value any values corresponding to calendar item\n * @returns {Any} returns whatever is being stuffed into the collection\n * @private\n * @memberof CalendarCollection\n */\n getBy(key, value) {\n if (key && value) {\n return find(this.items, (item) => item[key] === value);\n }\n\n return null;\n },\n\n /**\n * @param {Object} item CalendarObject passed to the collection\n * @returns {Any} returns calender id whats get set\n * @private\n * @memberof CalendarCollection\n */\n set(item) {\n const itemId = item.id;\n const meeting = CalendarUtil.calculateEndTime(item);\n\n this.items[itemId] = meeting;\n\n return itemId;\n },\n\n /**\n * resets all the values in the calendarcollection\n * @returns {undefined}\n * @private\n * @memberof CalendarCollection\n */\n reset() {\n this.items = {};\n },\n\n /**\n * @param {Id} id is the id for the calendar item to be removed\n * @returns {Any} calendar item which got removed\n * @private\n * @memberof CalendarCollection\n */\n remove(id) {\n const meeting = this.get(id);\n\n delete this.items[id];\n\n return meeting;\n },\n\n /**\n * sets all the item passed to the collection\n * @param {Array} items array of calendar items\n * @private\n * @returns {undefined}\n * @memberof CalendarCollection\n */\n setAll(items) {\n items.forEach((item) => {\n this.set(item);\n });\n },\n\n /**\n * gets all the calendar stored in the collection\n * @param {Array} items array of calendar items\n * @private\n * @returns {Array} returns an array of calendar items\n * @memberof CalendarCollection\n */\n getAll() {\n return Object.values(this.items);\n },\n};\n\nexport default CalendarCollection;\n"],"mappings":";;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEA,IAAAC,KAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA;AACA;AACA;AACA,IAAMI,kBAAkB,GAAG;EACzBC,SAAS,EAAEC,mBAAQ;EACnBC,KAAK,EAAE,CAAC,CAAC;EACT;AACF;AACA;AACA;AACA;AACA;EACEC,GAAG,WAAAA,IAACC,EAAE,EAAE;IACN,OAAO,IAAI,CAACF,KAAK,CAACE,EAAE,CAAC;EACvB,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEC,KAAK,WAAAA,MAACC,GAAG,EAAEC,KAAK,EAAE;IAChB,IAAID,GAAG,IAAIC,KAAK,EAAE;MAChB,OAAO,IAAAC,YAAI,EAAC,IAAI,CAACN,KAAK,EAAE,UAACO,IAAI;QAAA,OAAKA,IAAI,CAACH,GAAG,CAAC,KAAKC,KAAK;MAAA,EAAC;IACxD;IAEA,OAAO,IAAI;EACb,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEG,GAAG,WAAAA,IAACD,IAAI,EAAE;IACR,IAAME,MAAM,GAAGF,IAAI,CAACL,EAAE;IACtB,IAAMQ,OAAO,GAAGC,aAAY,CAACC,gBAAgB,CAACL,IAAI,CAAC;IAEnD,IAAI,CAACP,KAAK,CAACS,MAAM,CAAC,GAAGC,OAAO;IAE5B,OAAOD,MAAM;EACf,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEI,KAAK,WAAAA,MAAA,EAAG;IACN,IAAI,CAACb,KAAK,GAAG,CAAC,CAAC;EACjB,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEc,MAAM,WAAAA,OAACZ,EAAE,EAAE;IACT,IAAMQ,OAAO,GAAG,IAAI,CAACT,GAAG,CAACC,EAAE,CAAC;IAE5B,OAAO,IAAI,CAACF,KAAK,CAACE,EAAE,CAAC;IAErB,OAAOQ,OAAO;EAChB,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEK,MAAM,WAAAA,OAACf,KAAK,EAAE;IAAA,IAAAgB,KAAA;IACZhB,KAAK,CAACiB,OAAO,CAAC,UAACV,IAAI,EAAK;MACtBS,KAAI,CAACR,GAAG,CAACD,IAAI,CAAC;IAChB,CAAC,CAAC;EACJ,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACEW,MAAM,WAAAA,OAAA,EAAG;IACP,OAAO,IAAAC,OAAA,CAAAC,OAAA,EAAc,IAAI,CAACpB,KAAK,CAAC;EAClC;AACF,CAAC;AAAC,IAAAqB,QAAA,GAEaxB,kBAAkB;AAAAyB,OAAA,CAAAF,OAAA,GAAAC,QAAA"}
|
package/dist/config.js
CHANGED
|
@@ -5,8 +5,8 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
/*!
|
|
9
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
8
|
+
/*!
|
|
9
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
10
10
|
*/
|
|
11
11
|
var _default = {
|
|
12
12
|
calendar: {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_default","calendar","fromDate","Date","setDate","getDate","toDate","exports","default"],"sources":["config.js"],"sourcesContent":["/*!\
|
|
1
|
+
{"version":3,"names":["_default","calendar","fromDate","Date","setDate","getDate","toDate","exports","default"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nexport default {\n calendar: {\n fromDate: new Date(new Date().setDate(new Date().getDate() - 1)),\n toDate: new Date(new Date().setDate(new Date().getDate() + 7)),\n },\n};\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AAFA,IAAAA,QAAA,GAIe;EACbC,QAAQ,EAAE;IACRC,QAAQ,EAAE,IAAIC,IAAI,CAAC,IAAIA,IAAI,EAAE,CAACC,OAAO,CAAC,IAAID,IAAI,EAAE,CAACE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IAChEC,MAAM,EAAE,IAAIH,IAAI,CAAC,IAAIA,IAAI,EAAE,CAACC,OAAO,CAAC,IAAID,IAAI,EAAE,CAACE,OAAO,EAAE,GAAG,CAAC,CAAC;EAC/D;AACF,CAAC;AAAAE,OAAA,CAAAC,OAAA,GAAAR,QAAA"}
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CALENDAR_REGISTERED","exports","CALENDAR_UNREGISTERED","CALENDAR_UPDATED","CALENDAR_DELETE","CALENDAR_CREATE","CALENDAR"],"sources":["constants.js"],"sourcesContent":["export const CALENDAR_REGISTERED = 'calendar:registered';\
|
|
1
|
+
{"version":3,"names":["CALENDAR_REGISTERED","exports","CALENDAR_UNREGISTERED","CALENDAR_UPDATED","CALENDAR_DELETE","CALENDAR_CREATE","CALENDAR"],"sources":["constants.js"],"sourcesContent":["export const CALENDAR_REGISTERED = 'calendar:registered';\nexport const CALENDAR_UNREGISTERED = 'calendar:unregistered';\nexport const CALENDAR_UPDATED = 'calendar:update';\nexport const CALENDAR_DELETE = 'calendar:delete';\nexport const CALENDAR_CREATE = 'calendar:create';\nexport const CALENDAR = 'CALENDAR';\n"],"mappings":";;;;;;;AAAO,IAAMA,mBAAmB,GAAG,qBAAqB;AAACC,OAAA,CAAAD,mBAAA,GAAAA,mBAAA;AAClD,IAAME,qBAAqB,GAAG,uBAAuB;AAACD,OAAA,CAAAC,qBAAA,GAAAA,qBAAA;AACtD,IAAMC,gBAAgB,GAAG,iBAAiB;AAACF,OAAA,CAAAE,gBAAA,GAAAA,gBAAA;AAC3C,IAAMC,eAAe,GAAG,iBAAiB;AAACH,OAAA,CAAAG,eAAA,GAAAA,eAAA;AAC1C,IAAMC,eAAe,GAAG,iBAAiB;AAACJ,OAAA,CAAAI,eAAA,GAAAA,eAAA;AAC1C,IAAMC,QAAQ,GAAG,UAAU;AAACL,OAAA,CAAAK,QAAA,GAAAA,QAAA"}
|
package/dist/index.js
CHANGED
|
@@ -12,15 +12,15 @@ _Object$defineProperty(exports, "default", {
|
|
|
12
12
|
}
|
|
13
13
|
});
|
|
14
14
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
15
|
-
var _has2 = _interopRequireDefault(require("lodash/has"));
|
|
16
15
|
require("@webex/internal-plugin-device");
|
|
17
16
|
require("@webex/internal-plugin-encryption");
|
|
18
17
|
require("@webex/internal-plugin-conversation");
|
|
19
18
|
var _webexCore = require("@webex/webex-core");
|
|
19
|
+
var _lodash = require("lodash");
|
|
20
20
|
var _calendar = _interopRequireDefault(require("./calendar"));
|
|
21
21
|
var _config = _interopRequireDefault(require("./config"));
|
|
22
|
-
/*!
|
|
23
|
-
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
22
|
+
/*!
|
|
23
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
24
24
|
*/
|
|
25
25
|
|
|
26
26
|
(0, _webexCore.registerInternalPlugin)('calendar', _calendar.default, {
|
|
@@ -30,7 +30,7 @@ var _config = _interopRequireDefault(require("./config"));
|
|
|
30
30
|
name: 'transformMeetingNotes',
|
|
31
31
|
direction: 'inbound',
|
|
32
32
|
test: function test(ctx, response) {
|
|
33
|
-
return _promise.default.resolve((0,
|
|
33
|
+
return _promise.default.resolve((0, _lodash.has)(response, 'body.encryptedNotes') && !(response.options && response.options.service === 'calendar' && response.options.method === 'GET' && response.options.resource === 'schedulerData'));
|
|
34
34
|
},
|
|
35
35
|
extract: function extract(response) {
|
|
36
36
|
return _promise.default.resolve(response.body);
|
|
@@ -39,7 +39,7 @@ var _config = _interopRequireDefault(require("./config"));
|
|
|
39
39
|
name: 'transformMeetingParticipants',
|
|
40
40
|
direction: 'inbound',
|
|
41
41
|
test: function test(ctx, response) {
|
|
42
|
-
return _promise.default.resolve((0,
|
|
42
|
+
return _promise.default.resolve((0, _lodash.has)(response, 'body.encryptedParticipants') && !(response.options && response.options.service === 'calendar' && response.options.method === 'GET' && response.options.resource === 'schedulerData'));
|
|
43
43
|
},
|
|
44
44
|
extract: function extract(response) {
|
|
45
45
|
return _promise.default.resolve(response.body);
|
|
@@ -48,7 +48,7 @@ var _config = _interopRequireDefault(require("./config"));
|
|
|
48
48
|
name: 'transformMeetingArray',
|
|
49
49
|
direction: 'inbound',
|
|
50
50
|
test: function test(ctx, response) {
|
|
51
|
-
return _promise.default.resolve((0,
|
|
51
|
+
return _promise.default.resolve((0, _lodash.has)(response, 'body.items[0].seriesId'));
|
|
52
52
|
},
|
|
53
53
|
extract: function extract(response) {
|
|
54
54
|
return _promise.default.resolve(response.body.items);
|
|
@@ -57,7 +57,7 @@ var _config = _interopRequireDefault(require("./config"));
|
|
|
57
57
|
name: 'transformMeeting',
|
|
58
58
|
direction: 'inbound',
|
|
59
59
|
test: function test(ctx, response) {
|
|
60
|
-
return _promise.default.resolve((0,
|
|
60
|
+
return _promise.default.resolve((0, _lodash.has)(response, 'body.seriesId') && !(response.options && response.options.service === 'calendar' && response.options.method === 'GET' && response.options.resource === 'schedulerData'));
|
|
61
61
|
},
|
|
62
62
|
extract: function extract(response) {
|
|
63
63
|
return _promise.default.resolve(response.body);
|
|
@@ -66,7 +66,7 @@ var _config = _interopRequireDefault(require("./config"));
|
|
|
66
66
|
name: 'transformMeeting',
|
|
67
67
|
direction: 'inbound',
|
|
68
68
|
test: function test(ctx, response) {
|
|
69
|
-
return _promise.default.resolve((0,
|
|
69
|
+
return _promise.default.resolve((0, _lodash.has)(response, 'calendarMeetingExternal'));
|
|
70
70
|
},
|
|
71
71
|
extract: function extract(response) {
|
|
72
72
|
return _promise.default.resolve(response.calendarMeetingExternal);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["require","_webexCore","_calendar","_interopRequireDefault","_config","registerInternalPlugin","Calendar","config","payloadTransformer","predicates","name","direction","test","ctx","response","_promise","default","resolve","_has2","options","service","method","resource","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":["/*!\r\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\r\n */\r\n\r\nimport '@webex/internal-plugin-device';\r\nimport '@webex/internal-plugin-encryption';\r\nimport '@webex/internal-plugin-conversation';\r\n\r\nimport {registerInternalPlugin} from '@webex/webex-core';\r\nimport {has} from 'lodash';\r\n\r\nimport Calendar from './calendar';\r\nimport config from './config';\r\n\r\nregisterInternalPlugin('calendar', Calendar, {\r\n config,\r\n payloadTransformer: {\r\n predicates: [\r\n {\r\n name: 'transformMeetingNotes',\r\n direction: 'inbound',\r\n test(ctx, response) {\r\n return Promise.resolve(\r\n has(response, 'body.encryptedNotes') &&\r\n !(\r\n response.options &&\r\n response.options.service === 'calendar' &&\r\n response.options.method === 'GET' &&\r\n response.options.resource === 'schedulerData'\r\n )\r\n );\r\n },\r\n extract(response) {\r\n return Promise.resolve(response.body);\r\n },\r\n },\r\n {\r\n name: 'transformMeetingParticipants',\r\n direction: 'inbound',\r\n test(ctx, response) {\r\n return Promise.resolve(\r\n has(response, 'body.encryptedParticipants') &&\r\n !(\r\n response.options &&\r\n response.options.service === 'calendar' &&\r\n response.options.method === 'GET' &&\r\n response.options.resource === 'schedulerData'\r\n )\r\n );\r\n },\r\n extract(response) {\r\n return Promise.resolve(response.body);\r\n },\r\n },\r\n {\r\n name: 'transformMeetingArray',\r\n direction: 'inbound',\r\n test(ctx, response) {\r\n return Promise.resolve(has(response, 'body.items[0].seriesId'));\r\n },\r\n extract(response) {\r\n return Promise.resolve(response.body.items);\r\n },\r\n },\r\n {\r\n name: 'transformMeeting',\r\n direction: 'inbound',\r\n test(ctx, response) {\r\n return Promise.resolve(\r\n has(response, 'body.seriesId') &&\r\n !(\r\n response.options &&\r\n response.options.service === 'calendar' &&\r\n response.options.method === 'GET' &&\r\n response.options.resource === 'schedulerData'\r\n )\r\n );\r\n },\r\n extract(response) {\r\n return Promise.resolve(response.body);\r\n },\r\n },\r\n {\r\n name: 'transformMeeting',\r\n direction: 'inbound',\r\n test(ctx, response) {\r\n return Promise.resolve(has(response, 'calendarMeetingExternal'));\r\n },\r\n extract(response) {\r\n return Promise.resolve(response.calendarMeetingExternal);\r\n },\r\n },\r\n ],\r\n transforms: [\r\n {\r\n name: 'transformMeetingArray',\r\n fn(ctx, array) {\r\n return Promise.all(array.map((item) => ctx.transform('transformMeeting', item)));\r\n },\r\n },\r\n {\r\n name: 'transformMeeting',\r\n direction: 'inbound',\r\n fn(ctx, object) {\r\n if (!object) {\r\n return Promise.resolve();\r\n }\r\n\r\n if (!object.encryptionKeyUrl) {\r\n return Promise.resolve();\r\n }\r\n\r\n // Decrypt participant properties if meeting object contains participants\r\n const decryptedParticipants = object.encryptedParticipants\r\n ? object.encryptedParticipants.map((participant) =>\r\n Promise.all([\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedEmailAddress',\r\n object.encryptionKeyUrl,\r\n participant\r\n ),\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedName',\r\n object.encryptionKeyUrl,\r\n participant\r\n ),\r\n ])\r\n )\r\n : [];\r\n\r\n // Decrypt meetingJoinInfo properties if meeting object contains meetingJoinInfo\r\n const decryptedMeetingJoinInfo = object.meetingJoinInfo\r\n ? Promise.all([\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'meetingJoinURI',\r\n object.encryptionKeyUrl,\r\n object.meetingJoinInfo\r\n ),\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'meetingJoinURL',\r\n object.encryptionKeyUrl,\r\n object.meetingJoinInfo\r\n ),\r\n ])\r\n : [];\r\n\r\n const decryptedOrganizer = object.encryptedOrganizer\r\n ? Promise.all([\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedEmailAddress',\r\n object.encryptionKeyUrl,\r\n object.encryptedOrganizer\r\n ),\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedName',\r\n object.encryptionKeyUrl,\r\n object.encryptedOrganizer\r\n ),\r\n ])\r\n : [];\r\n\r\n return Promise.all(\r\n [\r\n ctx.transform('decryptTextProp', 'encryptedSubject', object.encryptionKeyUrl, object),\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedLocation',\r\n object.encryptionKeyUrl,\r\n object\r\n ),\r\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),\r\n ctx.transform('decryptTextProp', 'webexURI', object.encryptionKeyUrl, object),\r\n ctx.transform('decryptTextProp', 'webexURL', object.encryptionKeyUrl, object),\r\n ctx.transform('decryptTextProp', 'spaceMeetURL', object.encryptionKeyUrl, object),\r\n ctx.transform('decryptTextProp', 'spaceURI', object.encryptionKeyUrl, object),\r\n ctx.transform('decryptTextProp', 'spaceURL', object.encryptionKeyUrl, object),\r\n ].concat(decryptedOrganizer, decryptedParticipants, decryptedMeetingJoinInfo)\r\n );\r\n },\r\n },\r\n {\r\n name: 'transformMeetingNotes',\r\n direction: 'inbound',\r\n fn(ctx, object) {\r\n if (!object) {\r\n return Promise.resolve();\r\n }\r\n\r\n if (!object.encryptionKeyUrl) {\r\n return Promise.resolve();\r\n }\r\n\r\n return Promise.all([\r\n ctx.transform('decryptTextProp', 'encryptedNotes', object.encryptionKeyUrl, object),\r\n ]);\r\n },\r\n },\r\n {\r\n name: 'transformMeetingParticipants',\r\n direction: 'inbound',\r\n fn(ctx, object) {\r\n if (!object) {\r\n return Promise.resolve();\r\n }\r\n\r\n if (!object.encryptionKeyUrl || !object.encryptedParticipants) {\r\n return Promise.resolve();\r\n }\r\n\r\n // Decrypt participant properties\r\n const decryptedParticipants = object.encryptedParticipants.map((participant) =>\r\n Promise.all([\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedEmailAddress',\r\n object.encryptionKeyUrl,\r\n participant\r\n ),\r\n ctx.transform(\r\n 'decryptTextProp',\r\n 'encryptedName',\r\n object.encryptionKeyUrl,\r\n participant\r\n ),\r\n ])\r\n );\r\n\r\n return Promise.all(decryptedParticipants);\r\n },\r\n },\r\n ],\r\n },\r\n});\r\n\r\nexport {default} from './calendar';\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["require","_webexCore","_lodash","_calendar","_interopRequireDefault","_config","registerInternalPlugin","Calendar","config","payloadTransformer","predicates","name","direction","test","ctx","response","_promise","default","resolve","has","options","service","method","resource","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(\n has(response, 'body.encryptedNotes') &&\n !(\n response.options &&\n response.options.service === 'calendar' &&\n response.options.method === 'GET' &&\n response.options.resource === 'schedulerData'\n )\n );\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(\n has(response, 'body.encryptedParticipants') &&\n !(\n response.options &&\n response.options.service === 'calendar' &&\n response.options.method === 'GET' &&\n response.options.resource === 'schedulerData'\n )\n );\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(\n has(response, 'body.seriesId') &&\n !(\n response.options &&\n response.options.service === 'calendar' &&\n response.options.method === 'GET' &&\n response.options.resource === 'schedulerData'\n )\n );\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
|
@@ -19,13 +19,13 @@ var CalendarUtil = {
|
|
|
19
19
|
// the scheduled meeting item, that way client can display start and end without
|
|
20
20
|
// calculation on their side
|
|
21
21
|
// gets the start time from server, and the duration, and reformats
|
|
22
|
-
/**
|
|
23
|
-
* calculates the end time for meeting
|
|
24
|
-
* @param {Object} item the locus.host property
|
|
25
|
-
* @param {Object} item.start start time of the meeting
|
|
26
|
-
* @param {Object} item.duration duration of the meeting
|
|
27
|
-
* @returns {Object} end time of the meeting
|
|
28
|
-
* @memberof CalendarUtil
|
|
22
|
+
/**
|
|
23
|
+
* calculates the end time for meeting
|
|
24
|
+
* @param {Object} item the locus.host property
|
|
25
|
+
* @param {Object} item.start start time of the meeting
|
|
26
|
+
* @param {Object} item.duration duration of the meeting
|
|
27
|
+
* @returns {Object} end time of the meeting
|
|
28
|
+
* @memberof CalendarUtil
|
|
29
29
|
*/
|
|
30
30
|
calculateEndTime: function calculateEndTime(item) {
|
|
31
31
|
return _objectSpread(_objectSpread({}, item), {}, {
|
package/dist/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CalendarUtil","calculateEndTime","item","_objectSpread","endTime","Date","start","getTime","durationMinutes","_default","exports","default"],"sources":["util.js"],"sourcesContent":["const CalendarUtil = {\
|
|
1
|
+
{"version":3,"names":["CalendarUtil","calculateEndTime","item","_objectSpread","endTime","Date","start","getTime","durationMinutes","_default","exports","default"],"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,WAAAA,iBAACC,IAAI,EAAE;IACrB,OAAAC,aAAA,CAAAA,aAAA,KACKD,IAAI;MACPE,OAAO,EAAE,IAAIC,IAAI,CAAC,IAAIA,IAAI,CAACH,IAAI,CAACI,KAAK,CAAC,CAACC,OAAO,EAAE,GAAGL,IAAI,CAACM,eAAe,GAAG,KAAK;IAAC;EAEpF;AACF,CAAC;AAAC,IAAAC,QAAA,GAEaT,YAAY;AAAAU,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
package/jest.config.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
const config = require('@webex/jest-config-legacy');
|
|
2
|
-
|
|
3
|
-
module.exports = config;
|
|
1
|
+
const config = require('@webex/jest-config-legacy');
|
|
2
|
+
|
|
3
|
+
module.exports = config;
|
package/package.json
CHANGED
|
@@ -25,20 +25,20 @@
|
|
|
25
25
|
"@webex/eslint-config-legacy": "^0.0.0",
|
|
26
26
|
"@webex/jest-config-legacy": "^0.0.0",
|
|
27
27
|
"@webex/legacy-tools": "^0.0.0",
|
|
28
|
-
"@webex/test-helper-chai": "^2.59.
|
|
29
|
-
"@webex/test-helper-mocha": "^2.59.
|
|
30
|
-
"@webex/test-helper-mock-webex": "^2.59.
|
|
31
|
-
"@webex/test-helper-retry": "^2.59.
|
|
32
|
-
"@webex/test-helper-test-users": "^2.59.
|
|
28
|
+
"@webex/test-helper-chai": "^2.59.4-next.1",
|
|
29
|
+
"@webex/test-helper-mocha": "^2.59.4-next.1",
|
|
30
|
+
"@webex/test-helper-mock-webex": "^2.59.4-next.1",
|
|
31
|
+
"@webex/test-helper-retry": "^2.59.4-next.1",
|
|
32
|
+
"@webex/test-helper-test-users": "^2.59.4-next.1",
|
|
33
33
|
"eslint": "^8.24.0",
|
|
34
34
|
"prettier": "^2.7.1",
|
|
35
35
|
"sinon": "^9.2.4"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@webex/internal-plugin-conversation": "^2.59.
|
|
39
|
-
"@webex/internal-plugin-device": "^2.59.
|
|
40
|
-
"@webex/internal-plugin-encryption": "^2.59.
|
|
41
|
-
"@webex/webex-core": "^2.59.
|
|
38
|
+
"@webex/internal-plugin-conversation": "^2.59.4-next.1",
|
|
39
|
+
"@webex/internal-plugin-device": "^2.59.4-next.1",
|
|
40
|
+
"@webex/internal-plugin-encryption": "^2.59.4-next.1",
|
|
41
|
+
"@webex/webex-core": "^2.59.4-next.1",
|
|
42
42
|
"lodash": "^4.17.21",
|
|
43
43
|
"uuid": "^3.3.2"
|
|
44
44
|
},
|
|
@@ -52,5 +52,5 @@
|
|
|
52
52
|
"test:style": "eslint ./src/**/*.*",
|
|
53
53
|
"test:unit": "webex-legacy-tools test --unit --runner jest"
|
|
54
54
|
},
|
|
55
|
-
"version": "2.59.
|
|
55
|
+
"version": "2.59.4-next.1"
|
|
56
56
|
}
|
package/process
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
module.exports = {browser: true};
|
|
1
|
+
module.exports = {browser: true};
|