@webex/internal-plugin-conversation 3.9.0-webinar5k.1 → 3.10.0-multi-llms.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.
@@ -2524,7 +2524,7 @@ var Conversation = _webexCore.WebexPlugin.extend({
2524
2524
  });
2525
2525
  }));
2526
2526
  },
2527
- version: "3.9.0-webinar5k.1"
2527
+ version: "3.10.0-multi-llms.1"
2528
2528
  });
2529
2529
  ['favorite', 'hide', 'lock', 'mute', 'unfavorite', 'unhide', 'unlock', 'unmute'].forEach(function (verb) {
2530
2530
  Conversation.prototype[verb] = function submitSimpleActivity(conversation, activity) {
@@ -75,14 +75,14 @@ var transforms = exports.transforms = (0, _toArray.default)('outbound', {
75
75
  });
76
76
  },
77
77
  encryptActivity: function encryptActivity(ctx, key, activity) {
78
- var _activity$target, _activity$object, _activity$object2;
78
+ var _activity$target, _activity$object, _activity$object2, _activity$object3;
79
79
  // Meeting Container policy update requests do not need to be encrypted.
80
- if ((activity === null || activity === void 0 ? void 0 : (_activity$target = activity.target) === null || _activity$target === void 0 ? void 0 : _activity$target.objectType) === 'meetingContainer' && (activity === null || activity === void 0 ? void 0 : (_activity$object = activity.object) === null || _activity$object === void 0 ? void 0 : _activity$object.objectType) === 'policies') {
80
+ if ((activity === null || activity === void 0 ? void 0 : (_activity$target = activity.target) === null || _activity$target === void 0 ? void 0 : _activity$target.objectType) === 'meetingContainer' && ((activity === null || activity === void 0 ? void 0 : (_activity$object = activity.object) === null || _activity$object === void 0 ? void 0 : _activity$object.objectType) === 'policies' || (activity === null || activity === void 0 ? void 0 : (_activity$object2 = activity.object) === null || _activity$object2 === void 0 ? void 0 : _activity$object2.objectType) === 'inMeetingSummary')) {
81
81
  return _promise.default.resolve();
82
82
  }
83
83
 
84
84
  // Activity is already encrypted
85
- if (activity.encryptionKeyUrl || ((_activity$object2 = activity.object) === null || _activity$object2 === void 0 ? void 0 : _activity$object2.created) === 'True') {
85
+ if (activity.encryptionKeyUrl || ((_activity$object3 = activity.object) === null || _activity$object3 === void 0 ? void 0 : _activity$object3.created) === 'True') {
86
86
  return _promise.default.resolve();
87
87
  }
88
88
  return ctx.transform("encrypt".concat((0, _lodash.capitalize)(activity.verb), "Activity"), key, activity).then(function () {
@@ -1 +1 @@
1
- {"version":3,"names":["_lodash","require","_toArray","_interopRequireDefault","KEY","_symbol","default","encryptTextProp","curry","name","ctx","key","object","transform","encryptJsonProp","transforms","exports","toArray","encryptObject","undefined","_promise","resolve","objectType","concat","capitalize","encryptReaction2","reaction2","encryptConversation","conversation","webex","internal","encryption","kms","createUnboundKeys","count","then","keys","k","isArray","has","kmsMessage","keyUris","includes","uri","push","all","activities","items","reduce","p","activity","encryptionKeyUrl","defaultActivityEncryptionKeyUrl","encryptActivity","_activity$target","_activity$object","_activity$object2","target","created","verb","encryptVerbActivity","maybeEncryptTarget","conversationUrl","url","reject","Error","get","updateKey","updateKeyActivity","resource","kmsResourceObjectUrl","logger","warn","prepareActivityKmsMessage","kro","forEach","replace","keyUrl","_deleteProperty","encryptVerbActivityWithKey","direction","fn","encryptAddActivity","encryptAssignActivity","alias","encryptCreateActivity","encryptPostActivity","encryptShareActivity","encryptCardactionActivity","encryptUpdateActivity","encryptUpdateKeyActivity","encryptComment","comment","encryptContent","content","promises","files","map","item","encryptFile","file","image","scr","encryptSubmit","submit","encryptImageURI","imageURI","encryptPropContent","encryptPropDisplayName","encryptPropInputs","encryptPropLocation","encryptPropScr","encryptScr","encryptText","_stringify","ciphertext"],"sources":["encryption-transforms.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {capitalize, curry, get, has, isArray} from 'lodash';\n\nimport toArray from './to-array';\n\nconst KEY = Symbol('KEY');\n\nconst encryptTextProp = curry((name, ctx, key, object) =>\n ctx.transform('encryptTextProp', name, key, object)\n);\n\nconst encryptJsonProp = curry((name, ctx, key, object) =>\n ctx.transform('encryptJsonProp', name, key, object)\n);\n\n// eslint-disable-next-line import/prefer-default-export\nexport const transforms = toArray('outbound', {\n encryptObject(ctx, key, object) {\n if (!object) {\n object = key;\n key = undefined;\n }\n\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n if (key === false) {\n return Promise.resolve();\n }\n\n return ctx.transform(`encrypt${capitalize(object.objectType)}`, key, object);\n },\n\n encryptReaction2(ctx, key, reaction2) {\n return ctx.transform('encryptPropDisplayName', key, reaction2);\n },\n\n encryptConversation(ctx, key, conversation) {\n if (key === false) {\n return Promise.resolve();\n }\n\n return Promise.resolve(\n key || ctx.webex.internal.encryption.kms.createUnboundKeys({count: 1})\n ).then((keys) => {\n const k = isArray(keys) ? keys[0] : keys;\n\n if (\n has(conversation, 'kmsMessage.keyUris') &&\n !conversation.kmsMessage.keyUris.includes(k.uri)\n ) {\n conversation.kmsMessage.keyUris.push(k.uri);\n }\n\n return Promise.all([\n // too many implicit returns on the same line is difficult to interpret\n // eslint-disable-next-line arrow-body-style\n has(conversation, 'activities.items') &&\n conversation.activities.items.reduce((p, activity) => {\n // eslint-disable-next-line max-nested-callbacks\n return p.then(() => ctx.transform('encryptObject', k, activity));\n }, Promise.resolve()),\n ctx.transform('encryptPropDisplayName', k, conversation),\n ]).then(() => {\n conversation.encryptionKeyUrl = k.uri || k;\n // we only want to set the defaultActivityEncryptionKeyUrl if we've\n // bound a new key\n if (!key) {\n conversation.defaultActivityEncryptionKeyUrl =\n conversation.defaultActivityEncryptionKeyUrl || k.uri || k;\n }\n });\n });\n },\n\n encryptActivity(ctx, key, activity) {\n // Meeting Container policy update requests do not need to be encrypted.\n if (\n activity?.target?.objectType === 'meetingContainer' &&\n activity?.object?.objectType === 'policies'\n ) {\n return Promise.resolve();\n }\n\n // Activity is already encrypted\n if (activity.encryptionKeyUrl || activity.object?.created === 'True') {\n return Promise.resolve();\n }\n\n return ctx.transform(`encrypt${capitalize(activity.verb)}Activity`, key, activity).then(() => {\n key = key || activity[KEY];\n\n return ctx.transform('prepareActivityKmsMessage', key, activity);\n });\n },\n\n encryptVerbActivity(ctx, key, activity) {\n return ctx\n .transform('maybeEncryptTarget', key, activity)\n .then(() => {\n key = key || activity[KEY];\n })\n .then(() => ctx.transform('encryptObject', key, activity.object));\n },\n\n maybeEncryptTarget(ctx, key, activity) {\n // This isn't quite right; if we just go by key, we have no guarantee that\n // we have a proper KRO available for add activities\n if (key) {\n return Promise.resolve();\n }\n\n if (\n has(activity, 'target.defaultActivityEncryptionKeyUrl') &&\n activity.target.defaultActivityEncryptionKeyUrl &&\n has(activity, 'target.kmsResourceObjectUrl')\n ) {\n activity[KEY] = key || activity.target.defaultActivityEncryptionKeyUrl;\n\n return Promise.resolve();\n }\n\n const conversationUrl = activity.target && activity.target.url;\n\n if (!conversationUrl) {\n return Promise.reject(\n new Error(\n \"Cannot determine encryption key for activity's conversation; no key url or conversation url provided\"\n )\n );\n }\n\n return ctx.webex.internal.conversation.get({url: conversationUrl}).then((conversation) => {\n if (!conversation.defaultActivityEncryptionKeyUrl) {\n return ctx.webex.internal.conversation.updateKey(conversation).then((updateKeyActivity) => {\n if (updateKeyActivity.kmsMessage.resource) {\n activity.target.kmsResourceObjectUrl = updateKeyActivity.kmsMessage.resource.uri;\n }\n activity[KEY] = activity.target.defaultActivityEncryptionKeyUrl =\n updateKeyActivity.object.defaultActivityEncryptionKeyUrl;\n });\n }\n\n if (!activity.target.defaultActivityEncryptionKeyUrl) {\n ctx.webex.logger.warn(\n 'plugin-conversation: downloaded conversation to determine its defaultActivityEncryptionKeyUrl; make sure to pass all encryption related properties when calling Webex.conversation methods.'\n );\n }\n\n if (!activity.target.kmsResourceObjectUrl) {\n ctx.webex.logger.warn(\n 'plugin-conversation: downloaded conversation to determine its kmsResourceObjectUrl; make sure to pass all encryption related properties when calling Webex.conversation methods.'\n );\n }\n\n activity[KEY] = activity.target.defaultActivityEncryptionKeyUrl =\n conversation.defaultActivityEncryptionKeyUrl;\n activity.target.kmsResourceObjectUrl = conversation.kmsResourceObjectUrl;\n\n return Promise.resolve();\n });\n },\n\n prepareActivityKmsMessage(ctx, key, activity) {\n if (activity.kmsMessage) {\n if (!key && activity.verb === 'delete') {\n key = get(activity, 'target.defaultActivityEncryptionKeyUrl');\n }\n\n if (\n !key &&\n activity.verb === 'updateKey' &&\n has(activity, 'object.defaultActivityEncryptionKeyUrl')\n ) {\n key = get(activity, 'object.defaultActivityEncryptionKeyUrl');\n }\n\n if (\n !key &&\n activity.verb === 'leave' &&\n has(activity, 'target.defaultActivityEncryptionKeyUrl')\n ) {\n key = get(activity, 'target.defaultActivityEncryptionKeyUrl');\n }\n\n if (key) {\n const kro = activity.target.kmsResourceObjectUrl;\n\n ['uri', 'resourceUri'].forEach((k) => {\n if (activity.kmsMessage[k] && !kro && activity.kmsMessage[k].includes('<KRO>')) {\n throw new Error('encrypter: cannot determine kro');\n }\n\n if (activity.kmsMessage[k]) {\n activity.kmsMessage[k] = activity.kmsMessage[k].replace('<KRO>', kro);\n // key may be a key or a key url\n activity.kmsMessage[k] = activity.kmsMessage[k].replace('<KEYURL>', key.keyUrl || key);\n }\n });\n }\n // If we made it this far and still don't have an encryption key, assume\n // this is a conversation that is not encrypted and we're performing an\n // action that should not encrypt it (e.g. `leave`)\n else {\n Reflect.deleteProperty(activity, 'kmsMessage');\n }\n }\n },\n\n encryptVerbActivityWithKey: {\n direction: 'outbound',\n fn(ctx, key, activity) {\n return ctx.transform('encryptVerbActivity', key, activity).then(() => {\n key = key || activity[KEY];\n activity.encryptionKeyUrl = key.uri || key;\n });\n },\n },\n\n encryptAddActivity: {\n direction: 'outbound',\n fn(ctx, key, activity) {\n if (has(activity, 'object.objectType') && activity.object.objectType === 'reaction2') {\n return ctx.transform('encryptVerbActivityWithKey', key, activity);\n }\n\n return ctx.transform('encryptVerbActivity', key, activity);\n },\n },\n\n encryptAssignActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptCreateActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivity',\n },\n\n encryptPostActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptShareActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptCardactionActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptUpdateActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptUpdateKeyActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivity',\n },\n\n encryptComment(ctx, key, comment) {\n return Promise.all([\n ctx.transform('encryptPropDisplayName', key, comment),\n ctx.transform('encryptPropContent', key, comment),\n ]);\n },\n\n encryptContent(ctx, key, content) {\n const promises = content.files.items.map((item) => ctx.transform('encryptObject', key, item));\n\n promises.push(ctx.transform('encryptPropContent', key, content));\n promises.push(ctx.transform('encryptPropDisplayName', key, content));\n\n return Promise.all(promises);\n },\n\n encryptFile(ctx, key, file) {\n if (file.image && !file.image.scr) {\n return Promise.reject(new Error('`file.image` must have an `scr`'));\n }\n\n return Promise.all([\n ctx.transform('encryptPropScr', key, file),\n ctx.transform('encryptPropDisplayName', key, file),\n ctx.transform('encryptPropContent', key, file),\n file.image && ctx.transform('encryptPropScr', key, file.image),\n ]);\n },\n\n encryptSubmit(ctx, key, submit) {\n return ctx.transform('encryptPropInputs', key, submit);\n },\n\n // TODO is this used for anything other than the now-removed stickies service?\n encryptImageURI(ctx, key, imageURI) {\n return ctx.transform('encryptPropLocation', key, imageURI);\n },\n\n encryptPropContent: encryptTextProp('content'),\n\n encryptPropDisplayName: encryptTextProp('displayName'),\n\n encryptPropInputs: encryptJsonProp('inputs'),\n\n encryptPropLocation: encryptTextProp('location'),\n\n encryptPropScr(ctx, key, object) {\n if (!object.scr) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption.encryptScr(key, object.scr).then((scr) => {\n object.scr = scr;\n });\n },\n\n encryptJsonProp(ctx, name, key, object) {\n if (!object[name]) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption\n .encryptText(key.uri || key, JSON.stringify(object[name]))\n .then((ciphertext) => {\n object[name] = ciphertext;\n });\n },\n\n encryptTextProp(ctx, name, key, object) {\n if (!object[name]) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption\n .encryptText(key.uri || key, object[name])\n .then((ciphertext) => {\n object[name] = ciphertext;\n });\n },\n});\n"],"mappings":"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"}
1
+ {"version":3,"names":["_lodash","require","_toArray","_interopRequireDefault","KEY","_symbol","default","encryptTextProp","curry","name","ctx","key","object","transform","encryptJsonProp","transforms","exports","toArray","encryptObject","undefined","_promise","resolve","objectType","concat","capitalize","encryptReaction2","reaction2","encryptConversation","conversation","webex","internal","encryption","kms","createUnboundKeys","count","then","keys","k","isArray","has","kmsMessage","keyUris","includes","uri","push","all","activities","items","reduce","p","activity","encryptionKeyUrl","defaultActivityEncryptionKeyUrl","encryptActivity","_activity$target","_activity$object","_activity$object2","_activity$object3","target","created","verb","encryptVerbActivity","maybeEncryptTarget","conversationUrl","url","reject","Error","get","updateKey","updateKeyActivity","resource","kmsResourceObjectUrl","logger","warn","prepareActivityKmsMessage","kro","forEach","replace","keyUrl","_deleteProperty","encryptVerbActivityWithKey","direction","fn","encryptAddActivity","encryptAssignActivity","alias","encryptCreateActivity","encryptPostActivity","encryptShareActivity","encryptCardactionActivity","encryptUpdateActivity","encryptUpdateKeyActivity","encryptComment","comment","encryptContent","content","promises","files","map","item","encryptFile","file","image","scr","encryptSubmit","submit","encryptImageURI","imageURI","encryptPropContent","encryptPropDisplayName","encryptPropInputs","encryptPropLocation","encryptPropScr","encryptScr","encryptText","_stringify","ciphertext"],"sources":["encryption-transforms.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {capitalize, curry, get, has, isArray} from 'lodash';\n\nimport toArray from './to-array';\n\nconst KEY = Symbol('KEY');\n\nconst encryptTextProp = curry((name, ctx, key, object) =>\n ctx.transform('encryptTextProp', name, key, object)\n);\n\nconst encryptJsonProp = curry((name, ctx, key, object) =>\n ctx.transform('encryptJsonProp', name, key, object)\n);\n\n// eslint-disable-next-line import/prefer-default-export\nexport const transforms = toArray('outbound', {\n encryptObject(ctx, key, object) {\n if (!object) {\n object = key;\n key = undefined;\n }\n\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n if (key === false) {\n return Promise.resolve();\n }\n\n return ctx.transform(`encrypt${capitalize(object.objectType)}`, key, object);\n },\n\n encryptReaction2(ctx, key, reaction2) {\n return ctx.transform('encryptPropDisplayName', key, reaction2);\n },\n\n encryptConversation(ctx, key, conversation) {\n if (key === false) {\n return Promise.resolve();\n }\n\n return Promise.resolve(\n key || ctx.webex.internal.encryption.kms.createUnboundKeys({count: 1})\n ).then((keys) => {\n const k = isArray(keys) ? keys[0] : keys;\n\n if (\n has(conversation, 'kmsMessage.keyUris') &&\n !conversation.kmsMessage.keyUris.includes(k.uri)\n ) {\n conversation.kmsMessage.keyUris.push(k.uri);\n }\n\n return Promise.all([\n // too many implicit returns on the same line is difficult to interpret\n // eslint-disable-next-line arrow-body-style\n has(conversation, 'activities.items') &&\n conversation.activities.items.reduce((p, activity) => {\n // eslint-disable-next-line max-nested-callbacks\n return p.then(() => ctx.transform('encryptObject', k, activity));\n }, Promise.resolve()),\n ctx.transform('encryptPropDisplayName', k, conversation),\n ]).then(() => {\n conversation.encryptionKeyUrl = k.uri || k;\n // we only want to set the defaultActivityEncryptionKeyUrl if we've\n // bound a new key\n if (!key) {\n conversation.defaultActivityEncryptionKeyUrl =\n conversation.defaultActivityEncryptionKeyUrl || k.uri || k;\n }\n });\n });\n },\n\n encryptActivity(ctx, key, activity) {\n // Meeting Container policy update requests do not need to be encrypted.\n if (\n activity?.target?.objectType === 'meetingContainer' &&\n (activity?.object?.objectType === 'policies' ||\n activity?.object?.objectType === 'inMeetingSummary')\n ) {\n return Promise.resolve();\n }\n\n // Activity is already encrypted\n if (activity.encryptionKeyUrl || activity.object?.created === 'True') {\n return Promise.resolve();\n }\n\n return ctx.transform(`encrypt${capitalize(activity.verb)}Activity`, key, activity).then(() => {\n key = key || activity[KEY];\n\n return ctx.transform('prepareActivityKmsMessage', key, activity);\n });\n },\n\n encryptVerbActivity(ctx, key, activity) {\n return ctx\n .transform('maybeEncryptTarget', key, activity)\n .then(() => {\n key = key || activity[KEY];\n })\n .then(() => ctx.transform('encryptObject', key, activity.object));\n },\n\n maybeEncryptTarget(ctx, key, activity) {\n // This isn't quite right; if we just go by key, we have no guarantee that\n // we have a proper KRO available for add activities\n if (key) {\n return Promise.resolve();\n }\n\n if (\n has(activity, 'target.defaultActivityEncryptionKeyUrl') &&\n activity.target.defaultActivityEncryptionKeyUrl &&\n has(activity, 'target.kmsResourceObjectUrl')\n ) {\n activity[KEY] = key || activity.target.defaultActivityEncryptionKeyUrl;\n\n return Promise.resolve();\n }\n\n const conversationUrl = activity.target && activity.target.url;\n\n if (!conversationUrl) {\n return Promise.reject(\n new Error(\n \"Cannot determine encryption key for activity's conversation; no key url or conversation url provided\"\n )\n );\n }\n\n return ctx.webex.internal.conversation.get({url: conversationUrl}).then((conversation) => {\n if (!conversation.defaultActivityEncryptionKeyUrl) {\n return ctx.webex.internal.conversation.updateKey(conversation).then((updateKeyActivity) => {\n if (updateKeyActivity.kmsMessage.resource) {\n activity.target.kmsResourceObjectUrl = updateKeyActivity.kmsMessage.resource.uri;\n }\n activity[KEY] = activity.target.defaultActivityEncryptionKeyUrl =\n updateKeyActivity.object.defaultActivityEncryptionKeyUrl;\n });\n }\n\n if (!activity.target.defaultActivityEncryptionKeyUrl) {\n ctx.webex.logger.warn(\n 'plugin-conversation: downloaded conversation to determine its defaultActivityEncryptionKeyUrl; make sure to pass all encryption related properties when calling Webex.conversation methods.'\n );\n }\n\n if (!activity.target.kmsResourceObjectUrl) {\n ctx.webex.logger.warn(\n 'plugin-conversation: downloaded conversation to determine its kmsResourceObjectUrl; make sure to pass all encryption related properties when calling Webex.conversation methods.'\n );\n }\n\n activity[KEY] = activity.target.defaultActivityEncryptionKeyUrl =\n conversation.defaultActivityEncryptionKeyUrl;\n activity.target.kmsResourceObjectUrl = conversation.kmsResourceObjectUrl;\n\n return Promise.resolve();\n });\n },\n\n prepareActivityKmsMessage(ctx, key, activity) {\n if (activity.kmsMessage) {\n if (!key && activity.verb === 'delete') {\n key = get(activity, 'target.defaultActivityEncryptionKeyUrl');\n }\n\n if (\n !key &&\n activity.verb === 'updateKey' &&\n has(activity, 'object.defaultActivityEncryptionKeyUrl')\n ) {\n key = get(activity, 'object.defaultActivityEncryptionKeyUrl');\n }\n\n if (\n !key &&\n activity.verb === 'leave' &&\n has(activity, 'target.defaultActivityEncryptionKeyUrl')\n ) {\n key = get(activity, 'target.defaultActivityEncryptionKeyUrl');\n }\n\n if (key) {\n const kro = activity.target.kmsResourceObjectUrl;\n\n ['uri', 'resourceUri'].forEach((k) => {\n if (activity.kmsMessage[k] && !kro && activity.kmsMessage[k].includes('<KRO>')) {\n throw new Error('encrypter: cannot determine kro');\n }\n\n if (activity.kmsMessage[k]) {\n activity.kmsMessage[k] = activity.kmsMessage[k].replace('<KRO>', kro);\n // key may be a key or a key url\n activity.kmsMessage[k] = activity.kmsMessage[k].replace('<KEYURL>', key.keyUrl || key);\n }\n });\n }\n // If we made it this far and still don't have an encryption key, assume\n // this is a conversation that is not encrypted and we're performing an\n // action that should not encrypt it (e.g. `leave`)\n else {\n Reflect.deleteProperty(activity, 'kmsMessage');\n }\n }\n },\n\n encryptVerbActivityWithKey: {\n direction: 'outbound',\n fn(ctx, key, activity) {\n return ctx.transform('encryptVerbActivity', key, activity).then(() => {\n key = key || activity[KEY];\n activity.encryptionKeyUrl = key.uri || key;\n });\n },\n },\n\n encryptAddActivity: {\n direction: 'outbound',\n fn(ctx, key, activity) {\n if (has(activity, 'object.objectType') && activity.object.objectType === 'reaction2') {\n return ctx.transform('encryptVerbActivityWithKey', key, activity);\n }\n\n return ctx.transform('encryptVerbActivity', key, activity);\n },\n },\n\n encryptAssignActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptCreateActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivity',\n },\n\n encryptPostActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptShareActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptCardactionActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptUpdateActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivityWithKey',\n },\n\n encryptUpdateKeyActivity: {\n direction: 'outbound',\n alias: 'encryptVerbActivity',\n },\n\n encryptComment(ctx, key, comment) {\n return Promise.all([\n ctx.transform('encryptPropDisplayName', key, comment),\n ctx.transform('encryptPropContent', key, comment),\n ]);\n },\n\n encryptContent(ctx, key, content) {\n const promises = content.files.items.map((item) => ctx.transform('encryptObject', key, item));\n\n promises.push(ctx.transform('encryptPropContent', key, content));\n promises.push(ctx.transform('encryptPropDisplayName', key, content));\n\n return Promise.all(promises);\n },\n\n encryptFile(ctx, key, file) {\n if (file.image && !file.image.scr) {\n return Promise.reject(new Error('`file.image` must have an `scr`'));\n }\n\n return Promise.all([\n ctx.transform('encryptPropScr', key, file),\n ctx.transform('encryptPropDisplayName', key, file),\n ctx.transform('encryptPropContent', key, file),\n file.image && ctx.transform('encryptPropScr', key, file.image),\n ]);\n },\n\n encryptSubmit(ctx, key, submit) {\n return ctx.transform('encryptPropInputs', key, submit);\n },\n\n // TODO is this used for anything other than the now-removed stickies service?\n encryptImageURI(ctx, key, imageURI) {\n return ctx.transform('encryptPropLocation', key, imageURI);\n },\n\n encryptPropContent: encryptTextProp('content'),\n\n encryptPropDisplayName: encryptTextProp('displayName'),\n\n encryptPropInputs: encryptJsonProp('inputs'),\n\n encryptPropLocation: encryptTextProp('location'),\n\n encryptPropScr(ctx, key, object) {\n if (!object.scr) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption.encryptScr(key, object.scr).then((scr) => {\n object.scr = scr;\n });\n },\n\n encryptJsonProp(ctx, name, key, object) {\n if (!object[name]) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption\n .encryptText(key.uri || key, JSON.stringify(object[name]))\n .then((ciphertext) => {\n object[name] = ciphertext;\n });\n },\n\n encryptTextProp(ctx, name, key, object) {\n if (!object[name]) {\n return Promise.resolve();\n }\n\n return ctx.webex.internal.encryption\n .encryptText(key.uri || key, object[name])\n .then((ciphertext) => {\n object[name] = ciphertext;\n });\n },\n});\n"],"mappings":"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"}
@@ -391,7 +391,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
391
391
  return res.body.spaceUrl;
392
392
  });
393
393
  },
394
- version: "3.9.0-webinar5k.1"
394
+ version: "3.10.0-multi-llms.1"
395
395
  });
396
396
 
397
397
  /**
package/package.json CHANGED
@@ -10,7 +10,7 @@
10
10
  "directory": "packages/@webex/internal-plugin-conversation"
11
11
  },
12
12
  "engines": {
13
- "node": ">=16"
13
+ "node": ">=18"
14
14
  },
15
15
  "browserify": {
16
16
  "transform": [
@@ -19,12 +19,12 @@
19
19
  ]
20
20
  },
21
21
  "dependencies": {
22
- "@webex/common": "3.9.0-webinar5k.1",
23
- "@webex/helper-html": "3.9.0-webinar5k.1",
24
- "@webex/helper-image": "3.9.0-webinar5k.1",
25
- "@webex/internal-plugin-encryption": "3.9.0-webinar5k.1",
26
- "@webex/internal-plugin-user": "3.9.0-webinar5k.1",
27
- "@webex/webex-core": "3.9.0-webinar5k.1",
22
+ "@webex/common": "3.9.0-multi-llms.1",
23
+ "@webex/helper-html": "3.9.0-multi-llms.1",
24
+ "@webex/helper-image": "3.9.0-multi-llms.1",
25
+ "@webex/internal-plugin-encryption": "3.10.0-multi-llms.1",
26
+ "@webex/internal-plugin-user": "3.10.0-multi-llms.1",
27
+ "@webex/webex-core": "3.10.0-multi-llms.1",
28
28
  "crypto-js": "^4.1.1",
29
29
  "lodash": "^4.17.21",
30
30
  "node-scr": "^0.3.0",
@@ -36,13 +36,13 @@
36
36
  "@webex/eslint-config-legacy": "0.0.0",
37
37
  "@webex/jest-config-legacy": "0.0.0",
38
38
  "@webex/legacy-tools": "0.0.0",
39
- "@webex/test-helper-chai": "3.9.0-webinar5k.1",
40
- "@webex/test-helper-file": "3.9.0-webinar5k.1",
41
- "@webex/test-helper-make-local-url": "3.9.0-webinar5k.1",
42
- "@webex/test-helper-mocha": "3.9.0-webinar5k.1",
43
- "@webex/test-helper-mock-webex": "3.9.0-webinar5k.1",
44
- "@webex/test-helper-retry": "3.9.0-webinar5k.1",
45
- "@webex/test-helper-test-users": "3.9.0-webinar5k.1",
39
+ "@webex/test-helper-chai": "3.9.0-multi-llms.1",
40
+ "@webex/test-helper-file": "3.9.0-multi-llms.1",
41
+ "@webex/test-helper-make-local-url": "3.9.0-multi-llms.1",
42
+ "@webex/test-helper-mocha": "3.9.0-multi-llms.1",
43
+ "@webex/test-helper-mock-webex": "3.9.0-multi-llms.1",
44
+ "@webex/test-helper-retry": "3.9.0-multi-llms.1",
45
+ "@webex/test-helper-test-users": "3.9.0-multi-llms.1",
46
46
  "eslint": "^8.24.0",
47
47
  "prettier": "^2.7.1",
48
48
  "sinon": "^9.2.4"
@@ -56,5 +56,5 @@
56
56
  "test:style": "eslint ./src/**/*.*",
57
57
  "test:unit": "webex-legacy-tools test --unit --runner jest"
58
58
  },
59
- "version": "3.9.0-webinar5k.1"
59
+ "version": "3.10.0-multi-llms.1"
60
60
  }
