@webex/internal-plugin-conversation 3.0.0-bnr.5 → 3.0.0-next.10
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 -0
- package/babel.config.js +3 -0
- package/dist/activities.js +26 -48
- package/dist/activities.js.map +1 -1
- package/dist/activity-thread-ordering.js +19 -34
- package/dist/activity-thread-ordering.js.map +1 -1
- package/dist/config.js +1 -2
- package/dist/config.js.map +1 -1
- package/dist/constants.js +4 -14
- package/dist/constants.js.map +1 -1
- package/dist/conversation.js +82 -111
- package/dist/conversation.js.map +1 -1
- package/dist/convo-error.js +5 -5
- package/dist/convo-error.js.map +1 -1
- package/dist/decryption-transforms.js +9 -8
- package/dist/decryption-transforms.js.map +1 -1
- package/dist/encryption-transforms.js +27 -23
- package/dist/encryption-transforms.js.map +1 -1
- package/dist/index.js +11 -13
- package/dist/index.js.map +1 -1
- package/dist/share-activity.js +20 -25
- package/dist/share-activity.js.map +1 -1
- package/dist/to-array.js +7 -5
- package/dist/to-array.js.map +1 -1
- package/jest.config.js +3 -0
- package/package.json +32 -17
- package/process +1 -0
- package/src/constants.js +0 -5
- package/src/conversation.js +8 -27
- package/src/encryption-transforms.js +8 -0
- package/test/integration/spec/create.js +2 -3
- package/test/integration/spec/encryption.js +0 -1
- package/test/integration/spec/get.js +4 -2
- package/test/unit/spec/conversation.js +51 -21
- package/test/unit/spec/encryption-transforms.js +23 -0
- package/dist/internal-plugin-conversation.d.ts +0 -21
- package/dist/tsdoc-metadata.json +0 -11
- package/dist/types/activities.d.ts +0 -32
- package/dist/types/activity-thread-ordering.d.ts +0 -18
- package/dist/types/config.d.ts +0 -19
- package/dist/types/constants.d.ts +0 -5
- package/dist/types/conversation.d.ts +0 -2
- package/dist/types/convo-error.d.ts +0 -10
- package/dist/types/decryption-transforms.d.ts +0 -1
- package/dist/types/encryption-transforms.d.ts +0 -1
- package/dist/types/index.d.ts +0 -3
- package/dist/types/share-activity.d.ts +0 -7
- package/dist/types/to-array.d.ts +0 -9
package/dist/conversation.js
CHANGED
|
@@ -16,35 +16,23 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
16
16
|
});
|
|
17
17
|
exports.default = void 0;
|
|
18
18
|
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
19
|
-
var
|
|
19
|
+
var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
|
|
20
20
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
21
21
|
var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
|
|
22
22
|
var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
|
|
23
23
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/slicedToArray"));
|
|
24
|
-
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
|
|
25
24
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/toConsumableArray"));
|
|
26
25
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
|
|
27
26
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
28
27
|
var _awaitAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/awaitAsyncGenerator"));
|
|
29
28
|
var _wrapAsyncGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/wrapAsyncGenerator"));
|
|
30
|
-
var _uniq2 = _interopRequireDefault(require("lodash/uniq"));
|
|
31
|
-
var _pick2 = _interopRequireDefault(require("lodash/pick"));
|
|
32
|
-
var _omit2 = _interopRequireDefault(require("lodash/omit"));
|
|
33
|
-
var _merge2 = _interopRequireDefault(require("lodash/merge"));
|
|
34
|
-
var _map3 = _interopRequireDefault(require("lodash/map"));
|
|
35
|
-
var _last2 = _interopRequireDefault(require("lodash/last"));
|
|
36
|
-
var _isString2 = _interopRequireDefault(require("lodash/isString"));
|
|
37
|
-
var _isObject2 = _interopRequireDefault(require("lodash/isObject"));
|
|
38
|
-
var _isArray2 = _interopRequireDefault(require("lodash/isArray"));
|
|
39
|
-
var _defaults2 = _interopRequireDefault(require("lodash/defaults"));
|
|
40
|
-
var _cloneDeepWith2 = _interopRequireDefault(require("lodash/cloneDeepWith"));
|
|
41
|
-
var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
42
29
|
var _querystring = _interopRequireDefault(require("querystring"));
|
|
43
30
|
var _events = require("events");
|
|
44
31
|
var _hmacSha = _interopRequireDefault(require("crypto-js/hmac-sha256"));
|
|
45
32
|
var _encHex = _interopRequireDefault(require("crypto-js/enc-hex"));
|
|
46
33
|
var _common = require("@webex/common");
|
|
47
34
|
var _webexCore = require("@webex/webex-core");
|
|
35
|
+
var _lodash = require("lodash");
|
|
48
36
|
var _helperImage = require("@webex/helper-image");
|
|
49
37
|
var _uuid = _interopRequireDefault(require("uuid"));
|
|
50
38
|
var _convoError = require("./convo-error");
|
|
@@ -55,11 +43,11 @@ var _constants = require("./constants");
|
|
|
55
43
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && o[_Symbol$iterator] || o["@@iterator"]; if (!it) { if (_Array$isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
56
44
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
57
45
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
58
|
-
function ownKeys(
|
|
59
|
-
function _objectSpread(
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
var idToUrl = new
|
|
46
|
+
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
47
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; } /*!
|
|
48
|
+
* Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
|
|
49
|
+
*/
|
|
50
|
+
var idToUrl = new _map.default();
|
|
63
51
|
var getConvoLimit = function getConvoLimit() {
|
|
64
52
|
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
65
53
|
var limit;
|
|
@@ -84,20 +72,9 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
84
72
|
_ref$cluster = _ref.cluster,
|
|
85
73
|
cluster = _ref$cluster === void 0 ? 'us' : _ref$cluster,
|
|
86
74
|
id = _ref.id;
|
|
87
|
-
var
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
if (clusterId.split(':').length < 4) {
|
|
91
|
-
// Add Service to cluster identifier
|
|
92
|
-
clusterId = "".concat(cluster, ":").concat(CLUSTER_SERVICE);
|
|
93
|
-
}
|
|
94
|
-
var _ref2 = this.webex.internal.services.getServiceFromClusterId({
|
|
95
|
-
clusterId: clusterId
|
|
96
|
-
}) || {},
|
|
97
|
-
url = _ref2.url;
|
|
98
|
-
if (!url) {
|
|
99
|
-
throw Error("Could not find service for cluster [".concat(cluster, "]"));
|
|
100
|
-
}
|
|
75
|
+
var url = this.webex.internal.services.getServiceUrlFromClusterId({
|
|
76
|
+
cluster: cluster
|
|
77
|
+
}, this.webex);
|
|
101
78
|
return id ? "".concat(url, "/conversations/").concat(id) : url;
|
|
102
79
|
},
|
|
103
80
|
/**
|
|
@@ -112,7 +89,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
112
89
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
113
90
|
url: url
|
|
114
91
|
});
|
|
115
|
-
if (!(0,
|
|
92
|
+
if (!(0, _lodash.isObject)(object)) {
|
|
116
93
|
return _promise.default.reject(new Error('`object` must be an object'));
|
|
117
94
|
}
|
|
118
95
|
return this.prepare(activity, {
|
|
@@ -198,7 +175,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
198
175
|
});
|
|
199
176
|
})).then(function (participants) {
|
|
200
177
|
participants.unshift(_this4.webex.internal.device.userId);
|
|
201
|
-
participants = (0,
|
|
178
|
+
participants = (0, _lodash.uniq)(participants);
|
|
202
179
|
var validParticipants = participants.filter(function (participant) {
|
|
203
180
|
return participant;
|
|
204
181
|
});
|
|
@@ -281,12 +258,12 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
281
258
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
282
259
|
url: url
|
|
283
260
|
});
|
|
284
|
-
if (!(0,
|
|
261
|
+
if (!(0, _lodash.isObject)(reactionPayload)) {
|
|
285
262
|
return _promise.default.reject(new Error('`object` must be an object'));
|
|
286
263
|
}
|
|
287
264
|
return this.prepare(reactionPayload, {
|
|
288
265
|
target: this.prepareConversation(convoWithUrl),
|
|
289
|
-
object: (0,
|
|
266
|
+
object: (0, _lodash.pick)(reactionPayload, 'id', 'url', 'objectType')
|
|
290
267
|
}).then(function (act) {
|
|
291
268
|
return _this5.submit(act);
|
|
292
269
|
});
|
|
@@ -383,13 +360,13 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
383
360
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
384
361
|
url: url
|
|
385
362
|
});
|
|
386
|
-
if (!(0,
|
|
363
|
+
if (!(0, _lodash.isObject)(object)) {
|
|
387
364
|
return _promise.default.reject(new Error('`object` must be an object'));
|
|
388
365
|
}
|
|
389
366
|
var request = {
|
|
390
367
|
verb: 'delete',
|
|
391
368
|
target: this.prepareConversation(convoWithUrl),
|
|
392
|
-
object: (0,
|
|
369
|
+
object: (0, _lodash.pick)(object, 'id', 'url', 'objectType')
|
|
393
370
|
};
|
|
394
371
|
|
|
395
372
|
// Deleting meeting container requires KMS message
|
|
@@ -424,9 +401,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
424
401
|
var shunt = new _events.EventEmitter();
|
|
425
402
|
var promise;
|
|
426
403
|
if (isEncrypted) {
|
|
427
|
-
promise = this.webex.internal.encryption.download(item.scr, item.options);
|
|
428
|
-
} else if (item.scr && item.scr.loc) {
|
|
429
|
-
promise = this._downloadUnencryptedFile(item.scr.loc, options);
|
|
404
|
+
promise = this.webex.internal.encryption.download(item.url, item.scr, item.options);
|
|
430
405
|
} else {
|
|
431
406
|
promise = this._downloadUnencryptedFile(item.url, options);
|
|
432
407
|
}
|
|
@@ -489,7 +464,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
489
464
|
if (!actor) {
|
|
490
465
|
actor = this.webex.internal.device.userId;
|
|
491
466
|
}
|
|
492
|
-
if ((0,
|
|
467
|
+
if ((0, _lodash.isString)(actor)) {
|
|
493
468
|
activity.actor = {
|
|
494
469
|
objectType: 'person',
|
|
495
470
|
id: actor
|
|
@@ -584,7 +559,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
584
559
|
activitiesLimit: 0,
|
|
585
560
|
includeConvWithDeletedUserUUID: false,
|
|
586
561
|
includeParticipants: false
|
|
587
|
-
}, (0,
|
|
562
|
+
}, (0, _lodash.omit)(options, 'id', 'user', 'url')),
|
|
588
563
|
disableTransform: options.disableTransform
|
|
589
564
|
};
|
|
590
565
|
|
|
@@ -605,8 +580,8 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
605
580
|
params.uri = uri;
|
|
606
581
|
}
|
|
607
582
|
return _this9.request(params);
|
|
608
|
-
}).then((0, _common.tap)(function (
|
|
609
|
-
var body =
|
|
583
|
+
}).then((0, _common.tap)(function (_ref2) {
|
|
584
|
+
var body = _ref2.body;
|
|
610
585
|
var id = body.id,
|
|
611
586
|
url = body.url;
|
|
612
587
|
_this9._recordUUIDs(body);
|
|
@@ -672,7 +647,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
672
647
|
return this._list({
|
|
673
648
|
service: 'conversation',
|
|
674
649
|
resource: options.summary ? 'conversationsSummary' : 'conversations',
|
|
675
|
-
qs: (0,
|
|
650
|
+
qs: (0, _lodash.omit)(options, ['deferDecrypt', 'summary']),
|
|
676
651
|
deferDecrypt: options.deferDecrypt,
|
|
677
652
|
limit: getConvoLimit(options)
|
|
678
653
|
}).then(function (results) {
|
|
@@ -737,7 +712,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
737
712
|
activitiesLimit: 0,
|
|
738
713
|
participantsLimit: 0,
|
|
739
714
|
paginate: true
|
|
740
|
-
}, (0,
|
|
715
|
+
}, (0, _lodash.omit)(options, ['deferDecrypt', 'url']));
|
|
741
716
|
reqOptions = {
|
|
742
717
|
qs: queryOptions,
|
|
743
718
|
deferDecrypt: options.deferDecrypt,
|
|
@@ -895,7 +870,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
895
870
|
break;
|
|
896
871
|
case 16:
|
|
897
872
|
// reverse list if needed (see _list for precedent)
|
|
898
|
-
if (items.length && (0,
|
|
873
|
+
if (items.length && (0, _lodash.last)(items).published < items[0].published) {
|
|
899
874
|
items.reverse();
|
|
900
875
|
}
|
|
901
876
|
return _context3.abrupt("return", items);
|
|
@@ -983,7 +958,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
983
958
|
return this._list({
|
|
984
959
|
service: 'conversation',
|
|
985
960
|
resource: 'mentions',
|
|
986
|
-
qs: (0,
|
|
961
|
+
qs: (0, _lodash.omit)(options, 'mentions')
|
|
987
962
|
});
|
|
988
963
|
},
|
|
989
964
|
/**
|
|
@@ -1061,7 +1036,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1061
1036
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
1062
1037
|
url: this.getConvoUrl(conversation)
|
|
1063
1038
|
});
|
|
1064
|
-
if ((0,
|
|
1039
|
+
if ((0, _lodash.isString)(message)) {
|
|
1065
1040
|
message = {
|
|
1066
1041
|
displayName: message
|
|
1067
1042
|
};
|
|
@@ -1077,7 +1052,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1077
1052
|
});
|
|
1078
1053
|
},
|
|
1079
1054
|
prepareConversation: function prepareConversation(conversation) {
|
|
1080
|
-
return (0,
|
|
1055
|
+
return (0, _lodash.defaults)((0, _lodash.pick)(conversation, 'id', 'url', 'objectType', 'defaultActivityEncryptionKeyUrl', 'kmsResourceObjectUrl'), {
|
|
1081
1056
|
objectType: 'conversation'
|
|
1082
1057
|
});
|
|
1083
1058
|
},
|
|
@@ -1086,7 +1061,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1086
1061
|
params = params || {};
|
|
1087
1062
|
activity = activity || {};
|
|
1088
1063
|
return _promise.default.resolve(activity.prepare ? activity.prepare(params) : activity).then(function (act) {
|
|
1089
|
-
(0,
|
|
1064
|
+
(0, _lodash.defaults)(act, {
|
|
1090
1065
|
verb: params.verb,
|
|
1091
1066
|
kmsMessage: params.kmsMessage,
|
|
1092
1067
|
objectType: 'activity',
|
|
@@ -1104,7 +1079,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1104
1079
|
if (activity.recipients) {
|
|
1105
1080
|
act.recipients = activity.recipients;
|
|
1106
1081
|
}
|
|
1107
|
-
if ((0,
|
|
1082
|
+
if ((0, _lodash.isString)(act.actor)) {
|
|
1108
1083
|
act.actor = {
|
|
1109
1084
|
objectType: 'person',
|
|
1110
1085
|
id: act.actor
|
|
@@ -1113,12 +1088,12 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1113
1088
|
['actor', 'object'].forEach(function (key) {
|
|
1114
1089
|
if (params[key]) {
|
|
1115
1090
|
act[key] = act[key] || {};
|
|
1116
|
-
(0,
|
|
1091
|
+
(0, _lodash.defaults)(act[key], params[key]);
|
|
1117
1092
|
}
|
|
1118
1093
|
});
|
|
1119
1094
|
if (params.target) {
|
|
1120
|
-
(0,
|
|
1121
|
-
target: (0,
|
|
1095
|
+
(0, _lodash.merge)(act, {
|
|
1096
|
+
target: (0, _lodash.pick)(params.target, 'id', 'url', 'objectType', 'kmsResourceObjectUrl', 'defaultActivityEncryptionKeyUrl')
|
|
1122
1097
|
});
|
|
1123
1098
|
}
|
|
1124
1099
|
['object', 'target'].forEach(function (key) {
|
|
@@ -1153,7 +1128,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1153
1128
|
return _context6.abrupt("return", _this19._list({
|
|
1154
1129
|
service: 'conversation',
|
|
1155
1130
|
resource: 'threads',
|
|
1156
|
-
qs: (0,
|
|
1131
|
+
qs: (0, _lodash.omit)(options, 'showAllTypes')
|
|
1157
1132
|
}));
|
|
1158
1133
|
case 1:
|
|
1159
1134
|
case "end":
|
|
@@ -1248,12 +1223,12 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1248
1223
|
* @param {Object} conversations If this is a team, the list of conversations in the team
|
|
1249
1224
|
* @returns {String} url for the specific convo
|
|
1250
1225
|
*/
|
|
1251
|
-
getConvoUrl: function getConvoUrl(
|
|
1252
|
-
var id =
|
|
1253
|
-
url =
|
|
1254
|
-
cluster =
|
|
1255
|
-
conversations =
|
|
1256
|
-
generalConversationUuid =
|
|
1226
|
+
getConvoUrl: function getConvoUrl(_ref3) {
|
|
1227
|
+
var id = _ref3.id,
|
|
1228
|
+
url = _ref3.url,
|
|
1229
|
+
cluster = _ref3.cluster,
|
|
1230
|
+
conversations = _ref3.conversations,
|
|
1231
|
+
generalConversationUuid = _ref3.generalConversationUuid;
|
|
1257
1232
|
if (generalConversationUuid) {
|
|
1258
1233
|
// This is a Team
|
|
1259
1234
|
// Because Convo doesn't have an endpoint for the team URL
|
|
@@ -1324,7 +1299,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1324
1299
|
*/
|
|
1325
1300
|
share: function share(conversation, activity) {
|
|
1326
1301
|
var _this21 = this;
|
|
1327
|
-
if ((0,
|
|
1302
|
+
if ((0, _lodash.isArray)(activity)) {
|
|
1328
1303
|
activity = {
|
|
1329
1304
|
object: {
|
|
1330
1305
|
files: activity
|
|
@@ -1376,13 +1351,13 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1376
1351
|
var customActivityCopy = function customActivityCopy(value) {
|
|
1377
1352
|
var files = params.body.object.files;
|
|
1378
1353
|
if (files && value && files.items.length > 0 && value.constructor === files.items[0].scr.constructor) {
|
|
1379
|
-
var copySrc = (0,
|
|
1354
|
+
var copySrc = (0, _lodash.cloneDeep)(value);
|
|
1380
1355
|
copySrc.toJWE = value.toJWE;
|
|
1381
1356
|
copySrc.toJSON = value.toJSON;
|
|
1382
1357
|
return copySrc;
|
|
1383
1358
|
}
|
|
1384
1359
|
};
|
|
1385
|
-
var cloneActivity = (0,
|
|
1360
|
+
var cloneActivity = (0, _lodash.cloneDeepWith)(params, customActivityCopy);
|
|
1386
1361
|
|
|
1387
1362
|
// triggers user-activity to reset logout timer
|
|
1388
1363
|
this.webex.trigger('user-activity');
|
|
@@ -1474,7 +1449,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1474
1449
|
*/
|
|
1475
1450
|
update: function update(conversation, object, activity) {
|
|
1476
1451
|
var _this24 = this;
|
|
1477
|
-
if (!(0,
|
|
1452
|
+
if (!(0, _lodash.isObject)(object)) {
|
|
1478
1453
|
return _promise.default.reject(new Error('`object` must be an object'));
|
|
1479
1454
|
}
|
|
1480
1455
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
@@ -1527,7 +1502,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1527
1502
|
return _promise.default.resolve(key || this.webex.internal.encryption.kms.createUnboundKeys({
|
|
1528
1503
|
count: 1
|
|
1529
1504
|
})).then(function (keys) {
|
|
1530
|
-
var k = (0,
|
|
1505
|
+
var k = (0, _lodash.isArray)(keys) ? keys[0] : keys;
|
|
1531
1506
|
var params = {
|
|
1532
1507
|
verb: 'updateKey',
|
|
1533
1508
|
target: _this26.prepareConversation(convoWithUrl),
|
|
@@ -1550,7 +1525,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1550
1525
|
params.kmsMessage = {
|
|
1551
1526
|
method: 'create',
|
|
1552
1527
|
uri: '/resources',
|
|
1553
|
-
userIds: (0,
|
|
1528
|
+
userIds: (0, _lodash.map)(convoWithUrl.participants.items, 'id'),
|
|
1554
1529
|
keyUris: [k.uri]
|
|
1555
1530
|
};
|
|
1556
1531
|
}
|
|
@@ -1671,7 +1646,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1671
1646
|
});
|
|
1672
1647
|
var resource = options.resource;
|
|
1673
1648
|
return this._list({
|
|
1674
|
-
qs: (0,
|
|
1649
|
+
qs: (0, _lodash.omit)(options, 'resource'),
|
|
1675
1650
|
url: "".concat(url, "/").concat(resource)
|
|
1676
1651
|
});
|
|
1677
1652
|
},
|
|
@@ -1710,7 +1685,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1710
1685
|
url: conversationUrl,
|
|
1711
1686
|
id: conversationId
|
|
1712
1687
|
});
|
|
1713
|
-
var baseOptions = _objectSpread(_objectSpread({}, (0,
|
|
1688
|
+
var baseOptions = _objectSpread(_objectSpread({}, (0, _lodash.omit)(options, ['conversationUrl', 'conversationId'])), {}, {
|
|
1714
1689
|
url: url
|
|
1715
1690
|
});
|
|
1716
1691
|
var olderOptions = _objectSpread(_objectSpread({}, baseOptions), {}, {
|
|
@@ -1726,7 +1701,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1726
1701
|
* @returns {IGeneratorResponse}
|
|
1727
1702
|
*/
|
|
1728
1703
|
var jumpToActivity = /*#__PURE__*/function () {
|
|
1729
|
-
var
|
|
1704
|
+
var _ref4 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(searchObject) {
|
|
1730
1705
|
var newUrl, searchOptions, _yield$threadOrderer$, searchResults;
|
|
1731
1706
|
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
1732
1707
|
while (1) switch (_context7.prev = _context7.next) {
|
|
@@ -1766,7 +1741,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1766
1741
|
}, _callee7);
|
|
1767
1742
|
}));
|
|
1768
1743
|
return function jumpToActivity(_x) {
|
|
1769
|
-
return
|
|
1744
|
+
return _ref4.apply(this, arguments);
|
|
1770
1745
|
};
|
|
1771
1746
|
}();
|
|
1772
1747
|
|
|
@@ -1775,7 +1750,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1775
1750
|
* @returns {IGeneratorResponse}
|
|
1776
1751
|
*/
|
|
1777
1752
|
var getOlder = /*#__PURE__*/function () {
|
|
1778
|
-
var
|
|
1753
|
+
var _ref5 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
|
|
1779
1754
|
var _yield$threadOrderer$2, _yield$threadOrderer$3, value, oldestInBatch, moreActivitiesExist;
|
|
1780
1755
|
return _regenerator.default.wrap(function _callee8$(_context8) {
|
|
1781
1756
|
while (1) switch (_context8.prev = _context8.next) {
|
|
@@ -1799,7 +1774,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1799
1774
|
}, _callee8);
|
|
1800
1775
|
}));
|
|
1801
1776
|
return function getOlder() {
|
|
1802
|
-
return
|
|
1777
|
+
return _ref5.apply(this, arguments);
|
|
1803
1778
|
};
|
|
1804
1779
|
}();
|
|
1805
1780
|
|
|
@@ -1808,7 +1783,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1808
1783
|
* @returns {IGeneratorResponse}
|
|
1809
1784
|
*/
|
|
1810
1785
|
var getNewer = /*#__PURE__*/function () {
|
|
1811
|
-
var
|
|
1786
|
+
var _ref6 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
|
|
1812
1787
|
var newerOptions, _yield$threadOrderer$4, value;
|
|
1813
1788
|
return _regenerator.default.wrap(function _callee9$(_context9) {
|
|
1814
1789
|
while (1) switch (_context9.prev = _context9.next) {
|
|
@@ -1832,7 +1807,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1832
1807
|
}, _callee9);
|
|
1833
1808
|
}));
|
|
1834
1809
|
return function getNewer() {
|
|
1835
|
-
return
|
|
1810
|
+
return _ref6.apply(this, arguments);
|
|
1836
1811
|
};
|
|
1837
1812
|
}();
|
|
1838
1813
|
return {
|
|
@@ -1898,7 +1873,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1898
1873
|
/* eslint-disable no-await-in-loop */
|
|
1899
1874
|
/* eslint-disable no-loop-func */
|
|
1900
1875
|
_loop = /*#__PURE__*/_regenerator.default.mark(function _loop() {
|
|
1901
|
-
var _rootActivityManager, getRootActivityHash, addNewRoot, _noMoreActivitiesMana, getNoMoreActs, checkAndSetNoMoreActs, checkAndSetNoOlderActs, checkAndSetNoNewerActs, getActivityHandlerByType, handleNewActivity, handleNewActivities, handleOlderQuery, handleNewerQuery, handleSearch, getQueryResponseHandler, incrementLoopCounter, _loop2,
|
|
1876
|
+
var _rootActivityManager, getRootActivityHash, addNewRoot, _noMoreActivitiesMana, getNoMoreActs, checkAndSetNoMoreActs, checkAndSetNoOlderActs, checkAndSetNoNewerActs, getActivityHandlerByType, handleNewActivity, handleNewActivities, handleOlderQuery, handleNewerQuery, handleSearch, getQueryResponseHandler, incrementLoopCounter, _loop2, orderedActivities, getRepliesByParentId, orderedRoots, nextOptions, currentOldestPublishedDate, currentNewestPublishedDate;
|
|
1902
1877
|
return _regenerator.default.wrap(function _loop$(_context11) {
|
|
1903
1878
|
while (1) switch (_context11.prev = _context11.next) {
|
|
1904
1879
|
case 0:
|
|
@@ -1911,8 +1886,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1911
1886
|
// must be set per iteration, as querying newer activities is still valid when all end of convo has been reached
|
|
1912
1887
|
_noMoreActivitiesMana = (0, _activityThreadOrdering.noMoreActivitiesManager)(), getNoMoreActs = _noMoreActivitiesMana.getNoMoreActs, checkAndSetNoMoreActs = _noMoreActivitiesMana.checkAndSetNoMoreActs, checkAndSetNoOlderActs = _noMoreActivitiesMana.checkAndSetNoOlderActs, checkAndSetNoNewerActs = _noMoreActivitiesMana.checkAndSetNoNewerActs;
|
|
1913
1888
|
getActivityHandlerByType = function getActivityHandlerByType(type) {
|
|
1914
|
-
|
|
1915
|
-
return (_ACTIVITY_TYPES$ROOT$ = {}, (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.ROOT, addNewRoot), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.REPLY, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REPLY)), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.EDIT, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.EDIT)), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.REACTION, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REACTION)), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.REACTION_SELF, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REACTION_SELF)), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.TOMBSTONE, addNewRoot), (0, _defineProperty2.default)(_ACTIVITY_TYPES$ROOT$, _activities.ACTIVITY_TYPES.CREATE, addNewRoot), _ACTIVITY_TYPES$ROOT$)[type];
|
|
1889
|
+
return (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _activities.ACTIVITY_TYPES.ROOT, addNewRoot), _activities.ACTIVITY_TYPES.REPLY, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REPLY)), _activities.ACTIVITY_TYPES.EDIT, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.EDIT)), _activities.ACTIVITY_TYPES.REACTION, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REACTION)), _activities.ACTIVITY_TYPES.REACTION_SELF, getActivityHandlerByKey(_activities.ACTIVITY_TYPES.REACTION_SELF)), _activities.ACTIVITY_TYPES.TOMBSTONE, addNewRoot), _activities.ACTIVITY_TYPES.CREATE, addNewRoot)[type];
|
|
1916
1890
|
};
|
|
1917
1891
|
handleNewActivity = function handleNewActivity(activity) {
|
|
1918
1892
|
var actType = (0, _activities.getActivityType)(activity);
|
|
@@ -1946,8 +1920,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
1946
1920
|
handleNewActivities(activities);
|
|
1947
1921
|
};
|
|
1948
1922
|
getQueryResponseHandler = function getQueryResponseHandler(type) {
|
|
1949
|
-
|
|
1950
|
-
return (_OLDER$NEWER$MID$INIT = {}, (0, _defineProperty2.default)(_OLDER$NEWER$MID$INIT, _activities.OLDER, handleOlderQuery), (0, _defineProperty2.default)(_OLDER$NEWER$MID$INIT, _activities.NEWER, handleNewerQuery), (0, _defineProperty2.default)(_OLDER$NEWER$MID$INIT, _activities.MID, handleSearch), (0, _defineProperty2.default)(_OLDER$NEWER$MID$INIT, _activities.INITIAL, handleOlderQuery), _OLDER$NEWER$MID$INIT)[type];
|
|
1923
|
+
return (0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)((0, _defineProperty2.default)({}, _activities.OLDER, handleOlderQuery), _activities.NEWER, handleNewerQuery), _activities.MID, handleSearch), _activities.INITIAL, handleOlderQuery)[type];
|
|
1951
1924
|
}; // ***********************************************
|
|
1952
1925
|
// INNER LOOP
|
|
1953
1926
|
// responsible for fetching and building our maps of activities
|
|
@@ -2095,7 +2068,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2095
2068
|
_context10.next = 41;
|
|
2096
2069
|
break;
|
|
2097
2070
|
}
|
|
2098
|
-
return _context10.abrupt("return",
|
|
2071
|
+
return _context10.abrupt("return", 1);
|
|
2099
2072
|
case 41:
|
|
2100
2073
|
checkAndSetNoMoreActs(queryType, visibleActivitiesCount, batchSize);
|
|
2101
2074
|
|
|
@@ -2138,21 +2111,20 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2138
2111
|
});
|
|
2139
2112
|
case 11:
|
|
2140
2113
|
if (getNoMoreActs()) {
|
|
2141
|
-
_context11.next =
|
|
2114
|
+
_context11.next = 17;
|
|
2142
2115
|
break;
|
|
2143
2116
|
}
|
|
2144
2117
|
return _context11.delegateYield(_loop2(), "t0", 13);
|
|
2145
2118
|
case 13:
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
_context11.next = 16;
|
|
2119
|
+
if (!_context11.t0) {
|
|
2120
|
+
_context11.next = 15;
|
|
2149
2121
|
break;
|
|
2150
2122
|
}
|
|
2151
|
-
return _context11.abrupt("break",
|
|
2152
|
-
case
|
|
2123
|
+
return _context11.abrupt("break", 17);
|
|
2124
|
+
case 15:
|
|
2153
2125
|
_context11.next = 11;
|
|
2154
2126
|
break;
|
|
2155
|
-
case
|
|
2127
|
+
case 17:
|
|
2156
2128
|
orderedActivities = [];
|
|
2157
2129
|
getRepliesByParentId = function getRepliesByParentId(replyParentId) {
|
|
2158
2130
|
var replies = [];
|
|
@@ -2206,12 +2178,12 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2206
2178
|
return orderedActivities.push(reply);
|
|
2207
2179
|
});
|
|
2208
2180
|
});
|
|
2209
|
-
_context11.next =
|
|
2181
|
+
_context11.next = 23;
|
|
2210
2182
|
return orderedActivities;
|
|
2211
|
-
case
|
|
2183
|
+
case 23:
|
|
2212
2184
|
nextOptions = _context11.sent;
|
|
2213
2185
|
if (!nextOptions) {
|
|
2214
|
-
_context11.next =
|
|
2186
|
+
_context11.next = 32;
|
|
2215
2187
|
break;
|
|
2216
2188
|
}
|
|
2217
2189
|
minActivities = nextOptions.minActivities || minActivities;
|
|
@@ -2224,13 +2196,13 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2224
2196
|
newestPublishedDate: currentNewestPublishedDate,
|
|
2225
2197
|
batchSize: batchSize
|
|
2226
2198
|
});
|
|
2227
|
-
_context11.next =
|
|
2199
|
+
_context11.next = 33;
|
|
2228
2200
|
break;
|
|
2229
|
-
case
|
|
2201
|
+
case 32:
|
|
2230
2202
|
return _context11.abrupt("return", {
|
|
2231
2203
|
v: void 0
|
|
2232
2204
|
});
|
|
2233
|
-
case
|
|
2205
|
+
case 33:
|
|
2234
2206
|
case "end":
|
|
2235
2207
|
return _context11.stop();
|
|
2236
2208
|
}
|
|
@@ -2244,7 +2216,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2244
2216
|
return _context12.delegateYield(_loop(), "t0", 11);
|
|
2245
2217
|
case 11:
|
|
2246
2218
|
_ret = _context12.t0;
|
|
2247
|
-
if (!
|
|
2219
|
+
if (!_ret) {
|
|
2248
2220
|
_context12.next = 14;
|
|
2249
2221
|
break;
|
|
2250
2222
|
}
|
|
@@ -2341,7 +2313,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2341
2313
|
list = [];
|
|
2342
2314
|
} else {
|
|
2343
2315
|
list = res.body.items.slice(0);
|
|
2344
|
-
if ((0,
|
|
2316
|
+
if ((0, _lodash.last)(list).published < list[0].published) {
|
|
2345
2317
|
list.reverse();
|
|
2346
2318
|
}
|
|
2347
2319
|
}
|
|
@@ -2388,7 +2360,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2388
2360
|
result = _step6.value;
|
|
2389
2361
|
if (result.body && result.body.items && result.body.items.length) {
|
|
2390
2362
|
items = result.body.items;
|
|
2391
|
-
if ((0,
|
|
2363
|
+
if ((0, _lodash.last)(items).published < items[0].published) {
|
|
2392
2364
|
items.reverse();
|
|
2393
2365
|
}
|
|
2394
2366
|
list = list.concat(items);
|
|
@@ -2421,7 +2393,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2421
2393
|
*/
|
|
2422
2394
|
_maybeCreateOneOnOneThenPost: function _maybeCreateOneOnOneThenPost(params, options) {
|
|
2423
2395
|
var _this31 = this;
|
|
2424
|
-
return this.get((0,
|
|
2396
|
+
return this.get((0, _lodash.defaults)({
|
|
2425
2397
|
// the use of uniq in Conversation#create guarantees participant[1] will
|
|
2426
2398
|
// always be the other user
|
|
2427
2399
|
user: params.participants[1]
|
|
@@ -2461,7 +2433,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2461
2433
|
kmsMessage: {
|
|
2462
2434
|
method: 'create',
|
|
2463
2435
|
uri: '/resources',
|
|
2464
|
-
userIds: (0,
|
|
2436
|
+
userIds: (0, _lodash.cloneDeep)(params.participants),
|
|
2465
2437
|
keyUris: []
|
|
2466
2438
|
}
|
|
2467
2439
|
};
|
|
@@ -2519,7 +2491,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2519
2491
|
});
|
|
2520
2492
|
}));
|
|
2521
2493
|
},
|
|
2522
|
-
version: "3.0.0-
|
|
2494
|
+
version: "3.0.0-next.10"
|
|
2523
2495
|
});
|
|
2524
2496
|
['favorite', 'hide', 'lock', 'mute', 'unfavorite', 'unhide', 'unlock', 'unmute'].forEach(function (verb) {
|
|
2525
2497
|
Conversation.prototype[verb] = function submitSimpleActivity(conversation, activity) {
|
|
@@ -2542,10 +2514,10 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2542
2514
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
2543
2515
|
url: this.getConvoUrl(conversation)
|
|
2544
2516
|
});
|
|
2545
|
-
return _promise.default.all([convoWithUrl, moderator ? this.webex.internal.user.asUUID(moderator) : this.webex.internal.device.userId]).then(function (
|
|
2546
|
-
var
|
|
2547
|
-
c =
|
|
2548
|
-
userId =
|
|
2517
|
+
return _promise.default.all([convoWithUrl, moderator ? this.webex.internal.user.asUUID(moderator) : this.webex.internal.device.userId]).then(function (_ref7) {
|
|
2518
|
+
var _ref8 = (0, _slicedToArray2.default)(_ref7, 2),
|
|
2519
|
+
c = _ref8[0],
|
|
2520
|
+
userId = _ref8[1];
|
|
2549
2521
|
return _this35.prepare(activity, {
|
|
2550
2522
|
verb: verb,
|
|
2551
2523
|
target: _this35.prepareConversation(c),
|
|
@@ -2571,7 +2543,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2571
2543
|
var verb = fnName.startsWith('set') ? 'set' : 'unset';
|
|
2572
2544
|
Conversation.prototype[fnName] = function submitSpacePropertyActivity(conversation, tag, activity) {
|
|
2573
2545
|
var _this36 = this;
|
|
2574
|
-
if (!(0,
|
|
2546
|
+
if (!(0, _lodash.isString)(tag)) {
|
|
2575
2547
|
return _promise.default.reject(new Error('`tag` must be a string'));
|
|
2576
2548
|
}
|
|
2577
2549
|
var convoWithUrl = _objectSpread(_objectSpread({}, conversation), {}, {
|
|
@@ -2592,7 +2564,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2592
2564
|
['tag', 'untag'].forEach(function (verb) {
|
|
2593
2565
|
Conversation.prototype[verb] = function submitObjectActivity(conversation, object, activity) {
|
|
2594
2566
|
var _this37 = this;
|
|
2595
|
-
if (!(0,
|
|
2567
|
+
if (!(0, _lodash.isObject)(object)) {
|
|
2596
2568
|
return _promise.default.reject(new Error('`object` must be an object'));
|
|
2597
2569
|
}
|
|
2598
2570
|
var c = this.prepareConversation(_objectSpread(_objectSpread({}, conversation), {}, {
|
|
@@ -2607,6 +2579,5 @@ var Conversation = _webexCore.WebexPlugin.extend({
|
|
|
2607
2579
|
});
|
|
2608
2580
|
};
|
|
2609
2581
|
});
|
|
2610
|
-
var _default = Conversation;
|
|
2611
|
-
exports.default = _default;
|
|
2582
|
+
var _default = exports.default = Conversation;
|
|
2612
2583
|
//# sourceMappingURL=conversation.js.map
|