mirror of
https://github.com/jambonz/jambonz-feature-server.git
synced 2026-02-15 02:39:35 +00:00
Compare commits
1 Commits
v0.8.0-rc1
...
v0.8.0-rc9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4ef80dafd2 |
3
.github/workflows/build.yml
vendored
3
.github/workflows/build.yml
vendored
@@ -1,6 +1,7 @@
|
|||||||
name: CI
|
name: CI
|
||||||
|
|
||||||
on: [push, pull_request]
|
on:
|
||||||
|
push:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
|
|||||||
@@ -1670,7 +1670,7 @@ class CallSession extends Emitter {
|
|||||||
* @param {number} sipStatus - current sip status
|
* @param {number} sipStatus - current sip status
|
||||||
* @param {number} [duration] - duration of a completed call, in seconds
|
* @param {number} [duration] - duration of a completed call, in seconds
|
||||||
*/
|
*/
|
||||||
async _notifyCallStatusChange({callStatus, sipStatus, sipReason, duration}) {
|
_notifyCallStatusChange({callStatus, sipStatus, sipReason, duration}) {
|
||||||
if (this.callMoved) return;
|
if (this.callMoved) return;
|
||||||
|
|
||||||
/* race condition: we hang up at the same time as the caller */
|
/* race condition: we hang up at the same time as the caller */
|
||||||
@@ -1690,7 +1690,7 @@ class CallSession extends Emitter {
|
|||||||
try {
|
try {
|
||||||
const b3 = this.b3;
|
const b3 = this.b3;
|
||||||
const httpHeaders = b3 && {b3};
|
const httpHeaders = b3 && {b3};
|
||||||
await this.notifier.request('call:status', this.call_status_hook, this.callInfo.toJSON(), httpHeaders);
|
this.notifier.request('call:status', this.call_status_hook, this.callInfo.toJSON(), httpHeaders);
|
||||||
span.end();
|
span.end();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
span.end();
|
span.end();
|
||||||
|
|||||||
@@ -171,10 +171,7 @@ class TaskGather extends Task {
|
|||||||
vendor: this.vendor
|
vendor: this.vendor
|
||||||
}).catch((err) => this.logger.info({err}, 'Error generating alert for no stt'));
|
}).catch((err) => this.logger.info({err}, 'Error generating alert for no stt'));
|
||||||
// Notify application that STT vender is wrong.
|
// Notify application that STT vender is wrong.
|
||||||
this.notifyError({
|
this.notifyError(`No speech-to-text service credentials for ${this.vendor} have been configured`);
|
||||||
msg: 'ASR error',
|
|
||||||
details: `No speech-to-text service credentials for ${this.vendor} have been configured`
|
|
||||||
});
|
|
||||||
this.notifyTaskDone();
|
this.notifyTaskDone();
|
||||||
throw new Error(`No speech-to-text service credentials for ${this.vendor} have been configured`);
|
throw new Error(`No speech-to-text service credentials for ${this.vendor} have been configured`);
|
||||||
}
|
}
|
||||||
@@ -398,7 +395,7 @@ class TaskGather extends Task {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
this.notifyError({ msg: 'ASR error', details:`Invalid vendor ${this.vendor}`});
|
this.notifyError(`Invalid vendor ${this.vendor}`);
|
||||||
this.notifyTaskDone();
|
this.notifyTaskDone();
|
||||||
throw new Error(`Invalid vendor ${this.vendor}`);
|
throw new Error(`Invalid vendor ${this.vendor}`);
|
||||||
}
|
}
|
||||||
@@ -626,7 +623,7 @@ class TaskGather extends Task {
|
|||||||
message: `Failed connecting to Deepgram speech recognizer: ${reason}`,
|
message: `Failed connecting to Deepgram speech recognizer: ${reason}`,
|
||||||
vendor: 'deepgram',
|
vendor: 'deepgram',
|
||||||
}).catch((err) => this.logger.info({err}, 'Error generating alert for deepgram connection failure'));
|
}).catch((err) => this.logger.info({err}, 'Error generating alert for deepgram connection failure'));
|
||||||
this.notifyError({msg: 'ASR error', details:`Failed connecting to speech vendor deepgram: ${reason}`});
|
this.notifyError(`Failed connecting to speech vendor deepgram: ${reason}`);
|
||||||
this.notifyTaskDone();
|
this.notifyTaskDone();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -644,7 +641,7 @@ class TaskGather extends Task {
|
|||||||
message: `Failed connecting to IBM watson speech recognizer: ${reason}`,
|
message: `Failed connecting to IBM watson speech recognizer: ${reason}`,
|
||||||
vendor: 'ibm',
|
vendor: 'ibm',
|
||||||
}).catch((err) => this.logger.info({err}, 'Error generating alert for IBM connection failure'));
|
}).catch((err) => this.logger.info({err}, 'Error generating alert for IBM connection failure'));
|
||||||
this.notifyError({msg: 'ASR error', details:`Failed connecting to speech vendor IBM: ${reason}`});
|
this.notifyError(`Failed connecting to speech vendor IBM: ${reason}`);
|
||||||
this.notifyTaskDone();
|
this.notifyTaskDone();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -54,10 +54,6 @@
|
|||||||
"url": "string",
|
"url": "string",
|
||||||
"sampleRate": "number",
|
"sampleRate": "number",
|
||||||
"wsAuth": "#auth",
|
"wsAuth": "#auth",
|
||||||
"mixType": {
|
|
||||||
"type": "string",
|
|
||||||
"enum": ["mono", "stereo", "mixed"]
|
|
||||||
},
|
|
||||||
"metadata": "object"
|
"metadata": "object"
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
|
|||||||
@@ -337,7 +337,7 @@ module.exports = (logger) => {
|
|||||||
{NUANCE_TOPIC: nuanceOptions.topic},
|
{NUANCE_TOPIC: nuanceOptions.topic},
|
||||||
...(nuanceOptions.utteranceDetectionMode) &&
|
...(nuanceOptions.utteranceDetectionMode) &&
|
||||||
{NUANCE_UTTERANCE_DETECTION_MODE: nuanceOptions.utteranceDetectionMode},
|
{NUANCE_UTTERANCE_DETECTION_MODE: nuanceOptions.utteranceDetectionMode},
|
||||||
...(nuanceOptions.punctuation || rOpts.punctuation) && {NUANCE_PUNCTUATION: nuanceOptions.punctuation},
|
...(nuanceOptions.punctuation) && {NUANCE_PUNCTUATION: nuanceOptions.punctuation},
|
||||||
...(nuanceOptions.profanityFilter) &&
|
...(nuanceOptions.profanityFilter) &&
|
||||||
{NUANCE_FILTER_PROFANITY: nuanceOptions.profanityFilter},
|
{NUANCE_FILTER_PROFANITY: nuanceOptions.profanityFilter},
|
||||||
...(nuanceOptions.includeTokenization) &&
|
...(nuanceOptions.includeTokenization) &&
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ class WsRequestor extends BaseRequestor {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (this.closedGracefully) {
|
if (this.closedGracefully) {
|
||||||
this.logger.debug(`WsRequestor:request - discarding ${type} because socket was closed gracefully`);
|
this.logger.debug(`WsRequestor:request - discarding ${type} because we closed the socket`);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -96,9 +96,6 @@ class WsRequestor extends BaseRequestor {
|
|||||||
assert.ok(url, 'WsRequestor:request url was not provided');
|
assert.ok(url, 'WsRequestor:request url was not provided');
|
||||||
|
|
||||||
const msgid = short.generate();
|
const msgid = short.generate();
|
||||||
// save initial msgid in case we need to reconnect during initial session:new
|
|
||||||
if (type === 'session:new') this._initMsgId = msgid;
|
|
||||||
|
|
||||||
const b3 = httpHeaders?.b3 ? {b3: httpHeaders.b3} : {};
|
const b3 = httpHeaders?.b3 ? {b3: httpHeaders.b3} : {};
|
||||||
const obj = {
|
const obj = {
|
||||||
type,
|
type,
|
||||||
@@ -121,18 +118,8 @@ class WsRequestor extends BaseRequestor {
|
|||||||
|
|
||||||
//this.logger.debug({obj}, `websocket: sending (${url})`);
|
//this.logger.debug({obj}, `websocket: sending (${url})`);
|
||||||
|
|
||||||
/* special case: reconnecting before we received ack to session:new */
|
|
||||||
let reconnectingWithoutAck = false;
|
|
||||||
if (type === 'session:reconnect' && this._initMsgId) {
|
|
||||||
reconnectingWithoutAck = true;
|
|
||||||
const obj = this.messagesInFlight.get(this._initMsgId);
|
|
||||||
this.messagesInFlight.delete(this._initMsgId);
|
|
||||||
this.messagesInFlight.set(msgid, obj);
|
|
||||||
this._initMsgId = msgid;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* simple notifications */
|
/* simple notifications */
|
||||||
if (['call:status', 'verb:status', 'jambonz:error'].includes(type) || reconnectingWithoutAck) {
|
if (['call:status', 'jambonz:error', 'session:reconnect'].includes(type)) {
|
||||||
this.ws.send(JSON.stringify(obj), () => {
|
this.ws.send(JSON.stringify(obj), () => {
|
||||||
this.logger.debug({obj}, `WsRequestor:request websocket: sent (${url})`);
|
this.logger.debug({obj}, `WsRequestor:request websocket: sent (${url})`);
|
||||||
sendQueuedMsgs();
|
sendQueuedMsgs();
|
||||||
@@ -183,7 +170,14 @@ class WsRequestor extends BaseRequestor {
|
|||||||
this.ws.removeAllListeners();
|
this.ws.removeAllListeners();
|
||||||
this.ws = null;
|
this.ws = null;
|
||||||
}
|
}
|
||||||
this._clearPendingMessages();
|
|
||||||
|
for (const [msgid, obj] of this.messagesInFlight) {
|
||||||
|
const {timer} = obj;
|
||||||
|
clearTimeout(timer);
|
||||||
|
obj.failure(`abandoning msgid ${msgid} since we have closed the socket`);
|
||||||
|
}
|
||||||
|
this.messagesInFlight.clear();
|
||||||
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
this.logger.info({err}, 'WsRequestor: Error closing socket');
|
this.logger.info({err}, 'WsRequestor: Error closing socket');
|
||||||
}
|
}
|
||||||
@@ -228,15 +222,6 @@ class WsRequestor extends BaseRequestor {
|
|||||||
.on('error', this._onError.bind(this));
|
.on('error', this._onError.bind(this));
|
||||||
}
|
}
|
||||||
|
|
||||||
_clearPendingMessages() {
|
|
||||||
for (const [msgid, obj] of this.messagesInFlight) {
|
|
||||||
const {timer} = obj;
|
|
||||||
clearTimeout(timer);
|
|
||||||
if (!this._initMsgId) obj.failure(`abandoning msgid ${msgid} since socket is closed`);
|
|
||||||
}
|
|
||||||
this.messagesInFlight.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
_onError(err) {
|
_onError(err) {
|
||||||
if (this.connections > 0) {
|
if (this.connections > 0) {
|
||||||
this.logger.info({url: this.url, err}, 'WsRequestor:_onError');
|
this.logger.info({url: this.url, err}, 'WsRequestor:_onError');
|
||||||
@@ -280,7 +265,6 @@ class WsRequestor extends BaseRequestor {
|
|||||||
this.ws = null;
|
this.ws = null;
|
||||||
this.emit('connection-dropped');
|
this.emit('connection-dropped');
|
||||||
if (this.connections > 0 && this.connections < MAX_RECONNECTS && !this.closedGracefully) {
|
if (this.connections > 0 && this.connections < MAX_RECONNECTS && !this.closedGracefully) {
|
||||||
if (!this._initMsgId) this._clearPendingMessages();
|
|
||||||
this.logger.debug(`WsRequestor:_onSocketClosed waiting ${this.backoffMs} to reconnect`);
|
this.logger.debug(`WsRequestor:_onSocketClosed waiting ${this.backoffMs} to reconnect`);
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.logger.debug(
|
this.logger.debug(
|
||||||
@@ -332,7 +316,6 @@ class WsRequestor extends BaseRequestor {
|
|||||||
}
|
}
|
||||||
|
|
||||||
_recvAck(msgid, data) {
|
_recvAck(msgid, data) {
|
||||||
this._initMsgId = null;
|
|
||||||
const obj = this.messagesInFlight.get(msgid);
|
const obj = this.messagesInFlight.get(msgid);
|
||||||
if (!obj) {
|
if (!obj) {
|
||||||
this.logger.info({url: this.url}, `WsRequestor:_recvAck - ack to unknown msgid ${msgid}, discarding`);
|
this.logger.info({url: this.url}, `WsRequestor:_recvAck - ack to unknown msgid ${msgid}, discarding`);
|
||||||
|
|||||||
491
package-lock.json
generated
491
package-lock.json
generated
@@ -1,15 +1,15 @@
|
|||||||
{
|
{
|
||||||
"name": "jambonz-feature-server",
|
"name": "jambonz-feature-server",
|
||||||
"version": "v0.8.0",
|
"version": "v0.7.8",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "jambonz-feature-server",
|
"name": "jambonz-feature-server",
|
||||||
"version": "v0.8.0",
|
"version": "v0.7.8",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jambonz/db-helpers": "^0.7.4",
|
"@jambonz/db-helpers": "^0.7.3",
|
||||||
"@jambonz/http-health-check": "^0.0.1",
|
"@jambonz/http-health-check": "^0.0.1",
|
||||||
"@jambonz/realtimedb-helpers": "^0.6.3",
|
"@jambonz/realtimedb-helpers": "^0.6.3",
|
||||||
"@jambonz/stats-collector": "^0.1.6",
|
"@jambonz/stats-collector": "^0.1.6",
|
||||||
@@ -28,17 +28,15 @@
|
|||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"deepcopy": "^2.1.0",
|
"deepcopy": "^2.1.0",
|
||||||
"drachtio-fsmrf": "^3.0.16",
|
"drachtio-fsmrf": "^3.0.16",
|
||||||
"drachtio-srf": "^4.5.23 ",
|
"drachtio-srf": "^4.5.23",
|
||||||
"express": "^4.18.2",
|
"express": "^4.18.2",
|
||||||
"ip": "^1.1.8",
|
"ip": "^1.1.8",
|
||||||
"moment": "^2.29.4",
|
"moment": "^2.29.4",
|
||||||
"parse-url": "^8.1.0",
|
"parse-url": "^8.1.0",
|
||||||
"pino": "^8.8.0",
|
"pino": "^8.8.0",
|
||||||
"polly-ssml-split": "^0.1.0",
|
"polly-ssml-split": "^0.1.0",
|
||||||
"proxyquire": "^2.1.3",
|
|
||||||
"sdp-transform": "^2.14.1",
|
"sdp-transform": "^2.14.1",
|
||||||
"short-uuid": "^4.2.2",
|
"short-uuid": "^4.2.2",
|
||||||
"sinon": "^15.0.1",
|
|
||||||
"to-snake-case": "^1.0.0",
|
"to-snake-case": "^1.0.0",
|
||||||
"undici": "^5.16.0",
|
"undici": "^5.16.0",
|
||||||
"uuid-random": "^1.3.2",
|
"uuid-random": "^1.3.2",
|
||||||
@@ -603,9 +601,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@jambonz/db-helpers": {
|
"node_modules/@jambonz/db-helpers": {
|
||||||
"version": "0.7.4",
|
"version": "0.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.3.tgz",
|
||||||
"integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==",
|
"integrity": "sha512-FXQPnl5AGV3P6RhvdSKfjIOdEXShYe7aKJayJjaPARPTCTGqLTDhV2tfsWirCrpQhn+vanJHAiOyzOTmbDIfzA==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cidr-matcher": "^2.1.1",
|
"cidr-matcher": "^2.1.1",
|
||||||
"debug": "^4.3.3",
|
"debug": "^4.3.3",
|
||||||
@@ -735,17 +733,6 @@
|
|||||||
"@jridgewell/sourcemap-codec": "1.4.14"
|
"@jridgewell/sourcemap-codec": "1.4.14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@jsdoc/salty": {
|
|
||||||
"version": "0.2.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz",
|
|
||||||
"integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==",
|
|
||||||
"dependencies": {
|
|
||||||
"lodash": "^4.17.21"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=v12.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@opentelemetry/api": {
|
"node_modules/@opentelemetry/api": {
|
||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz",
|
||||||
@@ -1034,37 +1021,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
||||||
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
||||||
},
|
},
|
||||||
"node_modules/@sinonjs/commons": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz",
|
|
||||||
"integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==",
|
|
||||||
"dependencies": {
|
|
||||||
"type-detect": "4.0.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@sinonjs/fake-timers": {
|
|
||||||
"version": "10.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz",
|
|
||||||
"integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==",
|
|
||||||
"dependencies": {
|
|
||||||
"@sinonjs/commons": "^2.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@sinonjs/samsam": {
|
|
||||||
"version": "7.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz",
|
|
||||||
"integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==",
|
|
||||||
"dependencies": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"lodash.get": "^4.4.2",
|
|
||||||
"type-detect": "^4.0.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@sinonjs/text-encoding": {
|
|
||||||
"version": "0.7.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz",
|
|
||||||
"integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ=="
|
|
||||||
},
|
|
||||||
"node_modules/@tokenizer/token": {
|
"node_modules/@tokenizer/token": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz",
|
||||||
@@ -1088,15 +1044,6 @@
|
|||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/glob": {
|
|
||||||
"version": "8.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-8.0.1.tgz",
|
|
||||||
"integrity": "sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw==",
|
|
||||||
"dependencies": {
|
|
||||||
"@types/minimatch": "^5.1.2",
|
|
||||||
"@types/node": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/isstream": {
|
"node_modules/@types/isstream": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/isstream/-/isstream-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@types/isstream/-/isstream-0.1.0.tgz",
|
||||||
@@ -1147,25 +1094,11 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
|
||||||
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA=="
|
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA=="
|
||||||
},
|
},
|
||||||
"node_modules/@types/minimatch": {
|
|
||||||
"version": "5.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
|
|
||||||
"integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA=="
|
|
||||||
},
|
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "18.11.18",
|
"version": "18.11.18",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz",
|
||||||
"integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA=="
|
"integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA=="
|
||||||
},
|
},
|
||||||
"node_modules/@types/rimraf": {
|
|
||||||
"version": "3.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/rimraf/-/rimraf-3.0.2.tgz",
|
|
||||||
"integrity": "sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ==",
|
|
||||||
"dependencies": {
|
|
||||||
"@types/glob": "*",
|
|
||||||
"@types/node": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/@types/stack-utils": {
|
"node_modules/@types/stack-utils": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
|
||||||
@@ -2160,14 +2093,6 @@
|
|||||||
"npm": "1.2.8000 || >= 1.4.16"
|
"npm": "1.2.8000 || >= 1.4.16"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/diff": {
|
|
||||||
"version": "5.1.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
|
|
||||||
"integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==",
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.3.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/diff-sequences": {
|
"node_modules/diff-sequences": {
|
||||||
"version": "26.6.2",
|
"version": "26.6.2",
|
||||||
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz",
|
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz",
|
||||||
@@ -3010,18 +2935,6 @@
|
|||||||
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
|
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"node_modules/fill-keys": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz",
|
|
||||||
"integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==",
|
|
||||||
"dependencies": {
|
|
||||||
"is-object": "~1.0.1",
|
|
||||||
"merge-descriptors": "~1.0.0"
|
|
||||||
},
|
|
||||||
"engines": {
|
|
||||||
"node": ">=0.10.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/fill-range": {
|
"node_modules/fill-range": {
|
||||||
"version": "7.0.1",
|
"version": "7.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||||
@@ -3404,14 +3317,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/google-gax": {
|
"node_modules/google-gax": {
|
||||||
"version": "3.5.6",
|
"version": "3.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.6.tgz",
|
"resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.2.tgz",
|
||||||
"integrity": "sha512-gw1phnFuVB8Vtad/An9/4cLfhjNCj4FqyqDA0W09r/ZUWe70VZFZ7SNrvQNX81iLoOEjfTPHKEGZL/anuFxU5w==",
|
"integrity": "sha512-AyP53w0gHcWlzxm+jSgqCR3Xu4Ld7EpSjhtNBnNhzwwWaIUyphH9kBGNIEH+i4UGkTUXOY29K/Re8EiAvkBRGw==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@grpc/grpc-js": "~1.8.0",
|
"@grpc/grpc-js": "~1.7.0",
|
||||||
"@grpc/proto-loader": "^0.7.0",
|
"@grpc/proto-loader": "^0.7.0",
|
||||||
"@types/long": "^4.0.0",
|
"@types/long": "^4.0.0",
|
||||||
"@types/rimraf": "^3.0.2",
|
|
||||||
"abort-controller": "^3.0.0",
|
"abort-controller": "^3.0.0",
|
||||||
"duplexify": "^4.0.0",
|
"duplexify": "^4.0.0",
|
||||||
"fast-text-encoding": "^1.0.3",
|
"fast-text-encoding": "^1.0.3",
|
||||||
@@ -3420,8 +3332,8 @@
|
|||||||
"node-fetch": "^2.6.1",
|
"node-fetch": "^2.6.1",
|
||||||
"object-hash": "^3.0.0",
|
"object-hash": "^3.0.0",
|
||||||
"proto3-json-serializer": "^1.0.0",
|
"proto3-json-serializer": "^1.0.0",
|
||||||
"protobufjs": "7.2.1",
|
"protobufjs": "7.1.2",
|
||||||
"protobufjs-cli": "1.1.1",
|
"protobufjs-cli": "1.0.2",
|
||||||
"retry-request": "^5.0.0"
|
"retry-request": "^5.0.0"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -3432,6 +3344,18 @@
|
|||||||
"node": ">=12"
|
"node": ">=12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/google-gax/node_modules/@grpc/grpc-js": {
|
||||||
|
"version": "1.7.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.7.3.tgz",
|
||||||
|
"integrity": "sha512-H9l79u4kJ2PVSxUNA08HMYAnUBLj9v6KjYQ7SQ71hOZcEXhShE/y5iQCesP8+6/Ik/7i2O0a10bPquIcYfufog==",
|
||||||
|
"dependencies": {
|
||||||
|
"@grpc/proto-loader": "^0.7.0",
|
||||||
|
"@types/node": ">=12.12.47"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^8.13.0 || >=10.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/google-p12-pem": {
|
"node_modules/google-p12-pem": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-4.0.1.tgz",
|
||||||
@@ -4052,14 +3976,6 @@
|
|||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/is-object": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz",
|
|
||||||
"integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==",
|
|
||||||
"funding": {
|
|
||||||
"url": "https://github.com/sponsors/ljharb"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/is-plain-object": {
|
"node_modules/is-plain-object": {
|
||||||
"version": "2.0.4",
|
"version": "2.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
|
||||||
@@ -4489,12 +4405,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/jsdoc": {
|
"node_modules/jsdoc": {
|
||||||
"version": "4.0.0",
|
"version": "3.6.11",
|
||||||
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz",
|
||||||
"integrity": "sha512-tzTgkklbWKrlaQL2+e3NNgLcZu3NaK2vsHRx7tyHQ+H5jcB9Gx0txSd2eJWlMC/xU1+7LQu4s58Ry0RkuaEQVg==",
|
"integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/parser": "^7.9.4",
|
"@babel/parser": "^7.9.4",
|
||||||
"@jsdoc/salty": "^0.2.1",
|
|
||||||
"@types/markdown-it": "^12.2.3",
|
"@types/markdown-it": "^12.2.3",
|
||||||
"bluebird": "^3.7.2",
|
"bluebird": "^3.7.2",
|
||||||
"catharsis": "^0.9.0",
|
"catharsis": "^0.9.0",
|
||||||
@@ -4507,6 +4422,7 @@
|
|||||||
"mkdirp": "^1.0.4",
|
"mkdirp": "^1.0.4",
|
||||||
"requizzle": "^0.2.3",
|
"requizzle": "^0.2.3",
|
||||||
"strip-json-comments": "^3.1.0",
|
"strip-json-comments": "^3.1.0",
|
||||||
|
"taffydb": "2.6.2",
|
||||||
"underscore": "~1.13.2"
|
"underscore": "~1.13.2"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
@@ -4632,11 +4548,6 @@
|
|||||||
"verror": "1.10.0"
|
"verror": "1.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/just-extend": {
|
|
||||||
"version": "4.2.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz",
|
|
||||||
"integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg=="
|
|
||||||
},
|
|
||||||
"node_modules/jwa": {
|
"node_modules/jwa": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
|
||||||
@@ -4713,11 +4624,6 @@
|
|||||||
"integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
|
"integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/lodash.get": {
|
|
||||||
"version": "4.4.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
|
||||||
"integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ=="
|
|
||||||
},
|
|
||||||
"node_modules/lodash.isempty": {
|
"node_modules/lodash.isempty": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
||||||
@@ -4812,9 +4718,9 @@
|
|||||||
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
|
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
|
||||||
},
|
},
|
||||||
"node_modules/marked": {
|
"node_modules/marked": {
|
||||||
"version": "4.2.12",
|
"version": "4.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz",
|
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz",
|
||||||
"integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==",
|
"integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==",
|
||||||
"bin": {
|
"bin": {
|
||||||
"marked": "bin/marked.js"
|
"marked": "bin/marked.js"
|
||||||
},
|
},
|
||||||
@@ -4987,11 +4893,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz",
|
||||||
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
|
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
|
||||||
},
|
},
|
||||||
"node_modules/module-not-found-error": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz",
|
|
||||||
"integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g=="
|
|
||||||
},
|
|
||||||
"node_modules/moment": {
|
"node_modules/moment": {
|
||||||
"version": "2.29.4",
|
"version": "2.29.4",
|
||||||
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz",
|
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz",
|
||||||
@@ -5084,31 +4985,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
|
||||||
"integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
|
"integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
|
||||||
},
|
},
|
||||||
"node_modules/nise": {
|
|
||||||
"version": "5.1.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz",
|
|
||||||
"integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==",
|
|
||||||
"dependencies": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"@sinonjs/fake-timers": "^10.0.2",
|
|
||||||
"@sinonjs/text-encoding": "^0.7.1",
|
|
||||||
"just-extend": "^4.0.2",
|
|
||||||
"path-to-regexp": "^1.7.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/nise/node_modules/isarray": {
|
|
||||||
"version": "0.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
|
||||||
"integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ=="
|
|
||||||
},
|
|
||||||
"node_modules/nise/node_modules/path-to-regexp": {
|
|
||||||
"version": "1.8.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
|
|
||||||
"integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
|
|
||||||
"dependencies": {
|
|
||||||
"isarray": "0.0.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/no-case": {
|
"node_modules/no-case": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
|
||||||
@@ -5307,9 +5183,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/object-inspect": {
|
"node_modules/object-inspect": {
|
||||||
"version": "1.12.3",
|
"version": "1.12.2",
|
||||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
|
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
|
||||||
"integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==",
|
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==",
|
||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/ljharb"
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
}
|
}
|
||||||
@@ -5818,9 +5694,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protobufjs": {
|
"node_modules/protobufjs": {
|
||||||
"version": "7.2.1",
|
"version": "7.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.1.2.tgz",
|
||||||
"integrity": "sha512-L3pCItypTnPK27+CS8nuhZMYtsY+i8dqdq2vZsYHlG17CnWp1DWPQ/sos0vOKrj1fHEAzo3GBqSHLaeZyKUCDA==",
|
"integrity": "sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@protobufjs/aspromise": "^1.1.2",
|
"@protobufjs/aspromise": "^1.1.2",
|
||||||
@@ -5841,16 +5717,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protobufjs-cli": {
|
"node_modules/protobufjs-cli": {
|
||||||
"version": "1.1.1",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/protobufjs-cli/-/protobufjs-cli-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/protobufjs-cli/-/protobufjs-cli-1.0.2.tgz",
|
||||||
"integrity": "sha512-VPWMgIcRNyQwWUv8OLPyGQ/0lQY/QTQAVN5fh+XzfDwsVw1FZ2L3DM/bcBf8WPiRz2tNpaov9lPZfNcmNo6LXA==",
|
"integrity": "sha512-cz9Pq9p/Zs7okc6avH20W7QuyjTclwJPgqXG11jNaulfS3nbVisID8rC+prfgq0gbZE0w9LBFd1OKFF03kgFzg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"chalk": "^4.0.0",
|
"chalk": "^4.0.0",
|
||||||
"escodegen": "^1.13.0",
|
"escodegen": "^1.13.0",
|
||||||
"espree": "^9.0.0",
|
"espree": "^9.0.0",
|
||||||
"estraverse": "^5.1.0",
|
"estraverse": "^5.1.0",
|
||||||
"glob": "^8.0.0",
|
"glob": "^8.0.0",
|
||||||
"jsdoc": "^4.0.0",
|
"jsdoc": "^3.6.3",
|
||||||
"minimist": "^1.2.0",
|
"minimist": "^1.2.0",
|
||||||
"semver": "^7.1.2",
|
"semver": "^7.1.2",
|
||||||
"tmp": "^0.2.1",
|
"tmp": "^0.2.1",
|
||||||
@@ -5868,9 +5744,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protobufjs-cli/node_modules/acorn": {
|
"node_modules/protobufjs-cli/node_modules/acorn": {
|
||||||
"version": "8.8.2",
|
"version": "8.8.1",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
|
||||||
"integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
|
"integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==",
|
||||||
"bin": {
|
"bin": {
|
||||||
"acorn": "bin/acorn"
|
"acorn": "bin/acorn"
|
||||||
},
|
},
|
||||||
@@ -5919,9 +5795,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protobufjs-cli/node_modules/glob": {
|
"node_modules/protobufjs-cli/node_modules/glob": {
|
||||||
"version": "8.1.0",
|
"version": "8.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz",
|
||||||
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
"integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"fs.realpath": "^1.0.0",
|
"fs.realpath": "^1.0.0",
|
||||||
"inflight": "^1.0.4",
|
"inflight": "^1.0.4",
|
||||||
@@ -5937,9 +5813,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/protobufjs-cli/node_modules/minimatch": {
|
"node_modules/protobufjs-cli/node_modules/minimatch": {
|
||||||
"version": "5.1.6",
|
"version": "5.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
|
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz",
|
||||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
"integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"brace-expansion": "^2.0.1"
|
"brace-expansion": "^2.0.1"
|
||||||
},
|
},
|
||||||
@@ -5969,16 +5845,6 @@
|
|||||||
"node": ">= 0.10"
|
"node": ">= 0.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/proxyquire": {
|
|
||||||
"version": "2.1.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz",
|
|
||||||
"integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==",
|
|
||||||
"dependencies": {
|
|
||||||
"fill-keys": "^1.0.2",
|
|
||||||
"module-not-found-error": "^1.0.1",
|
|
||||||
"resolve": "^1.11.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/pseudomap": {
|
"node_modules/pseudomap": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
|
||||||
@@ -6518,23 +6384,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
|
||||||
"integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw=="
|
"integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw=="
|
||||||
},
|
},
|
||||||
"node_modules/sinon": {
|
|
||||||
"version": "15.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz",
|
|
||||||
"integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==",
|
|
||||||
"dependencies": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"@sinonjs/fake-timers": "10.0.2",
|
|
||||||
"@sinonjs/samsam": "^7.0.1",
|
|
||||||
"diff": "^5.0.0",
|
|
||||||
"nise": "^5.1.2",
|
|
||||||
"supports-color": "^7.2.0"
|
|
||||||
},
|
|
||||||
"funding": {
|
|
||||||
"type": "opencollective",
|
|
||||||
"url": "https://opencollective.com/sinon"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/sip-methods": {
|
"node_modules/sip-methods": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/sip-methods/-/sip-methods-0.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/sip-methods/-/sip-methods-0.3.0.tgz",
|
||||||
@@ -6853,6 +6702,11 @@
|
|||||||
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
|
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/taffydb": {
|
||||||
|
"version": "2.6.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz",
|
||||||
|
"integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA=="
|
||||||
|
},
|
||||||
"node_modules/tape": {
|
"node_modules/tape": {
|
||||||
"version": "5.6.1",
|
"version": "5.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz",
|
||||||
@@ -8058,9 +7912,9 @@
|
|||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@jambonz/db-helpers": {
|
"@jambonz/db-helpers": {
|
||||||
"version": "0.7.4",
|
"version": "0.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz",
|
"resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.3.tgz",
|
||||||
"integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==",
|
"integrity": "sha512-FXQPnl5AGV3P6RhvdSKfjIOdEXShYe7aKJayJjaPARPTCTGqLTDhV2tfsWirCrpQhn+vanJHAiOyzOTmbDIfzA==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"cidr-matcher": "^2.1.1",
|
"cidr-matcher": "^2.1.1",
|
||||||
"debug": "^4.3.3",
|
"debug": "^4.3.3",
|
||||||
@@ -8172,14 +8026,6 @@
|
|||||||
"@jridgewell/sourcemap-codec": "1.4.14"
|
"@jridgewell/sourcemap-codec": "1.4.14"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@jsdoc/salty": {
|
|
||||||
"version": "0.2.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.3.tgz",
|
|
||||||
"integrity": "sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==",
|
|
||||||
"requires": {
|
|
||||||
"lodash": "^4.17.21"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@opentelemetry/api": {
|
"@opentelemetry/api": {
|
||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz",
|
||||||
@@ -8379,37 +8225,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
|
||||||
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
"integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
|
||||||
},
|
},
|
||||||
"@sinonjs/commons": {
|
|
||||||
"version": "2.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz",
|
|
||||||
"integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==",
|
|
||||||
"requires": {
|
|
||||||
"type-detect": "4.0.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@sinonjs/fake-timers": {
|
|
||||||
"version": "10.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.0.2.tgz",
|
|
||||||
"integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==",
|
|
||||||
"requires": {
|
|
||||||
"@sinonjs/commons": "^2.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@sinonjs/samsam": {
|
|
||||||
"version": "7.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz",
|
|
||||||
"integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==",
|
|
||||||
"requires": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"lodash.get": "^4.4.2",
|
|
||||||
"type-detect": "^4.0.8"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@sinonjs/text-encoding": {
|
|
||||||
"version": "0.7.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz",
|
|
||||||
"integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ=="
|
|
||||||
},
|
|
||||||
"@tokenizer/token": {
|
"@tokenizer/token": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@tokenizer/token/-/token-0.3.0.tgz",
|
||||||
@@ -8433,15 +8248,6 @@
|
|||||||
"@types/node": "*"
|
"@types/node": "*"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/glob": {
|
|
||||||
"version": "8.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/glob/-/glob-8.0.1.tgz",
|
|
||||||
"integrity": "sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw==",
|
|
||||||
"requires": {
|
|
||||||
"@types/minimatch": "^5.1.2",
|
|
||||||
"@types/node": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@types/isstream": {
|
"@types/isstream": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/isstream/-/isstream-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/@types/isstream/-/isstream-0.1.0.tgz",
|
||||||
@@ -8492,25 +8298,11 @@
|
|||||||
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz",
|
||||||
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA=="
|
"integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA=="
|
||||||
},
|
},
|
||||||
"@types/minimatch": {
|
|
||||||
"version": "5.1.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-5.1.2.tgz",
|
|
||||||
"integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA=="
|
|
||||||
},
|
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "18.11.18",
|
"version": "18.11.18",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz",
|
||||||
"integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA=="
|
"integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA=="
|
||||||
},
|
},
|
||||||
"@types/rimraf": {
|
|
||||||
"version": "3.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/@types/rimraf/-/rimraf-3.0.2.tgz",
|
|
||||||
"integrity": "sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ==",
|
|
||||||
"requires": {
|
|
||||||
"@types/glob": "*",
|
|
||||||
"@types/node": "*"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@types/stack-utils": {
|
"@types/stack-utils": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz",
|
||||||
@@ -9263,11 +9055,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
|
||||||
"integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg=="
|
"integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg=="
|
||||||
},
|
},
|
||||||
"diff": {
|
|
||||||
"version": "5.1.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/diff/-/diff-5.1.0.tgz",
|
|
||||||
"integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw=="
|
|
||||||
},
|
|
||||||
"diff-sequences": {
|
"diff-sequences": {
|
||||||
"version": "26.6.2",
|
"version": "26.6.2",
|
||||||
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz",
|
"resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.6.2.tgz",
|
||||||
@@ -9950,15 +9737,6 @@
|
|||||||
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
|
"integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
"fill-keys": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz",
|
|
||||||
"integrity": "sha512-tcgI872xXjwFF4xgQmLxi76GnwJG3g/3isB1l4/G5Z4zrbddGpBjqZCO9oEAcB5wX0Hj/5iQB3toxfO7in1hHA==",
|
|
||||||
"requires": {
|
|
||||||
"is-object": "~1.0.1",
|
|
||||||
"merge-descriptors": "~1.0.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"fill-range": {
|
"fill-range": {
|
||||||
"version": "7.0.1",
|
"version": "7.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||||
@@ -10234,14 +10012,13 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"google-gax": {
|
"google-gax": {
|
||||||
"version": "3.5.6",
|
"version": "3.5.2",
|
||||||
"resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.6.tgz",
|
"resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.2.tgz",
|
||||||
"integrity": "sha512-gw1phnFuVB8Vtad/An9/4cLfhjNCj4FqyqDA0W09r/ZUWe70VZFZ7SNrvQNX81iLoOEjfTPHKEGZL/anuFxU5w==",
|
"integrity": "sha512-AyP53w0gHcWlzxm+jSgqCR3Xu4Ld7EpSjhtNBnNhzwwWaIUyphH9kBGNIEH+i4UGkTUXOY29K/Re8EiAvkBRGw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@grpc/grpc-js": "~1.8.0",
|
"@grpc/grpc-js": "~1.7.0",
|
||||||
"@grpc/proto-loader": "^0.7.0",
|
"@grpc/proto-loader": "^0.7.0",
|
||||||
"@types/long": "^4.0.0",
|
"@types/long": "^4.0.0",
|
||||||
"@types/rimraf": "^3.0.2",
|
|
||||||
"abort-controller": "^3.0.0",
|
"abort-controller": "^3.0.0",
|
||||||
"duplexify": "^4.0.0",
|
"duplexify": "^4.0.0",
|
||||||
"fast-text-encoding": "^1.0.3",
|
"fast-text-encoding": "^1.0.3",
|
||||||
@@ -10250,9 +10027,20 @@
|
|||||||
"node-fetch": "^2.6.1",
|
"node-fetch": "^2.6.1",
|
||||||
"object-hash": "^3.0.0",
|
"object-hash": "^3.0.0",
|
||||||
"proto3-json-serializer": "^1.0.0",
|
"proto3-json-serializer": "^1.0.0",
|
||||||
"protobufjs": "7.2.1",
|
"protobufjs": "7.1.2",
|
||||||
"protobufjs-cli": "1.1.1",
|
"protobufjs-cli": "1.0.2",
|
||||||
"retry-request": "^5.0.0"
|
"retry-request": "^5.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@grpc/grpc-js": {
|
||||||
|
"version": "1.7.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.7.3.tgz",
|
||||||
|
"integrity": "sha512-H9l79u4kJ2PVSxUNA08HMYAnUBLj9v6KjYQ7SQ71hOZcEXhShE/y5iQCesP8+6/Ik/7i2O0a10bPquIcYfufog==",
|
||||||
|
"requires": {
|
||||||
|
"@grpc/proto-loader": "^0.7.0",
|
||||||
|
"@types/node": ">=12.12.47"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"google-p12-pem": {
|
"google-p12-pem": {
|
||||||
@@ -10711,11 +10499,6 @@
|
|||||||
"has-tostringtag": "^1.0.0"
|
"has-tostringtag": "^1.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"is-object": {
|
|
||||||
"version": "1.0.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.2.tgz",
|
|
||||||
"integrity": "sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA=="
|
|
||||||
},
|
|
||||||
"is-plain-object": {
|
"is-plain-object": {
|
||||||
"version": "2.0.4",
|
"version": "2.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
|
||||||
@@ -11036,12 +10819,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jsdoc": {
|
"jsdoc": {
|
||||||
"version": "4.0.0",
|
"version": "3.6.11",
|
||||||
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-4.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz",
|
||||||
"integrity": "sha512-tzTgkklbWKrlaQL2+e3NNgLcZu3NaK2vsHRx7tyHQ+H5jcB9Gx0txSd2eJWlMC/xU1+7LQu4s58Ry0RkuaEQVg==",
|
"integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@babel/parser": "^7.9.4",
|
"@babel/parser": "^7.9.4",
|
||||||
"@jsdoc/salty": "^0.2.1",
|
|
||||||
"@types/markdown-it": "^12.2.3",
|
"@types/markdown-it": "^12.2.3",
|
||||||
"bluebird": "^3.7.2",
|
"bluebird": "^3.7.2",
|
||||||
"catharsis": "^0.9.0",
|
"catharsis": "^0.9.0",
|
||||||
@@ -11054,6 +10836,7 @@
|
|||||||
"mkdirp": "^1.0.4",
|
"mkdirp": "^1.0.4",
|
||||||
"requizzle": "^0.2.3",
|
"requizzle": "^0.2.3",
|
||||||
"strip-json-comments": "^3.1.0",
|
"strip-json-comments": "^3.1.0",
|
||||||
|
"taffydb": "2.6.2",
|
||||||
"underscore": "~1.13.2"
|
"underscore": "~1.13.2"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -11149,11 +10932,6 @@
|
|||||||
"verror": "1.10.0"
|
"verror": "1.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"just-extend": {
|
|
||||||
"version": "4.2.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/just-extend/-/just-extend-4.2.1.tgz",
|
|
||||||
"integrity": "sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg=="
|
|
||||||
},
|
|
||||||
"jwa": {
|
"jwa": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz",
|
||||||
@@ -11224,11 +11002,6 @@
|
|||||||
"integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
|
"integrity": "sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.get": {
|
|
||||||
"version": "4.4.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
|
||||||
"integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ=="
|
|
||||||
},
|
|
||||||
"lodash.isempty": {
|
"lodash.isempty": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz",
|
||||||
@@ -11309,9 +11082,9 @@
|
|||||||
"requires": {}
|
"requires": {}
|
||||||
},
|
},
|
||||||
"marked": {
|
"marked": {
|
||||||
"version": "4.2.12",
|
"version": "4.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.12.tgz",
|
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz",
|
||||||
"integrity": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw=="
|
"integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ=="
|
||||||
},
|
},
|
||||||
"mdurl": {
|
"mdurl": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
@@ -11431,11 +11204,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz",
|
||||||
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
|
"integrity": "sha512-ySViT69/76t8VhE1xXHK6Ch4NcDd26gx0MzKXLO+F7NOtnqH68d9zF94nT8ZWSxXh8ELOERsnJO/sWt1xZYw5A=="
|
||||||
},
|
},
|
||||||
"module-not-found-error": {
|
|
||||||
"version": "1.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/module-not-found-error/-/module-not-found-error-1.0.1.tgz",
|
|
||||||
"integrity": "sha512-pEk4ECWQXV6z2zjhRZUongnLJNUeGQJ3w6OQ5ctGwD+i5o93qjRQUk2Rt6VdNeu3sEP0AB4LcfvdebpxBRVr4g=="
|
|
||||||
},
|
|
||||||
"moment": {
|
"moment": {
|
||||||
"version": "2.29.4",
|
"version": "2.29.4",
|
||||||
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz",
|
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz",
|
||||||
@@ -11517,33 +11285,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
|
||||||
"integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
|
"integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ=="
|
||||||
},
|
},
|
||||||
"nise": {
|
|
||||||
"version": "5.1.4",
|
|
||||||
"resolved": "https://registry.npmjs.org/nise/-/nise-5.1.4.tgz",
|
|
||||||
"integrity": "sha512-8+Ib8rRJ4L0o3kfmyVCL7gzrohyDe0cMFTBa2d364yIrEGMEoetznKJx899YxjybU6bL9SQkYPSBBs1gyYs8Xg==",
|
|
||||||
"requires": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"@sinonjs/fake-timers": "^10.0.2",
|
|
||||||
"@sinonjs/text-encoding": "^0.7.1",
|
|
||||||
"just-extend": "^4.0.2",
|
|
||||||
"path-to-regexp": "^1.7.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"isarray": {
|
|
||||||
"version": "0.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
|
|
||||||
"integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ=="
|
|
||||||
},
|
|
||||||
"path-to-regexp": {
|
|
||||||
"version": "1.8.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz",
|
|
||||||
"integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==",
|
|
||||||
"requires": {
|
|
||||||
"isarray": "0.0.1"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"no-case": {
|
"no-case": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
|
||||||
@@ -11701,9 +11442,9 @@
|
|||||||
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw=="
|
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw=="
|
||||||
},
|
},
|
||||||
"object-inspect": {
|
"object-inspect": {
|
||||||
"version": "1.12.3",
|
"version": "1.12.2",
|
||||||
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz",
|
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
|
||||||
"integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g=="
|
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ=="
|
||||||
},
|
},
|
||||||
"object-is": {
|
"object-is": {
|
||||||
"version": "1.1.5",
|
"version": "1.1.5",
|
||||||
@@ -12068,9 +11809,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"protobufjs": {
|
"protobufjs": {
|
||||||
"version": "7.2.1",
|
"version": "7.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.1.2.tgz",
|
||||||
"integrity": "sha512-L3pCItypTnPK27+CS8nuhZMYtsY+i8dqdq2vZsYHlG17CnWp1DWPQ/sos0vOKrj1fHEAzo3GBqSHLaeZyKUCDA==",
|
"integrity": "sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"@protobufjs/aspromise": "^1.1.2",
|
"@protobufjs/aspromise": "^1.1.2",
|
||||||
"@protobufjs/base64": "^1.1.2",
|
"@protobufjs/base64": "^1.1.2",
|
||||||
@@ -12094,16 +11835,16 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"protobufjs-cli": {
|
"protobufjs-cli": {
|
||||||
"version": "1.1.1",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/protobufjs-cli/-/protobufjs-cli-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/protobufjs-cli/-/protobufjs-cli-1.0.2.tgz",
|
||||||
"integrity": "sha512-VPWMgIcRNyQwWUv8OLPyGQ/0lQY/QTQAVN5fh+XzfDwsVw1FZ2L3DM/bcBf8WPiRz2tNpaov9lPZfNcmNo6LXA==",
|
"integrity": "sha512-cz9Pq9p/Zs7okc6avH20W7QuyjTclwJPgqXG11jNaulfS3nbVisID8rC+prfgq0gbZE0w9LBFd1OKFF03kgFzg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"chalk": "^4.0.0",
|
"chalk": "^4.0.0",
|
||||||
"escodegen": "^1.13.0",
|
"escodegen": "^1.13.0",
|
||||||
"espree": "^9.0.0",
|
"espree": "^9.0.0",
|
||||||
"estraverse": "^5.1.0",
|
"estraverse": "^5.1.0",
|
||||||
"glob": "^8.0.0",
|
"glob": "^8.0.0",
|
||||||
"jsdoc": "^4.0.0",
|
"jsdoc": "^3.6.3",
|
||||||
"minimist": "^1.2.0",
|
"minimist": "^1.2.0",
|
||||||
"semver": "^7.1.2",
|
"semver": "^7.1.2",
|
||||||
"tmp": "^0.2.1",
|
"tmp": "^0.2.1",
|
||||||
@@ -12111,9 +11852,9 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "8.8.2",
|
"version": "8.8.1",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz",
|
||||||
"integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw=="
|
"integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA=="
|
||||||
},
|
},
|
||||||
"brace-expansion": {
|
"brace-expansion": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
@@ -12144,9 +11885,9 @@
|
|||||||
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
|
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA=="
|
||||||
},
|
},
|
||||||
"glob": {
|
"glob": {
|
||||||
"version": "8.1.0",
|
"version": "8.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz",
|
||||||
"integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
|
"integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"fs.realpath": "^1.0.0",
|
"fs.realpath": "^1.0.0",
|
||||||
"inflight": "^1.0.4",
|
"inflight": "^1.0.4",
|
||||||
@@ -12156,9 +11897,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"minimatch": {
|
"minimatch": {
|
||||||
"version": "5.1.6",
|
"version": "5.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
|
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz",
|
||||||
"integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
|
"integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"brace-expansion": "^2.0.1"
|
"brace-expansion": "^2.0.1"
|
||||||
}
|
}
|
||||||
@@ -12179,16 +11920,6 @@
|
|||||||
"ipaddr.js": "1.9.1"
|
"ipaddr.js": "1.9.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"proxyquire": {
|
|
||||||
"version": "2.1.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/proxyquire/-/proxyquire-2.1.3.tgz",
|
|
||||||
"integrity": "sha512-BQWfCqYM+QINd+yawJz23tbBM40VIGXOdDw3X344KcclI/gtBbdWF6SlQ4nK/bYhF9d27KYug9WzljHC6B9Ysg==",
|
|
||||||
"requires": {
|
|
||||||
"fill-keys": "^1.0.2",
|
|
||||||
"module-not-found-error": "^1.0.1",
|
|
||||||
"resolve": "^1.11.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"pseudomap": {
|
"pseudomap": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
|
||||||
@@ -12589,19 +12320,6 @@
|
|||||||
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
|
||||||
"integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw=="
|
"integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw=="
|
||||||
},
|
},
|
||||||
"sinon": {
|
|
||||||
"version": "15.0.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz",
|
|
||||||
"integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==",
|
|
||||||
"requires": {
|
|
||||||
"@sinonjs/commons": "^2.0.0",
|
|
||||||
"@sinonjs/fake-timers": "10.0.2",
|
|
||||||
"@sinonjs/samsam": "^7.0.1",
|
|
||||||
"diff": "^5.0.0",
|
|
||||||
"nise": "^5.1.2",
|
|
||||||
"supports-color": "^7.2.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"sip-methods": {
|
"sip-methods": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/sip-methods/-/sip-methods-0.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/sip-methods/-/sip-methods-0.3.0.tgz",
|
||||||
@@ -12841,6 +12559,11 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"taffydb": {
|
||||||
|
"version": "2.6.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz",
|
||||||
|
"integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA=="
|
||||||
|
},
|
||||||
"tape": {
|
"tape": {
|
||||||
"version": "5.6.1",
|
"version": "5.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz",
|
||||||
|
|||||||
10
package.json
10
package.json
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "jambonz-feature-server",
|
"name": "jambonz-feature-server",
|
||||||
"version": "v0.8.0",
|
"version": "v0.7.8",
|
||||||
"main": "app.js",
|
"main": "app.js",
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">= 10.16.0"
|
"node": ">= 10.16.0"
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
"jslint": "eslint app.js lib"
|
"jslint": "eslint app.js lib"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@jambonz/db-helpers": "^0.7.4",
|
"@jambonz/db-helpers": "^0.7.3",
|
||||||
"@jambonz/http-health-check": "^0.0.1",
|
"@jambonz/http-health-check": "^0.0.1",
|
||||||
"@jambonz/realtimedb-helpers": "^0.6.3",
|
"@jambonz/realtimedb-helpers": "^0.6.3",
|
||||||
"@jambonz/stats-collector": "^0.1.6",
|
"@jambonz/stats-collector": "^0.1.6",
|
||||||
@@ -49,17 +49,15 @@
|
|||||||
"moment": "^2.29.4",
|
"moment": "^2.29.4",
|
||||||
"parse-url": "^8.1.0",
|
"parse-url": "^8.1.0",
|
||||||
"pino": "^8.8.0",
|
"pino": "^8.8.0",
|
||||||
"polly-ssml-split": "^0.1.0",
|
|
||||||
"proxyquire": "^2.1.3",
|
|
||||||
"sdp-transform": "^2.14.1",
|
"sdp-transform": "^2.14.1",
|
||||||
"short-uuid": "^4.2.2",
|
"short-uuid": "^4.2.2",
|
||||||
"sinon": "^15.0.1",
|
|
||||||
"to-snake-case": "^1.0.0",
|
"to-snake-case": "^1.0.0",
|
||||||
"undici": "^5.16.0",
|
"undici": "^5.16.0",
|
||||||
"uuid-random": "^1.3.2",
|
"uuid-random": "^1.3.2",
|
||||||
"verify-aws-sns-signature": "^0.1.0",
|
"verify-aws-sns-signature": "^0.1.0",
|
||||||
"ws": "^8.9.0",
|
"ws": "^8.9.0",
|
||||||
"xml2js": "^0.4.23"
|
"xml2js": "^0.4.23",
|
||||||
|
"polly-ssml-split": "^0.1.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"clear-module": "^4.1.2",
|
"clear-module": "^4.1.2",
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
require('./ws-requestor-unit-test')
|
|
||||||
require('./unit-tests');
|
require('./unit-tests');
|
||||||
require('./docker_start');
|
require('./docker_start');
|
||||||
require('./create-test-db');
|
require('./create-test-db');
|
||||||
|
|||||||
@@ -1,97 +0,0 @@
|
|||||||
class MockWebsocket {
|
|
||||||
static eventResponses = new Map();
|
|
||||||
static actionLoops = new Map();
|
|
||||||
eventListeners = new Map();
|
|
||||||
|
|
||||||
constructor(url, protocols, options) {
|
|
||||||
this.u = url;
|
|
||||||
this.pros = protocols;
|
|
||||||
this.opts = options;
|
|
||||||
setTimeout(() => {
|
|
||||||
this.open();
|
|
||||||
}, 500)
|
|
||||||
}
|
|
||||||
|
|
||||||
static addJsonMapping(key, value) {
|
|
||||||
MockWebsocket.eventResponses.set(key, value);
|
|
||||||
}
|
|
||||||
|
|
||||||
static getAndIncreaseActionLoops(key) {
|
|
||||||
const ret = MockWebsocket.actionLoops.has(key) ? MockWebsocket.actionLoops.get(key) : 0;
|
|
||||||
MockWebsocket.actionLoops.set(key, ret + 1);
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
once(event, listener) {
|
|
||||||
// Websocket.ws = this;
|
|
||||||
this.eventListeners.set(event, listener);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
on(event, listener) {
|
|
||||||
// Websocket.ws = this;
|
|
||||||
this.eventListeners.set(event, listener);
|
|
||||||
return this;
|
|
||||||
}
|
|
||||||
|
|
||||||
open() {
|
|
||||||
if (this.eventListeners.has('open')) {
|
|
||||||
this.eventListeners.get('open')();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
removeAllListeners() {
|
|
||||||
this.eventListeners.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
send(data, callback) {
|
|
||||||
const json = JSON.parse(data);
|
|
||||||
console.log({json}, 'got message from ws-requestor');
|
|
||||||
if (MockWebsocket.eventResponses.has(json.call_sid)) {
|
|
||||||
|
|
||||||
const resp_data = MockWebsocket.eventResponses.get(json.call_sid);
|
|
||||||
const action = resp_data.action[MockWebsocket.getAndIncreaseActionLoops(json.call_sid)];
|
|
||||||
if (action === 'connect') {
|
|
||||||
setTimeout(()=> {
|
|
||||||
const msg = {
|
|
||||||
type: 'ack',
|
|
||||||
msgid: json.msgid,
|
|
||||||
command: 'command',
|
|
||||||
call_sid: json.call_sid,
|
|
||||||
queueCommand: false,
|
|
||||||
data: resp_data.body}
|
|
||||||
console.log({msg}, 'sending ack to ws-requestor');
|
|
||||||
this.mockOnMessage(JSON.stringify(msg));
|
|
||||||
}, 100);
|
|
||||||
} else if (action === 'close') {
|
|
||||||
if (this.eventListeners.has('close')) {
|
|
||||||
this.eventListeners.get('close')(500);
|
|
||||||
}
|
|
||||||
} else if (action === 'terminate') {
|
|
||||||
if (this.eventListeners.has('close')) {
|
|
||||||
this.eventListeners.get('close')(1000);
|
|
||||||
}
|
|
||||||
} else if (action === 'error') {
|
|
||||||
if (this.eventListeners.has('error')) {
|
|
||||||
this.eventListeners.get('error')();
|
|
||||||
}
|
|
||||||
} else if (action === 'unexpected-response') {
|
|
||||||
if (this.eventListeners.has('unexpected-response')) {
|
|
||||||
this.eventListeners.get('unexpected-response')();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
if (callback) {
|
|
||||||
callback();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
mockOnMessage(message, isBinary=false) {
|
|
||||||
if (this.eventListeners.has('message')) {
|
|
||||||
this.eventListeners.get('message')(message, isBinary);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = MockWebsocket;
|
|
||||||
@@ -1,198 +0,0 @@
|
|||||||
const test = require('tape');
|
|
||||||
const sinon = require('sinon');
|
|
||||||
const proxyquire = require("proxyquire");
|
|
||||||
proxyquire.noCallThru();
|
|
||||||
const MockWebsocket = require('./ws-mock')
|
|
||||||
const logger = require('pino')({level: process.env.JAMBONES_LOGLEVEL || 'error'});
|
|
||||||
|
|
||||||
const BaseRequestor = proxyquire(
|
|
||||||
"../lib/utils/base-requestor",
|
|
||||||
{
|
|
||||||
"../../": {
|
|
||||||
srf: {
|
|
||||||
locals: {
|
|
||||||
stats: {
|
|
||||||
histogram: () => {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"@jambonz/time-series": sinon.stub()
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
const WsRequestor = proxyquire(
|
|
||||||
"../lib/utils/ws-requestor",
|
|
||||||
{
|
|
||||||
"./base-requestor": BaseRequestor,
|
|
||||||
"ws": MockWebsocket
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
test('ws success', async (t) => {
|
|
||||||
// GIVEN
|
|
||||||
|
|
||||||
const json = '[{\"verb\": \"play\",\"url\": \"silence_stream://5000\"}]';
|
|
||||||
const ws_response = {
|
|
||||||
action: ['connect'],
|
|
||||||
body: json
|
|
||||||
}
|
|
||||||
const call_sid = 'ws_success';
|
|
||||||
|
|
||||||
MockWebsocket.addJsonMapping(call_sid, ws_response);
|
|
||||||
|
|
||||||
const hook = {
|
|
||||||
url: 'ws://localhost:3000',
|
|
||||||
username: 'username',
|
|
||||||
password: 'password'
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = {
|
|
||||||
callSid: call_sid
|
|
||||||
}
|
|
||||||
|
|
||||||
// WHEN
|
|
||||||
|
|
||||||
const requestor = new WsRequestor(logger, "account_sid", hook, "webhook_secret");
|
|
||||||
const result = await requestor.request('session:new',hook, params, {});
|
|
||||||
|
|
||||||
// THEN
|
|
||||||
t.ok(result == json,'ws successfully sent session:new and got initial jambonz app');
|
|
||||||
|
|
||||||
t.end();
|
|
||||||
});
|
|
||||||
|
|
||||||
test('ws close success reconnect', async (t) => {
|
|
||||||
// GIVEN
|
|
||||||
|
|
||||||
const call_sid = 'ws_closed'
|
|
||||||
const json = '[{\"verb\": \"play\",\"url\": \"silence_stream://5000\"}]';
|
|
||||||
const ws_response = {
|
|
||||||
action: ['close', 'connect'],
|
|
||||||
body: json
|
|
||||||
}
|
|
||||||
MockWebsocket.addJsonMapping(call_sid, ws_response);
|
|
||||||
|
|
||||||
const hook = {
|
|
||||||
url: 'ws://localhost:3000',
|
|
||||||
username: 'username',
|
|
||||||
password: 'password'
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = {
|
|
||||||
callSid: call_sid
|
|
||||||
}
|
|
||||||
|
|
||||||
// WHEN
|
|
||||||
|
|
||||||
const requestor = new WsRequestor(logger, "account_sid", hook, "webhook_secret");
|
|
||||||
const result = await requestor.request('session:new',hook, params, {});
|
|
||||||
|
|
||||||
// THEN
|
|
||||||
t.ok(result == json,'ws successfully reconnect after close from far end');
|
|
||||||
|
|
||||||
t.end();
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
test('ws response error 1000', async (t) => {
|
|
||||||
// GIVEN
|
|
||||||
|
|
||||||
const call_sid = 'ws_terminated'
|
|
||||||
const json = '[{\"verb\": \"play\",\"url\": \"silence_stream://5000\"}]';
|
|
||||||
const ws_response = {
|
|
||||||
action: ['terminate'],
|
|
||||||
body: json
|
|
||||||
}
|
|
||||||
MockWebsocket.addJsonMapping(call_sid, ws_response);
|
|
||||||
|
|
||||||
const hook = {
|
|
||||||
url: 'ws://localhost:3000',
|
|
||||||
username: 'username',
|
|
||||||
password: 'password'
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = {
|
|
||||||
callSid: call_sid
|
|
||||||
}
|
|
||||||
|
|
||||||
// WHEN
|
|
||||||
|
|
||||||
const requestor = new WsRequestor(logger, "account_sid", hook, "webhook_secret");
|
|
||||||
try {
|
|
||||||
await requestor.request('session:new',hook, params, {});
|
|
||||||
}
|
|
||||||
catch (err) {
|
|
||||||
// THEN
|
|
||||||
t.ok(err.startsWith('timeout from far end for msgid'), 'ws does not reconnect if far end closes gracefully');
|
|
||||||
t.end();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
test('ws response error', async (t) => {
|
|
||||||
// GIVEN
|
|
||||||
|
|
||||||
const call_sid = 'ws_error'
|
|
||||||
const json = '[{\"verb\": \"play\",\"url\": \"silence_stream://5000\"}]';
|
|
||||||
const ws_response = {
|
|
||||||
action: ['error'],
|
|
||||||
body: json
|
|
||||||
}
|
|
||||||
MockWebsocket.addJsonMapping(call_sid, ws_response);
|
|
||||||
|
|
||||||
const hook = {
|
|
||||||
url: 'ws://localhost:3000',
|
|
||||||
username: 'username',
|
|
||||||
password: 'password'
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = {
|
|
||||||
callSid: call_sid
|
|
||||||
}
|
|
||||||
|
|
||||||
// WHEN
|
|
||||||
|
|
||||||
const requestor = new WsRequestor(logger, "account_sid", hook, "webhook_secret");
|
|
||||||
try {
|
|
||||||
await requestor.request('session:new',hook, params, {});
|
|
||||||
}
|
|
||||||
catch (err) {
|
|
||||||
// THEN
|
|
||||||
t.ok(err.startsWith('timeout from far end for msgid'), 'ws does not reconnect if far end closes gracefully');
|
|
||||||
t.end();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
test('ws unexpected-response', async (t) => {
|
|
||||||
// GIVEN
|
|
||||||
|
|
||||||
const call_sid = 'ws_unexpected-response'
|
|
||||||
const json = '[{\"verb\": \"play\",\"url\": \"silence_stream://5000\"}]';
|
|
||||||
const ws_response = {
|
|
||||||
action: ['unexpected-response'],
|
|
||||||
body: json
|
|
||||||
}
|
|
||||||
MockWebsocket.addJsonMapping(call_sid, ws_response);
|
|
||||||
|
|
||||||
const hook = {
|
|
||||||
url: 'ws://localhost:3000',
|
|
||||||
username: 'username',
|
|
||||||
password: 'password'
|
|
||||||
}
|
|
||||||
|
|
||||||
const params = {
|
|
||||||
callSid: call_sid
|
|
||||||
}
|
|
||||||
|
|
||||||
// WHEN
|
|
||||||
|
|
||||||
const requestor = new WsRequestor(logger, "account_sid", hook, "webhook_secret");
|
|
||||||
try {
|
|
||||||
await requestor.request('session:new',hook, params, {});
|
|
||||||
}
|
|
||||||
catch (err) {
|
|
||||||
// THEN
|
|
||||||
t.ok(err.code = 'ERR_ASSERTION', 'ws does not reconnect if far end closes gracefully');
|
|
||||||
t.end();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
Reference in New Issue
Block a user