@webex/plugin-meetings 3.11.0-next.46 → 3.11.0-next.48
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/aiEnableRequest/index.js +1 -1
- package/dist/breakouts/breakout.js +1 -1
- package/dist/breakouts/index.js +1 -1
- package/dist/interceptors/dataChannelAuthToken.js +103 -46
- package/dist/interceptors/dataChannelAuthToken.js.map +1 -1
- package/dist/interceptors/utils.js +27 -0
- package/dist/interceptors/utils.js.map +1 -0
- package/dist/interpretation/index.js +1 -1
- package/dist/interpretation/siLanguage.js +1 -1
- package/dist/meeting/index.js +4 -6
- package/dist/meeting/index.js.map +1 -1
- package/dist/meeting/request.js +2 -2
- package/dist/meeting/request.js.map +1 -1
- package/dist/multistream/mediaRequestManager.js +9 -60
- package/dist/multistream/mediaRequestManager.js.map +1 -1
- package/dist/reconnection-manager/index.js +0 -1
- package/dist/reconnection-manager/index.js.map +1 -1
- package/dist/types/interceptors/dataChannelAuthToken.d.ts +8 -0
- package/dist/types/interceptors/utils.d.ts +1 -0
- package/dist/types/multistream/mediaRequestManager.d.ts +0 -23
- package/dist/webinar/index.js +8 -2
- package/dist/webinar/index.js.map +1 -1
- package/package.json +4 -3
- package/src/interceptors/dataChannelAuthToken.ts +28 -0
- package/src/interceptors/utils.ts +16 -0
- package/src/meeting/index.ts +5 -5
- package/src/meeting/request.ts +4 -4
- package/src/multistream/mediaRequestManager.ts +3 -53
- package/src/reconnection-manager/index.ts +0 -1
- package/src/webinar/index.ts +5 -0
- package/test/unit/spec/interceptors/dataChannelAuthToken.ts +69 -0
- package/test/unit/spec/interceptors/utils.ts +75 -0
- package/test/unit/spec/meeting/index.js +6 -6
- package/test/unit/spec/meeting/request.js +18 -12
- package/test/unit/spec/multistream/mediaRequestManager.ts +2 -85
- package/test/unit/spec/reconnection-manager/index.js +4 -8
- package/test/unit/spec/webinar/index.ts +18 -0
|
@@ -178,7 +178,7 @@ var AIEnableRequest = _webexCore.WebexPlugin.extend({
|
|
|
178
178
|
method: _constants.HTTP_VERBS.PUT
|
|
179
179
|
});
|
|
180
180
|
},
|
|
181
|
-
version: "3.11.0-next.
|
|
181
|
+
version: "3.11.0-next.48"
|
|
182
182
|
});
|
|
183
183
|
var _default = exports.default = AIEnableRequest;
|
|
184
184
|
//# sourceMappingURL=index.js.map
|
package/dist/breakouts/index.js
CHANGED
|
@@ -1109,7 +1109,7 @@ var Breakouts = _webexCore.WebexPlugin.extend({
|
|
|
1109
1109
|
this.trigger(_constants.BREAKOUTS.EVENTS.ASK_RETURN_TO_MAIN);
|
|
1110
1110
|
}
|
|
1111
1111
|
},
|
|
1112
|
-
version: "3.11.0-next.
|
|
1112
|
+
version: "3.11.0-next.48"
|
|
1113
1113
|
});
|
|
1114
1114
|
var _default = exports.default = Breakouts;
|
|
1115
1115
|
//# sourceMappingURL=index.js.map
|
|
@@ -22,6 +22,7 @@ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/pr
|
|
|
22
22
|
var _httpCore = require("@webex/http-core");
|
|
23
23
|
var _loggerProxy = _interopRequireDefault(require("../common/logs/logger-proxy"));
|
|
24
24
|
var _constant = require("./constant");
|
|
25
|
+
var _utils = require("./utils");
|
|
25
26
|
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2.default)(o), (0, _possibleConstructorReturn2.default)(t, _isNativeReflectConstruct() ? _Reflect$construct(o, e || [], (0, _getPrototypeOf2.default)(t).constructor) : o.apply(t, e)); }
|
|
26
27
|
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(_Reflect$construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); } /*!
|
|
27
28
|
* Copyright (c) 2015-2026 Cisco Systems, Inc. See LICENSE file.
|
|
@@ -69,6 +70,61 @@ var DataChannelAuthTokenInterceptor = exports.default = /*#__PURE__*/function (_
|
|
|
69
70
|
return key ? headers[key] : undefined;
|
|
70
71
|
}
|
|
71
72
|
|
|
73
|
+
/**
|
|
74
|
+
* Intercepts outgoing requests and refreshes the Data-Channel-Auth-Token
|
|
75
|
+
* if the current JWT token is expired before the request is sent.
|
|
76
|
+
*
|
|
77
|
+
* @param {Object} options - The original request options.
|
|
78
|
+
* @returns {Promise<Object>} Updated request options with refreshed token if needed.
|
|
79
|
+
*/
|
|
80
|
+
}, {
|
|
81
|
+
key: "onRequest",
|
|
82
|
+
value: (function () {
|
|
83
|
+
var _onRequest = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee(options) {
|
|
84
|
+
var token, enabled, newToken, _t;
|
|
85
|
+
return _regenerator.default.wrap(function (_context) {
|
|
86
|
+
while (1) switch (_context.prev = _context.next) {
|
|
87
|
+
case 0:
|
|
88
|
+
token = this.getHeader(options.headers, _constant.DATA_CHANNEL_AUTH_HEADER);
|
|
89
|
+
_context.next = 1;
|
|
90
|
+
return this._isDataChannelTokenEnabled();
|
|
91
|
+
case 1:
|
|
92
|
+
enabled = _context.sent;
|
|
93
|
+
if (!(!token || !enabled)) {
|
|
94
|
+
_context.next = 2;
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
return _context.abrupt("return", options);
|
|
98
|
+
case 2:
|
|
99
|
+
if (!(0, _utils.isJwtTokenExpired)(token)) {
|
|
100
|
+
_context.next = 6;
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
_context.prev = 3;
|
|
104
|
+
_context.next = 4;
|
|
105
|
+
return this._refreshDataChannelToken();
|
|
106
|
+
case 4:
|
|
107
|
+
newToken = _context.sent;
|
|
108
|
+
options.headers[_constant.DATA_CHANNEL_AUTH_HEADER] = newToken;
|
|
109
|
+
_context.next = 6;
|
|
110
|
+
break;
|
|
111
|
+
case 5:
|
|
112
|
+
_context.prev = 5;
|
|
113
|
+
_t = _context["catch"](3);
|
|
114
|
+
_loggerProxy.default.logger.warn("DataChannelAuthTokenInterceptor: refresh failed: ".concat(_t.message));
|
|
115
|
+
case 6:
|
|
116
|
+
return _context.abrupt("return", options);
|
|
117
|
+
case 7:
|
|
118
|
+
case "end":
|
|
119
|
+
return _context.stop();
|
|
120
|
+
}
|
|
121
|
+
}, _callee, this, [[3, 5]]);
|
|
122
|
+
}));
|
|
123
|
+
function onRequest(_x) {
|
|
124
|
+
return _onRequest.apply(this, arguments);
|
|
125
|
+
}
|
|
126
|
+
return onRequest;
|
|
127
|
+
}()
|
|
72
128
|
/**
|
|
73
129
|
* Intercept responses and, on 401/403 with `Data-Channel-Auth-Token` header,
|
|
74
130
|
* attempt to refresh the data channel token and retry the original request once.
|
|
@@ -77,50 +133,51 @@ var DataChannelAuthTokenInterceptor = exports.default = /*#__PURE__*/function (_
|
|
|
77
133
|
* @param {Object} reason
|
|
78
134
|
* @returns {Promise<HttpResponse>}
|
|
79
135
|
*/
|
|
136
|
+
)
|
|
80
137
|
}, {
|
|
81
138
|
key: "onResponseError",
|
|
82
139
|
value: (function () {
|
|
83
|
-
var _onResponseError = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
140
|
+
var _onResponseError = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee2(options, reason) {
|
|
84
141
|
var token, enabled, key, retryCount;
|
|
85
|
-
return _regenerator.default.wrap(function (
|
|
86
|
-
while (1) switch (
|
|
142
|
+
return _regenerator.default.wrap(function (_context2) {
|
|
143
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
87
144
|
case 0:
|
|
88
145
|
token = this.getHeader(options.headers, _constant.DATA_CHANNEL_AUTH_HEADER);
|
|
89
|
-
|
|
146
|
+
_context2.next = 1;
|
|
90
147
|
return this._isDataChannelTokenEnabled();
|
|
91
148
|
case 1:
|
|
92
|
-
enabled =
|
|
149
|
+
enabled = _context2.sent;
|
|
93
150
|
if (!(!token || !enabled)) {
|
|
94
|
-
|
|
151
|
+
_context2.next = 2;
|
|
95
152
|
break;
|
|
96
153
|
}
|
|
97
|
-
return
|
|
154
|
+
return _context2.abrupt("return", _promise.default.reject(reason));
|
|
98
155
|
case 2:
|
|
99
156
|
if (!(reason.statusCode !== 401 && reason.statusCode !== 403)) {
|
|
100
|
-
|
|
157
|
+
_context2.next = 3;
|
|
101
158
|
break;
|
|
102
159
|
}
|
|
103
|
-
return
|
|
160
|
+
return _context2.abrupt("return", _promise.default.reject(reason));
|
|
104
161
|
case 3:
|
|
105
162
|
key = this.getRetryKey(options);
|
|
106
163
|
retryCount = retryCountMap.get(key) || 0;
|
|
107
164
|
if (!(retryCount >= _constant.MAX_RETRY)) {
|
|
108
|
-
|
|
165
|
+
_context2.next = 4;
|
|
109
166
|
break;
|
|
110
167
|
}
|
|
111
168
|
_loggerProxy.default.logger.error("data channel token refresh exceeded max retry (".concat(_constant.MAX_RETRY, ")"));
|
|
112
169
|
retryCountMap.delete(key);
|
|
113
|
-
return
|
|
170
|
+
return _context2.abrupt("return", _promise.default.reject(reason));
|
|
114
171
|
case 4:
|
|
115
172
|
retryCountMap.set(key, retryCount + 1);
|
|
116
|
-
return
|
|
173
|
+
return _context2.abrupt("return", this.refreshTokenAndRetryWithDelay(options));
|
|
117
174
|
case 5:
|
|
118
175
|
case "end":
|
|
119
|
-
return
|
|
176
|
+
return _context2.stop();
|
|
120
177
|
}
|
|
121
|
-
},
|
|
178
|
+
}, _callee2, this);
|
|
122
179
|
}));
|
|
123
|
-
function onResponseError(
|
|
180
|
+
function onResponseError(_x2, _x3) {
|
|
124
181
|
return _onResponseError.apply(this, arguments);
|
|
125
182
|
}
|
|
126
183
|
return onResponseError;
|
|
@@ -138,42 +195,42 @@ var DataChannelAuthTokenInterceptor = exports.default = /*#__PURE__*/function (_
|
|
|
138
195
|
value: function refreshTokenAndRetryWithDelay(options) {
|
|
139
196
|
var _this2 = this;
|
|
140
197
|
return new _promise.default(function (resolve, reject) {
|
|
141
|
-
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
142
|
-
var key, newToken, res, msg, err,
|
|
143
|
-
return _regenerator.default.wrap(function (
|
|
144
|
-
while (1) switch (
|
|
198
|
+
setTimeout(/*#__PURE__*/(0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee3() {
|
|
199
|
+
var key, newToken, res, msg, err, _t2;
|
|
200
|
+
return _regenerator.default.wrap(function (_context3) {
|
|
201
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
145
202
|
case 0:
|
|
146
203
|
key = _this2.getRetryKey(options);
|
|
147
|
-
|
|
148
|
-
|
|
204
|
+
_context3.prev = 1;
|
|
205
|
+
_context3.next = 2;
|
|
149
206
|
return _this2._refreshDataChannelToken();
|
|
150
207
|
case 2:
|
|
151
|
-
newToken =
|
|
208
|
+
newToken = _context3.sent;
|
|
152
209
|
options.headers[_constant.DATA_CHANNEL_AUTH_HEADER] = newToken;
|
|
153
210
|
|
|
154
211
|
// @ts-ignore
|
|
155
|
-
|
|
212
|
+
_context3.next = 3;
|
|
156
213
|
return _this2.webex.request(options);
|
|
157
214
|
case 3:
|
|
158
|
-
res =
|
|
215
|
+
res = _context3.sent;
|
|
159
216
|
retryCountMap.delete(key);
|
|
160
217
|
resolve(res);
|
|
161
|
-
|
|
218
|
+
_context3.next = 5;
|
|
162
219
|
break;
|
|
163
220
|
case 4:
|
|
164
|
-
|
|
165
|
-
|
|
221
|
+
_context3.prev = 4;
|
|
222
|
+
_t2 = _context3["catch"](1);
|
|
166
223
|
retryCountMap.delete(key);
|
|
167
|
-
msg = (
|
|
224
|
+
msg = (_t2 === null || _t2 === void 0 ? void 0 : _t2.message) || String(_t2);
|
|
168
225
|
err = new Error("DataChannel token refresh failed: ".concat(msg));
|
|
169
|
-
err.statusCode =
|
|
170
|
-
err.original =
|
|
226
|
+
err.statusCode = _t2 === null || _t2 === void 0 ? void 0 : _t2.statusCode;
|
|
227
|
+
err.original = _t2;
|
|
171
228
|
reject(err);
|
|
172
229
|
case 5:
|
|
173
230
|
case "end":
|
|
174
|
-
return
|
|
231
|
+
return _context3.stop();
|
|
175
232
|
}
|
|
176
|
-
},
|
|
233
|
+
}, _callee3, null, [[1, 4]]);
|
|
177
234
|
})), _constant.RETRY_INTERVAL);
|
|
178
235
|
});
|
|
179
236
|
}
|
|
@@ -185,16 +242,16 @@ var DataChannelAuthTokenInterceptor = exports.default = /*#__PURE__*/function (_
|
|
|
185
242
|
return new DataChannelAuthTokenInterceptor({
|
|
186
243
|
webex: this,
|
|
187
244
|
isDataChannelTokenEnabled: function () {
|
|
188
|
-
var _isDataChannelTokenEnabled = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
189
|
-
return _regenerator.default.wrap(function (
|
|
190
|
-
while (1) switch (
|
|
245
|
+
var _isDataChannelTokenEnabled = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee4() {
|
|
246
|
+
return _regenerator.default.wrap(function (_context4) {
|
|
247
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
191
248
|
case 0:
|
|
192
|
-
return
|
|
249
|
+
return _context4.abrupt("return", _this3.internal.llm.isDataChannelTokenEnabled());
|
|
193
250
|
case 1:
|
|
194
251
|
case "end":
|
|
195
|
-
return
|
|
252
|
+
return _context4.stop();
|
|
196
253
|
}
|
|
197
|
-
},
|
|
254
|
+
}, _callee4);
|
|
198
255
|
}));
|
|
199
256
|
function isDataChannelTokenEnabled() {
|
|
200
257
|
return _isDataChannelTokenEnabled.apply(this, arguments);
|
|
@@ -202,24 +259,24 @@ var DataChannelAuthTokenInterceptor = exports.default = /*#__PURE__*/function (_
|
|
|
202
259
|
return isDataChannelTokenEnabled;
|
|
203
260
|
}(),
|
|
204
261
|
refreshDataChannelToken: function () {
|
|
205
|
-
var _refreshDataChannelToken = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function
|
|
262
|
+
var _refreshDataChannelToken = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee5() {
|
|
206
263
|
var _yield$_this3$interna, body, _ref2, datachannelToken, dataChannelTokenType;
|
|
207
|
-
return _regenerator.default.wrap(function (
|
|
208
|
-
while (1) switch (
|
|
264
|
+
return _regenerator.default.wrap(function (_context5) {
|
|
265
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
209
266
|
case 0:
|
|
210
|
-
|
|
267
|
+
_context5.next = 1;
|
|
211
268
|
return _this3.internal.llm.refreshDataChannelToken();
|
|
212
269
|
case 1:
|
|
213
|
-
_yield$_this3$interna =
|
|
270
|
+
_yield$_this3$interna = _context5.sent;
|
|
214
271
|
body = _yield$_this3$interna.body;
|
|
215
272
|
_ref2 = body !== null && body !== void 0 ? body : {}, datachannelToken = _ref2.datachannelToken, dataChannelTokenType = _ref2.dataChannelTokenType; // @ts-ignore
|
|
216
273
|
_this3.internal.llm.setDatachannelToken(datachannelToken, dataChannelTokenType);
|
|
217
|
-
return
|
|
274
|
+
return _context5.abrupt("return", datachannelToken);
|
|
218
275
|
case 2:
|
|
219
276
|
case "end":
|
|
220
|
-
return
|
|
277
|
+
return _context5.stop();
|
|
221
278
|
}
|
|
222
|
-
},
|
|
279
|
+
}, _callee5);
|
|
223
280
|
}));
|
|
224
281
|
function refreshDataChannelToken() {
|
|
225
282
|
return _refreshDataChannelToken.apply(this, arguments);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_httpCore","require","_loggerProxy","_interopRequireDefault","_constant","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","retryCountMap","_map","DataChannelAuthTokenInterceptor","exports","_Interceptor","options","_this","_classCallCheck2","_defineProperty2","_refreshDataChannelToken","refreshDataChannelToken","_isDataChannelTokenEnabled","isDataChannelTokenEnabled","_inherits2","_createClass2","key","value","getRetryKey","RETRY_KEY","concat","_now","Math","random","getHeader","headers","name","_keys","find","k","toLowerCase","undefined","_onResponseError","_asyncToGenerator2","_regenerator","mark","_callee","reason","token","enabled","retryCount","wrap","_context","prev","next","DATA_CHANNEL_AUTH_HEADER","sent","abrupt","_promise","reject","statusCode","get","MAX_RETRY","LoggerProxy","logger","error","delete","set","refreshTokenAndRetryWithDelay","stop","onResponseError","_x","_x2","arguments","_this2","resolve","setTimeout","_callee2","newToken","res","msg","err","_t","_context2","webex","request","message","String","Error","original","RETRY_INTERVAL","create","_this3","_callee3","_context3","internal","llm","_callee4","_yield$_this3$interna","body","_ref2","datachannelToken","dataChannelTokenType","_context4","setDatachannelToken","Interceptor"],"sources":["dataChannelAuthToken.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2026 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Interceptor} from '@webex/http-core';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {DATA_CHANNEL_AUTH_HEADER, MAX_RETRY, RETRY_INTERVAL, RETRY_KEY} from './constant';\n\n/*!\n * Copyright (c) 2015-2026 Cisco Systems, Inc. See LICENSE file.\n */\n\nconst retryCountMap = new Map();\ninterface HttpLikeError extends Error {\n statusCode?: number;\n original?: any;\n}\n/**\n * @class\n */\nexport default class DataChannelAuthTokenInterceptor extends Interceptor {\n private _refreshDataChannelToken: () => Promise<string>;\n private _isDataChannelTokenEnabled: () => Promise<boolean>;\n constructor(options) {\n super(options);\n\n this._refreshDataChannelToken = options.refreshDataChannelToken;\n this._isDataChannelTokenEnabled = options.isDataChannelTokenEnabled;\n }\n\n /**\n * @returns {DataChannelAuthTokenInterceptor}\n */\n static create() {\n // @ts-ignore\n return new DataChannelAuthTokenInterceptor({\n webex: this,\n\n isDataChannelTokenEnabled: async () => {\n // @ts-ignore\n return this.internal.llm.isDataChannelTokenEnabled();\n },\n\n refreshDataChannelToken: async () => {\n // @ts-ignore\n const {body} = await this.internal.llm.refreshDataChannelToken();\n const {datachannelToken, dataChannelTokenType} = body ?? {};\n\n // @ts-ignore\n this.internal.llm.setDatachannelToken(datachannelToken, dataChannelTokenType);\n\n return datachannelToken;\n },\n });\n }\n\n private getRetryKey(options) {\n if (!options[RETRY_KEY]) {\n options[RETRY_KEY] = `${Date.now()}-${Math.random()}`;\n }\n\n return options[RETRY_KEY];\n }\n\n // Helper function to get header value case insensitively\n private getHeader(headers: Record<string, string>, name: string) {\n const key = Object.keys(headers).find((k) => k.toLowerCase() === name.toLowerCase());\n\n return key ? headers[key] : undefined;\n }\n\n /**\n * Intercept responses and, on 401/403 with `Data-Channel-Auth-Token` header,\n * attempt to refresh the data channel token and retry the original request once.\n *\n * @param {Object} options\n * @param {Object} reason\n * @returns {Promise<HttpResponse>}\n */\n async onResponseError(options, reason) {\n const token = this.getHeader(options.headers, DATA_CHANNEL_AUTH_HEADER);\n const enabled = await this._isDataChannelTokenEnabled();\n\n if (!token || !enabled) {\n return Promise.reject(reason);\n }\n\n if (reason.statusCode !== 401 && reason.statusCode !== 403) {\n return Promise.reject(reason);\n }\n\n const key = this.getRetryKey(options);\n const retryCount = retryCountMap.get(key) || 0;\n\n if (retryCount >= MAX_RETRY) {\n LoggerProxy.logger.error(`data channel token refresh exceeded max retry (${MAX_RETRY})`);\n retryCountMap.delete(key);\n\n return Promise.reject(reason);\n }\n\n retryCountMap.set(key, retryCount + 1);\n\n return this.refreshTokenAndRetryWithDelay(options);\n }\n\n /**\n * Retry the failed data channel request after a delay.\n * Refreshes the Data-Channel-Auth-Token and re-sends the original request.\n *\n * @param {Object} options - Original request options.\n * @returns {Promise<HttpResponse>} - Resolves on successful retry.\n */\n refreshTokenAndRetryWithDelay(options) {\n return new Promise((resolve, reject) => {\n setTimeout(async () => {\n const key = this.getRetryKey(options);\n try {\n const newToken = await this._refreshDataChannelToken();\n\n options.headers[DATA_CHANNEL_AUTH_HEADER] = newToken;\n\n // @ts-ignore\n const res = await this.webex.request(options);\n retryCountMap.delete(key);\n\n resolve(res);\n } catch (e) {\n retryCountMap.delete(key);\n\n const msg = e?.message || String(e);\n\n const err: HttpLikeError = new Error(`DataChannel token refresh failed: ${msg}`);\n err.statusCode = e?.statusCode;\n err.original = e;\n\n reject(err);\n }\n }, RETRY_INTERVAL);\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAA0F,SAAAI,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,CAAAC,OAAA,EAAAH,CAAA,OAAAI,2BAAA,CAAAD,OAAA,EAAAJ,CAAA,EAAAM,yBAAA,KAAAC,kBAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,CAAAC,OAAA,EAAAJ,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAI,0BAAA,cAAAN,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAN,kBAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAM,yBAAA,YAAAA,0BAAA,aAAAN,CAAA,UAN1F;AACA;AACA;AAMA;AACA;AACA;;AAEA,IAAMc,aAAa,GAAG,IAAAC,IAAA,CAAAX,OAAA,CAAQ,CAAC;AAK/B;AACA;AACA;AAFA,IAGqBY,+BAA+B,GAAAC,OAAA,CAAAb,OAAA,0BAAAc,YAAA;EAGlD,SAAAF,gCAAYG,OAAO,EAAE;IAAA,IAAAC,KAAA;IAAA,IAAAC,gBAAA,CAAAjB,OAAA,QAAAY,+BAAA;IACnBI,KAAA,GAAArB,UAAA,OAAAiB,+BAAA,GAAMG,OAAO;IAAE,IAAAG,gBAAA,CAAAlB,OAAA,EAAAgB,KAAA;IAAA,IAAAE,gBAAA,CAAAlB,OAAA,EAAAgB,KAAA;IAEfA,KAAA,CAAKG,wBAAwB,GAAGJ,OAAO,CAACK,uBAAuB;IAC/DJ,KAAA,CAAKK,0BAA0B,GAAGN,OAAO,CAACO,yBAAyB;IAAC,OAAAN,KAAA;EACtE;;EAEA;AACF;AACA;EAFE,IAAAO,UAAA,CAAAvB,OAAA,EAAAY,+BAAA,EAAAE,YAAA;EAAA,WAAAU,aAAA,CAAAxB,OAAA,EAAAY,+BAAA;IAAAa,GAAA;IAAAC,KAAA,EA0BA,SAAQC,WAAWA,CAACZ,OAAO,EAAE;MAC3B,IAAI,CAACA,OAAO,CAACa,mBAAS,CAAC,EAAE;QACvBb,OAAO,CAACa,mBAAS,CAAC,MAAAC,MAAA,CAAM,IAAAC,IAAA,CAAA9B,OAAA,EAAS,CAAC,OAAA6B,MAAA,CAAIE,IAAI,CAACC,MAAM,CAAC,CAAC,CAAE;MACvD;MAEA,OAAOjB,OAAO,CAACa,mBAAS,CAAC;IAC3B;;IAEA;EAAA;IAAAH,GAAA;IAAAC,KAAA,EACA,SAAQO,SAASA,CAACC,OAA+B,EAAEC,IAAY,EAAE;MAC/D,IAAMV,GAAG,GAAG,IAAAW,KAAA,CAAApC,OAAA,EAAYkC,OAAO,CAAC,CAACG,IAAI,CAAC,UAACC,CAAC;QAAA,OAAKA,CAAC,CAACC,WAAW,CAAC,CAAC,KAAKJ,IAAI,CAACI,WAAW,CAAC,CAAC;MAAA,EAAC;MAEpF,OAAOd,GAAG,GAAGS,OAAO,CAACT,GAAG,CAAC,GAAGe,SAAS;IACvC;;IAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EAPE;IAAAf,GAAA;IAAAC,KAAA;MAAA,IAAAe,gBAAA,OAAAC,kBAAA,CAAA1C,OAAA,eAAA2C,YAAA,CAAA3C,OAAA,CAAA4C,IAAA,CAQA,SAAAC,QAAsB9B,OAAO,EAAE+B,MAAM;QAAA,IAAAC,KAAA,EAAAC,OAAA,EAAAvB,GAAA,EAAAwB,UAAA;QAAA,OAAAN,YAAA,CAAA3C,OAAA,CAAAkD,IAAA,WAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAC7BN,KAAK,GAAG,IAAI,CAACd,SAAS,CAAClB,OAAO,CAACmB,OAAO,EAAEoB,kCAAwB,CAAC;cAAAH,QAAA,CAAAE,IAAA;cAAA,OACjD,IAAI,CAAChC,0BAA0B,CAAC,CAAC;YAAA;cAAjD2B,OAAO,GAAAG,QAAA,CAAAI,IAAA;cAAA,MAET,CAACR,KAAK,IAAI,CAACC,OAAO;gBAAAG,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAA,OAAAF,QAAA,CAAAK,MAAA,WACbC,QAAA,CAAAzD,OAAA,CAAQ0D,MAAM,CAACZ,MAAM,CAAC;YAAA;cAAA,MAG3BA,MAAM,CAACa,UAAU,KAAK,GAAG,IAAIb,MAAM,CAACa,UAAU,KAAK,GAAG;gBAAAR,QAAA,CAAAE,IAAA;gBAAA;cAAA;cAAA,OAAAF,QAAA,CAAAK,MAAA,WACjDC,QAAA,CAAAzD,OAAA,CAAQ0D,MAAM,CAACZ,MAAM,CAAC;YAAA;cAGzBrB,GAAG,GAAG,IAAI,CAACE,WAAW,CAACZ,OAAO,CAAC;cAC/BkC,UAAU,GAAGvC,aAAa,CAACkD,GAAG,CAACnC,GAAG,CAAC,IAAI,CAAC;cAAA,MAE1CwB,UAAU,IAAIY,mBAAS;gBAAAV,QAAA,CAAAE,IAAA;gBAAA;cAAA;cACzBS,oBAAW,CAACC,MAAM,CAACC,KAAK,mDAAAnC,MAAA,CAAmDgC,mBAAS,MAAG,CAAC;cACxFnD,aAAa,CAACuD,MAAM,CAACxC,GAAG,CAAC;cAAC,OAAA0B,QAAA,CAAAK,MAAA,WAEnBC,QAAA,CAAAzD,OAAA,CAAQ0D,MAAM,CAACZ,MAAM,CAAC;YAAA;cAG/BpC,aAAa,CAACwD,GAAG,CAACzC,GAAG,EAAEwB,UAAU,GAAG,CAAC,CAAC;cAAC,OAAAE,QAAA,CAAAK,MAAA,WAEhC,IAAI,CAACW,6BAA6B,CAACpD,OAAO,CAAC;YAAA;YAAA;cAAA,OAAAoC,QAAA,CAAAiB,IAAA;UAAA;QAAA,GAAAvB,OAAA;MAAA,CACnD;MAAA,SAzBKwB,eAAeA,CAAAC,EAAA,EAAAC,GAAA;QAAA,OAAA9B,gBAAA,CAAApC,KAAA,OAAAmE,SAAA;MAAA;MAAA,OAAfH,eAAe;IAAA;IA2BrB;AACF;AACA;AACA;AACA;AACA;AACA;IANE;EAAA;IAAA5C,GAAA;IAAAC,KAAA,EAOA,SAAAyC,6BAA6BA,CAACpD,OAAO,EAAE;MAAA,IAAA0D,MAAA;MACrC,OAAO,IAAAhB,QAAA,CAAAzD,OAAA,CAAY,UAAC0E,OAAO,EAAEhB,MAAM,EAAK;QACtCiB,UAAU,kBAAAjC,kBAAA,CAAA1C,OAAA,eAAA2C,YAAA,CAAA3C,OAAA,CAAA4C,IAAA,CAAC,SAAAgC,SAAA;UAAA,IAAAnD,GAAA,EAAAoD,QAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,EAAA;UAAA,OAAAtC,YAAA,CAAA3C,OAAA,CAAAkD,IAAA,WAAAgC,SAAA;YAAA,kBAAAA,SAAA,CAAA9B,IAAA,GAAA8B,SAAA,CAAA7B,IAAA;cAAA;gBACH5B,GAAG,GAAGgD,MAAI,CAAC9C,WAAW,CAACZ,OAAO,CAAC;gBAAAmE,SAAA,CAAA9B,IAAA;gBAAA8B,SAAA,CAAA7B,IAAA;gBAAA,OAEZoB,MAAI,CAACtD,wBAAwB,CAAC,CAAC;cAAA;gBAAhD0D,QAAQ,GAAAK,SAAA,CAAA3B,IAAA;gBAEdxC,OAAO,CAACmB,OAAO,CAACoB,kCAAwB,CAAC,GAAGuB,QAAQ;;gBAEpD;gBAAAK,SAAA,CAAA7B,IAAA;gBAAA,OACkBoB,MAAI,CAACU,KAAK,CAACC,OAAO,CAACrE,OAAO,CAAC;cAAA;gBAAvC+D,GAAG,GAAAI,SAAA,CAAA3B,IAAA;gBACT7C,aAAa,CAACuD,MAAM,CAACxC,GAAG,CAAC;gBAEzBiD,OAAO,CAACI,GAAG,CAAC;gBAACI,SAAA,CAAA7B,IAAA;gBAAA;cAAA;gBAAA6B,SAAA,CAAA9B,IAAA;gBAAA6B,EAAA,GAAAC,SAAA;gBAEbxE,aAAa,CAACuD,MAAM,CAACxC,GAAG,CAAC;gBAEnBsD,GAAG,GAAG,CAAAE,EAAA,aAAAA,EAAA,uBAAAA,EAAA,CAAGI,OAAO,KAAIC,MAAM,CAAAL,EAAE,CAAC;gBAE7BD,GAAkB,GAAG,IAAIO,KAAK,sCAAA1D,MAAA,CAAsCkD,GAAG,CAAE,CAAC;gBAChFC,GAAG,CAACrB,UAAU,GAAAsB,EAAA,aAAAA,EAAA,uBAAGA,EAAA,CAAGtB,UAAU;gBAC9BqB,GAAG,CAACQ,QAAQ,GAAAP,EAAI;gBAEhBvB,MAAM,CAACsB,GAAG,CAAC;cAAC;cAAA;gBAAA,OAAAE,SAAA,CAAAd,IAAA;YAAA;UAAA,GAAAQ,QAAA;QAAA,CAEf,IAAEa,wBAAc,CAAC;MACpB,CAAC,CAAC;IACJ;EAAC;IAAAhE,GAAA;IAAAC,KAAA,EA3GD,SAAOgE,MAAMA,CAAA,EAAG;MAAA,IAAAC,MAAA;MACd;MACA,OAAO,IAAI/E,+BAA+B,CAAC;QACzCuE,KAAK,EAAE,IAAI;QAEX7D,yBAAyB;UAAA,IAAAD,0BAAA,OAAAqB,kBAAA,CAAA1C,OAAA,eAAA2C,YAAA,CAAA3C,OAAA,CAAA4C,IAAA,CAAE,SAAAgD,SAAA;YAAA,OAAAjD,YAAA,CAAA3C,OAAA,CAAAkD,IAAA,WAAA2C,SAAA;cAAA,kBAAAA,SAAA,CAAAzC,IAAA,GAAAyC,SAAA,CAAAxC,IAAA;gBAAA;kBAAA,OAAAwC,SAAA,CAAArC,MAAA,WAElBmC,MAAI,CAACG,QAAQ,CAACC,GAAG,CAACzE,yBAAyB,CAAC,CAAC;gBAAA;gBAAA;kBAAA,OAAAuE,SAAA,CAAAzB,IAAA;cAAA;YAAA,GAAAwB,QAAA;UAAA,CACrD;UAAA,SAHDtE,yBAAyBA,CAAA;YAAA,OAAAD,0BAAA,CAAAhB,KAAA,OAAAmE,SAAA;UAAA;UAAA,OAAzBlD,yBAAyB;QAAA,GAGxB;QAEDF,uBAAuB;UAAA,IAAAD,wBAAA,OAAAuB,kBAAA,CAAA1C,OAAA,eAAA2C,YAAA,CAAA3C,OAAA,CAAA4C,IAAA,CAAE,SAAAoD,SAAA;YAAA,IAAAC,qBAAA,EAAAC,IAAA,EAAAC,KAAA,EAAAC,gBAAA,EAAAC,oBAAA;YAAA,OAAA1D,YAAA,CAAA3C,OAAA,CAAAkD,IAAA,WAAAoD,SAAA;cAAA,kBAAAA,SAAA,CAAAlD,IAAA,GAAAkD,SAAA,CAAAjD,IAAA;gBAAA;kBAAAiD,SAAA,CAAAjD,IAAA;kBAAA,OAEFsC,MAAI,CAACG,QAAQ,CAACC,GAAG,CAAC3E,uBAAuB,CAAC,CAAC;gBAAA;kBAAA6E,qBAAA,GAAAK,SAAA,CAAA/C,IAAA;kBAAzD2C,IAAI,GAAAD,qBAAA,CAAJC,IAAI;kBAAAC,KAAA,GACsCD,IAAI,aAAJA,IAAI,cAAJA,IAAI,GAAI,CAAC,CAAC,EAApDE,gBAAgB,GAAAD,KAAA,CAAhBC,gBAAgB,EAAEC,oBAAoB,GAAAF,KAAA,CAApBE,oBAAoB,EAE7C;kBACAV,MAAI,CAACG,QAAQ,CAACC,GAAG,CAACQ,mBAAmB,CAACH,gBAAgB,EAAEC,oBAAoB,CAAC;kBAAC,OAAAC,SAAA,CAAA9C,MAAA,WAEvE4C,gBAAgB;gBAAA;gBAAA;kBAAA,OAAAE,SAAA,CAAAlC,IAAA;cAAA;YAAA,GAAA4B,QAAA;UAAA,CACxB;UAAA,SATD5E,uBAAuBA,CAAA;YAAA,OAAAD,wBAAA,CAAAd,KAAA,OAAAmE,SAAA;UAAA;UAAA,OAAvBpD,uBAAuB;QAAA;MAUzB,CAAC,CAAC;IACJ;EAAC;AAAA,EAlC0DoF,qBAAW","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_httpCore","require","_loggerProxy","_interopRequireDefault","_constant","_utils","_callSuper","t","o","e","_getPrototypeOf2","default","_possibleConstructorReturn2","_isNativeReflectConstruct","_Reflect$construct","constructor","apply","Boolean","prototype","valueOf","call","retryCountMap","_map","DataChannelAuthTokenInterceptor","exports","_Interceptor","options","_this","_classCallCheck2","_defineProperty2","_refreshDataChannelToken","refreshDataChannelToken","_isDataChannelTokenEnabled","isDataChannelTokenEnabled","_inherits2","_createClass2","key","value","getRetryKey","RETRY_KEY","concat","_now","Math","random","getHeader","headers","name","_keys","find","k","toLowerCase","undefined","_onRequest","_asyncToGenerator2","_regenerator","mark","_callee","token","enabled","newToken","_t","wrap","_context","prev","next","DATA_CHANNEL_AUTH_HEADER","sent","abrupt","isJwtTokenExpired","LoggerProxy","logger","warn","message","stop","onRequest","_x","arguments","_onResponseError","_callee2","reason","retryCount","_context2","_promise","reject","statusCode","get","MAX_RETRY","error","delete","set","refreshTokenAndRetryWithDelay","onResponseError","_x2","_x3","_this2","resolve","setTimeout","_callee3","res","msg","err","_t2","_context3","webex","request","String","Error","original","RETRY_INTERVAL","create","_this3","_callee4","_context4","internal","llm","_callee5","_yield$_this3$interna","body","_ref2","datachannelToken","dataChannelTokenType","_context5","setDatachannelToken","Interceptor"],"sources":["dataChannelAuthToken.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2026 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {Interceptor} from '@webex/http-core';\nimport LoggerProxy from '../common/logs/logger-proxy';\nimport {DATA_CHANNEL_AUTH_HEADER, MAX_RETRY, RETRY_INTERVAL, RETRY_KEY} from './constant';\nimport {isJwtTokenExpired} from './utils';\n\n/*!\n * Copyright (c) 2015-2026 Cisco Systems, Inc. See LICENSE file.\n */\n\nconst retryCountMap = new Map();\ninterface HttpLikeError extends Error {\n statusCode?: number;\n original?: any;\n}\n/**\n * @class\n */\nexport default class DataChannelAuthTokenInterceptor extends Interceptor {\n private _refreshDataChannelToken: () => Promise<string>;\n private _isDataChannelTokenEnabled: () => Promise<boolean>;\n constructor(options) {\n super(options);\n\n this._refreshDataChannelToken = options.refreshDataChannelToken;\n this._isDataChannelTokenEnabled = options.isDataChannelTokenEnabled;\n }\n\n /**\n * @returns {DataChannelAuthTokenInterceptor}\n */\n static create() {\n // @ts-ignore\n return new DataChannelAuthTokenInterceptor({\n webex: this,\n\n isDataChannelTokenEnabled: async () => {\n // @ts-ignore\n return this.internal.llm.isDataChannelTokenEnabled();\n },\n\n refreshDataChannelToken: async () => {\n // @ts-ignore\n const {body} = await this.internal.llm.refreshDataChannelToken();\n const {datachannelToken, dataChannelTokenType} = body ?? {};\n\n // @ts-ignore\n this.internal.llm.setDatachannelToken(datachannelToken, dataChannelTokenType);\n\n return datachannelToken;\n },\n });\n }\n\n private getRetryKey(options) {\n if (!options[RETRY_KEY]) {\n options[RETRY_KEY] = `${Date.now()}-${Math.random()}`;\n }\n\n return options[RETRY_KEY];\n }\n\n // Helper function to get header value case insensitively\n private getHeader(headers: Record<string, string>, name: string) {\n const key = Object.keys(headers).find((k) => k.toLowerCase() === name.toLowerCase());\n\n return key ? headers[key] : undefined;\n }\n\n /**\n * Intercepts outgoing requests and refreshes the Data-Channel-Auth-Token\n * if the current JWT token is expired before the request is sent.\n *\n * @param {Object} options - The original request options.\n * @returns {Promise<Object>} Updated request options with refreshed token if needed.\n */\n async onRequest(options) {\n const token = this.getHeader(options.headers, DATA_CHANNEL_AUTH_HEADER);\n const enabled = await this._isDataChannelTokenEnabled();\n\n if (!token || !enabled) {\n return options;\n }\n\n if (isJwtTokenExpired(token)) {\n try {\n const newToken = await this._refreshDataChannelToken();\n options.headers[DATA_CHANNEL_AUTH_HEADER] = newToken;\n } catch (e) {\n LoggerProxy.logger.warn(`DataChannelAuthTokenInterceptor: refresh failed: ${e.message}`);\n }\n }\n\n return options;\n }\n\n /**\n * Intercept responses and, on 401/403 with `Data-Channel-Auth-Token` header,\n * attempt to refresh the data channel token and retry the original request once.\n *\n * @param {Object} options\n * @param {Object} reason\n * @returns {Promise<HttpResponse>}\n */\n async onResponseError(options, reason) {\n const token = this.getHeader(options.headers, DATA_CHANNEL_AUTH_HEADER);\n const enabled = await this._isDataChannelTokenEnabled();\n\n if (!token || !enabled) {\n return Promise.reject(reason);\n }\n\n if (reason.statusCode !== 401 && reason.statusCode !== 403) {\n return Promise.reject(reason);\n }\n\n const key = this.getRetryKey(options);\n const retryCount = retryCountMap.get(key) || 0;\n\n if (retryCount >= MAX_RETRY) {\n LoggerProxy.logger.error(`data channel token refresh exceeded max retry (${MAX_RETRY})`);\n retryCountMap.delete(key);\n\n return Promise.reject(reason);\n }\n\n retryCountMap.set(key, retryCount + 1);\n\n return this.refreshTokenAndRetryWithDelay(options);\n }\n\n /**\n * Retry the failed data channel request after a delay.\n * Refreshes the Data-Channel-Auth-Token and re-sends the original request.\n *\n * @param {Object} options - Original request options.\n * @returns {Promise<HttpResponse>} - Resolves on successful retry.\n */\n refreshTokenAndRetryWithDelay(options) {\n return new Promise((resolve, reject) => {\n setTimeout(async () => {\n const key = this.getRetryKey(options);\n try {\n const newToken = await this._refreshDataChannelToken();\n\n options.headers[DATA_CHANNEL_AUTH_HEADER] = newToken;\n\n // @ts-ignore\n const res = await this.webex.request(options);\n retryCountMap.delete(key);\n\n resolve(res);\n } catch (e) {\n retryCountMap.delete(key);\n\n const msg = e?.message || String(e);\n\n const err: HttpLikeError = new Error(`DataChannel token refresh failed: ${msg}`);\n err.statusCode = e?.statusCode;\n err.original = e;\n\n reject(err);\n }\n }, RETRY_INTERVAL);\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
|
|
4
|
+
var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
|
|
5
|
+
var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
|
|
6
|
+
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
|
|
7
|
+
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
8
|
+
_Object$defineProperty(exports, "__esModule", {
|
|
9
|
+
value: true
|
|
10
|
+
});
|
|
11
|
+
exports.isJwtTokenExpired = void 0;
|
|
12
|
+
var _now = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/date/now"));
|
|
13
|
+
var jose = _interopRequireWildcard(require("jose"));
|
|
14
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof _WeakMap) var r = new _WeakMap(), n = new _WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = _Object$defineProperty) && _Object$getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
15
|
+
var EXPIRY_BUFFER = 30 * 1000;
|
|
16
|
+
|
|
17
|
+
// eslint-disable-next-line import/prefer-default-export
|
|
18
|
+
var isJwtTokenExpired = exports.isJwtTokenExpired = function isJwtTokenExpired(token) {
|
|
19
|
+
try {
|
|
20
|
+
var payload = jose.decodeJwt(token);
|
|
21
|
+
if (!(payload !== null && payload !== void 0 && payload.exp)) return false;
|
|
22
|
+
return payload.exp * 1000 < (0, _now.default)() + EXPIRY_BUFFER;
|
|
23
|
+
} catch (_unused) {
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jose","_interopRequireWildcard","require","e","t","_WeakMap","r","n","__esModule","o","i","f","__proto__","default","_typeof","has","get","set","_t","hasOwnProperty","call","_Object$defineProperty","_Object$getOwnPropertyDescriptor","EXPIRY_BUFFER","isJwtTokenExpired","exports","token","payload","decodeJwt","exp","_now","_unused"],"sources":["utils.ts"],"sourcesContent":["import * as jose from 'jose';\n\nconst EXPIRY_BUFFER = 30 * 1000;\n\n// eslint-disable-next-line import/prefer-default-export\nexport const isJwtTokenExpired = (token: string): boolean => {\n try {\n const payload = jose.decodeJwt(token);\n\n if (!payload?.exp) return false;\n\n return payload.exp * 1000 < Date.now() + EXPIRY_BUFFER;\n } catch {\n return true;\n }\n};\n"],"mappings":";;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA6B,SAAAD,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,QAAA,MAAAC,CAAA,OAAAD,QAAA,IAAAE,CAAA,OAAAF,QAAA,YAAAJ,uBAAA,YAAAA,wBAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,gBAAAW,OAAA,CAAAX,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAM,GAAA,CAAAZ,CAAA,UAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,GAAAM,CAAA,CAAAQ,GAAA,CAAAd,CAAA,EAAAQ,CAAA,cAAAO,EAAA,IAAAf,CAAA,gBAAAe,EAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,EAAA,OAAAR,CAAA,IAAAD,CAAA,GAAAY,sBAAA,KAAAC,gCAAA,CAAAnB,CAAA,EAAAe,EAAA,OAAAR,CAAA,CAAAM,GAAA,IAAAN,CAAA,CAAAO,GAAA,IAAAR,CAAA,CAAAE,CAAA,EAAAO,EAAA,EAAAR,CAAA,IAAAC,CAAA,CAAAO,EAAA,IAAAf,CAAA,CAAAe,EAAA,WAAAP,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAE7B,IAAMmB,aAAa,GAAG,EAAE,GAAG,IAAI;;AAE/B;AACO,IAAMC,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,SAApBA,iBAAiBA,CAAIE,KAAa,EAAc;EAC3D,IAAI;IACF,IAAMC,OAAO,GAAG3B,IAAI,CAAC4B,SAAS,CAACF,KAAK,CAAC;IAErC,IAAI,EAACC,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEE,GAAG,GAAE,OAAO,KAAK;IAE/B,OAAOF,OAAO,CAACE,GAAG,GAAG,IAAI,GAAG,IAAAC,IAAA,CAAAjB,OAAA,EAAS,CAAC,GAAGU,aAAa;EACxD,CAAC,CAAC,OAAAQ,OAAA,EAAM;IACN,OAAO,IAAI;EACb;AACF,CAAC","ignoreList":[]}
|
|
@@ -372,7 +372,7 @@ var SimultaneousInterpretation = _webexCore.WebexPlugin.extend({
|
|
|
372
372
|
throw error;
|
|
373
373
|
});
|
|
374
374
|
},
|
|
375
|
-
version: "3.11.0-next.
|
|
375
|
+
version: "3.11.0-next.48"
|
|
376
376
|
});
|
|
377
377
|
var _default = exports.default = SimultaneousInterpretation;
|
|
378
378
|
//# sourceMappingURL=index.js.map
|
|
@@ -18,7 +18,7 @@ var SILanguage = _webexCore.WebexPlugin.extend({
|
|
|
18
18
|
languageCode: 'number',
|
|
19
19
|
languageName: 'string'
|
|
20
20
|
},
|
|
21
|
-
version: "3.11.0-next.
|
|
21
|
+
version: "3.11.0-next.48"
|
|
22
22
|
});
|
|
23
23
|
var _default = exports.default = SILanguage;
|
|
24
24
|
//# sourceMappingURL=siLanguage.js.map
|
package/dist/meeting/index.js
CHANGED
|
@@ -22,7 +22,6 @@ var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/pr
|
|
|
22
22
|
var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map"));
|
|
23
23
|
var _isNan = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/number/is-nan"));
|
|
24
24
|
var _keys = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/keys"));
|
|
25
|
-
var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
|
|
26
25
|
var _weakMap = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/weak-map"));
|
|
27
26
|
var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
|
|
28
27
|
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/typeof"));
|
|
@@ -10034,7 +10033,7 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
10034
10033
|
key: "refreshDataChannelToken",
|
|
10035
10034
|
value: (function () {
|
|
10036
10035
|
var _refreshDataChannelToken = (0, _asyncToGenerator2.default)(/*#__PURE__*/_regenerator.default.mark(function _callee45() {
|
|
10037
|
-
var isPracticeSession, dataChannelTokenType, res, msg,
|
|
10036
|
+
var isPracticeSession, dataChannelTokenType, res, msg, _t35;
|
|
10038
10037
|
return _regenerator.default.wrap(function (_context45) {
|
|
10039
10038
|
while (1) switch (_context45.prev = _context45.next) {
|
|
10040
10039
|
case 0:
|
|
@@ -10059,11 +10058,10 @@ var Meeting = exports.default = /*#__PURE__*/function (_StatelessWebexPlugin) {
|
|
|
10059
10058
|
_context45.prev = 3;
|
|
10060
10059
|
_t35 = _context45["catch"](1);
|
|
10061
10060
|
msg = (_t35 === null || _t35 === void 0 ? void 0 : _t35.message) || String(_t35);
|
|
10062
|
-
|
|
10063
|
-
statusCode: _t35 === null || _t35 === void 0 ? void 0 : _t35.statusCode
|
|
10064
|
-
original: _t35
|
|
10061
|
+
_loggerProxy.default.logger.warn("Meeting:index#refreshDataChannelToken --> DataChannel token refresh failed (likely locus changed or participant left): ".concat(msg), {
|
|
10062
|
+
statusCode: _t35 === null || _t35 === void 0 ? void 0 : _t35.statusCode
|
|
10065
10063
|
});
|
|
10066
|
-
|
|
10064
|
+
return _context45.abrupt("return", null);
|
|
10067
10065
|
case 4:
|
|
10068
10066
|
case "end":
|
|
10069
10067
|
return _context45.stop();
|