@webex/internal-plugin-llm 3.12.0-llmrefactor.2 → 3.12.0-llmrefactor.3
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/llm-plugin.js +1 -1
- package/dist/llm-plugin.js.map +1 -1
- package/package.json +6 -6
- package/src/llm-plugin.ts +1 -1
package/dist/llm-plugin.js
CHANGED
|
@@ -44,7 +44,7 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
44
44
|
/**
|
|
45
45
|
* LLMPlugin — registered as `webex.internal.llm`.
|
|
46
46
|
*
|
|
47
|
-
*
|
|
47
|
+
* Factory for creating LLMChannel instances. Each Meeting creates and owns
|
|
48
48
|
* its own LLMChannel(s), allowing multiple independent connections without
|
|
49
49
|
* the need for session IDs or ownership tracking.
|
|
50
50
|
*
|
package/dist/llm-plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_webexCore","require","_llm","_interopRequireWildcard","_constants","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","_createForOfIteratorHelper","_Symbol","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","return","_arrayLikeToArray","toString","slice","constructor","name","_Array$from2","test","Array","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","apply","Boolean","prototype","valueOf","LLMPlugin","exports","_ref","_this","_classCallCheck2","_len","arguments","args","_key","concat","_defineProperty2","_set","_inherits2","_createClass2","key","createChannel","_this2","channel","LLMChannel","parent","webex","channels","add","on","delete","isDataChannelTokenEnabled","internal","feature","getFeature","DATA_CHANNEL_WITH_JWT_TOKEN","getChannelByDatachannelUrl","url","_iterator","_step","datachannelUrl","getDatachannelUrl","matchesDatachannelRequestUrl","err","undefined","getAllChannels","_disconnectAllChannels","_asyncToGenerator2","_regenerator","mark","_callee","options","promises","wrap","_context","prev","_from","map","disconnect","_promise","all","stop","disconnectAllChannels","_x","WebexPlugin","_default"],"sources":["llm-plugin.ts"],"sourcesContent":["/* eslint-disable require-jsdoc */\nimport {WebexPlugin} from '@webex/webex-core';\nimport LLMChannel, {config} from './llm';\nimport {DATA_CHANNEL_WITH_JWT_TOKEN} from './constants';\n\n/**\n * LLMPlugin — registered as `webex.internal.llm`.\n *\n * factory for creating LLMChannel instances. Each Meeting creates and owns\n * its own LLMChannel(s), allowing multiple independent connections without\n * the need for session IDs or ownership tracking.\n *\n * This is a breaking API change from the previous design where the plugin\n * maintained a Map of sessions and exposed session-keyed methods.\n *\n * Old usage (no longer supported):\n * webex.internal.llm.isConnected()\n * webex.internal.llm.registerAndConnect(url, dcUrl, token, sessionId)\n *\n * New usage:\n * const llm = webex.internal.llm.createChannel();\n * await llm.registerAndConnect(url, dcUrl, token);\n * llm.isConnected();\n * // When done:\n * await llm.disconnect();\n */\nexport class LLMPlugin extends (WebexPlugin as any) {\n namespace = 'llm';\n\n /**\n * Registry of active LLM channels for interceptor lookup.\n * Channels are registered when created and unregistered on disconnect.\n */\n private channels = new Set<LLMChannel>();\n\n /**\n * Creates a new LLMChannel instance. The caller owns the channel and is\n * responsible for connecting, disconnecting, and cleaning it up.\n *\n * @example\n * const llm = webex.internal.llm.createChannel();\n * llm.setRefreshHandler(() => meeting.refreshDataChannelToken());\n * await llm.registerAndConnect(locusUrl, datachannelUrl, token);\n *\n * // Subscribe to events directly on the channel\n * llm.on('event:relay.event', handler);\n * llm.on('online', onlineHandler);\n *\n * // When done\n * await llm.disconnect();\n *\n * @returns {LLMChannel} A new LLM channel instance\n */\n public createChannel(): LLMChannel {\n // @ts-ignore — WebexPlugin children require {parent: this.webex}\n const channel = new LLMChannel({parent: this.webex});\n\n this.channels.add(channel);\n channel.on('disconnected', () => this.channels.delete(channel));\n\n return channel;\n }\n\n /**\n * Returns true if the data channel token feature flag is enabled.\n * This is a global check, not per-connection.\n * @returns {Promise<boolean>}\n */\n public isDataChannelTokenEnabled(): Promise<boolean> {\n // @ts-ignore\n return this.webex.internal.feature.getFeature('developer', DATA_CHANNEL_WITH_JWT_TOKEN);\n }\n\n /**\n * Find a channel by its datachannel URL. Used by the interceptor to\n * route token refresh requests to the correct channel.\n * @param {string} url - The request URL to match\n * @returns {LLMChannel | undefined}\n */\n public getChannelByDatachannelUrl(url: string): LLMChannel | undefined {\n for (const channel of this.channels) {\n const datachannelUrl = channel.getDatachannelUrl();\n\n if (datachannelUrl && LLMChannel.matchesDatachannelRequestUrl(url, datachannelUrl)) {\n return channel;\n }\n }\n\n return undefined;\n }\n\n /**\n * Get all active channels. Useful for diagnostics/debugging.\n * @returns {Set<LLMChannel>}\n */\n public getAllChannels(): Set<LLMChannel> {\n return new Set(this.channels);\n }\n\n /**\n * Disconnect all active channels. Useful for cleanup on logout.\n * @param {object} [options] - Disconnect options\n * @param {number} [options.code] - WebSocket close code\n * @param {string} [options.reason] - WebSocket close reason\n * @returns {Promise<void>}\n */\n public async disconnectAllChannels(options?: {code: number; reason: string}): Promise<void> {\n const promises = Array.from(this.channels).map((channel) => channel.disconnect(options));\n\n await Promise.all(promises);\n }\n}\n\nexport {config};\nexport default LLMPlugin;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_webexCore","require","_llm","_interopRequireWildcard","_constants","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","_createForOfIteratorHelper","_Symbol","_Symbol$iterator","_Array$isArray","_unsupportedIterableToArray","length","_n","F","s","done","value","TypeError","a","u","next","return","_arrayLikeToArray","toString","slice","constructor","name","_Array$from2","test","Array","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","apply","Boolean","prototype","valueOf","LLMPlugin","exports","_ref","_this","_classCallCheck2","_len","arguments","args","_key","concat","_defineProperty2","_set","_inherits2","_createClass2","key","createChannel","_this2","channel","LLMChannel","parent","webex","channels","add","on","delete","isDataChannelTokenEnabled","internal","feature","getFeature","DATA_CHANNEL_WITH_JWT_TOKEN","getChannelByDatachannelUrl","url","_iterator","_step","datachannelUrl","getDatachannelUrl","matchesDatachannelRequestUrl","err","undefined","getAllChannels","_disconnectAllChannels","_asyncToGenerator2","_regenerator","mark","_callee","options","promises","wrap","_context","prev","_from","map","disconnect","_promise","all","stop","disconnectAllChannels","_x","WebexPlugin","_default"],"sources":["llm-plugin.ts"],"sourcesContent":["/* eslint-disable require-jsdoc */\nimport {WebexPlugin} from '@webex/webex-core';\nimport LLMChannel, {config} from './llm';\nimport {DATA_CHANNEL_WITH_JWT_TOKEN} from './constants';\n\n/**\n * LLMPlugin — registered as `webex.internal.llm`.\n *\n * Factory for creating LLMChannel instances. Each Meeting creates and owns\n * its own LLMChannel(s), allowing multiple independent connections without\n * the need for session IDs or ownership tracking.\n *\n * This is a breaking API change from the previous design where the plugin\n * maintained a Map of sessions and exposed session-keyed methods.\n *\n * Old usage (no longer supported):\n * webex.internal.llm.isConnected()\n * webex.internal.llm.registerAndConnect(url, dcUrl, token, sessionId)\n *\n * New usage:\n * const llm = webex.internal.llm.createChannel();\n * await llm.registerAndConnect(url, dcUrl, token);\n * llm.isConnected();\n * // When done:\n * await llm.disconnect();\n */\nexport class LLMPlugin extends (WebexPlugin as any) {\n namespace = 'llm';\n\n /**\n * Registry of active LLM channels for interceptor lookup.\n * Channels are registered when created and unregistered on disconnect.\n */\n private channels = new Set<LLMChannel>();\n\n /**\n * Creates a new LLMChannel instance. The caller owns the channel and is\n * responsible for connecting, disconnecting, and cleaning it up.\n *\n * @example\n * const llm = webex.internal.llm.createChannel();\n * llm.setRefreshHandler(() => meeting.refreshDataChannelToken());\n * await llm.registerAndConnect(locusUrl, datachannelUrl, token);\n *\n * // Subscribe to events directly on the channel\n * llm.on('event:relay.event', handler);\n * llm.on('online', onlineHandler);\n *\n * // When done\n * await llm.disconnect();\n *\n * @returns {LLMChannel} A new LLM channel instance\n */\n public createChannel(): LLMChannel {\n // @ts-ignore — WebexPlugin children require {parent: this.webex}\n const channel = new LLMChannel({parent: this.webex});\n\n this.channels.add(channel);\n channel.on('disconnected', () => this.channels.delete(channel));\n\n return channel;\n }\n\n /**\n * Returns true if the data channel token feature flag is enabled.\n * This is a global check, not per-connection.\n * @returns {Promise<boolean>}\n */\n public isDataChannelTokenEnabled(): Promise<boolean> {\n // @ts-ignore\n return this.webex.internal.feature.getFeature('developer', DATA_CHANNEL_WITH_JWT_TOKEN);\n }\n\n /**\n * Find a channel by its datachannel URL. Used by the interceptor to\n * route token refresh requests to the correct channel.\n * @param {string} url - The request URL to match\n * @returns {LLMChannel | undefined}\n */\n public getChannelByDatachannelUrl(url: string): LLMChannel | undefined {\n for (const channel of this.channels) {\n const datachannelUrl = channel.getDatachannelUrl();\n\n if (datachannelUrl && LLMChannel.matchesDatachannelRequestUrl(url, datachannelUrl)) {\n return channel;\n }\n }\n\n return undefined;\n }\n\n /**\n * Get all active channels. Useful for diagnostics/debugging.\n * @returns {Set<LLMChannel>}\n */\n public getAllChannels(): Set<LLMChannel> {\n return new Set(this.channels);\n }\n\n /**\n * Disconnect all active channels. Useful for cleanup on logout.\n * @param {object} [options] - Disconnect options\n * @param {number} [options.code] - WebSocket close code\n * @param {string} [options.reason] - WebSocket close reason\n * @returns {Promise<void>}\n */\n public async disconnectAllChannels(options?: {code: number; reason: string}): Promise<void> {\n const promises = Array.from(this.channels).map((channel) => channel.disconnect(options));\n\n await Promise.all(promises);\n }\n}\n\nexport {config};\nexport default LLMPlugin;\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"node": ">=18"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
-
"@webex/internal-plugin-mercury": "3.12.0-llmrefactor.
|
|
16
|
+
"@webex/internal-plugin-mercury": "3.12.0-llmrefactor.3"
|
|
17
17
|
},
|
|
18
18
|
"browserify": {
|
|
19
19
|
"transform": [
|
|
@@ -27,10 +27,10 @@
|
|
|
27
27
|
"@webex/eslint-config-legacy": "0.0.0",
|
|
28
28
|
"@webex/jest-config-legacy": "0.0.0",
|
|
29
29
|
"@webex/legacy-tools": "0.0.0",
|
|
30
|
-
"@webex/test-helper-chai": "3.12.0-llmrefactor.
|
|
31
|
-
"@webex/test-helper-mocha": "3.12.0-llmrefactor.
|
|
32
|
-
"@webex/test-helper-mock-webex": "3.12.0-llmrefactor.
|
|
33
|
-
"@webex/test-helper-test-users": "3.12.0-llmrefactor.
|
|
30
|
+
"@webex/test-helper-chai": "3.12.0-llmrefactor.2",
|
|
31
|
+
"@webex/test-helper-mocha": "3.12.0-llmrefactor.2",
|
|
32
|
+
"@webex/test-helper-mock-webex": "3.12.0-llmrefactor.1",
|
|
33
|
+
"@webex/test-helper-test-users": "3.12.0-llmrefactor.1",
|
|
34
34
|
"eslint": "^8.24.0",
|
|
35
35
|
"prettier": "^2.7.1",
|
|
36
36
|
"sinon": "^9.2.4"
|
|
@@ -44,5 +44,5 @@
|
|
|
44
44
|
"test:style": "eslint ./src/**/*.*",
|
|
45
45
|
"test:unit": "webex-legacy-tools test --unit --runner jest"
|
|
46
46
|
},
|
|
47
|
-
"version": "3.12.0-llmrefactor.
|
|
47
|
+
"version": "3.12.0-llmrefactor.3"
|
|
48
48
|
}
|
package/src/llm-plugin.ts
CHANGED
|
@@ -6,7 +6,7 @@ import {DATA_CHANNEL_WITH_JWT_TOKEN} from './constants';
|
|
|
6
6
|
/**
|
|
7
7
|
* LLMPlugin — registered as `webex.internal.llm`.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* Factory for creating LLMChannel instances. Each Meeting creates and owns
|
|
10
10
|
* its own LLMChannel(s), allowing multiple independent connections without
|
|
11
11
|
* the need for session IDs or ownership tracking.
|
|
12
12
|
*
|