@@ -85,7 +85,8 @@ export const transforms = toArray('outbound', {
85
85
  // Meeting Container policy update requests do not need to be encrypted.
86
86
  if (
87
87
  activity?.target?.objectType === 'meetingContainer' &&
88
- activity?.object?.objectType === 'policies'
88
+ (activity?.object?.objectType === 'policies' ||
89
+ activity?.object?.objectType === 'inMeetingSummary')
89
90
  ) {
90
91
  return Promise.resolve();
91
92
  }
@@ -59,6 +59,29 @@ describe('plugin-conversation', () => {
59
59
  assert.equal(results, undefined);
60
60
  });
61
61
 
62
+ it('does not transform when object type is "inMeetingSummary" for a "meetingContainer" activity', async () => {
63
+ const transform = transforms.find((t) => t.name === 'encryptActivity');
64
+ const transformStub = sinon.stub().resolves();
65
+
66
+ const ctx = {
67
+ transform: transformStub,
68
+ };
69
+ const key = null;
70
+ const activity = {
71
+ object: {
72
+ objectType: 'inMeetingSummary',
73
+ },
74
+ objectType: 'activity',
75
+ target: {
76
+ objectType: 'meetingContainer',
77
+ },
78
+ verb: 'update',
79
+ };
80
+
81
+ const results = await transform.fn(ctx, key, activity);
82
+ assert.equal(results, undefined);
83
+ });
84
+
62
85
  it('does transfom when created is not True', async () => {
63
86
  const transform = transforms.find((t) => t.name === 'encryptActivity');
64
87
  const transformStub = sinon.stub().resolves();