@webex/internal-plugin-conversation 2.59.1-next.0 → 2.59.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/activities.js +2 -2
- package/dist/activities.js.map +1 -1
- package/dist/activity-thread-ordering.js +4 -4
- package/dist/activity-thread-ordering.js.map +1 -1
- package/dist/conversation.js +49 -38
- package/dist/conversation.js.map +1 -1
- package/dist/decryption-transforms.js +6 -8
- package/dist/decryption-transforms.js.map +1 -1
- package/dist/encryption-transforms.js +19 -19
- package/dist/encryption-transforms.js.map +1 -1
- package/dist/index.js +13 -11
- package/dist/index.js.map +1 -1
- package/dist/share-activity.js +14 -11
- package/dist/share-activity.js.map +1 -1
- package/dist/to-array.js +3 -3
- package/dist/to-array.js.map +1 -1
- package/package.json +19 -20
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["require","_common","_helperHtml","_webexCore","_lodash","_conversation","_interopRequireDefault","_config","_encryptionTransforms","_decryptionTransforms","_shareActivity","_convoError","registerInternalPlugin","Conversation","payloadTransformer","predicates","name","test","ctx","optionsOrResponse","_promise","default","resolve","has","extract","body","direction","event","activity","response","multistatus","map","item","data","options","get","items","transforms","fn","array","all","transform","then","decrypt","_deleteProperty","object","objectType","concat","capitalize","content","_ctx$webex$config$con","webex","config","conversation","inboundProcessFunc","allowedInboundTags","allowedInboundStyles","htmlFilter","c","_ctx$webex$config$con2","outboundProcessFunc","allowedOutboundTags","allowedOutboundStyles","htmlFilterEscape","activities","participants","actor","target","threadActivity","childActivities","person","email","entryEmail","emailAddress","id","entryUUID","patterns","toLowerCase","roomProperties","isModerator","Boolean","uuid","reject","Error","internal","user","asUUID","decryptionTransforms","encryptionTransforms"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-encryption';\nimport '@webex/internal-plugin-user';\n\nimport {patterns} from '@webex/common';\nimport {filter as htmlFilter, filterEscape as htmlFilterEscape} from '@webex/helper-html';\nimport {registerInternalPlugin} from '@webex/webex-core';\nimport {capitalize, get, has} from 'lodash';\n\nimport Conversation from './conversation';\nimport config from './config';\nimport {transforms as encryptionTransforms} from './encryption-transforms';\nimport {transforms as decryptionTransforms} from './decryption-transforms';\n\nregisterInternalPlugin('conversation', Conversation, {\n payloadTransformer: {\n predicates: [\n {\n name: 'transformObject',\n test(ctx, optionsOrResponse) {\n return Promise.resolve(has(optionsOrResponse, 'body.objectType'));\n },\n extract(optionsOrResponse) {\n return Promise.resolve(optionsOrResponse.body);\n },\n },\n {\n name: 'transformObject',\n direction: 'inbound',\n test(ctx, event) {\n return Promise.resolve(has(event, 'activity'));\n },\n extract(event) {\n return Promise.resolve(event.activity);\n },\n },\n {\n name: 'transformObjectArray',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.multistatus'));\n },\n extract(response) {\n return Promise.resolve(\n response.body.multistatus.map((item) => item && item.data && item.data.activity)\n );\n },\n },\n {\n name: 'normalizeConversationListAndBindDecrypters',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].objectType')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(true);\n }\n\n return Promise.resolve(false);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n {\n name: 'transformObjectArray',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].objectType')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(false);\n }\n\n return Promise.resolve(true);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n {\n name: 'transformThreadArray',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].childType') || !has(options, 'body.items[0].actorId')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(false);\n }\n\n return Promise.resolve(true);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n ],\n transforms: [\n {\n name: 'normalizeConversationListAndBindDecrypters',\n fn(ctx, array) {\n return Promise.all(\n array.map((item) =>\n ctx.transform('normalizeObject', item).then(() => {\n item.decrypt = function decrypt() {\n Reflect.deleteProperty(item, 'decrypt');\n\n return ctx.transform('decryptObject', item);\n };\n\n return item;\n })\n )\n );\n },\n },\n {\n name: 'transformObjectArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformObject', item)));\n },\n },\n {\n name: 'transformThreadArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformThread', item)));\n },\n },\n {\n name: 'transformObject',\n direction: 'outbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('normalizeObject', object)\n .then(() => ctx.transform('encryptObject', object))\n .then(() => ctx.transform('encryptKmsMessage', object));\n },\n },\n {\n name: 'transformObject',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('decryptObject', object)\n .then(() => ctx.transform('normalizeObject', object));\n },\n },\n {\n name: 'normalizeObject',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return Promise.all([\n ctx.transform(`normalize${capitalize(object.objectType)}`, object),\n ctx.transform('normalizePropContent', object),\n ]);\n },\n },\n {\n name: 'transformThread',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('decryptThread', object)\n .then(() => ctx.transform('normalizeThread', object));\n },\n },\n {\n name: 'normalizePropContent',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object.content) {\n return Promise.resolve();\n }\n const {inboundProcessFunc, allowedInboundTags, allowedInboundStyles} =\n ctx.webex.config.conversation;\n\n return htmlFilter(\n inboundProcessFunc,\n allowedInboundTags || {},\n allowedInboundStyles,\n object.content\n ).then((c) => {\n object.content = c;\n });\n },\n },\n {\n name: 'normalizePropContent',\n direction: 'outbound',\n fn(ctx, object) {\n if (!object.content) {\n return Promise.resolve();\n }\n\n const {outboundProcessFunc, allowedOutboundTags, allowedOutboundStyles} =\n ctx.webex.config.conversation;\n\n return htmlFilterEscape(\n outboundProcessFunc,\n allowedOutboundTags || {},\n allowedOutboundStyles,\n object.content\n ).then((c) => {\n object.content = c;\n });\n },\n },\n {\n name: 'normalizeConversation',\n fn(ctx, conversation) {\n conversation.activities = conversation.activities || {};\n conversation.activities.items = conversation.activities.items || [];\n conversation.participants = conversation.participants || {};\n conversation.participants.items = conversation.participants.items || [];\n\n return Promise.all([\n Promise.all(\n conversation.activities.items.map((item) => ctx.transform('normalizeObject', item))\n ),\n Promise.all(\n conversation.participants.items.map((item) => ctx.transform('normalizeObject', item))\n ),\n ]);\n },\n },\n {\n name: 'normalizeActivity',\n fn(ctx, activity) {\n return Promise.all([\n ctx.transform('normalizeObject', activity.actor),\n ctx.transform('normalizeObject', activity.object),\n ctx.transform('normalizeObject', activity.target),\n ]);\n },\n },\n {\n name: 'normalizeThread',\n fn(ctx, threadActivity) {\n // childActivities are of type Activity\n return Promise.all(\n threadActivity.childActivities.map((item) => ctx.transform('normalizeObject', item))\n );\n },\n },\n {\n name: 'normalizePerson',\n // eslint-disable-next-line complexity\n fn(ctx, person) {\n const email = person.entryEmail || person.emailAddress || person.id;\n const id = person.entryUUID || person.id;\n\n if (patterns.email.test(email)) {\n person.entryEmail = person.emailAddress = email.toLowerCase();\n } else {\n Reflect.deleteProperty(person, 'entryEmail');\n Reflect.deleteProperty(person, 'emailAddress');\n }\n\n if (person.roomProperties) {\n person.roomProperties.isModerator = Boolean(person.roomProperties.isModerator);\n }\n\n if (patterns.uuid.test(id)) {\n person.entryUUID = person.id = id.toLowerCase();\n\n return Promise.resolve(person);\n }\n\n if (!email) {\n return Promise.reject(\n new Error('cannot determine id without an `emailAddress` or `entryUUID` property')\n );\n }\n\n return ctx.webex.internal.user.asUUID(email).then((uuid) => {\n person.entryUUID = person.id = uuid;\n\n return person;\n });\n },\n },\n ]\n .concat(decryptionTransforms)\n .concat(encryptionTransforms),\n },\n config,\n});\n\nexport {default} from './conversation';\nexport {default as ShareActivity} from './share-activity';\nexport {ConversationError, InvalidUserCreation} from './convo-error';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIAA,OAAA;AACAA,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,aAAA,GAAAC,sBAAA,CAAAN,OAAA;AACA,IAAAO,OAAA,GAAAD,sBAAA,CAAAN,OAAA;AACA,IAAAQ,qBAAA,GAAAR,OAAA;AACA,IAAAS,qBAAA,GAAAT,OAAA;AAsTA,IAAAU,cAAA,GAAAJ,sBAAA,CAAAN,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AAtUA;AACA;AACA;;AAeA,IAAAY,iCAAsB,EAAC,cAAc,EAAEC,qBAAY,EAAE;EACnDC,kBAAkB,EAAE;IAClBC,UAAU,EAAE,CACV;MACEC,IAAI,EAAE,iBAAiB;MACvBC,IAAI,WAAAA,KAACC,GAAG,EAAEC,iBAAiB,EAAE;QAC3B,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAAC,WAAG,EAACJ,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;MACnE,CAAC;MACDK,OAAO,WAAAA,QAACL,iBAAiB,EAAE;QACzB,OAAOC,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACH,iBAAiB,CAACM,IAAI,CAAC;MAChD;IACF,CAAC,EACD;MACET,IAAI,EAAE,iBAAiB;MACvBU,SAAS,EAAE,SAAS;MACpBT,IAAI,WAAAA,KAACC,GAAG,EAAES,KAAK,EAAE;QACf,OAAOP,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAAC,WAAG,EAACI,KAAK,EAAE,UAAU,CAAC,CAAC;MAChD,CAAC;MACDH,OAAO,WAAAA,QAACG,KAAK,EAAE;QACb,OAAOP,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACK,KAAK,CAACC,QAAQ,CAAC;MACxC;IACF,CAAC,EACD;MACEZ,IAAI,EAAE,sBAAsB;MAC5BU,SAAS,EAAE,SAAS;MACpBT,IAAI,WAAAA,KAACC,GAAG,EAAEW,QAAQ,EAAE;QAClB,OAAOT,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAAC,WAAG,EAACM,QAAQ,EAAE,kBAAkB,CAAC,CAAC;MAC3D,CAAC;MACDL,OAAO,WAAAA,QAACK,QAAQ,EAAE;QAChB,OAAOT,QAAA,CAAAC,OAAA,CAAQC,OAAO,CACpBO,QAAQ,CAACJ,IAAI,CAACK,WAAW,CAACC,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKA,IAAI,IAAIA,IAAI,CAACC,IAAI,IAAID,IAAI,CAACC,IAAI,CAACL,QAAQ;QAAA,EAAC,CACjF;MACH;IACF,CAAC,EACD;MACEZ,IAAI,EAAE,4CAA4C;MAClDU,SAAS,EAAE,SAAS;MACpBT,IAAI,WAAAA,KAACC,GAAG,EAAEgB,OAAO,EAAE;QACjB,IAAI,CAAC,IAAAX,WAAG,EAACW,OAAO,EAAE,0BAA0B,CAAC,EAAE;UAC7C,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;QAC/B;QAEA,IAAI,IAAAa,WAAG,EAACD,OAAO,EAAE,sBAAsB,CAAC,EAAE;UACxC,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAI,CAAC;QAC9B;QAEA,OAAOF,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;MAC/B,CAAC;MACDE,OAAO,WAAAA,QAACU,OAAO,EAAE;QACf,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACY,OAAO,CAACT,IAAI,CAACW,KAAK,CAAC;MAC5C;IACF,CAAC,EACD;MACEpB,IAAI,EAAE,sBAAsB;MAC5BU,SAAS,EAAE,SAAS;MACpBT,IAAI,WAAAA,KAACC,GAAG,EAAEgB,OAAO,EAAE;QACjB,IAAI,CAAC,IAAAX,WAAG,EAACW,OAAO,EAAE,0BAA0B,CAAC,EAAE;UAC7C,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;QAC/B;QAEA,IAAI,IAAAa,WAAG,EAACD,OAAO,EAAE,sBAAsB,CAAC,EAAE;UACxC,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;QAC/B;QAEA,OAAOF,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAI,CAAC;MAC9B,CAAC;MACDE,OAAO,WAAAA,QAACU,OAAO,EAAE;QACf,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACY,OAAO,CAACT,IAAI,CAACW,KAAK,CAAC;MAC5C;IACF,CAAC,EACD;MACEpB,IAAI,EAAE,sBAAsB;MAC5BU,SAAS,EAAE,SAAS;MACpBT,IAAI,WAAAA,KAACC,GAAG,EAAEgB,OAAO,EAAE;QACjB,IAAI,CAAC,IAAAX,WAAG,EAACW,OAAO,EAAE,yBAAyB,CAAC,IAAI,CAAC,IAAAX,WAAG,EAACW,OAAO,EAAE,uBAAuB,CAAC,EAAE;UACtF,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;QAC/B;QAEA,IAAI,IAAAa,WAAG,EAACD,OAAO,EAAE,sBAAsB,CAAC,EAAE;UACxC,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,KAAK,CAAC;QAC/B;QAEA,OAAOF,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAAC,IAAI,CAAC;MAC9B,CAAC;MACDE,OAAO,WAAAA,QAACU,OAAO,EAAE;QACf,OAAOd,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACY,OAAO,CAACT,IAAI,CAACW,KAAK,CAAC;MAC5C;IACF,CAAC,CACF;IACDC,UAAU,EAAE,CACV;MACErB,IAAI,EAAE,4CAA4C;MAClDsB,EAAE,WAAAA,GAACpB,GAAG,EAAEqB,KAAK,EAAE;QACb,OAAOnB,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAChBD,KAAK,CAACR,GAAG,CAAC,UAACC,IAAI;UAAA,OACbd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC,CAACU,IAAI,CAAC,YAAM;YAChDV,IAAI,CAACW,OAAO,GAAG,SAASA,OAAOA,CAAA,EAAG;cAChC,IAAAC,eAAA,CAAAvB,OAAA,EAAuBW,IAAI,EAAE,SAAS,CAAC;cAEvC,OAAOd,GAAG,CAACuB,SAAS,CAAC,eAAe,EAAET,IAAI,CAAC;YAC7C,CAAC;YAED,OAAOA,IAAI;UACb,CAAC,CAAC;QAAA,EACH,CACF;MACH;IACF,CAAC,EACD;MACEhB,IAAI,EAAE,sBAAsB;MAC5BsB,EAAE,WAAAA,GAACpB,GAAG,EAAEqB,KAAK,EAAE;QACb,OAAOnB,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAACD,KAAK,CAACR,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC;QAAA,EAAC,CAAC;MACjF;IACF,CAAC,EACD;MACEhB,IAAI,EAAE,sBAAsB;MAC5BsB,EAAE,WAAAA,GAACpB,GAAG,EAAEqB,KAAK,EAAE;QACb,OAAOnB,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAACD,KAAK,CAACR,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC;QAAA,EAAC,CAAC;MACjF;IACF,CAAC,EACD;MACEhB,IAAI,EAAE,iBAAiB;MACvBU,SAAS,EAAE,UAAU;MACrBY,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,EAAE;UACX,OAAOzB,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,IAAI,CAACuB,MAAM,CAACC,UAAU,EAAE;UACtB,OAAO1B,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,OAAOJ,GAAG,CACPuB,SAAS,CAAC,iBAAiB,EAAEI,MAAM,CAAC,CACpCH,IAAI,CAAC;UAAA,OAAMxB,GAAG,CAACuB,SAAS,CAAC,eAAe,EAAEI,MAAM,CAAC;QAAA,EAAC,CAClDH,IAAI,CAAC;UAAA,OAAMxB,GAAG,CAACuB,SAAS,CAAC,mBAAmB,EAAEI,MAAM,CAAC;QAAA,EAAC;MAC3D;IACF,CAAC,EACD;MACE7B,IAAI,EAAE,iBAAiB;MACvBU,SAAS,EAAE,SAAS;MACpBY,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,EAAE;UACX,OAAOzB,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,IAAI,CAACuB,MAAM,CAACC,UAAU,EAAE;UACtB,OAAO1B,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,OAAOJ,GAAG,CACPuB,SAAS,CAAC,eAAe,EAAEI,MAAM,CAAC,CAClCH,IAAI,CAAC;UAAA,OAAMxB,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAEI,MAAM,CAAC;QAAA,EAAC;MACzD;IACF,CAAC,EACD;MACE7B,IAAI,EAAE,iBAAiB;MACvBsB,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,EAAE;UACX,OAAOzB,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,IAAI,CAACuB,MAAM,CAACC,UAAU,EAAE;UACtB,OAAO1B,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,OAAOF,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAAC,CACjBtB,GAAG,CAACuB,SAAS,aAAAM,MAAA,CAAa,IAAAC,kBAAU,EAACH,MAAM,CAACC,UAAU,CAAC,GAAID,MAAM,CAAC,EAClE3B,GAAG,CAACuB,SAAS,CAAC,sBAAsB,EAAEI,MAAM,CAAC,CAC9C,CAAC;MACJ;IACF,CAAC,EACD;MACE7B,IAAI,EAAE,iBAAiB;MACvBU,SAAS,EAAE,SAAS;MACpBY,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,EAAE;UACX,OAAOzB,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,OAAOJ,GAAG,CACPuB,SAAS,CAAC,eAAe,EAAEI,MAAM,CAAC,CAClCH,IAAI,CAAC;UAAA,OAAMxB,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAEI,MAAM,CAAC;QAAA,EAAC;MACzD;IACF,CAAC,EACD;MACE7B,IAAI,EAAE,sBAAsB;MAC5BU,SAAS,EAAE,SAAS;MACpBY,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,CAACI,OAAO,EAAE;UACnB,OAAO7B,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QACA,IAAA4B,qBAAA,GACEhC,GAAG,CAACiC,KAAK,CAACC,MAAM,CAACC,YAAY;UADxBC,kBAAkB,GAAAJ,qBAAA,CAAlBI,kBAAkB;UAAEC,kBAAkB,GAAAL,qBAAA,CAAlBK,kBAAkB;UAAEC,oBAAoB,GAAAN,qBAAA,CAApBM,oBAAoB;QAGnE,OAAO,IAAAC,kBAAU,EACfH,kBAAkB,EAClBC,kBAAkB,IAAI,CAAC,CAAC,EACxBC,oBAAoB,EACpBX,MAAM,CAACI,OAAO,CACf,CAACP,IAAI,CAAC,UAACgB,CAAC,EAAK;UACZb,MAAM,CAACI,OAAO,GAAGS,CAAC;QACpB,CAAC,CAAC;MACJ;IACF,CAAC,EACD;MACE1C,IAAI,EAAE,sBAAsB;MAC5BU,SAAS,EAAE,UAAU;MACrBY,EAAE,WAAAA,GAACpB,GAAG,EAAE2B,MAAM,EAAE;QACd,IAAI,CAACA,MAAM,CAACI,OAAO,EAAE;UACnB,OAAO7B,QAAA,CAAAC,OAAA,CAAQC,OAAO,EAAE;QAC1B;QAEA,IAAAqC,sBAAA,GACEzC,GAAG,CAACiC,KAAK,CAACC,MAAM,CAACC,YAAY;UADxBO,mBAAmB,GAAAD,sBAAA,CAAnBC,mBAAmB;UAAEC,mBAAmB,GAAAF,sBAAA,CAAnBE,mBAAmB;UAAEC,qBAAqB,GAAAH,sBAAA,CAArBG,qBAAqB;QAGtE,OAAO,IAAAC,wBAAgB,EACrBH,mBAAmB,EACnBC,mBAAmB,IAAI,CAAC,CAAC,EACzBC,qBAAqB,EACrBjB,MAAM,CAACI,OAAO,CACf,CAACP,IAAI,CAAC,UAACgB,CAAC,EAAK;UACZb,MAAM,CAACI,OAAO,GAAGS,CAAC;QACpB,CAAC,CAAC;MACJ;IACF,CAAC,EACD;MACE1C,IAAI,EAAE,uBAAuB;MAC7BsB,EAAE,WAAAA,GAACpB,GAAG,EAAEmC,YAAY,EAAE;QACpBA,YAAY,CAACW,UAAU,GAAGX,YAAY,CAACW,UAAU,IAAI,CAAC,CAAC;QACvDX,YAAY,CAACW,UAAU,CAAC5B,KAAK,GAAGiB,YAAY,CAACW,UAAU,CAAC5B,KAAK,IAAI,EAAE;QACnEiB,YAAY,CAACY,YAAY,GAAGZ,YAAY,CAACY,YAAY,IAAI,CAAC,CAAC;QAC3DZ,YAAY,CAACY,YAAY,CAAC7B,KAAK,GAAGiB,YAAY,CAACY,YAAY,CAAC7B,KAAK,IAAI,EAAE;QAEvE,OAAOhB,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAAC,CACjBpB,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CACTa,YAAY,CAACW,UAAU,CAAC5B,KAAK,CAACL,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC;QAAA,EAAC,CACpF,EACDZ,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CACTa,YAAY,CAACY,YAAY,CAAC7B,KAAK,CAACL,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC;QAAA,EAAC,CACtF,CACF,CAAC;MACJ;IACF,CAAC,EACD;MACEhB,IAAI,EAAE,mBAAmB;MACzBsB,EAAE,WAAAA,GAACpB,GAAG,EAAEU,QAAQ,EAAE;QAChB,OAAOR,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAAC,CACjBtB,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAEb,QAAQ,CAACsC,KAAK,CAAC,EAChDhD,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAEb,QAAQ,CAACiB,MAAM,CAAC,EACjD3B,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAEb,QAAQ,CAACuC,MAAM,CAAC,CAClD,CAAC;MACJ;IACF,CAAC,EACD;MACEnD,IAAI,EAAE,iBAAiB;MACvBsB,EAAE,WAAAA,GAACpB,GAAG,EAAEkD,cAAc,EAAE;QACtB;QACA,OAAOhD,QAAA,CAAAC,OAAA,CAAQmB,GAAG,CAChB4B,cAAc,CAACC,eAAe,CAACtC,GAAG,CAAC,UAACC,IAAI;UAAA,OAAKd,GAAG,CAACuB,SAAS,CAAC,iBAAiB,EAAET,IAAI,CAAC;QAAA,EAAC,CACrF;MACH;IACF,CAAC,EACD;MACEhB,IAAI,EAAE,iBAAiB;MACvB;MACAsB,EAAE,WAAAA,GAACpB,GAAG,EAAEoD,MAAM,EAAE;QACd,IAAMC,KAAK,GAAGD,MAAM,CAACE,UAAU,IAAIF,MAAM,CAACG,YAAY,IAAIH,MAAM,CAACI,EAAE;QACnE,IAAMA,EAAE,GAAGJ,MAAM,CAACK,SAAS,IAAIL,MAAM,CAACI,EAAE;QAExC,IAAIE,gBAAQ,CAACL,KAAK,CAACtD,IAAI,CAACsD,KAAK,CAAC,EAAE;UAC9BD,MAAM,CAACE,UAAU,GAAGF,MAAM,CAACG,YAAY,GAAGF,KAAK,CAACM,WAAW,EAAE;QAC/D,CAAC,MAAM;UACL,IAAAjC,eAAA,CAAAvB,OAAA,EAAuBiD,MAAM,EAAE,YAAY,CAAC;UAC5C,IAAA1B,eAAA,CAAAvB,OAAA,EAAuBiD,MAAM,EAAE,cAAc,CAAC;QAChD;QAEA,IAAIA,MAAM,CAACQ,cAAc,EAAE;UACzBR,MAAM,CAACQ,cAAc,CAACC,WAAW,GAAGC,OAAO,CAACV,MAAM,CAACQ,cAAc,CAACC,WAAW,CAAC;QAChF;QAEA,IAAIH,gBAAQ,CAACK,IAAI,CAAChE,IAAI,CAACyD,EAAE,CAAC,EAAE;UAC1BJ,MAAM,CAACK,SAAS,GAAGL,MAAM,CAACI,EAAE,GAAGA,EAAE,CAACG,WAAW,EAAE;UAE/C,OAAOzD,QAAA,CAAAC,OAAA,CAAQC,OAAO,CAACgD,MAAM,CAAC;QAChC;QAEA,IAAI,CAACC,KAAK,EAAE;UACV,OAAOnD,QAAA,CAAAC,OAAA,CAAQ6D,MAAM,CACnB,IAAIC,KAAK,CAAC,uEAAuE,CAAC,CACnF;QACH;QAEA,OAAOjE,GAAG,CAACiC,KAAK,CAACiC,QAAQ,CAACC,IAAI,CAACC,MAAM,CAACf,KAAK,CAAC,CAAC7B,IAAI,CAAC,UAACuC,IAAI,EAAK;UAC1DX,MAAM,CAACK,SAAS,GAAGL,MAAM,CAACI,EAAE,GAAGO,IAAI;UAEnC,OAAOX,MAAM;QACf,CAAC,CAAC;MACJ;IACF,CAAC,CACF,CACEvB,MAAM,CAACwC,gCAAoB,CAAC,CAC5BxC,MAAM,CAACyC,gCAAoB;EAChC,CAAC;EACDpC,MAAM,EAANA;AACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"names":["require","_common","_helperHtml","_webexCore","_conversation","_interopRequireDefault","_config","_encryptionTransforms","_decryptionTransforms","_shareActivity","_convoError","registerInternalPlugin","Conversation","payloadTransformer","predicates","name","test","ctx","optionsOrResponse","_promise","default","resolve","_has2","extract","body","direction","event","activity","response","multistatus","map","item","data","options","_get2","items","transforms","fn","array","all","transform","then","decrypt","_deleteProperty","object","objectType","concat","_capitalize2","content","_ctx$webex$config$con","webex","config","conversation","inboundProcessFunc","allowedInboundTags","allowedInboundStyles","htmlFilter","c","_ctx$webex$config$con2","outboundProcessFunc","allowedOutboundTags","allowedOutboundStyles","htmlFilterEscape","activities","participants","actor","target","threadActivity","childActivities","person","email","entryEmail","emailAddress","id","entryUUID","patterns","toLowerCase","roomProperties","isModerator","Boolean","uuid","reject","Error","internal","user","asUUID","decryptionTransforms","encryptionTransforms"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-encryption';\nimport '@webex/internal-plugin-user';\n\nimport {patterns} from '@webex/common';\nimport {filter as htmlFilter, filterEscape as htmlFilterEscape} from '@webex/helper-html';\nimport {registerInternalPlugin} from '@webex/webex-core';\nimport {capitalize, get, has} from 'lodash';\n\nimport Conversation from './conversation';\nimport config from './config';\nimport {transforms as encryptionTransforms} from './encryption-transforms';\nimport {transforms as decryptionTransforms} from './decryption-transforms';\n\nregisterInternalPlugin('conversation', Conversation, {\n payloadTransformer: {\n predicates: [\n {\n name: 'transformObject',\n test(ctx, optionsOrResponse) {\n return Promise.resolve(has(optionsOrResponse, 'body.objectType'));\n },\n extract(optionsOrResponse) {\n return Promise.resolve(optionsOrResponse.body);\n },\n },\n {\n name: 'transformObject',\n direction: 'inbound',\n test(ctx, event) {\n return Promise.resolve(has(event, 'activity'));\n },\n extract(event) {\n return Promise.resolve(event.activity);\n },\n },\n {\n name: 'transformObjectArray',\n direction: 'inbound',\n test(ctx, response) {\n return Promise.resolve(has(response, 'body.multistatus'));\n },\n extract(response) {\n return Promise.resolve(\n response.body.multistatus.map((item) => item && item.data && item.data.activity)\n );\n },\n },\n {\n name: 'normalizeConversationListAndBindDecrypters',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].objectType')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(true);\n }\n\n return Promise.resolve(false);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n {\n name: 'transformObjectArray',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].objectType')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(false);\n }\n\n return Promise.resolve(true);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n {\n name: 'transformThreadArray',\n direction: 'inbound',\n test(ctx, options) {\n if (!has(options, 'body.items[0].childType') || !has(options, 'body.items[0].actorId')) {\n return Promise.resolve(false);\n }\n\n if (get(options, 'options.deferDecrypt')) {\n return Promise.resolve(false);\n }\n\n return Promise.resolve(true);\n },\n extract(options) {\n return Promise.resolve(options.body.items);\n },\n },\n ],\n transforms: [\n {\n name: 'normalizeConversationListAndBindDecrypters',\n fn(ctx, array) {\n return Promise.all(\n array.map((item) =>\n ctx.transform('normalizeObject', item).then(() => {\n item.decrypt = function decrypt() {\n Reflect.deleteProperty(item, 'decrypt');\n\n return ctx.transform('decryptObject', item);\n };\n\n return item;\n })\n )\n );\n },\n },\n {\n name: 'transformObjectArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformObject', item)));\n },\n },\n {\n name: 'transformThreadArray',\n fn(ctx, array) {\n return Promise.all(array.map((item) => ctx.transform('transformThread', item)));\n },\n },\n {\n name: 'transformObject',\n direction: 'outbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('normalizeObject', object)\n .then(() => ctx.transform('encryptObject', object))\n .then(() => ctx.transform('encryptKmsMessage', object));\n },\n },\n {\n name: 'transformObject',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('decryptObject', object)\n .then(() => ctx.transform('normalizeObject', object));\n },\n },\n {\n name: 'normalizeObject',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n if (!object.objectType) {\n return Promise.resolve();\n }\n\n return Promise.all([\n ctx.transform(`normalize${capitalize(object.objectType)}`, object),\n ctx.transform('normalizePropContent', object),\n ]);\n },\n },\n {\n name: 'transformThread',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object) {\n return Promise.resolve();\n }\n\n return ctx\n .transform('decryptThread', object)\n .then(() => ctx.transform('normalizeThread', object));\n },\n },\n {\n name: 'normalizePropContent',\n direction: 'inbound',\n fn(ctx, object) {\n if (!object.content) {\n return Promise.resolve();\n }\n const {inboundProcessFunc, allowedInboundTags, allowedInboundStyles} =\n ctx.webex.config.conversation;\n\n return htmlFilter(\n inboundProcessFunc,\n allowedInboundTags || {},\n allowedInboundStyles,\n object.content\n ).then((c) => {\n object.content = c;\n });\n },\n },\n {\n name: 'normalizePropContent',\n direction: 'outbound',\n fn(ctx, object) {\n if (!object.content) {\n return Promise.resolve();\n }\n\n const {outboundProcessFunc, allowedOutboundTags, allowedOutboundStyles} =\n ctx.webex.config.conversation;\n\n return htmlFilterEscape(\n outboundProcessFunc,\n allowedOutboundTags || {},\n allowedOutboundStyles,\n object.content\n ).then((c) => {\n object.content = c;\n });\n },\n },\n {\n name: 'normalizeConversation',\n fn(ctx, conversation) {\n conversation.activities = conversation.activities || {};\n conversation.activities.items = conversation.activities.items || [];\n conversation.participants = conversation.participants || {};\n conversation.participants.items = conversation.participants.items || [];\n\n return Promise.all([\n Promise.all(\n conversation.activities.items.map((item) => ctx.transform('normalizeObject', item))\n ),\n Promise.all(\n conversation.participants.items.map((item) => ctx.transform('normalizeObject', item))\n ),\n ]);\n },\n },\n {\n name: 'normalizeActivity',\n fn(ctx, activity) {\n return Promise.all([\n ctx.transform('normalizeObject', activity.actor),\n ctx.transform('normalizeObject', activity.object),\n ctx.transform('normalizeObject', activity.target),\n ]);\n },\n },\n {\n name: 'normalizeThread',\n fn(ctx, threadActivity) {\n // childActivities are of type Activity\n return Promise.all(\n threadActivity.childActivities.map((item) => ctx.transform('normalizeObject', item))\n );\n },\n },\n {\n name: 'normalizePerson',\n // eslint-disable-next-line complexity\n fn(ctx, person) {\n const email = person.entryEmail || person.emailAddress || person.id;\n const id = person.entryUUID || person.id;\n\n if (patterns.email.test(email)) {\n person.entryEmail = person.emailAddress = email.toLowerCase();\n } else {\n Reflect.deleteProperty(person, 'entryEmail');\n Reflect.deleteProperty(person, 'emailAddress');\n }\n\n if (person.roomProperties) {\n person.roomProperties.isModerator = Boolean(person.roomProperties.isModerator);\n }\n\n if (patterns.uuid.test(id)) {\n person.entryUUID = person.id = id.toLowerCase();\n\n return Promise.resolve(person);\n }\n\n if (!email) {\n return Promise.reject(\n new Error('cannot determine id without an `emailAddress` or `entryUUID` property')\n );\n }\n\n return ctx.webex.internal.user.asUUID(email).then((uuid) => {\n person.entryUUID = person.id = uuid;\n\n return person;\n });\n },\n },\n ]\n .concat(decryptionTransforms)\n .concat(encryptionTransforms),\n },\n config,\n});\n\nexport {default} from './conversation';\nexport {default as ShareActivity} from './share-activity';\nexport {ConversationError, InvalidUserCreation} from './convo-error';\n"],"mappings":"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"}
|
package/dist/share-activity.js
CHANGED
|
@@ -15,19 +15,22 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
15
15
|
value: true
|
|
16
16
|
});
|
|
17
17
|
exports.default = exports.FILE_SYMBOL = exports.EMITTER_SYMBOL = void 0;
|
|
18
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/slicedToArray"));
|
|
19
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
20
18
|
var _symbol = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/symbol"));
|
|
21
|
-
var
|
|
19
|
+
var _map2 = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
|
|
22
20
|
var _apply = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/reflect/apply"));
|
|
23
21
|
var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
|
|
24
22
|
var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
|
|
25
23
|
var _deleteProperty = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/reflect/delete-property"));
|
|
24
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/slicedToArray"));
|
|
25
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
26
|
+
var _some2 = _interopRequireDefault(require("lodash/some"));
|
|
27
|
+
var _pick2 = _interopRequireDefault(require("lodash/pick"));
|
|
28
|
+
var _map3 = _interopRequireDefault(require("lodash/map"));
|
|
29
|
+
var _filter2 = _interopRequireDefault(require("lodash/filter"));
|
|
26
30
|
var _events = require("events");
|
|
27
31
|
var _nodeScr = _interopRequireDefault(require("node-scr"));
|
|
28
32
|
var _common = require("@webex/common");
|
|
29
33
|
var _webexCore = require("@webex/webex-core");
|
|
30
|
-
var _lodash = require("lodash");
|
|
31
34
|
var _helperImage = require("@webex/helper-image");
|
|
32
35
|
var _sha = _interopRequireDefault(require("crypto-js/sha256"));
|
|
33
36
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol2 !== "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; } } }; }
|
|
@@ -79,7 +82,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
79
82
|
uploads: {
|
|
80
83
|
type: 'object',
|
|
81
84
|
default: function _default() {
|
|
82
|
-
return new
|
|
85
|
+
return new _map2.default();
|
|
83
86
|
}
|
|
84
87
|
}
|
|
85
88
|
},
|
|
@@ -125,7 +128,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
125
128
|
width: gif.image.width,
|
|
126
129
|
url: 'https://giphy.com'
|
|
127
130
|
}
|
|
128
|
-
}, FILE_SYMBOL, gif), (0,
|
|
131
|
+
}, FILE_SYMBOL, gif), (0, _pick2.default)(options, 'actions'));
|
|
129
132
|
this.uploads.set(gif, gifToAdd);
|
|
130
133
|
|
|
131
134
|
/* Instead of encryptBinary, which produces a encrypted version of
|
|
@@ -165,7 +168,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
165
168
|
fileSize: file.size || file.byteLength || file.length,
|
|
166
169
|
mimeType: file.type,
|
|
167
170
|
objectType: 'file'
|
|
168
|
-
}, (0, _defineProperty2.default)(_objectSpread3, EMITTER_SYMBOL, emitter), (0, _defineProperty2.default)(_objectSpread3, FILE_SYMBOL, file), _objectSpread3), (0,
|
|
171
|
+
}, (0, _defineProperty2.default)(_objectSpread3, EMITTER_SYMBOL, emitter), (0, _defineProperty2.default)(_objectSpread3, FILE_SYMBOL, file), _objectSpread3), (0, _pick2.default)(options, 'actions'));
|
|
169
172
|
this.uploads.set(file, upload);
|
|
170
173
|
var promise = (0, _helperImage.detectFileType)(file, this.logger).then(function (type) {
|
|
171
174
|
upload.mimeType = type;
|
|
@@ -340,8 +343,8 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
340
343
|
* @returns {boolean}
|
|
341
344
|
*/
|
|
342
345
|
_itemContainsActionWithMimeType: function _itemContainsActionWithMimeType(items, mimeType) {
|
|
343
|
-
return (0,
|
|
344
|
-
return (0,
|
|
346
|
+
return (0, _some2.default)(items.map(function (item) {
|
|
347
|
+
return (0, _some2.default)(item.actions, {
|
|
345
348
|
mimeType: mimeType
|
|
346
349
|
});
|
|
347
350
|
}));
|
|
@@ -356,7 +359,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
356
359
|
if (this._itemContainsActionWithMimeType(items, 'application/x-cisco-webex-whiteboard')) {
|
|
357
360
|
return 'documents';
|
|
358
361
|
}
|
|
359
|
-
var mimeTypes = (0,
|
|
362
|
+
var mimeTypes = (0, _filter2.default)((0, _map3.default)(items, 'mimeType'));
|
|
360
363
|
if (mimeTypes.length !== items.length) {
|
|
361
364
|
return 'documents';
|
|
362
365
|
}
|
|
@@ -392,7 +395,7 @@ var ShareActivity = _webexCore.WebexPlugin.extend({
|
|
|
392
395
|
return res.body.spaceUrl;
|
|
393
396
|
});
|
|
394
397
|
},
|
|
395
|
-
version: "
|
|
398
|
+
version: "2.59.2"
|
|
396
399
|
});
|
|
397
400
|
|
|
398
401
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_events","require","_nodeScr","_interopRequireDefault","_common","_webexCore","_lodash","_helperImage","_sha","_createForOfIteratorHelper","o","allowArrayLike","it","_Symbol2","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","_Array$from","test","arr","len","arr2","Array","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","EMITTER_SYMBOL","_symbol","exports","FILE_SYMBOL","PROMISE_SYMBOL","ShareActivity","WebexPlugin","extend","getSymbols","file","emitter","namespace","derived","deps","fn","conversation","session","claimedFileType","required","type","content","clientTempId","displayName","enableThumbnails","hiddenSpaceUrl","mentions","spaceUrl","uploads","_default","_map","initialize","attrs","options","_apply","_promise","resolve","_spaceUrl","_retrieveSpaceUrl","concat","url","then","_hiddenSpaceUrl","addGif","gif","gifToAdd","get","fileSize","size","byteLength","mimeType","objectType","height","width","image","pick","set","SCR","create","scr","loc","thumbnailScr","add","_objectSpread3","_this","substring","lastIndexOf","upload","EventEmitter","promise","detectFileType","logger","processImage","thumbnailMaxWidth","config","thumbnailMaxHeight","imageData","main","webex","internal","encryption","encryptBinary","_ref","cdata","all","_ref2","_ref3","_slicedToArray2","uploadPromise","_upload","transferEvents","metadata","downloadUrl","thumb","_imageData","thumbnail","fileDimensions","thumbnailDimensions","_assign","_ref4","_ref5","_ref6","proxyEvents","getFiles","files","_iterator","_step","_step$value","uri","uploadOptions","fileHash","sha256","_ref7","role","initializeBody","qs","transcode","phases","body","$url","uploadUrl","finalize","$uri","finishUploadUrl","remove","delete","prepare","Error","activity","verb","undefined","items","promises","item","contentCategory","_determineContentCategory","_itemContainsActionWithMimeType","some","map","actions","mimeTypes","split","shift","_iterator2","_step2","request","method","res","version","_object$object","_files$items","_files","_deleteProperty","share","parent","_default2"],"sources":["share-activity.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {EventEmitter} from 'events';\n\nimport SCR from 'node-scr';\nimport {proxyEvents, transferEvents} from '@webex/common';\nimport {WebexPlugin} from '@webex/webex-core';\nimport {filter, map, pick, some} from 'lodash';\nimport {detectFileType, processImage} from '@webex/helper-image';\nimport sha256 from 'crypto-js/sha256';\n\nexport const EMITTER_SYMBOL = Symbol('EMITTER_SYMBOL');\nexport const FILE_SYMBOL = Symbol('FILE_SYMBOL');\nconst PROMISE_SYMBOL = Symbol('PROMISE_SYMBOL');\n\n/**\n * @class\n */\nconst ShareActivity = WebexPlugin.extend({\n getSymbols() {\n return {\n file: FILE_SYMBOL,\n emitter: EMITTER_SYMBOL,\n };\n },\n\n namespace: 'Conversation',\n\n derived: {\n target: {\n deps: ['conversation'],\n fn() {\n return this.conversation;\n },\n },\n },\n\n session: {\n claimedFileType: 'string',\n conversation: {\n required: true,\n type: 'object',\n },\n\n content: 'string',\n\n clientTempId: 'string',\n\n displayName: 'string',\n\n enableThumbnails: {\n default: true,\n type: 'boolean',\n },\n\n hiddenSpaceUrl: 'object',\n\n mentions: 'object',\n\n spaceUrl: 'object',\n\n uploads: {\n type: 'object',\n default() {\n return new Map();\n },\n },\n },\n\n initialize(attrs, options) {\n Reflect.apply(WebexPlugin.prototype.initialize, this, [attrs, options]);\n\n if (attrs && attrs.conversation) {\n this.spaceUrl = Promise.resolve(\n attrs.conversation._spaceUrl ||\n this._retrieveSpaceUrl(`${attrs.conversation.url}/space`).then((url) => {\n attrs.conversation._spaceUrl = url;\n\n return url;\n })\n );\n this.hiddenSpaceUrl = Promise.resolve(\n attrs.conversation._hiddenSpaceUrl ||\n this._retrieveSpaceUrl(`${attrs.conversation.url}/space/hidden`).then((url) => {\n attrs.conversation._hiddenSpaceUrl = url;\n\n return url;\n })\n );\n }\n },\n\n /**\n * Adds an additional GIF to the share activity\n * Different from regular add to skip uploading to webex files service\n * @param {File} gif\n * @param {File} gif.image // thumbnail\n * @param {Object} options\n * @param {Object} options.actions\n * @returns {Promise}\n */\n addGif(gif, options) {\n let gifToAdd = this.uploads.get(gif);\n\n // If the gif already exists, then don't do anything\n if (gifToAdd) {\n return Promise.resolve();\n }\n\n gifToAdd = {\n displayName: gif.name,\n fileSize: gif.size || gif.byteLength || gif.length,\n mimeType: gif.type,\n url: 'https://giphy.com',\n objectType: 'file',\n height: gif.height,\n width: gif.width,\n image: {\n height: gif.image.height,\n width: gif.image.width,\n url: 'https://giphy.com',\n },\n [FILE_SYMBOL]: gif,\n ...pick(options, 'actions'),\n };\n\n this.uploads.set(gif, gifToAdd);\n\n /* Instead of encryptBinary, which produces a encrypted version of\n * the file for upload and a SCR (contains info needed to encrypt the\n * SCR itself and the displayName), we directly create an SCR.\n * Because we are skipping uploading, the encrypted file is not needed.\n */\n return SCR.create()\n .then((scr) => {\n scr.loc = gif.url;\n gifToAdd.scr = scr;\n\n return SCR.create();\n })\n .then((thumbnailScr) => {\n thumbnailScr.loc = gif.image.url;\n gifToAdd.image.scr = thumbnailScr;\n });\n },\n\n /**\n * Adds an additional file to the share and begins submitting it to webex\n * files\n * @param {File} file\n * @param {Object} options\n * @param {Object} options.actions\n * @returns {EventEmittingPromise}\n */\n add(file, options) {\n options = options || {};\n options.claimedFileType = file.name.substring(file.name.lastIndexOf('.'));\n let upload = this.uploads.get(file);\n\n if (upload) {\n return upload[PROMISE_SYMBOL];\n }\n const emitter = new EventEmitter();\n\n upload = {\n displayName: file.name,\n fileSize: file.size || file.byteLength || file.length,\n mimeType: file.type,\n objectType: 'file',\n [EMITTER_SYMBOL]: emitter,\n [FILE_SYMBOL]: file,\n ...pick(options, 'actions'),\n };\n\n this.uploads.set(file, upload);\n const promise = detectFileType(file, this.logger)\n .then((type) => {\n upload.mimeType = type;\n\n return processImage({\n file,\n type,\n thumbnailMaxWidth: this.config.thumbnailMaxWidth,\n thumbnailMaxHeight: this.config.thumbnailMaxHeight,\n enableThumbnails: this.enableThumbnails,\n logger: this.logger,\n });\n })\n .then((imageData) => {\n const main = this.webex.internal.encryption\n .encryptBinary(file)\n .then(({scr, cdata}) => {\n upload.scr = scr;\n\n return Promise.all([cdata, this.spaceUrl]);\n })\n .then(([cdata, spaceUrl]) => {\n const uploadPromise = this._upload(cdata, `${spaceUrl}/upload_sessions`, options);\n\n transferEvents('progress', uploadPromise, emitter);\n\n return uploadPromise;\n })\n .then((metadata) => {\n upload.url = upload.scr.loc = metadata.downloadUrl;\n });\n\n let thumb;\n\n if (imageData) {\n const [thumbnail, fileDimensions, thumbnailDimensions] = imageData;\n\n Object.assign(upload, fileDimensions);\n\n if (thumbnail && thumbnailDimensions) {\n upload.image = thumbnailDimensions;\n thumb = this.webex.internal.encryption\n .encryptBinary(thumbnail)\n .then(({scr, cdata}) => {\n upload.image.scr = scr;\n\n return Promise.all([cdata, this.hiddenSpaceUrl]);\n })\n .then(([cdata, spaceUrl]) => this._upload(cdata, `${spaceUrl}/upload_sessions`))\n .then((metadata) => {\n upload.image.url = upload.image.scr.loc = metadata.downloadUrl;\n });\n }\n }\n\n return Promise.all([main, thumb]);\n });\n\n upload[PROMISE_SYMBOL] = promise;\n\n proxyEvents(emitter, promise);\n\n return promise;\n },\n\n /**\n * Fetches the files from the share\n * @returns {Array}\n */\n getFiles() {\n const files = [];\n\n for (const [key] of this.uploads) {\n files.push(this.uploads.get(key)[FILE_SYMBOL]);\n }\n\n return files;\n },\n\n /**\n * @param {File} file\n * @param {string} uri\n * @param {Object} uploadOptions - Optional object adding additional params to request body\n * @private\n * @returns {Promise}\n */\n _upload(file, uri, uploadOptions) {\n const fileSize = file.length || file.size || file.byteLength;\n const fileHash = sha256(file).toString();\n const {role, claimedFileType} = uploadOptions ?? {};\n const initializeBody = {fileSize, claimedFileType, ...(role && {role})};\n\n return this.webex.upload({\n uri,\n file,\n qs: {\n transcode: true,\n },\n phases: {\n initialize: {\n body: initializeBody,\n },\n upload: {\n $url(session) {\n return session.uploadUrl;\n },\n },\n finalize: {\n $uri(session) {\n return session.finishUploadUrl;\n },\n body: {fileSize, fileHash},\n },\n },\n });\n },\n\n /**\n * Removes the specified file from the share (Does not currently delete the\n * uploaded file)\n * @param {File} file\n * @returns {Promise}\n */\n remove(file) {\n this.uploads.delete(file);\n\n // Returns a promise for future-proofiness.\n return Promise.resolve();\n },\n\n /**\n * @private\n * @returns {Promise<Object>}\n */\n prepare() {\n if (!this.uploads.size) {\n throw new Error('Cannot submit a share activity without at least one file');\n }\n\n const activity = {\n verb: 'share',\n object: {\n objectType: 'content',\n displayName: this.object && this.object.displayName ? this.object.displayName : undefined,\n content: this.object && this.object.content ? this.object.content : undefined,\n mentions: this.object && this.object.mentions ? this.object.mentions : undefined,\n files: {\n items: [],\n },\n },\n clientTempId: this.clientTempId,\n };\n\n const promises = [];\n\n this.uploads.forEach((item) => {\n activity.object.files.items.push(item);\n promises.push(item[PROMISE_SYMBOL]);\n });\n\n activity.object.contentCategory = this._determineContentCategory(activity.object.files.items);\n\n return Promise.all(promises).then(() => activity);\n },\n\n /**\n * @param {Array} items\n * @param {string} mimeType\n * @private\n * @returns {boolean}\n */\n _itemContainsActionWithMimeType(items, mimeType) {\n return some(items.map((item) => some(item.actions, {mimeType})));\n },\n\n /**\n * @param {Array} items\n * @private\n * @returns {string}\n */\n _determineContentCategory(items) {\n // determine if the items contain an image\n if (this._itemContainsActionWithMimeType(items, 'application/x-cisco-webex-whiteboard')) {\n return 'documents';\n }\n\n const mimeTypes = filter(map(items, 'mimeType'));\n\n if (mimeTypes.length !== items.length) {\n return 'documents';\n }\n\n const contentCategory = mimeTypes[0].split('/').shift();\n\n if (contentCategory !== 'video' && contentCategory !== 'image') {\n return 'documents';\n }\n\n for (const mimeType of mimeTypes) {\n if (mimeType.split('/').shift() !== contentCategory) {\n return 'documents';\n }\n }\n\n return `${contentCategory}s`;\n },\n\n /**\n * @param {string} uri\n * @returns {Promise}\n */\n _retrieveSpaceUrl(uri) {\n return this.webex\n .request({\n method: 'PUT',\n uri,\n })\n .then((res) => res.body.spaceUrl);\n },\n});\n\n/**\n * Instantiates a ShareActivity\n * @param {Object} conversation\n * @param {ShareActivity|Object|array} object\n * @param {ProxyWebex} webex\n * @returns {ShareActivity}\n */\nShareActivity.create = function create(conversation, object, webex) {\n if (object instanceof ShareActivity) {\n return object;\n }\n\n let files;\n\n if (object?.object?.files) {\n files = object.object.files;\n Reflect.deleteProperty(object.object, 'files');\n }\n\n const share = new ShareActivity(\n {\n conversation,\n ...object,\n },\n {\n parent: webex,\n }\n );\n\n files = files?.items ?? files;\n if (files) {\n files.forEach((file) => share.add(file));\n }\n\n return share;\n};\n\nexport default ShareActivity;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_events","require","_nodeScr","_interopRequireDefault","_common","_webexCore","_helperImage","_sha","_createForOfIteratorHelper","o","allowArrayLike","it","_Symbol2","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","i","F","s","n","done","value","e","_e","f","TypeError","normalCompletion","didErr","err","call","step","next","_e2","return","minLen","_arrayLikeToArray","Object","prototype","toString","slice","constructor","name","_Array$from","test","arr","len","arr2","Array","ownKeys","object","enumerableOnly","keys","_Object$keys","_Object$getOwnPropertySymbols","symbols","filter","sym","_Object$getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty2","default","_Object$getOwnPropertyDescriptors","_Object$defineProperties","_Object$defineProperty","EMITTER_SYMBOL","_symbol","exports","FILE_SYMBOL","PROMISE_SYMBOL","ShareActivity","WebexPlugin","extend","getSymbols","file","emitter","namespace","derived","deps","fn","conversation","session","claimedFileType","required","type","content","clientTempId","displayName","enableThumbnails","hiddenSpaceUrl","mentions","spaceUrl","uploads","_default","_map2","initialize","attrs","options","_apply","_promise","resolve","_spaceUrl","_retrieveSpaceUrl","concat","url","then","_hiddenSpaceUrl","addGif","gif","gifToAdd","get","fileSize","size","byteLength","mimeType","objectType","height","width","image","_pick2","set","SCR","create","scr","loc","thumbnailScr","add","_objectSpread3","_this","substring","lastIndexOf","upload","EventEmitter","promise","detectFileType","logger","processImage","thumbnailMaxWidth","config","thumbnailMaxHeight","imageData","main","webex","internal","encryption","encryptBinary","_ref","cdata","all","_ref2","_ref3","_slicedToArray2","uploadPromise","_upload","transferEvents","metadata","downloadUrl","thumb","_imageData","thumbnail","fileDimensions","thumbnailDimensions","_assign","_ref4","_ref5","_ref6","proxyEvents","getFiles","files","_iterator","_step","_step$value","uri","uploadOptions","fileHash","sha256","_ref7","role","initializeBody","qs","transcode","phases","body","$url","uploadUrl","finalize","$uri","finishUploadUrl","remove","delete","prepare","Error","activity","verb","undefined","items","promises","item","contentCategory","_determineContentCategory","_itemContainsActionWithMimeType","_some2","map","actions","mimeTypes","_filter2","_map3","split","shift","_iterator2","_step2","request","method","res","version","_object$object","_files$items","_files","_deleteProperty","share","parent","_default2"],"sources":["share-activity.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {EventEmitter} from 'events';\n\nimport SCR from 'node-scr';\nimport {proxyEvents, transferEvents} from '@webex/common';\nimport {WebexPlugin} from '@webex/webex-core';\nimport {filter, map, pick, some} from 'lodash';\nimport {detectFileType, processImage} from '@webex/helper-image';\nimport sha256 from 'crypto-js/sha256';\n\nexport const EMITTER_SYMBOL = Symbol('EMITTER_SYMBOL');\nexport const FILE_SYMBOL = Symbol('FILE_SYMBOL');\nconst PROMISE_SYMBOL = Symbol('PROMISE_SYMBOL');\n\n/**\n * @class\n */\nconst ShareActivity = WebexPlugin.extend({\n getSymbols() {\n return {\n file: FILE_SYMBOL,\n emitter: EMITTER_SYMBOL,\n };\n },\n\n namespace: 'Conversation',\n\n derived: {\n target: {\n deps: ['conversation'],\n fn() {\n return this.conversation;\n },\n },\n },\n\n session: {\n claimedFileType: 'string',\n conversation: {\n required: true,\n type: 'object',\n },\n\n content: 'string',\n\n clientTempId: 'string',\n\n displayName: 'string',\n\n enableThumbnails: {\n default: true,\n type: 'boolean',\n },\n\n hiddenSpaceUrl: 'object',\n\n mentions: 'object',\n\n spaceUrl: 'object',\n\n uploads: {\n type: 'object',\n default() {\n return new Map();\n },\n },\n },\n\n initialize(attrs, options) {\n Reflect.apply(WebexPlugin.prototype.initialize, this, [attrs, options]);\n\n if (attrs && attrs.conversation) {\n this.spaceUrl = Promise.resolve(\n attrs.conversation._spaceUrl ||\n this._retrieveSpaceUrl(`${attrs.conversation.url}/space`).then((url) => {\n attrs.conversation._spaceUrl = url;\n\n return url;\n })\n );\n this.hiddenSpaceUrl = Promise.resolve(\n attrs.conversation._hiddenSpaceUrl ||\n this._retrieveSpaceUrl(`${attrs.conversation.url}/space/hidden`).then((url) => {\n attrs.conversation._hiddenSpaceUrl = url;\n\n return url;\n })\n );\n }\n },\n\n /**\n * Adds an additional GIF to the share activity\n * Different from regular add to skip uploading to webex files service\n * @param {File} gif\n * @param {File} gif.image // thumbnail\n * @param {Object} options\n * @param {Object} options.actions\n * @returns {Promise}\n */\n addGif(gif, options) {\n let gifToAdd = this.uploads.get(gif);\n\n // If the gif already exists, then don't do anything\n if (gifToAdd) {\n return Promise.resolve();\n }\n\n gifToAdd = {\n displayName: gif.name,\n fileSize: gif.size || gif.byteLength || gif.length,\n mimeType: gif.type,\n url: 'https://giphy.com',\n objectType: 'file',\n height: gif.height,\n width: gif.width,\n image: {\n height: gif.image.height,\n width: gif.image.width,\n url: 'https://giphy.com',\n },\n [FILE_SYMBOL]: gif,\n ...pick(options, 'actions'),\n };\n\n this.uploads.set(gif, gifToAdd);\n\n /* Instead of encryptBinary, which produces a encrypted version of\n * the file for upload and a SCR (contains info needed to encrypt the\n * SCR itself and the displayName), we directly create an SCR.\n * Because we are skipping uploading, the encrypted file is not needed.\n */\n return SCR.create()\n .then((scr) => {\n scr.loc = gif.url;\n gifToAdd.scr = scr;\n\n return SCR.create();\n })\n .then((thumbnailScr) => {\n thumbnailScr.loc = gif.image.url;\n gifToAdd.image.scr = thumbnailScr;\n });\n },\n\n /**\n * Adds an additional file to the share and begins submitting it to webex\n * files\n * @param {File} file\n * @param {Object} options\n * @param {Object} options.actions\n * @returns {EventEmittingPromise}\n */\n add(file, options) {\n options = options || {};\n options.claimedFileType = file.name.substring(file.name.lastIndexOf('.'));\n let upload = this.uploads.get(file);\n\n if (upload) {\n return upload[PROMISE_SYMBOL];\n }\n const emitter = new EventEmitter();\n\n upload = {\n displayName: file.name,\n fileSize: file.size || file.byteLength || file.length,\n mimeType: file.type,\n objectType: 'file',\n [EMITTER_SYMBOL]: emitter,\n [FILE_SYMBOL]: file,\n ...pick(options, 'actions'),\n };\n\n this.uploads.set(file, upload);\n const promise = detectFileType(file, this.logger)\n .then((type) => {\n upload.mimeType = type;\n\n return processImage({\n file,\n type,\n thumbnailMaxWidth: this.config.thumbnailMaxWidth,\n thumbnailMaxHeight: this.config.thumbnailMaxHeight,\n enableThumbnails: this.enableThumbnails,\n logger: this.logger,\n });\n })\n .then((imageData) => {\n const main = this.webex.internal.encryption\n .encryptBinary(file)\n .then(({scr, cdata}) => {\n upload.scr = scr;\n\n return Promise.all([cdata, this.spaceUrl]);\n })\n .then(([cdata, spaceUrl]) => {\n const uploadPromise = this._upload(cdata, `${spaceUrl}/upload_sessions`, options);\n\n transferEvents('progress', uploadPromise, emitter);\n\n return uploadPromise;\n })\n .then((metadata) => {\n upload.url = upload.scr.loc = metadata.downloadUrl;\n });\n\n let thumb;\n\n if (imageData) {\n const [thumbnail, fileDimensions, thumbnailDimensions] = imageData;\n\n Object.assign(upload, fileDimensions);\n\n if (thumbnail && thumbnailDimensions) {\n upload.image = thumbnailDimensions;\n thumb = this.webex.internal.encryption\n .encryptBinary(thumbnail)\n .then(({scr, cdata}) => {\n upload.image.scr = scr;\n\n return Promise.all([cdata, this.hiddenSpaceUrl]);\n })\n .then(([cdata, spaceUrl]) => this._upload(cdata, `${spaceUrl}/upload_sessions`))\n .then((metadata) => {\n upload.image.url = upload.image.scr.loc = metadata.downloadUrl;\n });\n }\n }\n\n return Promise.all([main, thumb]);\n });\n\n upload[PROMISE_SYMBOL] = promise;\n\n proxyEvents(emitter, promise);\n\n return promise;\n },\n\n /**\n * Fetches the files from the share\n * @returns {Array}\n */\n getFiles() {\n const files = [];\n\n for (const [key] of this.uploads) {\n files.push(this.uploads.get(key)[FILE_SYMBOL]);\n }\n\n return files;\n },\n\n /**\n * @param {File} file\n * @param {string} uri\n * @param {Object} uploadOptions - Optional object adding additional params to request body\n * @private\n * @returns {Promise}\n */\n _upload(file, uri, uploadOptions) {\n const fileSize = file.length || file.size || file.byteLength;\n const fileHash = sha256(file).toString();\n const {role, claimedFileType} = uploadOptions ?? {};\n const initializeBody = {fileSize, claimedFileType, ...(role && {role})};\n\n return this.webex.upload({\n uri,\n file,\n qs: {\n transcode: true,\n },\n phases: {\n initialize: {\n body: initializeBody,\n },\n upload: {\n $url(session) {\n return session.uploadUrl;\n },\n },\n finalize: {\n $uri(session) {\n return session.finishUploadUrl;\n },\n body: {fileSize, fileHash},\n },\n },\n });\n },\n\n /**\n * Removes the specified file from the share (Does not currently delete the\n * uploaded file)\n * @param {File} file\n * @returns {Promise}\n */\n remove(file) {\n this.uploads.delete(file);\n\n // Returns a promise for future-proofiness.\n return Promise.resolve();\n },\n\n /**\n * @private\n * @returns {Promise<Object>}\n */\n prepare() {\n if (!this.uploads.size) {\n throw new Error('Cannot submit a share activity without at least one file');\n }\n\n const activity = {\n verb: 'share',\n object: {\n objectType: 'content',\n displayName: this.object && this.object.displayName ? this.object.displayName : undefined,\n content: this.object && this.object.content ? this.object.content : undefined,\n mentions: this.object && this.object.mentions ? this.object.mentions : undefined,\n files: {\n items: [],\n },\n },\n clientTempId: this.clientTempId,\n };\n\n const promises = [];\n\n this.uploads.forEach((item) => {\n activity.object.files.items.push(item);\n promises.push(item[PROMISE_SYMBOL]);\n });\n\n activity.object.contentCategory = this._determineContentCategory(activity.object.files.items);\n\n return Promise.all(promises).then(() => activity);\n },\n\n /**\n * @param {Array} items\n * @param {string} mimeType\n * @private\n * @returns {boolean}\n */\n _itemContainsActionWithMimeType(items, mimeType) {\n return some(items.map((item) => some(item.actions, {mimeType})));\n },\n\n /**\n * @param {Array} items\n * @private\n * @returns {string}\n */\n _determineContentCategory(items) {\n // determine if the items contain an image\n if (this._itemContainsActionWithMimeType(items, 'application/x-cisco-webex-whiteboard')) {\n return 'documents';\n }\n\n const mimeTypes = filter(map(items, 'mimeType'));\n\n if (mimeTypes.length !== items.length) {\n return 'documents';\n }\n\n const contentCategory = mimeTypes[0].split('/').shift();\n\n if (contentCategory !== 'video' && contentCategory !== 'image') {\n return 'documents';\n }\n\n for (const mimeType of mimeTypes) {\n if (mimeType.split('/').shift() !== contentCategory) {\n return 'documents';\n }\n }\n\n return `${contentCategory}s`;\n },\n\n /**\n * @param {string} uri\n * @returns {Promise}\n */\n _retrieveSpaceUrl(uri) {\n return this.webex\n .request({\n method: 'PUT',\n uri,\n })\n .then((res) => res.body.spaceUrl);\n },\n});\n\n/**\n * Instantiates a ShareActivity\n * @param {Object} conversation\n * @param {ShareActivity|Object|array} object\n * @param {ProxyWebex} webex\n * @returns {ShareActivity}\n */\nShareActivity.create = function create(conversation, object, webex) {\n if (object instanceof ShareActivity) {\n return object;\n }\n\n let files;\n\n if (object?.object?.files) {\n files = object.object.files;\n Reflect.deleteProperty(object.object, 'files');\n }\n\n const share = new ShareActivity(\n {\n conversation,\n ...object,\n },\n {\n parent: webex,\n }\n );\n\n files = files?.items ?? files;\n if (files) {\n files.forEach((file) => share.add(file));\n }\n\n return share;\n};\n\nexport default ShareActivity;\n"],"mappings":"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"}
|
package/dist/to-array.js
CHANGED
|
@@ -11,9 +11,9 @@ _Object$defineProperty(exports, "__esModule", {
|
|
|
11
11
|
value: true
|
|
12
12
|
});
|
|
13
13
|
exports.default = toArray;
|
|
14
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
15
14
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
16
|
-
var
|
|
15
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
|
|
16
|
+
var _isFunction2 = _interopRequireDefault(require("lodash/isFunction"));
|
|
17
17
|
function ownKeys(object, enumerableOnly) { var keys = _Object$keys2(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
18
18
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
19
19
|
/**
|
|
@@ -27,7 +27,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
27
27
|
function toArray(direction, obj) {
|
|
28
28
|
return (0, _keys.default)(obj).map(function (name) {
|
|
29
29
|
var entry = obj[name];
|
|
30
|
-
if ((0,
|
|
30
|
+
if ((0, _isFunction2.default)(entry)) {
|
|
31
31
|
return {
|
|
32
32
|
name: name,
|
|
33
33
|
direction: direction,
|
package/dist/to-array.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["toArray","direction","obj","_keys","default","map","name","entry","_isFunction2","fn","_objectSpread"],"sources":["to-array.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {isFunction} from 'lodash';\n\n/**\n * Helper to convert objects into arrays of transforms. probably belongs in\n * webex-core\n * @param {string} direction \"inbound\"|\"outbound\"\n * @param {Object} obj\n * @private\n * @returns {Array}\n */\nexport default function toArray(direction, obj) {\n return Object.keys(obj).map((name) => {\n const entry = obj[name];\n\n if (isFunction(entry)) {\n return {\n name,\n direction,\n fn: entry,\n };\n }\n\n return {name, ...entry};\n });\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,OAAOA,CAACC,SAAS,EAAEC,GAAG,EAAE;EAC9C,OAAO,IAAAC,KAAA,CAAAC,OAAA,EAAYF,GAAG,CAAC,CAACG,GAAG,CAAC,UAACC,IAAI,EAAK;IACpC,IAAMC,KAAK,GAAGL,GAAG,CAACI,IAAI,CAAC;IAEvB,IAAI,IAAAE,YAAA,CAAAJ,OAAA,EAAWG,KAAK,CAAC,EAAE;MACrB,OAAO;QACLD,IAAI,EAAJA,IAAI;QACJL,SAAS,EAATA,SAAS;QACTQ,EAAE,EAAEF;MACN,CAAC;IACH;IAEA,OAAAG,aAAA;MAAQJ,IAAI,EAAJA;IAAI,GAAKC,KAAK;EACxB,CAAC,CAAC;AACJ"}
|
package/package.json
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webex/internal-plugin-conversation",
|
|
3
|
+
"version": "2.59.2",
|
|
3
4
|
"description": "",
|
|
4
5
|
"license": "MIT",
|
|
5
6
|
"main": "dist/index.js",
|
|
@@ -19,12 +20,12 @@
|
|
|
19
20
|
]
|
|
20
21
|
},
|
|
21
22
|
"dependencies": {
|
|
22
|
-
"@webex/common": "
|
|
23
|
-
"@webex/helper-html": "
|
|
24
|
-
"@webex/helper-image": "
|
|
25
|
-
"@webex/internal-plugin-encryption": "
|
|
26
|
-
"@webex/internal-plugin-user": "
|
|
27
|
-
"@webex/webex-core": "
|
|
23
|
+
"@webex/common": "2.59.2",
|
|
24
|
+
"@webex/helper-html": "2.59.2",
|
|
25
|
+
"@webex/helper-image": "2.59.2",
|
|
26
|
+
"@webex/internal-plugin-encryption": "2.59.2",
|
|
27
|
+
"@webex/internal-plugin-user": "2.59.2",
|
|
28
|
+
"@webex/webex-core": "2.59.2",
|
|
28
29
|
"crypto-js": "^4.1.1",
|
|
29
30
|
"lodash": "^4.17.21",
|
|
30
31
|
"node-scr": "^0.3.0",
|
|
@@ -32,17 +33,17 @@
|
|
|
32
33
|
},
|
|
33
34
|
"devDependencies": {
|
|
34
35
|
"@babel/core": "^7.17.10",
|
|
35
|
-
"@webex/babel-config-legacy": "
|
|
36
|
-
"@webex/eslint-config-legacy": "
|
|
37
|
-
"@webex/jest-config-legacy": "
|
|
38
|
-
"@webex/legacy-tools": "
|
|
39
|
-
"@webex/test-helper-chai": "
|
|
40
|
-
"@webex/test-helper-file": "
|
|
41
|
-
"@webex/test-helper-make-local-url": "
|
|
42
|
-
"@webex/test-helper-mocha": "
|
|
43
|
-
"@webex/test-helper-mock-webex": "
|
|
44
|
-
"@webex/test-helper-retry": "
|
|
45
|
-
"@webex/test-helper-test-users": "
|
|
36
|
+
"@webex/babel-config-legacy": "2.59.2",
|
|
37
|
+
"@webex/eslint-config-legacy": "2.59.2",
|
|
38
|
+
"@webex/jest-config-legacy": "2.59.2",
|
|
39
|
+
"@webex/legacy-tools": "2.59.2",
|
|
40
|
+
"@webex/test-helper-chai": "2.59.2",
|
|
41
|
+
"@webex/test-helper-file": "2.59.2",
|
|
42
|
+
"@webex/test-helper-make-local-url": "2.59.2",
|
|
43
|
+
"@webex/test-helper-mocha": "2.59.2",
|
|
44
|
+
"@webex/test-helper-mock-webex": "2.59.2",
|
|
45
|
+
"@webex/test-helper-retry": "2.59.2",
|
|
46
|
+
"@webex/test-helper-test-users": "2.59.2",
|
|
46
47
|
"eslint": "^8.24.0",
|
|
47
48
|
"prettier": "^2.7.1",
|
|
48
49
|
"sinon": "^9.2.4"
|
|
@@ -50,12 +51,10 @@
|
|
|
50
51
|
"scripts": {
|
|
51
52
|
"build": "yarn build:src",
|
|
52
53
|
"build:src": "webex-legacy-tools build -dest \"./dist\" -src \"./src\" -js -ts -maps",
|
|
53
|
-
"deploy:npm": "npm publish",
|
|
54
54
|
"test": "yarn test:style && yarn test:unit && yarn test:integration && yarn test:browser",
|
|
55
55
|
"test:browser:broken": "webex-legacy-tools test --integration --unit --runner karma",
|
|
56
56
|
"test:integration:broken": "webex-legacy-tools test --integration --runner mocha",
|
|
57
57
|
"test:style": "eslint ./src/**/*.*",
|
|
58
58
|
"test:unit": "webex-legacy-tools test --unit --runner jest"
|
|
59
|
-
}
|
|
60
|
-
"version": "2.59.1-next.0"
|
|
59
|
+
}
|
|
61
60
|
}
|